* include/ruby/encoding.h (rb_econv_check_error): declared.
[ruby-svn.git] / ChangeLog
blobdada846feb1919ff27989b280a5ceb77b51d71b4
1 Sun Aug 17 00:02:07 2008  Tanaka Akira  <akr@fsij.org>
3         * include/ruby/encoding.h (rb_econv_check_error): declared.
5         * transcode.c (make_econv_exception): new function.
6           (transcode_loop): use make_econv_exception.
7           (rb_econv_check_error): defined.
9 Sat Aug 16 15:23:16 2008  Tanaka Akira  <akr@fsij.org>
11         * include/ruby/encoding.h (rb_econv_elem_t): fields removed: from and
12           to.
13           (rb_econv_t): new fields: source_encoding_name and
14           destination_encoding_name.
16         * transcode.c (rb_econv_open_by_transcoder_entries): initialize the
17           new fields.
18           (rb_econv_open): set up the new fields.
19           (econv_inspect): use the new fields.
21 Sat Aug 16 14:22:04 2008  Tanaka Akira  <akr@fsij.org>
23         * include/ruby/encoding.h (rb_econv_t): add fields: in_buf_start,
24           in_data_start, in_data_end, in_buf_end and last_trans_index.
25           (rb_econv_output): removed.
26           (rb_econv_insert_output): declared.
27           (rb_econv_encoding_to_insert_output): declared.
29         * enc/trans/newline.trans (rb_universal_newline): stateful_type
30           changed.
32         * transcode.c (transcode_restartable0): initialize inchar_start,
33           tc->recognized_len and next_table at beginning of the loop.
34           (rb_econv_open_by_transcoder_entries): initialize new fields.
35           (rb_econv_open): setup last_trans_index.
36           (trans_sweep): last out_buf_start can be non-NULL now.
37           (rb_econv_convert): check last out_buf_start and in_buf_start at
38           first.
39           (rb_econv_output_with_destination_encoding): removed.
40           (econv_just_convert): removed.
41           (rb_econv_output): removed.
42           (econv_primitive_output): method removed.
43           (rb_econv_encoding_to_insert_output): new function.
44           (allocate_converted_string): new function.
45           (rb_econv_insert_output): new function.
46           (econv_primitive_insert_output): new method.
47           (output_replacement_character): use rb_econv_insert_output.  unused
48           arguments removed.
50 Sat Aug 16 09:20:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
52         * include/ruby/ruby.h (rb_intern_const): tiny optimization.
54         * include/ruby/ruby.h (SSIZET2NUM, NUM2SSIZET, SSIZE_MAX, SSIZE_MIN):
55           macros for ssize_t.
57 Sat Aug 16 08:11:04 2008  Tanaka Akira  <akr@fsij.org>
59         * transcode_data.h (rb_transcoder_stateful_type_t): defined.
60           (rb_transcoder): add field: stateful_type.
62         * tool/transcode-tblgen.rb: generate stateful_type field as
63           stateless_converter.
65         * enc/trans/iso2022.trans: follow rb_transcoder change.
67         * enc/trans/newline.trans: ditto.
69         * enc/trans/utf_16_32.trans: ditto.
71 Fri Aug 15 23:07:48 2008  Tanaka Akira  <akr@fsij.org>
73         * transcode.c (econv_just_convert): extracted from rb_econv_output.
74           (rb_econv_output): use econv_just_convert.
75           (econv_primitive_output): new method.
77 Fri Aug 15 19:57:01 2008  Tanaka Akira  <akr@fsij.org>
79         * include/ruby/encoding.h (rb_econv_output): add str_encoding
80           argument.
82         * transcode.c (get_replacement_character): add repl_enc_ptr argument.
83           (rb_econv_output_with_destination_encoding): renamed from
84           rb_econv_output and make it static.
85           (rb_econv_output): convert str and call
86           rb_econv_output_with_destination_encoding.
87           (output_replacement_character): follow above interface change.
89 Fri Aug 15 19:33:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
91         * string.c (rb_str_drop_bytes): use memmove.
93 Fri Aug 15 18:33:22 2008  Tanaka Akira  <akr@fsij.org>
95         * include/ruby/encoding.h (rb_econv_t): add error_tc in last_error.
97         * transcode.c (rb_econv_convert): fill error_tc.
99 Fri Aug 15 18:10:49 2008  Tanaka Akira  <akr@fsij.org>
101         * include/ruby/encoding.h (rb_econv_t): new field: last_error.
103         * transcode.c (rb_trans_conv): new argument: result_position_ptr.
104           (rb_econv_convert): fill last_error.
105           (econv_result_to_symbol): extracted from econv_primitive_convert.
106           (econv_primitive_errinfo): new method.
108 Fri Aug 15 17:39:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
110         * common.mk (parse.{c,h}): creates in the dependency order.
112 Fri Aug 15 16:59:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
114         * vm_core.h (exec_event_hooks): skips RubyVM::FrozenCore.
116         * vm.c (Init_VM): get rid of SEGV in a trace proc.
118 Fri Aug 15 09:33:48 2008  Tanaka Akira  <akr@fsij.org>
120         * transcode.c (conv_init): check empty name.
122 Fri Aug 15 09:03:54 2008  Tanaka Akira  <akr@fsij.org>
124         * transcode.c (econv_init): don't create dummy encoding if
125           rb_econv_open is failed.
126           (make_dummy_encoding): new function extracted from make_encoding.
127           (make_encoding): removed.
129 Fri Aug 15 01:07:16 2008  NARUSE, Yui  <naruse@ruby-lang.org>
131         * common.mk ({$(srcdir)}.y.c): escape backslash.
133 Fri Aug 15 01:05:39 2008  Tanaka Akira  <akr@fsij.org>
135         * transcode.c (econv_primitive_convert): set destination_buffer
136           encoding.
138 Fri Aug 15 00:52:40 2008  Tanaka Akira  <akr@fsij.org>
140         * include/ruby/encoding.h (rb_econv_output): declared.
142         * transcode_data.h (rb_transcoder): add resetsize_func field.
144         * enc/trans/iso2022.trans (iso2022jp_reset_sequence_size): defined.
145           (rb_EUC_JP_to_ISO_2022_JP): provede resetsize_func.
147         * tool/transcode-tblgen.rb: set NULL for resetsize_func.
149         * transcode.c (rb_econv_output): new function for inserting output.
150           (output_replacement_character): use rb_econv_output.
151           (transcode_loop): check return value of
152           output_replacement_character.
154 Thu Aug 14 23:47:21 2008  Tanaka Akira  <akr@fsij.org>
156         * include/ruby/encoding.h (ECONV_UNIVERSAL_NEWLINE_DECODER): defined.
157           (ECONV_CRLF_NEWLINE_ENCODER): ditto.
158           (ECONV_CR_NEWLINE_ENCODER): ditto.
159           (ECONV_PARTIAL_INPUT): ditto.
160           (ECONV_OUTPUT_FOLLOWED_BY_INPUT): ditto.
162         * transcode.c: use ECONV_* defined as above.
164 Thu Aug 14 23:35:21 2008  Tanaka Akira  <akr@fsij.org>
166         * transcode.c: local variable renamed.
168 Thu Aug 14 23:22:24 2008  Tanaka Akira  <akr@fsij.org>
170         * include/ruby/encoding.h (rb_econv_result_t): moved from
171           transcode_data.h.
172           (rb_econv_elem_t): ditto.
173           (rb_econv_t): ditto.  source_encoding and destination_encoding field
174           is added.
175           (rb_econv_open): declared.
176           (rb_econv_convert): ditto.
177           (rb_econv_close): ditto.
179         * transcode.c (rb_econv_open_by_transcoder_entries): initialize
180           source_encoding and destination_encoding field as NULL.
181           (rb_econv_open): make it external linkage.
182           (rb_econv_close): ditto.
183           (rb_econv_convert): ditto.  renamed from rb_econv_conv.
184           (make_encoding): new function.
185           (econv_init): use make_encoding and store rb_encoding* in
186           rb_econv_t.
187           (econv_source_encoding): new method
188           Encoding::Converter#source_encoding.
189           (econv_destination_encoding): new method
190           Encoding::Converter#destination_encoding.
192 Thu Aug 14 22:44:32 2008  Tanaka Akira  <akr@fsij.org>
194         * transcode_data.h (rb_econv_result_t): change enumeration
195           constant's prefix: transcode_ to econv_.
197         * transcode.c: follow the constant prefix change.
199 Thu Aug 14 21:34:41 2008  Tanaka Akira  <akr@fsij.org>
201         * transcode.c (econv_init): accept Encoding object as source_encoding
202           and destination_encoding.
204 Thu Aug 14 21:10:00 2008  Tanaka Akira  <akr@fsij.org>
206         * encoding.c (rb_filesystem_encoding): use default external encoding
207           for Unix.
209         * dir.c (dir_initialize): don't cache fs_encoding.
211 Thu Aug 14 20:58:57 2008  Tanaka Akira  <akr@fsij.org>
213         * transcode.c (rb_econv_open_by_transcoder_entries): renamed from
214           rb_trans_open_by_transcoder_entries.
216 Thu Aug 14 20:56:28 2008  Tanaka Akira  <akr@fsij.org>
218         * transcode.c (econv_max_output): removed.
220 Thu Aug 14 20:52:55 2008  Tanaka Akira  <akr@fsij.org>
222         * tool/transcode-tblgen.rb: check unexpected actions.
224 Thu Aug 14 20:25:52 2008  Tanaka Akira  <akr@fsij.org>
226         * transcode_data.h (transcode_invalid_byte_sequence): renamed from
227           transcode_invalid_input.
228           (transcode_destination_buffer_full): renamed from transcode_obuf_full.
229           (transcode_source_buffer_empty): renamed from transcode_ibuf_empty.
230           (rb_econv_result_t): renamed from rb_trans_result_t.
231           (rb_econv_elem_t): renamed from rb_trans_elem_t.
232           (rb_econv_t): renamed from rb_trans_t.
234         * transcode.c (UNIVERSAL_NEWLINE_DECODER): renamed from
235           UNIVERSAL_NEWLINE.
236           (CRLF_NEWLINE_ENCODER): renamed from CRLF_NEWLINE.
237           (CR_NEWLINE_ENCODER): renamed from CR_NEWLINE.
238           (rb_econv_open): renamed from rb_trans_open.
239           (rb_econv_close): renamed from rb_trans_close.
241 Thu Aug 14 19:41:42 2008  Tanaka Akira  <akr@fsij.org>
243         * transcode.c (load_transcoder): unused function removed.
244           (rb_transcoding_open): ditto.
246 Thu Aug 14 17:57:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
248         * include/ruby/encoding.h (rb_enc_ispunct): added.
250         * common.mk (COMMONOBJS), inits.c (rb_call_inits): id.c is now
251           included from parse.c.
253         * id.c (Init_id), id.h (ruby_method_ids): added IDs used by VM.
255         * parse.y (global_symbols): added rooms for VM IDs.
257         * parse.y (rb_intern3, rb_id2str): single puctuation symbol is now
258           same as char code.
260 Thu Aug 14 17:46:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
262         * parse.y (union tmpyystype): no longer needed, since YYSTYPE is
263           defined in parse.h now.
265 Thu Aug 14 17:27:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
267         * version.c (Init_version): add RUBY_ENGINE constant.
269 Thu Aug 14 15:34:10 2008  Tanaka Akira  <akr@fsij.org>
271         * transcode.c (rb_econv_conv): new function.  it doesn't consume
272           input too much, even for multilevel conversion.
273           (transcode_loop): use rb_econv_conv.
274           (econv_primitive_convert): ditto.
276 Thu Aug 14 15:27:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
278         * include/ruby/defines.h (RUBY_ALIAS_FUNCTION): fallback definition.
280 Thu Aug 14 15:08:17 2008  Tanaka Akira  <akr@fsij.org>
282         * transcode_data.h (rb_trans_result_t): new enumeration constant:
283           transcode_output_followed_by_input.
285         * transcode.c (OUTPUT_FOLLOWED_BY_INPUT): new flag.
286           (transcode_restartable0): suspend when output followed by input if
287           OUTPUT_FOLLOWED_BY_INPUT is specified.
288           (trans_sweep): check OUTPUT_FOLLOWED_BY_INPUT.
289           (rb_trans_conv): support OUTPUT_FOLLOWED_BY_INPUT.
290           (econv_primitive_convert): return :output_followed_by_input for
291           transcode_output_followed_by_input.
293 Thu Aug 14 14:57:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
295         * gc.c (getrusage_time): should return the value.
297         * thread.c (rb_thread_priority_set): get rid of C99 feature.
299         * transcode.c (transcode_search_path): ditto.
301         * vm.c (REWIND_CFP): get rid of statement expressions.
303 Thu Aug 14 14:13:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
305         * vm.c (Init_VM): hide FrozenCore.
307 Thu Aug 14 12:20:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
309         * transcode.c (load_transcoder): suppress warning.
311         * missing/vsnprintf.c (BSD_vfprintf): ditto.
313 Thu Aug 14 12:01:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
315         * configure.in (gnumake): check for GNU make.
317         * Makefile.in (uncommon.mk): includes filtered common.mk.
319         * common.mk (parse.h): workaround for nmake.
321 Thu Aug 14 06:09:12 2008  Koichi Sasada  <ko1@atdot.net>
323         * thread.c (rb_thread_execute_interrupts): switch event
324           should be occur only once.
326 Thu Aug 14 05:36:36 2008  NARUSE, Yui  <naruse@ruby-lang.org>
328         * common.mk: parse.h depends on parse.c.
330         * common.mk: hash.o depends on $(ID_H_INCLUDES).
332 Thu Aug 14 02:45:16 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
334         * test/ruby/test_file_exhaustive.rb (TestFileExhaustive#setup):
335           set group of tmpdir.  [ruby-dev:35633]
337 Thu Aug 14 15:50:30 2008  Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
339         * hash.c (set_default): fix rdoc.  #441
341 Thu Aug 14 02:23:31 2008  Tanaka Akira  <akr@fsij.org>
343         * transcode.c (econv_primitive_convert): add output_byteoffset
344           argument.
346 Thu Aug 14 00:43:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
348         * configure.in (rb_cv_gcc_function_alias): checks alias attribute.
350         * string.c (alias_func): replaced with RUBY_ALIAS_FUNCTION.
352 Wed Aug 13 23:42:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
354         * common.mk (parse.h): fake rule.
356 Wed Aug 13 23:15:58 2008  Shugo Maeda  <shugo@ruby-lang.org>
358         * test/ruby/test_thread.rb (test_list): call Thread.pass to run t1.
359           fixed [ruby-core:18264].
361 Wed Aug 13 23:05:51 2008  TAKAO Kouji  <kouji@takao7.net>
363         * string.c (alias_func): changed to 'weak, alias' from 'alias' for
364           Mac OSX. (closes #429)
366 Wed Aug 13 19:40:12 2008  Koichi Sasada  <ko1@atdot.net>
368         * gc.c: count only freed object as freelist size.
370 Wed Aug 13 18:34:22 2008  Shugo Maeda  <shugo@ruby-lang.org>
372         * marshal.c (marshal_load): set arg.untrust properly.
374 Wed Aug 13 17:47:09 2008  Tanaka Akira  <akr@fsij.org>
376         * transcode.c (econv_inspect): new method.
378 Wed Aug 13 17:35:58 2008  Tanaka Akira  <akr@fsij.org>
380         * transcode.c (transcode_restartable0): several local variables
381           removed.
383 Wed Aug 13 17:35:23 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
385         * hash.c (rb_hash_set_default_proc): add new method.  a patch from
386           Giuseppe Bilotta.  #419
388 Wed Aug 13 17:31:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
390         * vm_insnhelper.c (caller_setup_args): should ensure if the value
391           from to_proc is a real Proc.
393 Wed Aug 13 17:28:29 2008  Akinori MUSHA  <knu@iDaemons.org>
395         * common.mk: regint.h no longer includes vm_core.h.
397 Wed Aug 13 17:26:44 2008  Tanaka Akira  <akr@fsij.org>
399         * transcode_data.h (rb_transcoding): add fields: writebuf_off,
400           writebuf_len and writebuf.
401           (TRANSCODING_WRITEBUF): new macro.
403         * transcode.c (transcode_restartable0): output until output buffer is
404           really full.
405           (rb_transcoding_open_by_transcoder): initialize writebuf_len,
406           writebuf_off and writebuf.
407           (rb_transcoding_close): finalize writebuf.
409 Wed Aug 13 17:18:37 2008  Koichi Sasada  <ko1@atdot.net>
411         * thread.c (rb_thread_check_ints): added.  please note that
412           this function may cause ruby's thread switching.
414         * include/ruby/intern.h: ditto.
416         * regint.h: use rb_thread_check_ints() instead of
417           RUBY_CHECK_INTS() directly.
419 Wed Aug 13 17:01:36 2008  Akinori MUSHA  <knu@iDaemons.org>
421         * golf_prelude.rb, lib/set.rb (TC_Set#test_each),
422           test/readline/test_readline_history.rb (Readline#test_each__enumerator),
423           test/ruby/test_array.rb (TestArray#test_collect),
424           test/ruby/test_enumerator.rb (TestEnumerator#test_initialize):
425           Enumerable::Enumerator is now called Enumerator.
427         * lib/rinda/tuplespace.rb (Rinda::TupleBag#initialize): Use
428           enum_for instead of hardcoding Enumerable::Enumerator.
430 Wed Aug 13 16:40:57 2008  Koichi Sasada  <ko1@atdot.net>
432         * thread.c, vm_core.h: add manual priority support
433           using time slice.  if you enable USE_NATIVE_THREAD_PRIORITY
434           macro, this mechanism is ignored.  [ruby-dev:33124]
436         * thread_pthread.c, thread_win32.c: ditto.
438         * test/ruby/test_thread.rb: fix test parameter.
440 Wed Aug 13 16:02:14 2008  Shugo Maeda  <shugo@ruby-lang.org>
442         * object.c (rb_obj_untrusted): new method Object#untrusted?.
443           (rb_obj_untrust): new method Object#untrust.
444           (rb_obj_trust): new method Object#trust.
446         * array.c, debug.c, time.c, include/ruby/ruby.h, re.c, variable.c,
447           string.c, io.c, dir.c, vm_method.c, struct.c, class.c, hash.c,
448           ruby.c, marshal.c: fixes for Object#untrusted?.
450         * test/ruby/test_module.rb, test/ruby/test_array.rb,
451           test/ruby/test_object.rb, test/ruby/test_string.rb,
452           test/ruby/test_marshal.rb, test/ruby/test_hash.rb: added tests for
453           Object#untrusted?.
455 Wed Aug 13 16:13:58 2008  NARUSE, Yui  <naruse@ruby-lang.org>
457         * test/ruby/test_m17n.rb: follow EncodingCompatibilityError.
459         * test/ruby/test_mixed_unicode_escapes.rb: ditto.
461         * test/ruby/enc/test_utf16.rb: ditto.
463 Wed Aug 13 16:05:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
465         * time.c (time_cmp): retry with right hand operand if its not a
466           time object.  [ruby-dev:35011]
468 Wed Aug 13 15:51:22 2008  Akinori MUSHA  <knu@iDaemons.org>
470         * string.c: Apply a temporary fix to fix build on OS X.  A real
471           fix will follow later.
473 Wed Aug 13 15:25:09 2008  Akinori MUSHA  <knu@iDaemons.org>
475         * enumerator.c (Init_Enumerator): Rename Enumerable::Enumerator to
476           just Enumerator.
478 Wed Aug 13 15:13:57 2008  Akinori MUSHA  <knu@iDaemons.org>
480         * common.mk (prelude.c, golf_prelude.c): Using $(COMPILE_PRELUDE)
481           requires $(RBCONFIG).
483 Wed Aug 13 15:08:04 2008  Tanaka Akira  <akr@fsij.org>
485         * transcode.c (econv_init): make flags argument optional.
486           (econv_primitive_convert): ditto.
488 Wed Aug 13 14:55:27 2008  Akinori MUSHA  <knu@iDaemons.org>
490         * common.mk (realclean-local): Remove parse.h as well.
492         * common.mk: Add missing dependencies regarding vm_core.h, id.h,
493           parse.c (parse.h), etc..
495 Wed Aug 13 14:45:37 2008  Tanaka Akira  <akr@fsij.org>
497         * enc/trans/newline.trans (rb_crlf_newline): new transcoder.
498           (rb_cr_newline): new transcoder.
500         * transcode.c (trans_open_i): one more exra room for input newline
501           converter.
502           (rb_trans_open): crlf newline and cr newline implemented.
503           (Init_transcode): Encoding::Converter::CRLF_NEWLINE and
504           Encoding::Converter::CR_NEWLINE defined.
506 Wed Aug 13 14:22:16 2008  Tanaka Akira  <akr@fsij.org>
508         * enc/trans/newline.trans: new file.
510         * transcode_data.h (rb_trans_t): add last_tc field.
512         * transcode.c (UNIVERSAL_NEWLINE): defined.
513           (CRLF_NEWLINE): defined.
514           (CR_NEWLINE): defined.
515           (rb_trans_open_by_transcoder_entries): initialize last_tc.
516           (trans_open_i): allocate one more room for output newline converter.
517           (rb_trans_open): universal newline implemented.
518           (more_output_buffer): take max_output argument instead ts.
519           (output_replacement_character): take tc argument instead of ts.
520           (transcode_loop): use last_tc field.
521           (econv_init): add flags argument for rb_trans_open.
522           (Init_transcode): Encoding::Converter::UNIVERSAL_NEWLINE defined.
524 Wed Aug 13 14:00:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
526         * common.mk (parse.c): generates parse.h together.
528         * id.c, id.h: use constants for parser tokens.
530 Wed Aug 13 13:47:05 2008  Koichi Sasada  <ko1@atdot.net>
532         * vm.c: rewind cfp to show proper backtrace.
533           [ruby-dev:35820]
535 Wed Aug 13 13:09:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
537         * tool/make-snapshot: fix for clean up.
539 Wed Aug 13 11:45:51 2008  Akinori MUSHA  <knu@iDaemons.org>
541         * vm_core.h: Declare rb_iseq_clone, which is used in class.c.
543 Wed Aug 13 11:39:19 2008  Tanaka Akira  <akr@fsij.org>
545         * transcode.c (transcode_search_path): return the length of converter
546           path.
547           (load_transcoder_entry): renamed from load_transcoder.
548           (load_transcoder): new function for loding transcoder by encoding
549           names.
550           (rb_transcoding_open_by_transcoder): extracted from
551           rb_transcoding_open.
552           (rb_transcoding_open): use load_transcoder and
553           rb_transcoding_open_by_transcoder.
554           (rb_trans_open_by_transcoder_entries): new function.
555           (trans_open_i): construct entries array.
556           (rb_trans_open): use rb_trans_open_by_transcoder_entries.
558 Wed Aug 13 10:45:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
560         * tool/make-snapshot: try to find exported directory.
562 Wed Aug 13 10:16:35 2008  TAKAO Kouji  <kouji@takao7.net>
564         * doc/NEWS: Mention the Readline.vi_editing_mode?,
565           Readline.emacs_editing_mode?, Readline::HISTORY[] and
566           Readline::HISTORY.clear change.
568 Wed Aug 13 08:03:02 2008  Tanaka Akira  <akr@fsij.org>
570         * transcode.c (econv_primitive_convert): add output_size argument.
572 Wed Aug 13 07:41:03 2008  Tanaka Akira  <akr@fsij.org>
574         * transcode.c (rb_trans_conv): report last transcode_obuf_full.
575           (econv_max_output): new method Encoding::Converter#max_output.
577 Wed Aug 13 02:46:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
579         * error.c (rb_eEncCompatError): add Exception.
581         * include/ruby/ruby.h: ditto.
583         * encoding.c (rb_enc_check): use rb_eEncCompatError.
585         * string.c (rb_enc_cr_str_buf_cat): ditto.
587         * string.c (rb_str_sub_bang): ditto.
589         * string.c (rb_str_hex): ditto.
591         * string.c (rb_str_oct): ditto.
593 Wed Aug 13 02:36:47 2008  NARUSE, Yui  <naruse@ruby-lang.org>
595         * transcode.c (str_transcode): fix error message.
597 Tue Aug 12 23:42:31 2008  Tanaka Akira  <akr@fsij.org>
599         * transcode.c (rb_cEncodingConverter): new class Encoding::Converter.
600           (econv_free): new function.
601           (econv_s_allocate): ditto.
602           (econv_init): ditto.
603           (check_econv): ditto.
604           (econv_primitive_convert): new method.
605           (Init_transcode): define Encoding::Converter.
607 Tue Aug 12 23:16:09 2008  Tanaka Akira  <akr@fsij.org>
609         * string.c (rb_str_splice_0): call rb_str_drop_bytes, not rb_str_drop.
611 Tue Aug 12 19:11:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
613         * tool/make-snapshot: fix for enc.mk.
615 Tue Aug 12 19:08:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
617         * string.c (rb_str_drop_bytes): new function to drop first bytes.
619 Tue Aug 12 18:58:48 2008  Koichi Sasada  <ko1@atdot.net>
621         * vm.c, vm_insnhelper.c (vm_define_method): move
622           function place.
624 Tue Aug 12 18:56:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
626         * string.c: more descriptive aliases of rb_str_new[2-5].
627           [ruby-dev:35615]
629 Tue Aug 12 18:51:29 2008  TAKAO Kouji  <kouji@takao7.net>
631         * gc.c (getrusage_time): Returned effective value on Windows.
633 Tue Aug 12 18:51:11 2008  Tanaka Akira  <akr@fsij.org>
635         * transcode.c (rb_trans_open): free ts before raise.
637 Tue Aug 12 18:46:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
639         * ext/bigdecimal/bigdecimal.c (BigDecimalCmp): should not ignore
640           <=> comparison.  [ruby-dev:35732]
642 Tue Aug 12 18:43:10 2008  Tanaka Akira  <akr@fsij.org>
644         * enc/trans/make_transdb.rb: *.erb.c is not used anymore.
646 Tue Aug 12 18:32:33 2008  Tanaka Akira  <akr@fsij.org>
648         * transcode_data.h (rb_trans_elem_t): new field: from and to.
650         * transcode.c (trans_open_i): just record from and to.
651           (rb_trans_open): load transcodings.
653 Tue Aug 12 18:32:03 2008  Akinori MUSHA  <knu@iDaemons.org>
655         * ext/syslog/syslog.c (mSyslog_open): Use of Check_SafeStr() is
656           deprecated.
657           (mSyslogConstants_LOG_MASK, mSyslogConstants_LOG_UPTO): Use
658           NUM2INT() instead of FIX2INT() when the type of an given object
659           is not determined.
661 Tue Aug 12 18:14:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
663         * tool/transcode-tblgen.rb (#transcode_tblgen): slight message
664           improvement.
666 Tue Aug 12 17:16:58 2008  Tanaka Akira  <akr@fsij.org>
668         * transcode.c (trans_open_i): check the result of rb_transcoding_open.
670 Tue Aug 12 16:23:32 2008  Narihiro Nakamura  <authorNari@gmail.com>
672         * gc.c (gc_profile_result): use rb_str_catf.
674 Tue Aug 12 16:13:45 2008  Tanaka Akira  <akr@fsij.org>
676         * transcode_data.h (TRANSCODE_ERROR): removed.
678         * tool/transcode-tblgen.rb: 8bit byte of ASCII-8BIT is a valid
679           (but unique to ASCII-8BIT) character.
681         * transcode.c (rb_eConversionUndefined): new error.
682           (rb_eInvalidByteSequence): ditto.
684 Tue Aug 12 16:08:51 2008  Minero Aoki  <aamine@loveruby.net>
686         * lib/net/pop.rb: POP3Command should export @socket since POP
687           calls #socket.
689 Tue Aug 12 16:06:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
691         * sprintf.c, util.c (quorem, nrv_alloc, dtoa): enabled floating point
692           support.
694 Tue Aug 12 15:52:45 2008  Narihiro Nakamura  <authorNari@gmail.com>
696         * gc.c (gc_profile_result): use sprintf.
698 Tue Aug 12 15:37:40 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
700         * string.c (rb_str_intern): should check symbol table overflow.
702 Tue Aug 12 15:31:04 2008  Minero Aoki  <aamine@loveruby.net>
704         * lib/net/http.rb (send_request_with_body): Content-Length should
705           be byte length of string. (closes #203)
707 Tue Aug 12 15:17:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
709         * enc/depend: (transvpath_prefix): prefix has no extension, so replace
710           %s with "".
712 Tue Aug 12 15:03:43 2008  TAKAO Kouji  <kouji@takao7.net>
714         * test/readline/test_readline.rb (TestReadline#test_safe_level_4):
715           tested Readline.vi_editing_mode? and Readline.emacs_editing_mode?.
717 Tue Aug 12 14:25:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
719         * enc/Makefile.in (.SUFFIXES): renamed to .trans.
721         * enc/make_encmake.rb: added --encs and --no-encs options.
723         * enc/depend (TRANSVPATH): fix for nmake.
725 Tue Aug 12 14:19:53 2008  Minero Aoki  <aamine@loveruby.net>
727         * lib/net/https.rb: supress syntax warning.
729 Tue Aug 12 14:15:51 2008  Minero Aoki  <aamine@loveruby.net>
731         * lib/net/http.rb (Net::HTTP#initialize): initialize net/https
732           variables to supress syntax warning.
734 Tue Aug 12 14:15:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
736         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): fixed shadowing variable.
738 Tue Aug 12 10:25:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
740         * array.c (rb_ary_delete): Array#delete to return deleted element.
742 Tue Aug 12 10:18:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
744         * test/win32ole/test_err_in_callback.rb: do not require 'mkmf'
745           unless WIN32OLE is defined.
747 Tue Aug 12 07:41:13 2008  Tanaka Akira  <akr@fsij.org>
749         * transcode_data.h (rb_transcoder): add resetstate_func field for
750           resetting a state of stateful encoding.
752         * enc/trans/iso2022.trans (rb_EUC_JP_to_ISO_2022_JP): specify
753           finish_eucjp_to_iso2022jp for resetstate_func.
755         * tool/transcode-tblgen.rb: specify NULL for resetstate_func.
757         * transcode.c (output_replacement_character): call resetstate_func
758           before appending the replacement character.
760 Tue Aug 12 07:19:24 2008  Tanaka Akira  <akr@fsij.org>
762         * transcode.c (get_replacement_character): extracted from
763           output_replacement_character.
765 Tue Aug 12 07:00:02 2008  Tanaka Akira  <akr@fsij.org>
767         * transcode_data.h (rb_transcoder): typedef at first.
769 Tue Aug 12 06:48:35 2008  Tanaka Akira  <akr@fsij.org>
771         * transcode.c (rb_trans_conv): find second last error.
773 Tue Aug 12 00:43:44 2008  Tanaka Akira  <akr@fsij.org>
775         * transcode_data.h (rb_trans_result_t): new type.
776           (rb_trans_elem_t): new type.
777           (rb_trans_t): new type.
779         * transcode.c (transcode_dispatch_cb): removed.
780           (transcode_dispatch): removed.
781           (rb_transcoding_result_t): moved to rb_trans_result_t in
782           transcode_data.h.
783           (transcode_restartable0): goto follow_info when FUNsi.
784           (rb_transcoding_open): use get_transcoder_entry.
785           (rb_trans_open): new function.
786           (rb_trans_conv): ditto.
787           (rb_trans_close): ditto.
788           (trans_open_i): ditto.
789           (trans_sweep): ditto.
790           (more_output_buffer): take rb_trans_t instead of rb_transcoding as
791           an argument.
792           (transcode_loop): take from_encoding and to_encoding instead of tr
793           as arguments.  use rb_trans_open/rb_trans_conv/rb_trans_close.
794           (str_transcode): don't use transcode_dispatch.
796 Mon Aug 11 20:37:05 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
798         * iseq.c (rb_iseq_clone): should preserve cref_stack link.
800 Mon Aug 11 20:27:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
802         * ext/dl/cfunc.c (rb_dlcfunc_call): add taint check.
804         * ext/dl/dl.c (rb_dl_malloc): add rb_secure(2).
806         * ext/dl/dl.c (rb_dl_realloc): ditto.
808         * ext/dl/dl.c (rb_dl_free): ditto.
810         * ext/dl/dl.c (rb_dl_ptr2value): ditto.
812 Mon Aug 11 20:11:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
814         * gc.c (getrusage_time): works only if RUSAGE_SELF is defined right
815           now.
817         * gc.c (gc_profile_result): C99.
819 Mon Aug 11 18:57:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
821         * array.c (rb_ary_sample): rename #choice to #sample.  in
822           addition, sample takes optional argument, a la #first.
824 Mon Aug 11 18:28:02 2008  Narihiro Nakamura  <authorNari@gmail.com>
826         * gc.c: added GC::Profiler.
828 Mon Aug 11 17:26:16 2008  TAKAO Kouji  <kouji@takao7.net>
830         * ext/readline/README.ja: added API document for
831           Readline.vi_editing_mode? and Readline.emacs_editing_mode?.
833         * ext/readline/extconf.rb: checked rl_editing_mode variable in
834           Readline library.
836         * ext/readline/readline.c (readline_s_emacs_editing_mode_p): added
837           Readline.emacs_editing_mode? method.
838           (readline_s_vi_editing_mode_p): added Readline.vi_editing_mode?
839           method.
840           (Init_readline): ditto.
842 Mon Aug 11 16:56:40 2008  TAKAO Kouji  <kouji@takao7.net>
844         * test/readline/test_readline.rb: added test for Readline's class
845           methods.
847 Mon Aug 11 16:39:23 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
849         * class.c (clone_method): should copy cbase in cref as well.
850           [ruby-dev:35116]
852         * iseq.c (iseq_mark): mark original iseq object.
854         * iseq.c (iseq_free): do not free internal data if they have
855           original iseq to belong.
857         * iseq.c (rb_iseq_clone): a new function to clone iseq value.
859 Mon Aug 11 16:34:48 2008  Tanaka Akira  <akr@fsij.org>
861         * enc/trans/iso2022.trans: renamed from iso2022.erb.c.
863         * enc/trans/single_byte.trans: ditto.
865         * enc/trans/utf_16_32.trans: ditto.
867         * enc/trans/korean.trans: ditto.
869         * enc/trans/japanese.trans: ditto.
871         * enc/depend: follow the renaming.
873         * tool/build-transcode: ditto.
875 Mon Aug 11 15:09:23 2008  Tanaka Akira  <akr@fsij.org>
877         * configure.in (rb_cv_broken_glibc_ia64_erfc): renamed from
878           rb_broken_glibc_ia64_erfc.
879           [ruby-core:18228]
881 Mon Aug 11 10:04:34 2008  Tanaka Akira  <akr@fsij.org>
883         * transcode_data.h (rb_transcoding): rename fields.
884           readlen -> recognized_len.
885           feedlen -> readagain_len.
887         * transcode.c: follow the field renaming.
889 Sun Aug 10 22:34:55 2008  Tanaka Akira  <akr@fsij.org>
891         * transcode.c (transcode_restartable0): invalid handling simplified.
892           (transcode_restartable): use PARTIAL_INPUT for converting buffered
893           input.
895 Sun Aug 10 22:24:24 2008  Yusuke Endoh  <mame@tsg.ne.jp>
897         * encoding.c: include util.h.  [ruby-dev:35715]
899         * common.mk: ditto.
901 Sun Aug 10 20:59:54 2008  Tanaka Akira  <akr@fsij.org>
903         * transcode_data.h (rb_transcoding): new field: flags.
905         * transcode.c (load_transcoder): extracted from transcode_dispatch_cb.
906           (rb_transcoding_result_t): renamed from transcode_result_t.
907           (rb_transcoding_open): new function.
908           (rb_transcoding_convert): ditto.
909           (rb_transcoding_close): ditto.
910           (transcode_loop): use rb_transcoding_open, rb_transcoding_convert
911           and rb_transcoding_close.
912           (str_transcode): don't need rb_transcoding.
914 Sun Aug 10 18:09:16 2008  Tanaka Akira  <akr@fsij.org>
916         * tool/transcode-tblgen.rb: record checksum of
917           transcode-tblgen.rb itself.
919 Sun Aug 10 12:34:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
921         * config.guess ({powerpc-apple,i586-pc}-haiku): re-applied r18403.
922           [ruby-core:18110]
924         * config.{guess,sub}: updated to automake-1.10.1.
926 Sun Aug 10 11:45:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
928         * enc/Makefile.in (make-workdir): use MAKEDIRS.
930         * enc/depend: makes target directory before compile/link.
932         * tool/transcode-tblgen.rb: creates target directory.
934 Sun Aug 10 11:30:48 2008  Tanaka Akira  <akr@fsij.org>
936         * transcode.c: rename my_transcoding to tc and my_transcoder to tr.
938 Sun Aug 10 11:15:55 2008  Tanaka Akira  <akr@fsij.org>
940         * transcode_data.h (rb_transcoding): add feedlen field.
942         * transcode.c (transcode_restartable0): renamed from
943           transcode_restartable.
944           save input buffer into feed buffer if next character is started the
945           point before input buffer.  for example, "\x00\xd8\x01" then "\x02"
946           in UTF-16LE.  \x02 causes invalid and next character is started from
947           \x01.
948           (transcode_restartable): new function to call
949           transcode_restartable0.  if feed buffer is not empty, convert it at
950           first.
952 Sun Aug 10 11:02:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
954         * common.mk (extconf): use MAKEDIRS.
956 Sun Aug 10 09:35:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
958         * lib/irb.rb (IRB::Irb#inspect): instance_variables returns symbols
959           instead of strings now.  [ruby-dev:34930]
961 Sun Aug 10 09:22:14 2008  Tanaka Akira  <akr@fsij.org>
963         * transcode.c (transcode_char_start): refactored to remove readlen
964           argument.
965           (transcode_restartable): refactored to remove readlen variable.
967 Sun Aug 10 08:56:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
969         * gc.c (STACK_LEVEL_MAX, ruby_stack_length): returns size_t.
970           [ruby-core:18207]
972         * configure.in (rb_cv_missing__dtos18, rb_cv_missing_fconvert),
973           ext/digest/md5/md5.c, ext/openssl/ossl.c (main),
974           ext/socket/extconf.rb (ipv6, wide-getaddrinfo): main should be int.
976         * main.c (main), win32/winmain.c, wince/wincemain.c (WinMain): envp is
977           no longer used so long time.  based on a patch from Peter Bowen at
978           [ruby-core:18208]
980 Sat Aug  9 22:05:29 2008  Tanaka Akira  <akr@fsij.org>
982         * transcode.c (transcode_loop): take destination and resize function
983           as parameters.
984           (more_output_buffer): ditto.
985           (str_transcoding_resize): argument changed from rb_transcoding* to
986           VALUE.
987           (str_transcode): call transcode_loop with destination string and its
988           resize function.
990         * transcode_data.h (rb_transcoding): move ruby_string_dest and
991           flush_func to transcode_loop parameters.
993 Sat Aug  9 21:29:45 2008  NARUSE, Yui  <naruse@ruby-lang.org>
995         * common.mk: encs depend on transdb.h
997 Sat Aug  9 21:10:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
999         * configure.in (rb_cv_rshift_sign, rb_cv_binary_elf): get rid of
1000           AC_TRY_RUN.
1002 Sat Aug  9 16:33:21 2008  Tanaka Akira  <akr@fsij.org>
1004         * transcode_data.h (rb_transcoding): new fields: next_info and next_byte.
1006         * transcode.c (transcode_restartable): save/restore next_info and
1007           next_byte.
1008           sync readlen and in_p when invalid.
1010 Sat Aug  9 15:10:15 2008  Tanaka Akira  <akr@fsij.org>
1012         * transcode.c (transcode_restartable): my_transcoder argument removed.
1013           (transcode_loop): my_transcoder argument removed.
1015 Sat Aug  9 14:39:34 2008  Tanaka Akira  <akr@fsij.org>
1017         * transcode_data.h (rb_transcoding): add fields for restartable
1018           transcoding.
1019           (rb_transcoder): add max_input field.
1020           from_unit_length field is renamed to input_unit_length.
1022         * tool/transcode-tblgen.rb: generate max_input field.
1024         * enc/trans/iso2022.erb.c: follow rb_transcoder change.
1026         * enc/trans/utf_16_32.erb.c: ditto.
1028         * transcode.c (PARTIAL_INPUT): new constant.
1029           (transcode_char_start): new function.
1030           (transcode_result_t): new type.
1031           (transcode_restartable): new function.
1032           (more_output_buffer): new function.
1033           (transcode_loop): use transcode_restartable.
1035 Sat Aug  9 13:35:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1037         * stable/ext/socket/socket.c (NI_MAXHOST, NI_MAXSERV): fixed invalid
1038           preprocessor directives.  a patch from Peter Bowen at
1039           [ruby-core:18211].
1041 Sat Aug  9 06:37:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1043         * enc/make_encdb.rb, enc/trans/make_transdb.rb: skip nonexistent
1044           directory.  [ruby-dev:35802]
1046 Sat Aug  9 01:07:51 2008  Tanaka Akira  <akr@fsij.org>
1048         * enc/trans/utf_16_32.erb.c (fun_so_from_utf_32le): implemented.
1049           (fun_so_to_utf_32le): implemented.
1050           [ruby-dev:35777]
1052 Sat Aug  9 00:42:33 2008  Tanaka Akira  <akr@fsij.org>
1054         * transcode_data.h (rb_transcoder): from_unit_length field added.
1055           from_utf8 field removed.
1057         * tool/transcode-tblgen.rb: generate offsets range.
1058           follow rb_transcoder change.
1060         * transcode.c (transcode_loop): don't use from_utf8.
1061           make invalid region from_unit_length wise.
1063         * enc/trans/iso2022.erb.c: follow rb_transcoder and
1064           transcode_generate_node change.
1066         * enc/trans/utf_16_32.erb.c: follow rb_transcoder and
1067           transcode_generate_node change.
1068           explicit :invalid map removed.
1070 Fri Aug  8 23:29:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1072         * enc/depend (TRANSCSRCS): needs rule_subst to apply.
1074         * io.c (shutdown): not define if defined already.
1076 Fri Aug  8 22:47:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1078         * vm_insnhelper.c (opt_eq_func): large function to make inline.
1080         * bcc32/Makefile.sub (config.h): cannot compile a big inline function.
1082 Fri Aug  8 21:09:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1084         * common.mk (enk.mk): give not RUBY but MINIRUBY.
1086 Fri Aug  8 17:03:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1088         * configure.in (shutdown, sched_yield, pthread_attr_setinheritsched):
1089           check for Haiku.
1091         * eval_intern.h, io.c, thread_pthread.c: use autoconfisticated results.
1093 Fri Aug  8 16:52:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1095         * common.mk (enc.mk): mkmf.rb requires rbconfig.rb.
1097         * common.mk (srcs-enc): renamed from transcodes.
1099         * enc/Makefile.in (make-workdir): creates object directories.
1101         * common.mk (encdb.h): see both $(srcdir)/enc and enc.
1103         * enc/make_encdb.rb: ditto.
1105         * enc/trans/make_transdb.rb: fix for the case no transdirs are given.
1107         * enc/trans/make_transdb.rb: converts only one transcoders for each
1108           basename.
1110 Fri Aug  8 10:53:52 2008  Tanaka Akira  <akr@fsij.org>
1112         * lib/resolv.rb: randomize source port and transaction id.
1113           CVE-2008-1447.
1115         * lib/resolv-replace.rb (UDPSocket#bind): don't resolv host if host is
1116           "".
1118 Fri Aug  8 04:20:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1120         * common.mk: see both $(srcdir)/enc/trans and enc/trans.
1122         * enc/trans/make_transdb.rb: ditto.
1124 Fri Aug  8 00:05:02 2008  TAKAO Kouji  <kouji@takao7.net>
1126         * ext/.document: added readline/readline.c.
1128         * ext/readline/readline.c: changed Copyright. added RDoc.
1130         * ext/readline/README.ja: fixed typo.
1132         * ext/readline/README: contents was moved RDoc.
1134 Thu Aug  7 23:43:11 2008  Tanaka Akira  <akr@fsij.org>
1136         * transcode_data.h (rb_transcoding): new field "stateful".
1137           (rb_transcoder): preprocessor and postprocessor field removed.
1138           change arguments of func_ii, func_si, func_io and func_so.
1139           new field "finish_func".
1141         * tool/transcode-tblgen.rb: make FUNii, FUNsi and FUNio
1142           generatable.
1144         * transcode.c (transcoder_lib_table): removed.
1145           (transcoder_table): change structure.
1146           (transcoder_key): removed because the above structure change.
1147           (make_transcoder_entry): new function.
1148           (get_transcoder_entry): ditto.
1149           (rb_register_transcoder): follow the structure change.
1150           (declare_transcoder): ditto.
1151           (transcode_search_path): new function for breadth first search to
1152           find a list of converters.
1153           (transcode_search_path_i): new function.
1154           (transcode_dispatch_cb): ditto.
1155           (transcode_dispatch): use transcode_search_path.
1156           (transcode_loop): follow the argument change.
1157           (str_transcode): preprocessor and postprocessor stuff removed.
1159         * enc/trans/iso2022.erb.c: new file.  ISO-2022-JP conversion
1160           re-implemented.
1162         * enc/trans/japanese.erb.c: ISO-2022-JP stuff removed.
1164         * enc/trans/utf_16_32.erb.c: follow argument change of FUNso.
1166         [ruby-dev:35798]
1168 Thu Aug  7 22:55:44 2008  TAKAO Kouji  <kouji@takao7.net>
1170         * ext/readline/README.ja: updated API document for Readline module.
1172 Thu Aug  7 20:52:08 2008  Shugo Maeda  <shugo@ruby-lang.org>
1174         * lib/net/ftp.rb (login): raise FTPReplyError if passwd or acct
1175           is not supplied.  fixed [ruby-core:18058].
1177 Thu Aug  7 18:01:44 2008  Akinori MUSHA  <knu@iDaemons.org>
1179         * misc/ruby-mode.el (ruby-imenu-create-index-in-block): Fix the
1180           regexp to only pick definition lines properly.  `module_funtion'
1181           is not a definition of a module named `_function'.
1183 Thu Aug  7 17:47:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1185         * enc/depend: add transdb.c.
1187 Thu Aug  7 16:28:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1189         * Makefile.in, common.mk, {bcc,win}32/Makefile.sub (clean-ext): do not
1190           use miniruby.
1192 Thu Aug  7 14:17:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1194         * enc/depend: removed needless explicit commands.
1196         * lib/mkmf.rb, {bcc32,win32}/Makefile.sub (CLEANLIBS, CLEANOBJS):
1197           moved clean targets to platfrom makefiles.
1199 Thu Aug  7 13:12:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1201         * ext/socket/getaddrinfo.c (gai_strerror): ignore only on Haiku.
1202           a patch from <zn at mbf.nifty.com>, [ruby-dev:35796].
1204 Thu Aug  7 06:31:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1206         * test/ruby/process.rb (test_popen_fork): skip a test which is
1207           freeze in FreeBSD.
1209 Thu Aug  7 06:05:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1211         * config.guess: add powerpc-apple-haiku, i586-pc-haiku.
1212           see [ruby-core:18110]
1214 Thu Aug  7 05:51:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1216         * eval_intern.h: Add support to Haiku. see [ruby-core:18110]
1218         * include/ruby/defines.h: ditto.
1220         * configure.in: ditto.
1222         * thread_pthread.c: ditto.
1224         * io.c: ditto.
1226         * lib/mkmf.rb: ditto.
1228         * ext/socket/getaddrinfo.c: ditto.
1230         * ext/socket/extconf.rb: ditto.
1232         * ext/socket/socket.c: ditto.
1234         * ext/socket/addrinfo.h: ditto.
1236         * ext/socket/getnameinfo.c: ditto.
1238 Thu Aug  7 05:43:32 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1240         * common.mk: mkdir enc/trans before build tables.
1242 Thu Aug  7 05:18:30 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1244         * enc/depend: enc/*.c is source but enc/trans/*.c is generated.
1246 Thu Aug  7 05:14:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1248         * regenc.c (code_to_mbc): raise RangeError Integer#chr
1249           when more than 255 is given with single byte encoding.
1250           [ruby-dev:35789]
1252 Thu Aug  7 05:06:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1254         * gc.c (run_final): runs finalizers with the object terminated.
1256         * gc.c (rb_gc_call_finalizer_at_exit): keeps finalized objects from
1257           linking to freelist.
1259 Thu Aug  7 04:43:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1261         * enc/depend: for build in other than srcdir.
1263 Wed Aug  6 22:40:48 2008  Tanaka Akira  <akr@fsij.org>
1265         * tool/transcode-tblgen.rb (transcode_generate_node): code
1266           argument removed.
1268 Wed Aug  6 21:25:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1270         * gc.c (chain_finalized_object): deletes finalizers to be invoked from
1271           finalizer_table.
1273         * gc.c (rb_gc_call_finalizer_at_exit): warns when could not invoke
1274           finalizers.
1276 Wed Aug  6 20:56:43 2008  Tanaka Akira  <akr@fsij.org>
1278         * enc/depend: transcode table generation depends on
1279           tool/transcode-tblgen.rb.
1281 Wed Aug  6 20:48:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1283         * gc.c (rb_gc_call_finalizer_at_exit): self-referencing finalizers
1284           cannot be invoked.  [ruby-dev:35681]
1286 Wed Aug  6 20:44:41 2008  Tanaka Akira  <akr@fsij.org>
1288         * tool/transcode-tblgen.rb: distinguish UNDEF and INVALID.
1289           [ruby-dev:35709]
1291         * transcode.c (transcode_loop): don't need rb_enc_mbclen now.
1293 Wed Aug  6 14:40:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1295         * common.mk (transdb.h): requires transcoders.
1297         * enc/depend (srcs): target for transcoders.
1299 Wed Aug  6 14:04:08 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1301         * enc/depend: replace not only $(<:...) but also $<.
1303 Wed Aug  6 13:54:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1305         * win32/Makefile.sub (config.status): export BASERUBY.
1307         * enc/depend: avoid GNU make'ism.
1309 Wed Aug  6 07:59:02 2008  Tanaka Akira  <akr@fsij.org>
1311         * tool/transcode-tblgen.rb (ActionMap#eql?): use == to compare @map.
1313 Wed Aug  6 07:45:26 2008  Tanaka Akira  <akr@fsij.org>
1315         * tool/transcode-tblgen.rb: show generating tables in verbose mode.
1316           (transcode_generate_node): call ActionMap#generate_node with showing
1317           table name.
1319         * enc/trans/utf_16_32.erb.c: use transcode_generate_node.
1321 Wed Aug  6 06:55:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1323         * thread.c (thread_start_func_2): propagates fatal error and system
1324           exit to the main thread.
1326 Wed Aug  6 05:31:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1328         * encoding.c (rb_to_encoding_index, rb_to_encoding): check if the name
1329           is ascii compatible as well as Encoding.find.
1331         * transcode.c (str_encode): no need to duplicate first.
1333 Wed Aug  6 05:08:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1335         * array.c (rb_ary_sort_bang): reset to real class.
1337         * file.c (rb_find_file_ext, rb_find_file): ditto.
1339         * io.c (io_reopen): ditto.
1341 Wed Aug  6 03:56:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1343         * common.mk (transcodes), tool/build-transcode: generates transcode
1344           sources.
1346         * enc/trans/{japanese,korean,single_byte,utf_16_32}.c: to be
1347           autogenerated now.
1349         * enc/depend: added rules for .c from .erb.c.
1351 Tue Aug  5 20:46:20 2008  Tanaka Akira  <akr@fsij.org>
1353         * tool/build-transcode: new file.
1355         * tool/transcode-tblgen.rb: new file.
1357         * enc/trans/make_transdb.rb: exclude *.erb.c.
1359         * enc/depend: exclude *.erb.c.
1361         * enc/trans/utf_16_32.erb.c: new file.
1363         * enc/trans/single_byte.erb.c: new file.
1365         * enc/trans/japanese.erb.c: new file.
1367         * enc/trans/korean.erb.c: new file.
1369         * enc/trans/iso-8859-2-tbl.rb: new file.
1371         * enc/trans/iso-8859-3-tbl.rb: new file.
1373         * enc/trans/iso-8859-4-tbl.rb: new file.
1375         * enc/trans/iso-8859-5-tbl.rb: new file.
1377         * enc/trans/iso-8859-6-tbl.rb: new file.
1379         * enc/trans/iso-8859-7-tbl.rb: new file.
1381         * enc/trans/iso-8859-8-tbl.rb: new file.
1383         * enc/trans/iso-8859-9-tbl.rb: new file.
1385         * enc/trans/iso-8859-10-tbl.rb: new file.
1387         * enc/trans/iso-8859-11-tbl.rb: new file.
1389         * enc/trans/iso-8859-13-tbl.rb: new file.
1391         * enc/trans/iso-8859-14-tbl.rb: new file.
1393         * enc/trans/iso-8859-15-tbl.rb: new file.
1395         * enc/trans/eucjp-tbl.rb: new file.
1397         * enc/trans/sjis-tbl.rb: new file.
1399         * enc/trans/euckr-tbl.rb: new file.
1401         * enc/trans/utf_16_32.c: regenerated.
1403         * enc/trans/single_byte.c: regenerated.
1405         * enc/trans/japanese.c: regenerated.
1407         * enc/trans/korean.c: regenerated.
1409         [ruby-dev:35730]
1411 Tue Aug  5 18:02:53 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
1413         * test/io/nonblock/test_flush.rb (TestIONonblock#test_flush):
1414           rescue some exceptions. [ruby-dev:35638]
1416 Tue Aug  5 16:40:06 2008  Shugo Maeda  <shugo@ruby-lang.org>
1418         * lib/net/ftp.rb (chdir): handle 5xx errors correctly.
1419           fixed [ruby-core:18057].
1421 Tue Aug  5 16:38:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1423         * include/ruby/win32.h, bcc32/Makefile.sub (config.h): bcc 5.8 has
1424           stdint.h.
1426 Tue Aug  5 16:13:05 2008  Shugo Maeda  <shugo@ruby-lang.org>
1428         * lib/net/imap.rb (disconnect): do not refer SSL::SSLSocket for
1429           environments without OpenSSL. fixed [ruby-dev:35755].
1431 Tue Aug  5 14:19:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1433         * file.c (rb_stat_mode): generalized st_mode mask.
1435 Tue Aug  5 12:43:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1437         * io.c (retry_sendfile, retry_read): ENOSYS and EWOULDBLOCK are not
1438           defined on every platforms.
1440 Tue Aug  5 12:34:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1442         * transcode_data.h (TRANSCODE_ERROR): common transcode failure
1443           exception, would be changed later.
1445         * enc/trans/japanese.c (UNSUPPORTED_MODE): unsupported mode transition
1446           exception.
1448 Tue Aug  5 03:29:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1450         * array.c (rb_ary_sort_bang): respect overridden <=> for String and
1451           Fixnum.  [ruby-core:17708]
1453         * include/ruby/node.h (NOEX_BASIC): basic definition method flag.
1455         * include/ruby/intern.h, vm_method.c (rb_method_basic_definition_p):
1456           new function to check if the method is not redefined after the
1457           initialization.
1459         * vm_method.c (rb_obj_respond_to): use rb_method_basic_definition_p.
1461 Mon Aug  4 20:39:06 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
1463         * Makefile.in (update-rubyspec): renamed the rubyspec directory
1464           "spec". Changed directory structure.
1466         * Makefile.in (test-rubyspec): ditto.
1468         * spec/README: described the structure of "spec" directory.
1470         * spec/default.mspec: configured for Matz's Ruby Implementation.
1472 Mon Aug  4 19:21:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1474         * array.c (rb_ary_tmp_new): added.
1476         * vm_eval.c (vm_call_super): fixed typo, and get rid of too large
1477           alloca.  [ruby-core:17922]
1479 Mon Aug  4 16:48:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1481         * parse.y (deferred_nodes, compstmt, arg, fixup_nodes, range_op): fix
1482           up fixnum range literal in conditional as automagical line number
1483           comparison.  [ruby-core:12124], [ruby-dev:35731]
1485 Mon Aug  4 14:41:25 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
1487         * lib/net/smtp.rb (Net::SMTP::rcptto): fix a typo. a patch from
1488           Masao Takaku <masao at nii.ac.jp>
1489           fix [ruby-dev:35489].
1491 Mon Aug  4 14:08:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1493         * marshal.c (dump_ensure), process.c (run_exec_dup2),
1494           string.c (rb_str_replace), transcode.c (transcode_dispatch): fixed
1495           memory leaks.  based on patches from shinichiro.h <shinichiro.hamaji
1496           AT gmail.com> at [ruby-dev:35751].
1498 Sun Aug  3 19:32:52 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1500         * ext/win32ole/win32ole.c (hash2named_arg): refactoring.
1502         * ext/win32ole/win32ole.c (ole_invoke, fole_respond_to, ev_on_event,
1503           fev_off_event): accepts Symbol argument.
1505         * test/win32ole/test_win32ole.rb: ditto.
1507         * test/win32ole/test_win32ole_event.rb: ditto.
1509 Sun Aug  3 10:41:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1511         * string.c (rb_str_shared_replace): fixed memory leak.  a patch from
1512           shinichiro.h <shinichiro.hamaji AT gmail.com> at [ruby-dev:35742]
1514 Sat Aug  2 22:55:41 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1516         * test/win32ole/test_err_in_callback.rb: remove temporary files.
1517           some refactoring.
1519 Sat Aug  2 15:51:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1521         * parse.y (yylex): 8 and 9 in octal integer should cause compile
1522           error.  [ruby-dev:35729]
1524 Sat Aug  2 01:06:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1526         * enc/trans/japanese.c: add U+FF5E to EUC-JP.
1527           [ruby-dev:35720] [ruby-dev:35722]
1529 Fri Aug  1 23:49:44 2008  TAKAO Kouji  <kouji@takao7.net>
1531         * ext/readline/extconf.rb: checked to have clear_history in
1532           readline library.
1533         * ext/readline/readline.c (hist_get, hist_each, Init_readline):
1534           The offset specified for the argument of history_get() might be
1535           different in GNU Readline and libedit. If use libedit, it was
1536           corrected that the computational method of the offset specified
1537           for the argument of history_get() when the Readline module was
1538           initialized was decided.
1539           (hist_get, hist_set): If use libedit, accesses first an input
1540           content in history when specifies the negative offset for the
1541           argument of history_get() or replace_history_entry(). Then
1542           checks the offset is negative in ruby.
1543           (rb_remove_history): When compiling, it corrects it to warning
1544           when libedit is used.
1545           (hist_clear, Init_readline): added Readline::HISTORY.clear
1546           method. [ruby-dev:35551]
1547         * test/readline/test_readline_history.rb: added unit test for
1548           Readline::HISTORY.
1550 Fri Aug  1 23:26:45 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1552         * transcode.c (transcode_loop): undefined character is replaced with
1553           only one character. [ruby-dev:35709]
1555 Fri Aug 01 23:26:22 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
1557         Merged r16430(akr), r16431(akr), r16433(akr), r16469(nobu), and
1558         r17874(akr) from ruby_1_8.
1560         * Makefile.in (update-rubyspec): added
1562         * Makefile.in (test-rubyspec): added
1564 Fri Aug  1 23:16:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1566         * enc/trans/japanese.c: add support for CP51932,
1568 Fri Aug  1 22:59:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1570         * enc/trans/japanese.c: add U+FF0C,
1572 Fri Aug  1 21:49:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1574         * test/sdbm/test_sdbm.rb: add some tests.
1576 Fri Aug  1 21:36:00 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1578         * gc.c (allocate_heaps, assign_heap_slot, rb_newobj_from_heap):
1579           reset during_gc before raising NoMemoryError.
1581 Fri Aug  1 21:29:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1583         * vm.c (Init_BareVM): check failure of malloc().
1585 Fri Aug  1 20:55:27 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1587         * enc/trans/japanese.c (to_SHIFT_JIS_EF_BF_offsets): add U+FFF3,
1588           U+FFF4, U+FFF5.
1590         * enc/trans/japanese.c (to_SHIFT_JIS_EF_BF_infos): ditto.
1592         * enc/trans/japanese.c (to_EUC_JP_EF_BF_infos): added.
1594         * enc/trans/japanese.c (to_EUC_JP_EF_BF): added.
1596         * enc/trans/japanese.c (to_EUC_JP_EF_infos): change size.
1597           [ruby-dev:35714]
1599 Fri Aug 01 18:27:15 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
1601         * parse.y (parser_yylex): removed an useless conditional, and magic
1602           comment are ignored unless at the first of line.
1604         * test/ruby/test_m17n.rb (test_magic_comment_vim): added.
1606         * test/ruby/test_m17n.rb (test_magic_comment_at_variaous_positions):
1607           added.
1609 Fri Aug  1 14:54:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1611         * win32/win32.c (rb_w32_seekdir): no need to rewind to seek forward.
1613 Fri Aug  1 05:31:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1615         * transcode.c (output_replacement_character):
1616           rename from _get_replacement_character.
1618         * transcode.c (output_replacement_character):
1619           fix replacement on UTF-32{BE,LE}. [ruby-dev:35705]
1621         * transcode.c (transcode_loop): ditto.
1623         * test/ruby/test_transcode.rb (test_invalid_replace):
1624           add for above.
1626 Fri Aug  1 01:01:49 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1628         * proc.c (rb_proc_call_with_block): reduce comparison.
1630 Wed Jul 30 21:08:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1632         * ext/syck/syck.c (syck_free_parser): fix memory leak by
1633           YAML::Syck.compile.
1635 Thu Jul 31 22:17:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1637         * ext/bigdecimal/bigdecimal.c (VpMult): prevent memory leak.
1639 Thu Jul 31 20:05:56 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1641         * test/ruby/test_transcode.rb (test_unicode_public_review_issue_121):
1642           fix option1 and 3.
1644 Thu Jul 31 19:54:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1646         * transcode.c (get_replacement_character): use U+FFFD as replacement
1647           character when convert to Unicode.
1649         * test/ruby/test_transcode.rb (test_unicode_public_review_issue_121):
1650           rename from test_public_review_issue_121.
1652         * test/ruby/test_transcode.rb (test_unicode_public_review_issue_121):
1653           enable option2.
1655 Thu Jul 31 17:00:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1657         * transcode.c (get_replacement_character): fix: invalid byte sequence
1658           is always replaced "\x00?".
1660 Thu Jul 31 16:37:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1662         * test/rubygems/test_gem_ext_configure_builder.rb
1663           (test_self_build_fail): remove extra newline. [ruby-dev:35704]
1665 Thu Jul 31 15:11:11 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
1667         * test/ruby/test_transcode.rb: added test_shift_jis
1668           (contributed by Yoshihiro Kambayashi) and
1669           test_public_review_issue_121
1670           (see http://www.unicode.org/review/pr-121.html)
1672 Thu Jul 31 13:18:30 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1674         * include/ruby/ruby.h (struct RString): size of ary must be
1675           RSTRING_EMBED_LEN_MAX + 1.
1677 Thu Jul 31 12:23:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1679         * pack.c (pack_unpack): upper half of hexdigits has never been used.
1681 Thu Jul 31 11:31:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1683         * ext/syck/syck.h (ASSERT): fix typo at r18176.
1685         * ext/syck/rubyext.c (rb_syck_compile): expression in ASSERT() has no
1686           effect unless debug mode.
1688 Thu Jul 31 10:51:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1690         * iseq.c (ruby_iseq_disasm_insn): suppress warnings on platforms which
1691           int size differs from pointer size.
1693         * ext/openssl/ossl_asn1.c (ossl_asn1_get_asn1type): ditto
1695         * ext/syck/rubyext.c (rb_syck_err_handler),
1696           (syck_default_error_handler): ditto.
1698 Thu Jul 31 02:21:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1700         * ext/syck/rubyext.c (rb_syck_compile): remove meaningless branch
1701           that misleads into thinking that the variable sav may be
1702           uninitialized.
1704 Thu Jul 31 01:25:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1706         * thread.c (rb_mutex_unlock_all): mutex is no longer a ruby object.
1708 Thu Jul 31 01:18:07 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1710         * parse.y (magic_comment_encoding): remove meaningless null check.
1712 Thu Jul 31 01:09:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1714         * ext/bigdecimal/bigdecimal.c (VpIsRoundMode): fix tautology
1715           condition.
1717 Thu Jul 31 00:58:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1719         * pack.c (pack_unpack): reduced static variables.
1721 Thu Jul 31 00:10:20 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1723         * proc.c (rb_proc_call_with_block): prevent null reference.
1725 Wed Jul 30 22:19:13 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1727         * parse.y (vtable_free): remove meaningless null check.
1729 Wed Jul 30 22:08:25 2008  Tanaka Akira  <akr@fsij.org>
1731         * dir.c (struct dir_data): change path field char * to VALUE.
1732           (mark_dir): new function for mark path field.
1733           (free_dir): follow the path field change.
1734           (dir_s_alloc): ditto.
1735           (dir_initialize): ditto.
1736           (dir_s_open): ditto.
1737           (dir_inspect): ditto.
1738           (dir_path): return (duplicate of) the path field to preserve
1739           encoding.  [ruby-dev:35685]
1741 Wed Jul 30 22:06:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1743         * string.c (sym_inspect): remove dead code.
1745 Wed Jul 30 21:32:52 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1747         * ChangeLog: fix wrong method name and add reference.
1749 Wed Jul 30 21:30:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1751         * regparse.c (name_add): fix memory leak.
1753 Wed Jul 30 21:08:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1755         * regparse.c (parse_exp): fix memory leak at Regexp.new("x{1,1}").
1757 Wed Jul 30 17:48:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1759         * win32/win32.c (rb_w32_select): recalc the rest of timeout for each
1760           iterations.  [ruby-core:18015]
1762 Tue Jul 29 23:37:37 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1764         * io.c (io_ungetc): raise NotImplementedError when ungetc is called
1765           against dummy encoding IO.  [ruby-dev:35686]
1767         * io.c (rb_io_getline_1): ditto when gets with delimiter is called.
1769         * io.c (io_getc): ditto when getc is called.
1771         * test/ruby/test_io_m17n.rb (test_terminator_stateful_conversion,
1772           test_getc_stateful_conversion, test_ungetc_stateful_conversion):
1773           these tests should raise NotImplementedError.
1775 Tue Jul 29 22:55:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1777         * test/ruby/test_io.rb (pipe): run reader thread and writer thread.
1779 Tue Jul 29 21:38:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1781         * ext/bigdecimal/bigdecimal.c (Init_bigdecimal): fix typo.
1783 Tue Jul 29 21:35:59 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1785         * test/etc/test_etc.rb (test_passwd): age field may be string under
1786           some environments.
1788 Tue Jul 29 17:54:35 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1790         * dir.c (char_casecmp): fix: return 0 if either of characters is NUL.
1792 Tue Jul 29 13:17:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1794         * test/etc/test_etc.rb (test_getpwuid): fix for users whose uid is
1795           shared.
1797 Tue Jul 29 05:37:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1799         * file.c (rb_find_file_ext, rb_find_file): explicit relative path
1800           which starts with "./" or "../" should be searched from cwd
1801           instead of load path.  [ruby-dev:35673]
1803 Tue Jul 29 02:39:46 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1805         * math.c (math_atanh): raise EDOM on FreeBSD when atanh(1).
1807         * math.c (math_log): ditto.
1809         * math.c (math_log2): ditto.
1811         * math.c (math_log10): ditto.
1813         * test/ruby/test_math.rb: test for above.
1815 Tue Jul 29 01:41:15 2008  Tanaka Akira  <akr@fsij.org>
1817         * dir.c (struct dir_data): intenc field removed.
1818           (dir_s_alloc): intenc initialization removed.
1819           (dir_initialize): :internal_encoding option removed.  dirname code
1820           conversion removed.
1821           (dir_enc_str): code conversion removed.
1822           [ruby-dev:35661]
1824 Mon Jul 28 21:32:17 2008  Kouhei Sutou  <kou@cozmixng.org>
1826         * test/rss/: use PNG instead of zlib as binary data.
1828 Mon Jul 28 21:24:33 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1830         * thread_win32.[ch] (cond_every_entry, rb_thread_cond_struct): reverted
1831           r18239 because r18245 made the changes unnecessary.
1833         * thread.c (rb_mutex_struct): define after including thread_{pthread,
1834           win32}.c.
1836 Mon Jul 28 21:00:10 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1838         * test/ruby/test_require.rb (test_require_too_long_filename):
1839           Kernel#require does not use dln_find_file_r (at r18242).
1841 Mon Jul 28 20:17:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1843         * vm_core.h: move the definition of struct rb_mutex_struct.
1845         * thread.c: ditto.
1847 Mon Jul 28 18:58:46 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1849         * thread.c (mutex_unlock): fix typo.
1851 Mon Jul 28 18:15:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1853         * file.c (rb_find_file_ext, rb_find_file): not to split load path with
1854           path separator.  [ruby-Bugs-21356]
1856 Mon Jul 28 18:14:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1858         * win32/win32.c (overlapped_socket_io, fcntl, rb_w32_close): must not
1859           pass a pointer to int which is smaller than st_data_t on mswin64.
1861 Mon Jul 28 16:49:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1863         * win32/win32.c (CreateChild, overlapped_socket_io): suppress
1864           warnings.
1866 Mon Jul 28 16:06:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1868         * win32/win32.c (MAXPATHLEN): define before use.
1870 Mon Jul 28 16:01:12 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1872         * thread_win32.[ch] (cond_every_entry, rb_thread_cond_struct): moved
1873           the definitions from .c to .h because rb_thread_cond_struct is used
1874           in vm_core.h.
1876 Mon Jul 28 14:29:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1878         * dln.c (load_lib): use dln_find_file_r instead of dln_find_file.
1880 Mon Jul 28 00:18:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1882         * vm_core.h, thread.c: It is now prohibited to use Data_Get_Struct in
1883           *_free against an object that is going to be free'ed.  So, change type
1884           of thread_t#keeping_mutexes from VALUE to mutex_t.
1886         * vm.c: remove mark to keeping_mutexes.
1888 Sun Jul 27 23:32:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1890         * test/openssl/test_ssl.rb (server_loop): rescue Errno::EINVAL and
1891           Errno::ECONNABORTED.
1893 Sun Jul 27 22:11:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1895         * bootstraptests/method.rb: increase RLIMIT_STACK size to 4M+8Kbytes
1896           because FreeBSD fails this less than that.
1898 Sun Jul 27 21:45:59 2008  Koichi Sasada  <ko1@atdot.net>
1900         * gc.c (gc_mark_children, obj_free): T_DEFERRED should not be appear.
1902         * gc.c (gc_sweep, finalize_list): fix to decrement heap_slot#limit
1903           after executing finalizer.
1905 Sun Jul 27 14:48:37 2008  Koichi Sasada  <ko1@atdot.net>
1907         * include/ruby/ruby.h: add a type T_DEFERRED.
1909         * gc.c: fix deferred finalizer system.  finalize processes of
1910           T_DATA and T_FILE are executed after gc process.
1911           And fix to use BUILTIN_TYPE() instead of seeing flag.
1913         * thread.c, vm_core.h: add RUBY_VM_SET_FINALIZER_INTERRUPT()
1914           and check intterupt_flag at rb_thread_execute_interrupts().
1916         * thread.c (mutex_mark): fix to mark next_mutex.
1918         * vm.c (rb_thread_mark): fix to mark keeping_mutexes.
1920 Sun Jul 27 09:15:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1922         * dln.h (dln_find_exe, dln_find_file): deprecated, use reentrant
1923           versions instead.
1925 Sun Jul 27 09:02:32 2008  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
1927         * lib/rinda/tuplespace.rb: merged from 1.8.
1929         * test/rinda/test_rinda.rb: merged from 1.8.
1931 Sat Jul 26 22:45:18 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
1933         * sample/exyacc.rb: fixed NoMethodError(Kernel#sub!).
1934           replaced use of special variables with explicit IO
1935           operations.
1937 Sat Jul 26 21:17:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1939         * ext/win32ole/win32ole.c (Init_win32ole): add
1940           WIN32OLE_EVENT#handler=, WIN32OLE_EVENT#handler
1942         * test/win32ole/test_win32ole_event.rb: ditto.
1944 Sat Jul 26 07:44:14 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1946         * ext/win32ole/win32ole.c (add_event_call_back): remove unused
1947           variable.
1949 Fri Jul 25 23:48:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1951         * gc.c (gc_sweep, obj_free, run_final): defer finalizers of IO and
1952           Data.  [ruby-dev:35578]
1954 Fri Jul 25 23:35:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1956         * lib/webrick/httputils.rb (WEBrick::HTTPUtils#split_header_value):
1957           reduce backtrack.  based on a fix by Christian Neukirchen
1958           <chneukirchen AT gmail.com>.
1960 Fri Jul 25 21:55:38 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1962         * test/ruby/enc/test_koi8.rb: move from test/ruby/test_koi8.rb.
1964 Fri Jul 25 21:09:32 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1966         * ext/win32ole/win32ole.c (ole_invoke, add_event_callback,
1967           rescue_callback): refactoring.
1969 Fri Jul 25 20:52:44 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1971         * test/win32ole/err_in_callback.rb: add test of raising
1972           exception in WIN32OLE_EVENT callback.
1974         * test/win32ole/test_err_in_callback.rb: ditto.
1976 Fri Jul 25 20:43:57 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1978         * ext/win32ole/win32ole.c (Init_win32ole): add
1979           WIN32OLE_EVENT#off_event.
1981         * test/win32ole/test_win32ole_event.rb: ditto.
1983         * test/win32ole/test_win32ole_event.rb: some refactoring.
1985 Fri Jul 25 19:50:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1987         * regint.c (xmalloc, xrealloc, xfree): not to use ruby managed memory.
1989 Fri Jul 25 15:52:40 2008  Koichi Sasada  <ko1@atdot.net>
1991         * vm.c (vm_invoke_proc): skip setting safe_level if
1992           it from bmethod.  This change makes test/ruby/test_proc.rb pass.
1994 Fri Jul 25 10:00:00 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
1996         * test/ruby/test_transcode.rb: refactoring/cleanup of
1997           test_iso_2022_jp(_1)
1999 Fri Jul 25 04:12:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2001         * ext/nkf/nkf.c (rb_nkf_convert): output of mime encode is US-ASCII.
2002           [ruby-list:45257]
2004 Fri Jul 25 02:43:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2006         * sample/coverage.rb: move from lib/coverage.rb because this remains in
2007           an early phase of development.
2009 Fri Jul 25 00:10:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2011         * file.c (rb_find_file_ext, rb_find_file): converts Windows style path
2012           to Cygwin path.  [ruby-dev:35647]
2014 Thu Jul 24 16:30:21 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2016         * win32/win32.c (exit_handler): use st_free_table() to free socklist.
2018         * win32/win32.c (rb_w32_pipe_exec, rb_w32_accept, rb_w32_socket,
2019           rb_w32_socketpair): should check and release fd and sockets/handles
2020           if an error occurs in rb_w32_open_osfhandle().
2022 Thu Jul 24 16:05:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2024         * win32/win32.c (overlapped_socket_io): avoid warnings.
2026         * thread_win32.c (ubf_handle): refactoring.
2028 Thu Jul 24 07:01:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2030         * ext/win32ole/win32ole.c: got rid of improper casts.
2032 Wed Jul 23 23:19:15 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2034         * test/socket/test_tcp.rb (test_recvfrom): replace an irrelevant test
2035           for old behavior.
2037 Wed Jul 23 21:38:16 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2039         * test/ruby/test_marshal.rb: suppress warning during test.
2041 Wed Jul 23 21:35:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2043         * test/ruby/test_dir.rb: suppress warning during test.
2045 Wed Jul 23 18:27:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2047         * ext/tk/{stubs,tcltklib}.c, ext/tk/tkutil/tkutil.c: fix warnings
2048           about constness and signedness.
2050 Wed Jul 23 17:04:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2052         * ext/openssl/openssl_missing.h (d2i_of_void): define for older
2053           versions.  [ruby-dev:35637]
2055 Wed Jul 23 13:53:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2057         * ext/curses/extconf.rb: use try_static_assert.
2059 Wed Jul 23 10:06:19 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
2061         * test/zlib/test_zlib.rb (TestZlibDeflate#test_params): suppress a
2062           finalizer warning.
2064 Wed Jul 23 06:25:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2066         * ext/syck: suppress warnings more.
2068 Wed Jul 23 03:19:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2070         * ext/nkf/nkf-utf8/nkf.c (struct input_code.name, input_codename):
2071           constified.
2073 Wed Jul 23 03:02:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2075         * ext/syck: suppress warnings.
2077 Wed Jul 23 00:34:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2079         * ext/openssl: suppress warnings.
2081 Tue Jul 22 23:01:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2083         * ext/syck/rubyext.c, ext/syck/yaml2byte.c, ext/syck/emitter.c,
2084           ext/syck/syck.c, ext/syck/handler.c, ext/syck/syck.h: suppress GCC
2085           warning.
2087 Tue Jul 22 20:42:24 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2089         * ext/bigdecimal/bigdecimal.c (BigDecimalCmp): BigDecimal#<=> should
2090           return nil if an argument can't be coerced into BigDecimal.
2092         * ext/bigdecimal/bigdecimal.h, ext/bigdecimal/bigdecimal.c
2093           (VpIsNegDoubleZero, VpItoV): comment out unused functions.
2095 Tue Jul 22 20:33:54 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2097         * test/rdoc/test_rdoc_parser_ruby.rb (teardown): close tempfile.
2099 Tue Jul 22 19:38:38 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
2101         * test/ruby/test_transcode.rb: added two comments
2103 Tue Jul 22 18:08:34 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2105         * README.EXT, README.EXT.ja: mention about FIX2LONG and NUM2LONG.
2106           see [ruby-dev:35197]
2108 Tue Jul 22 17:53:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2110         * compile.c (insn_data_to_s_detail), file.c (rb_stat_inspect),
2111           iseq.c (ruby_iseq_disasm_insn, ruby_iseq_disasm),
2112           process.c (pst_message), re.c (match_inspect): use rb_str_catf.
2114         * dir.c (dir_inspect), iseq.c (iseq_inspect, insn_operand_intern): use
2115           rb_sprintf.
2117         * error.c (rb_name_error, rb_raise, rb_loaderror, rb_fatal): use
2118           rb_vsprintf.
2120 Tue Jul 22 17:20:25 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2122         * win32/win32.c (init_func): new function to get API's address which
2123           is often used and not supported on all Windows.
2125         * win32/win32.c (overlapped_socket_io): shouldn't use overlapped I/O if
2126           CancelIo() is not supported.
2128 Tue Jul 22 16:47:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2130         * include/ruby/intern.h, sprintf.c (rb_str_catf, rb_str_vcatf): new
2131           functions.  [ruby-dev:35597]
2133         * string.c (rb_str_capacity): new function to return the capacity.
2135 Tue Jul 22 16:08:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2137         * ext/socket/socket.c (connect_blocking, socks_connect_blocking,
2138           ruby_connect): cast.
2140 Tue Jul 22 11:05:08 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
2142         * test/ruby/test_dir.rb: use realpath of tmpdir. [ruby-dev:35481]
2144         * test/ruby/test_process.rb: ditto.
2146 Tue Jul 22 09:51:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2148         * misc/ruby-mode.el: fix here-doc strings with inner quotes.  patches
2149           by Nathan Weizenbaum <nex342 AT gmail.com> from [ruby-core:17615]
2150           through [ruby-core:17910].
2152 Tue Jul 22 04:26:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2154         * include/ruby/intern.h (rb_str_buf_new2): optimization for literals.
2156         * string.c (str_buf_cat): returns VALUE.
2158 Tue Jul 22 03:34:01 2008  Eric Hodel  <drbrain@segment7.net>
2160         * lib/rdoc*: Update to RDoc 2.1.0 r112.
2162 Tue Jul 22 02:51:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2164         * include/ruby/intern.h (rb_str_buf_cat2, rb_str_cat2): optimization
2165           for literals.
2167 Tue Jul 22 02:50:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2169         * README.EXT, README.EXT.ja (1.5 Manipulating Ruby data): fix the
2170           prototype of rb_vsprintf, and added rb_str_cat2.  [ruby-dev:35622]
2172 Mon Jul 21 17:15:38 2008  Tanaka Akira  <akr@fsij.org>
2174         * encoding.c (rb_filesystem_encoding): use locale encoding on Unix.
2175           [ruby-dev:35617]
2177 Mon Jul 21 15:29:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2179         * missing/vsnprintf.c (struct __sbuf, FILE): use size_t.
2181         * sprintf.c (ruby__sfvwrite): ditto.
2183 Mon Jul 21 13:55:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2185         * README.EXT, README.EXT.ja (1.5 Manipulating Ruby data): mentioned
2186           rb_sprintf and rb_vsprintf.  [ruby-dev:35611]
2188 Mon Jul 21 10:25:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2190         * io.c (prepare_getline_args): check if rs is a string when non-nil
2191           lim is given.  [ruby-dev:35610]
2193 Mon Jul 21 04:55:20 2008  Tanaka Akira  <akr@fsij.org>
2195         * dir.c (dir_initialize): use rb_convert_type instead of
2196           rb_check_convert_type to prevent SEGV by Dir.new(".", true).
2197           (dir_initialize): use FilePathValue before rb_enc_get(dirname) to
2198           prevent SEGV by Dir.new(0).
2200 Mon Jul 21 04:42:15 2008  Tanaka Akira  <akr@fsij.org>
2202         * re.c (rb_reg_s_union): useless rb_enc_get call removed to prevent
2203           SEGV by Regexp.union("", nil).
2205 Sun Jul 20 22:50:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2207         * compile.c (iseq_compile_each): NODE_POSTEXE should set each end
2208           procs only once.  [ruby-dev:35596]
2210 Sun Jul 20 16:00:37 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2212         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): use rb_protect
2213           instead of rb_rescue2. [ruby-dev:35595]
2215 Sun Jul 20 01:23:24 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2217         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): little refactoring.
2219         * ext/win32ole/win32ole.c (EVENTSINK_GetIDsOfNames): return
2220           ITypeInfo::GetIDsOfNames().
2222 Sat Jul 19 09:31:35 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2224         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): little refactoring.
2226         * ext/win32ole/win32ole.c: add document of inspect methods.
2228 Sat Jul 19 06:08:43 2008  Eric Hodel  <drbrain@segment7.net>
2230         * lib/rdoc*: Import RDoc r104.  Various make test-all fixes.
2232 Sat Jul 19 00:27:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2234         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): fixed wrong check
2235           about 64bit positive value.
2237 Fri Jul 18 23:23:37 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2239         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): avoid cfp consistency
2240           error when exception raised in event callback.
2242 Fri Jul 18 14:52:14 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2244         * win32/win32.c (socklist): table for registering socket options
2245           (currently only O_NONBLOCK).
2247         * win32/win32.c (StartSockets, exit_handler): alloc/free socklist.
2249         * win32/win32.c (is_socket): use socklist.
2251         * win32/win32.c (rb_w32_accept, rb_w32_socket, rb_w32_socketpair):
2252           register new socket to socklist.
2254         * win32/win32.c (rb_w32_close): remove closing socket from socklist.
2256         * win32/win32.c (fcntl): register socket options.
2258         * win32/win32.c (overlapped_socket_io): send to/recv from socket with
2259           overlapped operation if the socket is not nonblocking mode.
2260           [experimental]
2262         * win32/win32.c (rb_w32_send, rb_w32_sendto, rb_w32_recv,
2263           rb_w32_recvfrom): use overlapped_socket_io().
2265         * win32/win32.c (open_ifs_socket): set overlapped mode. this is the
2266           default mode of winsock's socket(), so lacking it is an old bug.
2268 Fri Jul 18 09:44:30 2008
2270         * lib/rdoc/*: Import RDoc r101.
2272 Thu Jul 17 23:45:55 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2274         * test/rdoc/test_rdoc_c_parser.rb (teardown): close tempfile.
2276 Thu Jul 17 21:08:49 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2278         * test/ruby/test_process.rb (test_getpriority, test_setpriority): use
2279           PRIO_PROCESS instead of PRIO_USER.
2281 Thu Jul 17 20:41:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2283         * pack.c (pack_unpack): fix v and V with big endian.
2284           [1].pack("V").unpack("V") was [4294967296].
2286 Thu Jul 17 20:35:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2288         * pack.c (pack_pack): fix i! with big endian.  [1].pack("i!") was
2289           "\0\0\0\0".
2291 Thu Jul 17 16:48:40 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2293         * ext/socket/socket.c (ruby_connect): select() for connect() has
2294           mean only when the socket is non-blocking.
2296 Thu Jul 17 10:55:24 2008  Eric Hodel  <drbrain@segment7.net>
2298         * mkconfig.rb: Simplify expression for RDoc.
2300 Thu Jul 17 10:21:15 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2302         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): strict check.
2303           fixed [ruby-dev:33683]
2305 Thu Jul 17 04:19:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2307         * thread.c (thread_start_func_2): wake up joining threads.
2309         * thread.c (sleep_forever, sleep_timeval): return when interrupted.
2310           [ruby-dev:35542]
2312         * thread.c (timer_thread_function): restore main thread status.
2313           [ruby-core:17270]
2315 Thu Jul 17 01:27:38 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2317         * io.c (appendline): remove invalid access.
2319 Wed Jul 16 18:04:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2321         * signal.c (signal_exec, trap_handler): trap accepts a string as
2322           command.  [ruby-dev:35533]
2324 Wed Jul 16 00:04:30 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2326         * test/ruby/envutil.rb (Test::Unit::Assertions#assert_in_out_err): new
2327           method.
2329         * test/ruby/test_argf.rb: use assert_in_out_err instead of
2330           EnvUtil.rubyexec.
2332         * test/ruby/test_module.rb: ditto.
2334         * test/ruby/test_require.rb: ditto.
2336         * test/ruby/test_objectspace.rb: ditto.
2338         * test/ruby/test_object.rb: ditto.
2340         * test/ruby/test_string.rb: ditto.
2342         * test/ruby/test_method.rb: ditto.
2344         * test/ruby/test_variable.rb: ditto.
2346         * test/ruby/test_io.rb: ditto.
2348         * test/ruby/test_rubyoptions.rb: ditto.
2350         * test/ruby/test_exception.rb: ditto.
2352         * test/ruby/test_class.rb: ditto.
2354         * test/ruby/test_thread.rb: ditto.
2356 Tue Jul 15 22:34:03 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2358         * win32/Makefile.sub (ruby_version): follow changes in configure.in.
2360 Tue Jul 15 21:58:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2362         * ext/tk/{,tkutil/}extconf.rb: ruby/ruby.h no longer needs to be
2363           checked.
2365         * ext/tk/{tcltklib.c,tkutil/tkutil.c}: check macros for each headers.
2367 Tue Jul 15 21:45:41 2008  Akinori MUSHA  <knu@iDaemons.org>
2369         * ext/tk/extconf.rb, ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: Do
2370           not test ruby/ruby.h, which makes OS X's gcc pick the wrong
2371           header file from Ruby.framework.
2373 Tue Jul 15 21:31:26 2008  Akinori MUSHA  <knu@iDaemons.org>
2375         * configure.in (--with-ruby-version): Add a new option to specify
2376           the ruby version string for version specific directories.
2377           [ruby-dev:35490]
2379         * mkconfig.rb: Definition of ruby_version is now determined by the
2380           configure script.
2382 Tue Jul 15 18:14:20 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2384         * ext/socket/socket.c (ruby_connect, s_accept): check before readable/
2385           writable by select() instead of wrapping in blocking region.
2387         * ext/socket/socket.c (bsock_send, s_recvfrom, udp_send, unix_send_io,
2388           unix_recv_io): should check readable/writable before calling blocking
2389           functions.
2390           see [ruby-dev:35446]
2392 Tue Jul 15 18:12:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2394         * thread_win32.c (ubf_handle): cancel blocking IO if it can (only
2395           Vista). see [ruby-dev:35446]
2397         * win32/win32.c (errmap): add ERROR_OPERATION_ABORTED as EINTR.
2399 Mon Jul 14 20:35:21 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2401         * test/win32ole/test_win32ole_event.rb (teardown): fix typo.
2403 Mon Jul 14 18:47:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2405         * transcode.c (transcode_loop): constified.
2407         * transcode.c (str_transcode): rb_str_set_len() sets a delimiter.
2409         * transcode_data.h (rb_transcoder): constified preprocessor and
2410           postprocessor input.
2412         * enc/trans/japanese.c: ditto.
2414 Sun Jul 13 05:37:50 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2416         * include/ruby/ruby.h (PRI_PTRDIFF_PREFIX, PRI_SIZE_PREFIX): typo.
2418         * {bcc32,win32}/Makefile.sub: (SIZEOF_SIZE_T, SIZEOF_PTRDIFF_T): added.
2420 Sat Jul 12 23:54:55 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2422         * win32/Makefile.sub (LIBRUBY_DLDFLAGS): import library which created
2423           with DLL is broken. save import library which created by lib.exe and
2424           install it.
2425           fixed the problem mentioned at the postscript of [ruby-dev:35448]
2427 Sat Jul 12 23:24:21 2008  Tanaka Akira  <akr@fsij.org>
2429         * ext/socket/socket.c: use PRIuSIZE.
2431 Sat Jul 12 22:41:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2433         * include/ruby/ruby.h (PRI_PTRDIFF_PREFIX, PRI_SIZE_PREFIX): fixed typo.
2435 Sat Jul 12 22:30:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2437         * include/ruby/intern.h (HAVE_RUBY_RUBY_H): defines macros so that
2438           extconf.rb do not need to check if headers exist under separated
2439           directory.  [ruby-dev:35437]
2441         * include/{ruby,rubyio,rubysig}.h, include/ruby/intern.h: use
2442           "ruby/..." instead of <ruby/...>.
2444 Sat Jul 12 22:17:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2446         * configure.in (sizeof ptrdiff_t): check for size of ptrdiff_t.
2448         * include/ruby/ruby.h (PRI?PTRDIFF, PRI?SIZE): printf conversion
2449           specifiers for ptrdiff_t and size_t/ssize_t.
2451         * insns.def (leave), marshal.c (long_toobig), transcode.c
2452           (str_transcode), vm_dump.c (control_frame_dump, stack_dump_each),
2453           (debug_print_register, debug_print_pre): t and z length modifiers
2454           are C99.
2456 Sat Jul 12 16:02:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2458         * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): requires
2459           webrick/cookie.  [ ruby-Bugs-21139 ]
2461 Sat Jul 12 09:25:07 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2463         * test/win32ole/test_win32ole_event.rb: add test
2464           for WIN32OLE_EVENT#on_event_with_outargs
2466         * test/win32ole/test_win32ole_event.rb(teardown): calling
2467           WIN32OLE_EVENT.message_loop
2469 Sat Jul 12 01:54:13 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2471         * win32/win32.c (rb_w32_select): shoudn't pass non-socket handle to
2472           original select().
2474 Fri Jul 11 23:05:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2476         * test/zlib/test_zlib.rb: add a test for Zlib::Deflate#params.
2478 Fri Jul 11 22:58:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2480         * ext/zlib/zlib.c (rb_deflate_params): flush before deflateParams.
2481           [ruby-core:17675]
2483 Fri Jul 11 22:09:01 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2485         * win32/setup.rb, win32/Makefile.sub (PLATFORM): use $(PLATFORM)
2486           instead of $(OS) because ENV["OS"] is used in test-all (drb).
2488 Fri Jul 11 20:51:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2490         * io.c (rb_io_wait_readable, rb_io_wait_writable): check if the file
2491           descriptor is closed.
2493         * thread.c (rb_thread_wait_fd_rw): ditto.
2495 Fri Jul 11 16:16:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2497         * win32/win32.c (rb_w32_accept, rb_w32_socket, rb_w32_socketpair):
2498           prohibit inheritance of sockets, too. [experimental]
2500 Fri Jul 11 14:39:49 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2502         * win32/win32.c (CreateChild): the measures for Vista is no longer
2503           unnecessary.
2505 Fri Jul 11 06:16:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2507         * common.mk (process.o): depends on util.h.
2509 Fri Jul 11 05:07:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2511         * include/ruby/win32.h (pipe): prohibit inheritance.
2512           fixed: [ruby-dev:35421]
2514 Fri Jul 11 00:56:46 2008  Koichi Sasada  <ko1@atdot.net>
2516         * thread.c (thread_create_core): fix GC problem.
2517           [ruby-core:17669]
2519 Thu Jul 10 22:06:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2521         * lib/pstore.rb (PStore#transaction): return the result from the
2522           block.  [ruby-core:17718]
2524 Thu Jul 10 21:15:49 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2526         * test/win32ole/test_win32ole_typelib.rb: add some illegal argument
2527           test.
2529         * test/win32ole/test_win32ole_type.rb: ditto.
2531         * test/win32ole/test_win32ole_event.rb: ditto.
2533         * test/win32ole/test_win32ole_param.rb: ditto.
2535         * test/win32ole/test_win32ole_method.rb: ditto.
2537 Thu Jul 10 19:38:35 2008  wanabe  <s.wanabe@gmail.com>
2539         * test/ruby/envutil.rb (assert_normal_exit): r17993 revert.
2541 Thu Jul 10 18:29:41 2008  wanabe  <s.wanabe@gmail.com>
2543         * test/ruby/envutil.rb (assert_normal_exit): finish writing script
2544           before spawn("ruby") to avoid blocking in win32.
2546 Thu Jul 10 17:20:50 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2548         * win32/win32.c (insert): follow recent changes of globbing.
2550 Thu Jul 10 14:09:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2552         * ext/coverage/coverage.c (rb_coverage_start): return nil.
2554 Thu Jul 10 12:41:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2556         * thread.c (rb_thread_wait_for): fixed variable name.
2558 Thu Jul 10 12:09:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2560         * vm_core.h (rb_thread_t), vm.c (rb_thread_mark), process.c
2561           (rb_last_status_get, rb_last_status_set, rb_last_status_clear):
2562           moved last_status from rb_vm_t.  [ruby-dev:35414]
2564         * vm.c (th_init2): initialize last_status with nil.
2566 Thu Jul 10 12:09:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2568         * thread.c (rb_thread_wait_for): wait until timed out only when
2569           sleeping with timeout.
2571 Wed Jul  9 22:41:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2573         * thread.c (sleep_timeval): wait until timed out.  [ruby-core:17270]
2575 Wed Jul  9 20:58:16 2008  Tanaka Akira  <akr@fsij.org>
2577         * array.c (rb_ary_fill): don't raise even if length is negative.
2578           [ruby-core:17483], [ruby-core:17661]
2580 Wed Jul  9 20:18:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2582         * configure.in (rb_cv_va_args_macro): check for __VA_ARGS__.
2584         * thread.c (thread_debug): show source name and line if possible.
2586         * thread_{pthread,win32}.c (rb_thread_create_timer_thread): needs more
2587           stack for debug.
2589 Wed Jul  9 11:13:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2591         * lib/profiler.rb (Profiler__#print_profile): sort in the descending
2592           order of cumulative time.
2594 Wed Jul  9 11:11:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2596         * dir.c (struct glob_args, rb_glob_caller, rb_glob2, push_pattern),
2597           (glob_brace): make consistent prototypes.
2599         * dir.c (push_glob): set enc in the caller of rb_glob_caller as well
2600           as rb_glob2.
2602 Wed Jul  9 09:12:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2604         * ext/nkf/nkf-utf8/nkf.c (options): use input_endian.
2606 Wed Jul  9 01:38:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2608         * string.c (rb_str_succ): alphabets or numerics mutually enclosing
2609           non-alphanumeric characters can carry up.  e.g., "1.999".succ should
2610           be "2.000".
2612 Wed Jul  9 00:12:31 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2614         * thread.c (rb_set_coverages, rb_reset_coverages): enable and disable
2615           coverage measurement.
2617         * thread.c (rb_get_coverages): rename and move from vm.c.
2619         * vm.c (rb_vm_get_coverages): ditto.
2621         * iseq.c (prepare_iseq_build): ditto.
2623         * thread.c (clear_coverage): ditto.
2625         * parse.y (coverage): ditto.
2627         * ext/coverage/coverage.c: use above functions, add new method
2628           Coverage.start and fix rdoc .
2630 Tue Jul  8 23:02:35 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2632         * ext/win32ole/win32ole.c (find_default_source): bug fix when
2633           OLE object does not have default source interface.
2635         * test/win32ole/test_win32ole_event.rb: ditto.
2637 Tue Jul  8 22:56:23 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2639         * thread.c (rb_enable_coverages): hide coverage array by setting 0 to
2640           klass during measurement.
2642         * parse.y (coverage, yycompile0): ditto.
2644         * iseq.c (prepare_iseq_build): use rb_hash_lookup instead of
2645           rb_hash_aref.
2647         * thread.c (rb_coverage_result): restore klass of coverage array
2648           and return it.
2650         * theaad.c (update_coverage): chcek whether its klass is 0.
2652 Tue Jul  8 22:28:25 2008  Koichi Sasada  <ko1@atdot.net>
2654         * lib/debug.rb, lib/profile.rb: fix to use RubyVM.
2656         * lib/rdoc/parsers/parse_c.rb: ditto.
2658 Tue Jul  8 21:45:22 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2660         * vm.c (rb_vm_mark): mark the last element of special_exceptions.
2662 Tue Jul  8 19:55:40 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2664         * ext/win32ole/win32ole.c (find_default_source): try to
2665           find COCLASS when WIN32OLE object is not COCLASS.
2667         * test/win32ole/test_win32ole_event.rb: ditto
2669 Tue Jul  8 13:38:22 2008  Koichi Sasada  <ko1@atdot.net>
2671         * compile.h: fix to skip inserting a trace insn.
2673 Tue Jul  8 11:41:17 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2675         * dir.c: shoudn't use ruby object in globbing, because glob service
2676           routines are called before initializing ruby on some platforms (ex.
2677           windows).
2679 Tue Jul  8 10:08:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2681         * dir.c (Next): use rb_enc_mbclen. [ruby-dev:35390]
2683 Tue Jul  8 07:59:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2685         * dir.c (Next): use rb_enc_precise_mbclen.
2687 Tue Jul  8 02:27:23 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2689         * dir.c: preserve encoding of strings in glob and fnmatch.
2691         * include/ruby/ruby.h: related changes.
2693 Tue Jul  8 00:22:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2695         * string.c (rb_str_succ): limit carrying in an alphanumeric region if
2696           exists.  [ruby-dev:35094]
2698 Mon Jul  7 20:39:28 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2700         * ext/win32ole/win32ole.c(Init_win32ole): add
2701           WIN32OLE_TYPE#source_ole_types, WIN32OLE_TYPE#default_ole_types,
2702           WIN32OLE_TYPE#default_event_sources.
2704         * test/win32ole/test_win32ole_type.rb: ditto.
2706 Mon Jul  7 19:45:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2708         * test/ruby/test_dir.rb (test_chroot_nodir): add Errno::EPERM.
2710 Mon Jul  7 17:12:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2712         * lib/ipaddr.rb (IPAddr#initialize): get rid of ArgumentError in
2713           IPAddr#to_range.  a patch from okkez <okkez000 AT gmail.com> in
2714           [ruby-dev:35091].
2716 Mon Jul  7 01:24:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2718         * file.c (rb_file_s_extname): fix for file name with spaces.
2719           [ruby-talk:307404]
2721 Mon Jul  7 00:59:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2723         * thread_pthread.c (ruby_init_stack): prior STACK_END_ADDRESS if
2724           found.  [ruby-core:17624]
2726 Sun Jul  6 23:48:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2728         * ext/socket/socket.c (bsock_send, s_recvfrom, ruby_connect, s_accept),
2729           (udp_send, unix_send_io, unix_recv_io): blocking region support.
2731 Sun Jul  6 18:34:35 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2733         * test/win32ole/test_win32ole_type.rb (test_initialize): add
2734           more assertions.
2736 Sun Jul  6 10:12:21 2008  Kouhei Sutou  <kou@cozmixng.org>
2738         * lib/test/unit/collector/objectspace.rb
2739           (Test::Unit::Collector::ObjectSpace::NAME): fix a typo.
2741 Sun Jul  6 00:56:51 2008  Tanaka Akira  <akr@fsij.org>
2743         * ext/socket/socket.c (host_str): fix type mismatch in rb_raise
2744           format and argument.
2745           (port_str): ditto.
2746           (unix_recv_io): ditto.
2747           (sock_s_unpack_sockaddr_un): ditto.
2749 Sat Jul  5 23:42:23 2008  Tanaka Akira  <akr@fsij.org>
2751         * include/ruby/ruby.h (NUM2INT): cast to int.
2752           (FIX2INT): ditto.
2753           (NUM2UINT): cast to unsigned int.
2754           (FIX2UINT): ditto.
2756 Sat Jul  5 23:10:41 2008  Tanaka Akira  <akr@fsij.org>
2758         * io.c (rb_pipe): new function for handling EMFILE and ENFILE
2759           error of pipe().
2760           (UPDATE_MAXFD_PIPE): removed.
2761           (pipe_open): use rb_pipe.
2762           (rb_io_s_pipe): ditto.
2764         * process.c (pipe_nocrash): use rb_pipe.
2766         * include/ruby/intern.h (rb_pipe): declared.
2768 Sat Jul  5 22:22:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2770         * thread.c (thread_initialize): NUM2INT() returns int.
2772         * thread.c (timer_thread_function), thread_pthread.c (thread_timer),
2773           thread_win32.c (timer_thread_func), thread_{pthread,win32}.c
2774           (rb_thread_create_timer_thread): passing VM.
2776 Sat Jul  5 20:53:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2778         * test/win32ole/test_word.rb: check word installed.
2780 Sat Jul  5 16:12:54 2008  Narihiro Nakamura  <authorNari@gmail.com>
2782         * gc.c: revert. before lazy sweep.
2784 Sat Jul  5 09:55:44 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2786         * ext/win32ole/win32ole.c: add WIN32OLE#ole_respond_to?
2788         * test/win32ole/test_win32ole.rb: ditto.
2790 Sat Jul  5 08:48:05 2008  Tanaka Akira  <akr@fsij.org>
2792         * re.c (unescape_nonascii): add has_property argument not to
2793           raise error by /\p{Hiragana}\u{3042}/ in EUC-JP script.
2794           (rb_reg_preprocess): use has_property argument to make regexp
2795           encoding fixed.
2797 Sat Jul  5 08:29:47 2008  Tanaka Akira  <akr@fsij.org>
2799         * re.c (unescape_nonascii): make regexp fixed_encoding if \p is used.
2800           fixed [ruby-core:17279].
2802 Fri Jul  4 23:12:53 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2804         * ext/win32ole/win32ole.c (d2time): fix the bug of VT_DATE
2805           to String conversion when negative value.
2807         * test/win32ole/test_win32ole_variant.rb: ditto.
2809 Fri Jul  4 22:15:29 2008  Tanaka Akira  <akr@fsij.org>
2811         * lib/test/unit/testcase.rb: collect decendants of
2812           Test::Unit::TestCase using inherited.
2814         * lib/test/unit/autorunner.rb: don't use ObjectSpace.each_object.
2816         * lib/test/unit/collector/dir.rb: ditto.
2818         * lib/test/unit/collector/objectspace.rb: ditto.
2820         [ruby-core:17126]
2822 Fri Jul  4 20:43:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2824         * include/ruby/oniguruma.h (OnigEncoding): removed auxiliary_data.
2826         * include/ruby/encoding.h (ENC_DUMMY_P): moved dummy encoding flag to
2827           rb_encoding from Encoding instance.
2829         * encoding.c (rb_encoding_list): list of Encoding instances.
2831         * encoding.c (struct rb_encoding_entry): moved base encoding from
2832           instance variable.
2834 Fri Jul  4 17:51:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2836         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): proper check.
2838 Fri Jul  4 14:17:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2840         * lib/net/ftp.rb (Net::FTP#sendport): use divmod.  [ruby-core:17557]
2842 Fri Jul  4 11:08:37 2008  Narihiro Nakamura  <authorNari@gmail.com>
2844         * gc.c (garbage_collect_force): sweep is completely ended.
2846         * gc.c (os_obj_of): invoke garbage_collect_force() when freelist none.
2848 Fri Jul  4 05:01:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2850         * numeric.c (rb_num2uint, rb_fix2uint): typo.
2852 Fri Jul  4 02:21:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2854         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): also needs checking
2855           negative value. see [ruby-dev:33683]
2857 Thu Jul  3 23:26:36 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2859         * include/ruby/intern.h: remove prototypes about coverage.
2861         * iseq.c (prepare_iseq_build): add prototype.
2863         * parse.y (coverage): ditto.
2865         * thread.c (clear_coverage): ditto.
2867         * thread.c (update_coverage): use rb_sourceline.
2869         * thread.c (rb_get_coverages): rename and move to vm.c.
2871         * vm.c (rb_vm_get_coverages): ditto.
2873         * ext/coverage/coverage.c: add rdoc.
2875 Thu Jul  3 21:51:21 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2877         * ext/coverage/coverage.c, ext/coverage/extconf.rb: eliminate
2878           COVERAGE__ and introduce coverage.so instead.  How to measure
2879           coverage: (1) require "coverage.so", (2) require or load Ruby source
2880           file, and (3) Coverage.result will return the same hash as COVERAGE__.
2881           [ruby-dev:35324]
2883         * thread.c (rb_enable_coverages): start coverage measurement by using
2884           rb_add_event_hook.
2886         * thread.c (rb_get_coverages): returns current results of coverage
2887           measurement.
2889         * include/ruby/intern.h: add prototype for above two functions.
2891         * vm_core.h, vm.c: add field of coverages to rb_vm_t.
2893         * insns.def (trace): remove special handling for COVERAGE__.
2895         * iseq.c (prepare_iseq_build): switch COVERAGE__ to
2896           rb_get_coverages().
2898         * parse.y (coverage): ditto.
2900         * thread.c (clear_coverage): ditto.
2902         * lib/coverage.rb: use coverage.so instead of COVERAGE__.
2904 Thu Jul  3 21:20:45 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2906         * thread.c (thread_initialize): NUM2INT returns long.
2908 Thu Jul  3 21:06:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2910         * eval.c (Init_eval): typo fixed in r17833.
2912 Thu Jul  3 19:44:44 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2914         * ext/win32ole/win32ole.c (Init_win32ole): remove duplicate line.
2916 Thu Jul  3 16:08:36 2008  Tanaka Akira  <akr@fsij.org>
2918         * configure.in (erfc): erfc of glibc comes with Debian GNU/Linux Etch
2919           on IA64 is broken.  erfc(10000.0) aborts.
2920           use missing/erf.c instead.
2921           http://sources.redhat.com/ml/libc-hacker/2005-08/msg00008.html
2923 Thu Jul  3 12:49:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2925         * lib/net/smtp.rb (Net::SMTP::start): use 'localhost' instead of
2926           'localhost.localdomain'.  [ruby-dev:35333]
2928         * lib/net/smtp.rb (Net::SMTP::SMTP.start): ditto.
2930 Thu Jul  3 07:06:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2932         * Makefile.in (SET_LC_MESSAGES): LC_MESSAGES must be C.
2934 Thu Jul  3 07:02:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2936         * eval.c (Init_eval), gc.c (Init_GC), proc.c (Init_Proc): freeze
2937           messages of preallocated special exceptions also.
2939 Thu Jul  3 04:39:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2941         * gc.c (rb_during_gc): VALUE cache is irrelevant.
2943 Thu Jul  3 01:44:01 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2945         * regint.h (GET_ALIGNMENT_PAD_SIZE, ALIGNMENT_RIGHT): cast pointer to
2946           uintptr_t instead of unsigned int.
2948 Thu Jul  3 01:23:13 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2950         * sprintf.c: include ieeefp.h to refer isinf.
2952         * ext/bigdecimal/bigdecimal.c: ditto.
2954         * ext/json/ext/generator/generator.c: ditto.
2956         * rational.c: ditto.
2958 Thu Jul  3 01:01:57 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2960         * missing/tgamma.c (tgamma): remove unused variable.
2962 Thu Jul  3 00:18:00 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2964         * ext/win32ole/win32ole.c: avoid creating Ruby object during
2965           GC. thanks to arton <artonx AT yahoo.co.jp>. [ruby-dev:35313]
2967         * test/win32ole/test_win32ole_event.rb: ditto.
2969 Thu Jul  3 00:09:31 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2971         * gc.c: add rb_during_gc(). based on a patch from arton <artonx AT
2972           yahoo.co.jp> at [ruby-dev:35313].
2974         * include/ruby/intern.h: ditto.
2976 Wed Jul  2 09:49:10 2008  Narihiro Nakamura  <authorNari@gmail.com>
2978         * gc.c (gc_lazy_sweep): use lazy sweep algorithm for response
2979           performance gain.
2981         * gc.c (garbage_collect_force): mark and lazysweep invoke, after
2982           erasing all mark.
2984         * gc.c (GC_NOT_LAZY_SWEEP): not lazy sweep flag. for debug.
2986 Wed Jul  2 03:42:44 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2988         * test/ruby/test_settracefunc.rb: fix expected traces for
2989           RubyVM::FrozenCore's event and r17744.
2991 Wed Jul  2 03:10:41 2008  Koichi Sasada  <ko1@atdot.net>
2993         * compile.h, insns.def: reduce insn operand of "trace".
2995         * include/ruby/ruby.h: add RUBY_EVENT_COVERAGE event.
2997 Wed Jul  2 02:02:34 2008  Koichi Sasada  <ko1@atdot.net>
2999         * proc.c, vm.c: fix to refer next ruby level cfp to make binding.
3001 Wed Jul  2 01:58:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3003         * insns.def (trace): C99ism.
3005 Wed Jul  2 01:53:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3007         * Add coverage measurement constant COVERAGE__.  This constant is not
3008           for casual use.  Usage: (1) assign {} to COVERAGE__, (2) require or
3009           load Ruby source file, and (3) COVERAGE__["sourcefilepath"] will
3010           return an array whose elements represent number of executions per
3011           line of source code.
3013         * vm_core.h: add field of coverage array to iseq.
3015         * iseq.c (prepare_iseq_build): ditto.
3017         * insns.def (trace): update coverage array.
3019         * parse.y (coverage): create and initialize coverage array.
3021         * compile.h (ADD_TRACE): add trace instruction to update covearge
3022           array.
3024         * thread.c (clear_coverage): delete coverage array when forking.
3025           Otherwise, double count of coverage may occur.
3027         * lib/coverage.rb: sample coverage measurement tool.
3029         * error.c: distinguish explicitly between parse_in_eval and
3030           mild_compile_error.
3032         * load.c: ditto.
3034         * vm_eval.c: ditto.
3036 Tue Jul  1 21:32:43 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3038         * lib/test/unit/ui/console/testrunner.rb: prevent destructive
3039           modification to $0.
3041         * test/rubygems/gemutilities.rb (build_rake_in): move from
3042           test_gem_ext_rake_builder.rb.
3044         * test/rubygems/test_gem_ext_rake_builder.rb: ditto.
3046         * test/rubygems/test_gem_installer.rb: override Gem.ruby and
3047           ENV["rake"].
3049         * test/rubygems/test_gem_uninstaller.rb: ditto.
3052 Tue Jul  1 21:13:17 2008  Koichi Sasada  <ko1@atdot.net>
3054         * compile.c, vm.c, insns.def: call FrozenCore.set_postexe method
3055           instead to use "postexe" insn.
3057         * id.c, id.h: add a prepared id for above.
3059 Tue Jul  1 21:09:58 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3061         * lib/mkmf.rb (create_tmpsrc): we need to include COMMON_HEADERS,
3062           namely inclusion of ruby.h, because _GNU_SOURCE is now defined
3063           there (if any) and socket.so requires it on Linux systems.
3065 Tue Jul  1 20:55:07 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3067         * eval.c (rb_interrupt): trick to suppress GCC warning.
3069         * sprintf.c (rb_str_format): ditto.
3071 Tue Jul  1 20:44:36 2008  Koichi Sasada  <ko1@atdot.net>
3073         * tool/instruction.rb: RubyVM is not module.
3075 Tue Jul  1 19:31:24 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3077         * ext/digest/digest.c (rb_digest_instance_inspect): constified.
3079         * variable.c (rb_path2class): field precision should have type int.
3081 Tue Jul  1 19:01:00 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3083         * enc/shift_jis.c (code_is_ctype): HALF WIDTH KATAKANA is
3084           a character.
3086 Tue Jul  1 17:56:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3088         * missing/vsnprintf.c (BSD__uqtoa): constified.
3090 Tue Jul  1 17:50:44 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3092         * enc/make_encdb.h: always add ';' at the end of line.
3094 Tue Jul  1 17:44:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3096         * iseq.c (COMPILE_OPTION_FALSE), time.c (timegm_noleapsecond),
3097           thread.c (eKillSignal, eTerminateSignal),
3098           missing/vsnprintf.c (BSD_vfprintf): constified.
3100 Tue Jul  1 17:37:43 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3102         * enc/ascii.c: ISO C does not allow extra ';' outside of a
3103           function
3105         * enc/us_ascii.c: ditto.
3107         * enc/utf_8.c: ditto.
3109         * enc/big5.c: ditto.
3111         * enc/euc_jp.c: ditto.
3113         * enc/euc_kr.c: ditto.
3115         * enc/euc_tw.c: ditto.
3117         * enc/gb2312.c: ditto.
3119         * enc/gbk.c: ditto.
3121         * enc/iso_8859_1.c: ditto.
3123         * enc/iso_8859_2.c: ditto.
3125         * enc/iso_8859_3.c: ditto.
3127         * enc/iso_8859_4.c: ditto.
3129         * enc/iso_8859_5.c: ditto.
3131         * enc/iso_8859_6.c: ditto.
3133         * enc/iso_8859_7.c: ditto.
3135         * enc/iso_8859_8.c: ditto.
3137         * enc/iso_8859_9.c: ditto.
3139         * enc/iso_8859_10.c: ditto.
3141         * enc/iso_8859_11.c: ditto.
3143         * enc/iso_8859_13.c: ditto.
3145         * enc/iso_8859_14.c: ditto.
3147         * enc/iso_8859_15.c: ditto.
3149         * enc/iso_8859_16.c: ditto.
3151         * enc/koi8_r.c: ditto.
3153         * enc/shift_jis.c: ditto.
3155         * enc/utf_16be.c: ditto.
3157         * enc/utf_32be.c: ditto.
3159         * enc/utf_32le.c: ditto.
3161         * enc/windows_1251.c: ditto.
3163         * process.c (run_exec_rlimit): ISO C90 forbids mixed declarations
3164           and code
3166         * include/ruby/ruby.h (enum ruby_special_consts): ISO C forbids
3167           comma at end of enumerator list
3169         * include/ruby/ruby.h (enum ruby_value_type): ditto.
3171         * eval_intern.h (enum): ditto.
3173         * vm_core.h (enum rb_thread_status): ditto.
3175         * parse.y (enum lex_state_e): ditto.
3177         * parse.y (enum string_type): ditto.
3179         * process.c (enum): ditto.
3181         * ruby.c (enum dump_flag_bits): ditto.
3183         * ruby.c (enum disable_flag_bits): ditto.
3185         * enc/gb18030.c (enum): ditto.
3187 Tue Jul  1 17:21:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3189         * regexec.c (stack_double): use MatchStackLimitSize atomically.
3191         * regparse.c (onig_free_shared_cclass_table): OnigTypeCClassTable
3192           needs atomicity
3194         * regsyntax.c: constified all predefined OnigSyntaxTypes.
3196 Tue Jul  1 16:57:44 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3198         * include/ruby/st.h (struct st_table): type of bit-field
3199           'num_entries' is a GCC extension
3201         * include/ruby/ruby.h (rb_intern): prefix __extnsion__ for
3202           braced-groups within expressions.
3204         * include/ruby/intern.h (rb_usascii_str_new2): ditto.
3206         * include/ruby/intern.h (rb_tainted_str_new2): ditto.
3208         * include/ruby/intern.h (rb_str_new2): ditto.
3210 Tue Jul  1 15:01:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3212         * lib/rubygems/ext/builder.rb (Gem::Ext::Builder.make),
3213           (Gem::Ext::Builder.run): EXIT_SUCCESS may be 0 or may not.
3215         * test/rubygems/test_gem_ext_rake_builder.rb (build_rake_in): override
3216           Gem.ruby and ENV["rake"].
3218         * runruby.rb: bin/rake does not exist in archdir where architecture
3219           depend script (i.e. rbconfig.rb) exists.
3221 Tue Jul  1 13:19:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3223         * array.c (rb_ary_fill): check if beg is too big.
3225 Tue Jul  1 12:01:16 2008  Koichi Sasada  <ko1@atdot.net>
3227         * compile.c, insns.def, vm.c, vm_core.h: remove some insns
3228           (undef, alias, definemethod).
3229           Call RubyVM::FrozenCore's singleton method instead.
3230           Add "putiseq" and "putspecialobject" instructions.
3232         * id.c, id.h: add ids for above.
3234         * tool/parse.rb: "VM" no longer exists.  Use RubyVM instead.
3236 Tue Jul  1 03:28:16 2008  Eric Hodel  <drbrain@segment7.net>
3238         * test/rubygems/test_ext_configure_builder.rb:  Apply locale-free
3239           patch by Yusuke ENDOH.  [ruby-core:17444].
3241         * runruby.rb: Set ENV['rake'].  Patch by Yusuke ENDOH
3242           [ruby-core:17442].
3244 Tue Jul  1 01:07:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3246         * lib/cgi.rb (CGI::QueryExtension.read_multipart): blanks inside
3247           double quotes are allowed.  [ruby-list:45140]
3249 Tue Jul  1 00:59:43 2008  Tanaka Akira  <akr@fsij.org>
3251         * numeric.c (num_coerce): call rb_Float(x) first.  don't depend on
3252           evaluation order of function arguments.
3254 Tue Jul  1 00:49:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3256         * gc.c (rb_newobj): abort GC phase before rb_bug.
3258 Mon Jun 30 23:15:07 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3260         * test/openssl/test_ssl.rb (start_server): shutdown TCPServer before
3261           close.
3263 Mon Jun 30 23:01:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3265         * common.mk (RUBY_H_INCLUDES): common headers which are included with
3266           ruby.h together.
3268 Mon Jun 30 22:57:50 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3270         * test/ruby/test_settracefunc.rb (test_raise): reveal an exception
3271           hided by rescue modifier.
3273 Mon Jun 30 22:49:32 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3275         * test/ruby/test_array.rb (test_aset): access with too big index
3276           raises not ArgumentError but IndexError now.
3278 Mon Jun 30 22:30:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3280         * lib/test/unit/collector/dir.rb (recursive_collect): r15662 reverted.
3282 Mon Jun 30 22:27:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3284         * ext/stringio/stringio.c (strio_getline): fix for nil and "" as
3285           separator.  [ruby-dev:34591]
3287 Mon Jun 30 22:21:30 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3289         * io.c (argf_each_line): pass args to each_line. [ruby-dev:34958]
3291 Mon Jun 30 22:12:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3293         * gc.c (chain_finalized_object): should not delete from finalizer
3294           table until run.
3296         * gc.c (rb_gc_call_finalizer_at_exit): deferred_final_list may be
3297           empty first.
3299 Mon Jun 30 18:57:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3301         * gc.c (gc_finalize_deferred): allow object allocation in finalizers.
3303         * gc.c (rb_gc_call_finalizer_at_exit): ditto.
3305 Mon Jun 30 14:41:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3307         * gc.c (rb_newobj): prohibit call of rb_newobj() during gc when
3308           USE_VALUE_CACHE is not defined (normal case).
3310 Mon Jun 30 10:28:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3312         * ext/syslog/syslog.c (syslog_write): syslog operations should be
3313           protected from $SAFE level 4.  a patch from Keita Yamaguchi
3314           <keita.yamaguchi at gmail.com>.
3316         * ext/syslog/syslog.c (mSyslog_close): ditto.
3318         * ext/syslog/syslog.c (mSyslog_set_mask): ditto.
3320 Mon Jun 30 03:01:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3322         * test/net/http/test_http.rb (_test_request__file): specify encoding
3323           explicitly.
3325         * test/net/http/utils.rb: ditto.
3327 Mon Jun 30 02:31:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3329         * encoding.c (rb_utf8_encindex): defined.
3331         * include/ruby/encoding.h (rb_utf8_encindex): ditto.
3333 Mon Jun 30 02:14:34 2008  Koichi Sasada  <ko1@atdot.net>
3335         * vm.c, vm_core.h,vm_core.h, vm_dump.c, iseq.c: rename class name
3336           VM -> RubyVM, and rename rb_cVM -> rb_cRubyVM.
3337           "VM" is too short name for class.
3339         * test/ruby/test_method.rb, test/ruby/test_settracefunc.rb: ditto.
3341         * include/ruby/ruby.h: rb_cRubyVM, rb_cEnv, rb_cISeq should not be
3342           exposed.
3344 Mon Jun 30 02:10:32 2008  Koichi Sasada  <ko1@atdot.net>
3346         * process.c (Init_process): fix to avoid a warning.
3348 Mon Jun 30 01:52:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3350         * test/ruby/test_parse.rb: remove tests for open_args.
3352 Sun Jun 29 23:01:54 2008  Tanaka Akira  <akr@fsij.org>
3354         * string.c (rb_str_format_m): make tmp volatile to avoid possible GC
3355           problem.
3357 Sun Jun 29 18:01:30 2008  Kouhei Sutou  <kou@cozmixng.org>
3359         * lib/rss/parser.rb, lib/rss/utils.rb: merge documents from ruby_1_8.
3361 Sun Jun 29 17:44:23 2008  Kouhei Sutou  <kou@cozmixng.org>
3363         * lib/rss/parser.rb (RSS::ListenerMixin#known_class): define to
3364           work with ruby 1.8.x too.
3366 Sun Jun 29 17:41:42 2008  Kouhei Sutou  <kou@cozmixng.org>
3368         * lib/rss/maker/base.rb (RSS::Maker::RSSBase#to_feed): raise
3369           exception not return nil if RSS::Maker.make can't get required
3370           information.
3372         * test/rss/rss-assertions.rb: follow the above change.
3374 Sun Jun 29 17:37:23 2008  Kouhei Sutou  <kou@cozmixng.org>
3376         * lib/rss/maker/base.rb (RSS::Maker::RSSBase#make): require block.
3378         * test/rss/test_maker_{0.9,1.0,2.0}.rb: follow the above change.
3380 Sun Jun 29 17:33:34 2008  Kouhei Sutou  <kou@cozmixng.org>
3382         * lib/rss/maker/base.rb, lib/rss/maker/itunes.rb: don't use
3383           instance_eval to initialize variables. (speed up)
3385 Sun Jun 29 17:31:15 2008  Kouhei Sutou  <kou@cozmixng.org>
3387         * lib/rss/rss.rb, test/rss/test_version.rb (RSS::VERSION):
3388           0.2.4 -> 0.2.5.
3390 Sun Jun 29 11:36:20 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3392         * dir.rb: fix resource leak.
3394 Sun Jun 29 09:43:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3396         * lib/tmpdir.rb (@@systmpdir): prior LOCAL_APPDATA if possible, and
3397           should be clean.  based on a patch from arton <artonx AT
3398           yahoo.co.jp> at [ruby-dev:35269]
3400 Sun Jun 29 07:53:08 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
3402         * ext/win32ole/win32ole.c (date2time_str): fix the overflow in
3403           some situation. [ruby-bugs-20793]
3405 Sat Jun 28 21:25:08 2008  Tanaka Akira  <akr@fsij.org>
3407         * include/ruby/ruby.h (struct RRegexp): new field usecnt.  replace
3408           str and len by src.
3410         * gc.c (gc_mark_children): mark src field of regexp.
3411           (obj_free): don't free str field.
3413         * re.c (REG_BUSY): removed.
3414           (rb_reg_initialize): prohibit re-initialize regexp.
3415           (rb_reg_search): use usecnt to prevent freeing regexp currently
3416           using.  this prevents SEGV by:
3417             r = /\A((a.)*(a.)*)*b/
3418             r =~ "ab" + "\xc2\xa1".force_encoding("euc-jp")
3419             t = Thread.new { r =~ "ab"*8 + "\xc2\xa1".force_encoding("utf-8")}
3420             sleep 0.2
3421             r =~ "ab"*8 + "\xc2\xa1".force_encoding("euc-jp")
3423 Sat Jun 28 21:15:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3425         * include/ruby/intern.h (rb_str_new2, rb_tainted_str_new2,
3426           rb_usascii_str_new2): use inline versions only for constant
3427           literals.
3429 Sat Jun 28 13:12:06 2008  Tanaka Akira  <akr@fsij.org>
3431         * test/rubygems/test_gem.rb (test_self_path_APPLE_GEM_HOME): don't use
3432           fixed /tmp/apple_gem_home directory.
3434 Sat Jun 28 08:40:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
3436         * ext/win32ole/win32ole.c: check String encoding when
3437           converting String to VT_BSTR in OLE.
3439         * test/win32ole/test_win32ole.rb: ditto.
3441 Sat Jun 28 01:08:42 2008  Tanaka Akira  <akr@fsij.org>
3443         * time.c (time_timespec): fix rounding negative float.
3445 Fri Jun 27 21:38:57 2008  Tanaka Akira  <akr@fsij.org>
3447         * struct.c: __size__ removed.  use the length of __members__ instead.
3448           (num_members): new function.
3450 Fri Jun 27 21:19:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3452         * test/inlinetest.rb (InlineTest.in_progname): workaround for frozen
3453           $0.  [ruby-dev:35261]
3455         * lib/test/unit/ui/console/testrunner.rb (TestRunner#finished): ditto.
3457 Fri Jun 27 17:45:17 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
3459         * lib/erb.rb: adjust line number for magic comment.
3461         * test/erb/test_erb.rb: add tests for def_method.
3463 Fri Jun 27 14:29:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3465         * parse.y (primary): empty not should call '!' on nil.
3466           cf [ruby-dev:35227]
3468 Fri Jun 27 14:25:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3470         * vm.c (vm_eval_body): if thrown exception is frozen, reraise it to
3471           create a new instance.
3473 Fri Jun 27 13:29:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3475         * include/ruby/intern.h (rb_str_new2, rb_tainted_str_new2,
3476           rb_usascii_str_new2): use with-length versions with strlen to
3477           optimize strlen, if optimized.
3479 Fri Jun 27 12:28:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3481         * lib/un.rb (mkmf): new command to create makefile.
3483 Fri Jun 27 11:06:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3485         * lib/un.rb (wait_writable): added help message.
3487 Fri Jun 27 06:52:54 2008  Koichi Sasada  <ko1@atdot.net>
3489         * configure.in: need a ",".
3491         * process.c (rb_fork): check CANNOT_FORK_WITH_PTHREAD macro.
3493 Fri Jun 27 06:50:56 2008  Koichi Sasada  <ko1@atdot.net>
3495         * vm_eval.c (vm_call_super): fix to call method_missing.
3496           [ruby-core:15719], [ruby-core:17340]
3498 Fri Jun 27 00:00:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3500         * ruby.c (set_arg0, ruby_prog_init): freeze $0.  a patch from Keita
3501           Yamaguchi <keita.yamaguchi at gmail.com>.
3503 Thu Jun 26 23:58:29 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3505         * string.c (rb_str_index_m, rb_str_rindex_m, rb_str_include): fix
3506           rdoc.
3508 Thu Jun 26 17:43:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3510         * variable.c (rb_f_trace_var): should not be allowed at safe level 4.
3511           a patch from Keita Yamaguchi <keita.yamaguchi at gmail.com>.
3513 Thu Jun 26 11:04:30 2008  Eric Hodel  <drbrain@segment7.net>
3515         * lib/rubygems: Update to RubyGems 1.2.0 r1824.  Incorporates patch by
3516           Yusuke ENDOH [ruby-core:17353].
3518 Thu Jun 26 00:48:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3520         * parse.y (primary): not operand might be empty.  [ruby-dev:35227]
3522 Wed Jun 25 21:54:34 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3524         * parse.y (primary): make functional-style not operator to act
3525           like function.  see <http://d.hatena.ne.jp/ku-ma-me/20080624/p1>.
3527 Wed Jun 25 15:28:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3529         * array.c (rb_ary_fill): not depend on unspecified behavior at integer
3530           overflow.  reported by Vincenzo Iozzo <snagg AT openssl.it>.
3532 Wed Jun 25 13:42:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3534         * lib/erb.rb (ERB::Compiler:Buffer#new): push magic comment first.
3536         * lib/erb.rb (ERB::Compiler#compile): fix for broken input.
3538 Wed Jun 25 12:10:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3540         * lib/erb.rb (ERB::Compiler#compile): magic comment needs LF.
3542 Wed Jun 25 09:31:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3544         * lib/erb.rb (ERB::Compiler#compile): output magic comment.
3546 Tue Jun 24 22:14:36 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3548         * vm_eval.c (eval_string_with_cref): preserve parse_in_eval even if
3549           exception raised.
3551 Tue Jun 24 22:09:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
3553         * ext/win32ole/win32ole.c(ole_invoke): fix memory leak.
3554           [ruby-bugs-20792]
3556 Tue Jun 24 17:20:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3558         * configure.in (rb_cv_fork_with_pthread): check after check for
3559           pthread library, and define the macro when checked only.
3561 Tue Jun 24 17:04:39 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3563         * ext/io/wait/extconf.rb: check sys/socket.h for cygwin.
3565 Tue Jun 24 16:51:51 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3567         * io.c (io_reopen): remove cygwin handling because it seems to be for
3568           C's stdio.
3569           fixed [ruby-dev:35183]
3571 Tue Jun 24 11:12:33 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3573         * include/ruby/win32.h, win32/win32.c (rb_w32_getppid): now support
3574           getppid() on win32 (but only Win2k or later).
3576         * process.c (get_ppid): remove win32 special logic.
3578 Tue Jun 24 09:40:47 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3580         * ext/socket/socket.c (init_sock): socket is binmode on platforms
3581           which support binmode.
3583 Tue Jun 24 00:21:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3585         * compile.c (iseq_build_from_ary): initialize arg_opts, a patch from
3586           Adam Strzelecki <ono@java.pl> in [ruby-core:17220].
3588 Tue Jun 24 00:10:53 2008  wanabe  <s.wanabe@gmail.com>
3589         * compile.c (iseq_build_from_ary): fix expression to obtain
3590           iseq->local_size and iseq->local_table_size.  [ruby-dev:35205]
3592 Mon Jun 23 11:31:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3594         * lib/mathn.rb (Rational::power2): removed incomplete method.
3595           see [ruby-dev:35195].   [ruby-core:17293]
3597 Sun Jun 22 14:16:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3599         * ext/readline/extconf.rb (have_readline_func): readline on Mac OS X
3600           needs headers to detect some functions.
3602 Sun Jun 22 09:51:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3604         * object.c (rb_class_superclass): rdoc improvement, a patch from
3605           Gaston Ramos <ramos.gaston AT gmail.com> in [ruby-core:17371].
3607 Sun Jun 22 09:22:32 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3609         * README.EXT: translated README.EXT.ja
3611 Sun Jun 22 00:42:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3613         * win32/win32.c (rb_w32_osid, rb_w32_osver, CreateChild): XP is
3614           is different from Vista about pipe handle inheritance.
3615           fixed [ruby-core:17367], reported by Lars Christensen <larsch at
3616           belunktum.dk>
3618 Sun Jun 22 00:38:45 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3620         * README.EXT.ja: add note about mark and free.
3622 Sun Jun 22 00:01:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3624         * io.c (rb_io_binmode_p, argf_binmode_p, Init_IO): new method
3625           IO#binmode? and ARGF.binmode?  [ruby-dev:35148]
3627 Sat Jun 21 17:33:50 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3629         * win32/win32.c (rb_w32_spawn): no longer support P_WAIT.
3631 Sat Jun 21 16:46:09 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3633         * thread_win32.c (native_sleep): must block reentrance when accessing
3634           th->unblock.
3635           fixed [ruby-core:17341], reported by Bill Kelly <billk at cts.com>
3637 Sat Jun 21 16:29:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3639         * parse.y (call_args2, open_args): removed.
3641         * parse.y (parser_yylex): unified warnings at space between method
3642           name and argument parenthesis.  [ruby-dev:33943]
3644 Sat Jun 21 16:21:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3646         * numeric.c (flo_round): get rid of overflow.
3648 Sat Jun 21 15:57:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3650         * lib/rdoc/parsers/parse_rb.rb (RDoc#collect_first_comment): skip
3651           magic comment.
3653 Sat Jun 21 15:54:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3655         * configure.in: check if fork works with pthread.
3657 Sat Jun 21 15:31:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3659         * tool/make-snapshot: ported to ruby.
3661         * tool/make-snapshot: fixed digests.
3663 Sat Jun 21 04:36:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3665         * ext/bigdecimal/lib/bigdecimal/jacobian.rb (Jacobian::dfdxi):
3666           typo fixed (raize -> raise).  [ruby-list:45101]
3668         * enumerator.c (enum_each_cons): typo in RDoc fixed.
3670 Sat Jun 21 00:45:34 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3672         * tool/make-snapshot: do not use sha256sum; use BASERUBY instead
3674         * common.mk (dist): use tool/make-snapshot instead
3676 Fri Jun 20 16:34:14 2008  Tanaka Akira  <akr@fsij.org>
3678         * process.c (Init_process): Process::Status#to_int removed.
3679           (PST2INT): defined.
3680           (pst_to_s): use PST2INT.
3681           (pst_inspect): ditto.
3682           (pst_equal): ditto.
3683           (pst_bitand): ditto.
3684           (pst_rshift): ditto.
3685           (pst_wifstopped): ditto.
3686           (pst_wstopsig): ditto.
3687           (pst_wifsignaled): ditto.
3688           (pst_wtermsig): ditto.
3689           (pst_wifexited): ditto.
3690           (pst_wexitstatus): ditto.
3691           (pst_success_p): ditto.
3692           (pst_wcoredump): ditto.
3693           (rb_f_system): ditto.
3695 Fri Jun 20 15:40:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3697         * array.c (rb_ary_store, rb_ary_splice): not depend on unspecified
3698           behavior at integer overflow.
3700         * string.c (str_buf_cat): ditto.
3702 Fri Jun 20 12:39:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3704         * process.c (rb_detach_process): store detached process ID in the
3705           thread local storage.  moved from lib/open3.rb.
3707 Fri Jun 20 11:57:46 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3709         * string.c (rb_str_sub_bang): should preserve replacement points
3710           since they may be altered in the yielded block.
3712 Fri Jun 20 11:07:56 2008  Tanaka Akira  <akr@fsij.org>
3714         * string.c (rb_memhash): randomize hash to avoid algorithmic
3715           complexity attacks.
3716           (rb_str_hash): use rb_memhash.
3718         * include/ruby/intern.h (rb_reset_random_seed): declared.
3720         * thread.c (rb_thread_atfork): call rb_reset_random_seed.
3722         * inits.c (rb_call_inits): call Init_RandomSeed at first.
3724         * random.c (seed_initialized): defined.
3725           (fill_random_seed): extracted from random_seed.
3726           (make_seed_value): extracted from random_seed.
3727           (rb_f_rand): initialize random seed at first.
3728           (initial_seed): defined.
3729           (Init_RandomSeed): defined.
3730           (Init_RandomSeed2): defined.
3731           (rb_reset_random_seed): defined.
3732           (Init_Random): call Init_RandomSeed2.
3734 Wed Jun 18 21:52:38 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3736         * array.c (ary_new, rb_ary_initialize, rb_ary_store,
3737           rb_ary_splice, rb_ary_times): integer overflows should be
3738           checked. based on patches from Drew Yao <ayao at apple.com>
3739           fixed CVE-2008-2726
3741         * string.c (rb_enc_cr_str_buf_cat): fixed unsafe use of alloca,
3742           which led memory corruption. based on a patch from Drew Yao
3743           <ayao at apple.com> fixed CVE-2008-2726
3745 Fri Jun 20 03:26:00 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3747         * process.c (rb_f_fork): NetBSD 4.0 or later can fork.
3749 Fri Jun 20 03:19:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3751         * test/testunit/collector/test_dir.rb: r15825 made it unnecessary to
3752           change String to Symbol.
3754         * test/testunit/collector/test_objectspace.rb: ditto.
3756 Fri Jun 20 03:14:31 2008  Eric Hodel  <drbrain@segment7.net>
3758         * lib/rubygems*, test/rubygems/*:  Update to RubyGems 1.1.1 r1784 (pre
3759           1.2).
3761 Fri Jun 20 03:01:59 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3763         * thread.c: try to remove false positive of deadlock detection (second
3764           trial).
3766 Fri Jun 20 02:16:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3768         * lib/mathn.rb (Rational::power2): typo fixed.  [ruby-core:17293]
3770 Fri Jun 20 02:11:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3772         * string.c (str_gsub): should preserve last successful match
3773           data.  [ruby-dev:35182]
3775 Fri Jun 20 01:07:28 2008  Koichi Sasada  <ko1@atdot.net>
3777         * KNOWNBUGS.rb, bootstraptest/pending.rb: move a bug (?) to pending.
3779 Fri Jun 20 00:40:08 2008  Koichi Sasada  <ko1@atdot.net>
3781         * proc.c (proc_new): fix to return Proc object if block is already
3782           in heap.  [ruby-core:15711]
3784         * bootstraptest/test_proc.rb: add a test.
3786 Fri Jun 20 00:18:04 2008  Koichi Sasada  <ko1@atdot.net>
3788         * thread_win32.c (native_sleep): fix to decrement sleeper count.
3790 Thu Jun 19 23:48:45 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3792         * test/net/http/test_http.rb: compare encodings of two strings before
3793           comparing themself, which suppress too big error output.
3795 Thu Jun 19 23:46:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3797         * ext/json/ext/parser/parser.rl, ext/json/ext/parser/parser.c: JSON
3798           text SHALL be encoded in Unicode.
3800 Thu Jun 19 23:17:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3802         * thread.c, thread_win32.c, vm_core.h: try to remove false positive of
3803           deadlock detection.
3805 Thu Jun 19 21:38:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3807         * ext/extmk.rb (extmake): check if compile before showing message.
3809 Thu Jun 19 21:35:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3811         * tool/make-snapshot: supported multiple snapshots.
3813 Thu Jun 19 20:37:00 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
3815         * lib/net/pop.rb (Net::POP3#set_all_uids): speed
3816           up. a patch from <m-sumi AT techfirm.co.jp> [ruby-list:45047]
3818 Thu Jun 19 17:44:15 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3820         * ext/etc/etc.c (Init_etc): define constant aliases Etc::Passwd
3821           and Etc::Group.  [ruby-dev:35150]
3823 Thu Jun 19 17:37:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3825         * string.c (str_alloc): specify 'inline' modifier.
3827         * string.c (str_alloc): remove cSymbol hack that no longer
3828           necessary.
3830         * string.c (scan_once): avoid retrieving encoding info unless
3831           necessary.
3833 Thu Jun 19 17:19:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3835         * string.c (rb_str_scan): String#scan should preserve last
3836           successful match data.  [ruby-dev:35106]
3838 Thu Jun 19 16:49:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3840         * missing/acosh.c (atanh): should set ERANGE to errno if parameter
3841           is the boundary case. fixed [ruby-dev:35155]
3843 Thu Jun 19 16:06:01 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
3845         * ext/tk/lib/tkextlib/tile/treeview.rb: cannot configure tags.
3847 Thu Jun 19 11:48:33 2008  Koichi Sasada  <ko1@atdot.net>
3849         * test/ruby/test_enumerator.rb: fix to skip "with_memo" test.
3851 Thu Jun 19 11:40:55 2008  Koichi Sasada  <ko1@atdot.net>
3853         * vm_insnhelper.c (vm_throw): fix "return" process from "lambda".
3855         * bootstraptest/test_proc.rb: add a test.
3857         * bootstraptest/pending.rb: add a pending bug.
3859 Thu Jun 19 00:33:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3861         * test/etc/test_etc.rb: avoid infinite loop.  [ruby-dev:35158]
3863 Wed Jun 18 23:07:19 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3865         * gc.c (rb_newobj): prohibit call of rb_newobj() during gc.
3866           a patch from Sylvain Joyeux in [ruby-core:12099].
3868 Wed Jun 18 21:08:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3870         * ruby.c (verbose_setter, opt_W_getter): fixed prototypes.
3872 Wed Jun 18 19:20:00 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3874         * ruby.c (opt_W_getter): use ruby_verbose directly instead of parameter
3875           because ruby_verbose is not a real variable, so the address of
3876           parameter is not collect.
3878 Wed Jun 18 18:31:03 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3880         * win32/win32.c (errmap): add some pipe errors.
3882         * win32/win32.c (rb_w32_write): set errno when CRT's errno is EINVAL
3883           for pipe errors.
3885 Wed Jun 18 18:09:08 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3887         * win32/win32.c (poll_child_status): set EINVAL to errno when
3888           GetExitCodeProcess() fails with ERROR_INVALID_HANDLE.
3890 Wed Jun 18 15:01:18 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3892         * io.c (rb_open_file): fs_encoding and fname_encoding is
3893           rb_encoding *.
3894           fixed [ruby-dev:35151]
3896 Wed Jun 18 14:30:06 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3898         * io.c (rb_open_file): not rb_enc_get_index but rb_enc_get.
3900 Wed Jun 18 13:49:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3902         * include/ruby/win32.h (pipe): now pipe is textmode. although this
3903           change is experimental, it will be spec if no compatibility problem
3904           is reported.
3906 Wed Jun 18 12:05:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3908         * marshal.c (w_object, marshal_dump, r_object0, marshal_load): search
3909           public methods only.  [ruby-core:17283]
3911         * object.c (convert_type): ditto.
3913         * lib/singleton.rb (Singleton#_dump): conversion method should be
3914           public.
3916 Wed Jun 18 10:18:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3918         * ext/etc/etc.c (etc_passwd, etc_group): fixed rdoc.  a patch from
3919           okkez <okkez000 AT gmail.com> in [ruby-dev:35141].
3921 Wed Jun 18 08:58:16 2008  Eric Hodel  <drbrain@segment7.net>
3923         * lib/rubygems/*:  Fix errors for 1.9.
3925         * gem_prelude.rb:  Only remove methods from gem_prelude.rb when
3926           loading real RubyGems.
3928 Wed Jun 18 07:03:30 2008  Eric Hodel  <drbrain@egment7.net>
3930         * lib/rubygems/*:  Update to RubyGems r1778 (pre 1.2).
3932 Wed Jun 18 04:27:58 2008  Koichi Sasada  <ko1@atdot.net>
3934         * KNOWNBUGS.rb, bootstraptest/pending.rb: move pending bug.
3936 Wed Jun 18 04:24:20 2008  Koichi Sasada  <ko1@atdot.net>
3938         * vm.c, vm_insnhelper.c: fix escape process with "break" and "return"
3939           syntax in "lambda".  [ ruby-Bugs-19304 ], [ruby-core:17164]
3941         * KNOWNBUGS.rb, bootstraptest/test_proc.rb: add/move solved test.
3943 Wed Jun 18 01:51:10 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
3945         * ext/tk/lib/multi-tk.rb: cannot access class variable from
3946           singleton method.
3948 Wed Jun 18 00:03:33 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3950         * dir.c (Init_Dir): dir_foreach() takes variable argument.
3952 Tue Jun 17 23:04:24 2008  James Edward Gray II  <jeg2@ruby-lang.org>
3954         * lib/net/telnet.rb:  Fixing Telnet#wairfor() which was broken by
3955           changes to the Kernel::Integer() method.  [ruby-core:17272]
3957 Tue Jun 17 23:02:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3959         * ruby.c (opt_W_getter): made a hooked variable.
3961 Tue Jun 17 22:04:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3963         * enc/euc_jp.c (property_name_to_ctype): core dumped when sizeof(int)
3964           differs from sizeof(long).  [ruby-dev:35131]
3966         * enc/shift_jis.c (property_name_to_ctype): ditto.
3968         * enc/unicode.c (onigenc_unicode_property_name_to_ctype): ditto.
3970 Tue Jun 17 20:32:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3972         * common.mk (miniruby$(EXEEXT)): $(PREP) isn't always same as
3973           miniruby, and tests, debug, etc have no meaning when
3974           cross-compiling.
3976 Tue Jun 17 18:39:11 2008  Ryan Davis  <ryan@wrath.local>
3978         * common.mk: fixed dependencies on miniruby.
3980 Tue Jun 17 18:11:01 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3982         * include/ruby/win32.h (pipe): expand pipe buffer size.
3984 Tue Jun 17 17:07:35 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3986         * win32/win32.c (CreateChild): no need to inherit handles here because
3987           spawn'ed child cannot detect that STDIN is closed.
3989 Tue Jun 17 06:32:55 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3991         * dir.c (dir_data): add intenc and extenc.
3993         * dir.c (dir_s_alloc): ditto.
3995         * dir.c (dir_initialize): now accept internal_encoding and
3996           external_encoding.
3998         * dir.c (dir_s_open): changed for dir_initialize.
4000         * dir.c (dir_open_dir): ditto.
4002         * dir.c (dir_foreach): changed for dir_open_dir.
4004         * dir.c (dir_entries): changed for dir_open_dir.
4006         * dir.c (dir_enc_str): defined.
4008         * dir.c (dir_path): use dir_enc_str.
4010         * dir.c (dir_read): ditto.
4012         * dir.c (dir_each): ditto.
4014 Tue Jun 17 06:28:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4016         * io.c (io_set_encoding): defined.
4018         * io.c (rb_open_file): convert path on Windows and Mac OS X.
4020         * io.c (open_key_args): use io_set_encoding and now accept
4021           internal_encoding and external_encoding.
4023 Tue Jun 17 06:26:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4025         * encoding.c (rb_filesystem_encoding): defined.
4027         * include/ruby/encoding.h (rb_filesystem_encoding): added.
4029 Tue Jun 17 06:24:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4031         * ext/syck/rubyext.c: add encoding header.
4033 Tue Jun 17 01:52:50 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
4035         * ext/tk/tcltklib.c: SEGV when exit.
4037         * ext/tk/lib/tk.rb: add a check for safety to Tk.exit.
4039         * ext/tk/sample/irbtkw.rbw: freezes when receives SIGINT.
4041 Mon Jun 16 21:58:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4043         * ext/stringio/stringio.c (strio_each, strio_readlines): IO#each and
4044           IO#readlines do not affect $_.  [ruby-core:17277]
4046 Mon Jun 16 18:52:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4048         * lib/thwait.rb (ThreadsWait): Exception2MessageMapper no longer has
4049           extend_to method.  [ruby-core:17267]
4051 Mon Jun 16 14:46:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4053         * lib/e2mmap.rb (E2MM.def_e2message): typo.
4055 Mon Jun 16 09:43:27 2008  Akinori MUSHA  <knu@iDaemons.org>
4057         * enumerator.c (enumerator_with_object, Init_Enumerator):
4058           Temporarily back out with_memo, for which we need a better name.
4060 Mon Jun 16 07:14:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4062         * ext/stringio/stringio.c (strio_readline, strio_each)
4063           (strio_readlines): set lastline.  [ruby-core:17257]
4065 Mon Jun 16 01:49:39 2008  Koichi Sasada  <ko1@atdot.net>
4067         * eval.c (rb_f_block_given_p): fix to skip class frame.
4068           [ruby-core:14813]
4070         * KNOWNBUGS.rb, bootstraptest/test_method.rb: move solved test.
4072 Mon Jun 16 01:48:08 2008  Koichi Sasada  <ko1@atdot.net>
4074         * vm_dump.c (vm_stack_dump_raw): disable verbose debug output.
4076 Mon Jun 16 01:33:08 2008  Koichi Sasada  <ko1@atdot.net>
4078         * vm_core.h, thread.c: rename global_interpreter_lock to
4079           global_vm_lock.
4081 Sun Jun 15 18:40:35 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4083         * ext/syck/rubyext.c (yaml_org_handler): associate encoding.
4085         * ext/syck/rubyext.c (syck_genericresolver_node_import): ditto.
4087 Sun Jun 15 18:17:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4089         * vm_core.h (rb_vm_t), vm.c (rb_vm_mark): moved preallocated special
4090           exceptions.
4092         * eval.c (Init_eval), gc.c (Init_GC), proc.c (Init_Proc): freeze
4093           preallocated special exceptions.
4095         * eval.c (rb_longjmp): duplicate the thrown exception to set backtrace
4096           if it was frozen.
4098         * gc.c (rb_memerror): raise nomem_error without backtrace if failed to
4099           make backtrace.
4101 Sat Jun 14 22:52:35 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4103         * ext/stringio/stringio.c (strio_sysread): should not raise at empty
4104           read.  a patch from Arthur Schreiber at [ruby-core:17245].
4106 Sat Jun 14 16:55:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4108         * file.c (file_expand_path): no need to expand root path which has no
4109           short file name.  [ruby-dev:35095]
4111 Sat Jun 14 11:59:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4113         * gc.h (STACK_UPPER): moved from gc.c
4115         * thread.c, thread_{pthread,win32}.c (ruby_init_stack,
4116           ruby_thread_init_stack): moved stack initialization from gc.c.
4118 Sat Jun 14 11:57:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4120         * gc.h (STACK_UPPER): moved from gc.c
4122         * thread.c, thread_{pthread,win32}.c (ruby_init_stack,
4123           ruby_thread_init_stack): moved stack initialization from gc.c.
4125 Sat Jun 14 07:52:53 2008  Tanaka Akira  <akr@fsij.org>
4127         * gc.c (ruby_initial_gc_stress): defined.
4128           (ruby_initial_gc_stress_ptr): defined.
4130         * debug.c (set_debug_option): use ruby_initial_gc_stress_ptr for
4131           gc_stress option.
4133 Sat Jun 14 00:09:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4135         * gc.c (ruby_gc_stress): moved to rb_objspace_t.
4137         * gc.c (gc_stress_get, gc_stress_set): VM local attribute.
4139         * signal.c (sigsegv): ditto.
4141 Fri Jun 13 21:55:48 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4143         * rational.c (nurat_equal_p): Rational(0,x) and 0 are equivalent,
4144           anyway.
4146 Fri Jun 13 21:26:39 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4148         * complex.c (string_to_c, nucomp_s_convert): preserve the current
4149           backref.
4151         * rational.c (string_to_r, nurat_s_convert): ditto.
4153         * include/ruby/intern.h (rb_match_busy): added a declaration.
4155 Fri Jun 13 18:08:10 2008  Tanaka Akira  <akr@fsij.org>
4157         * lib/time.rb (Time.xmlschema): don't accept decimal dot without
4158           fractional digits.  fractional digits handling simplified.
4160 Fri Jun 13 17:20:40 2008  wanabe  <s.wanabe@gmail.com>
4162         * complex.c (string_to_c_internal): save and restore backref.
4163           fixed [ruby-dev:34991]
4165 Fri Jun 13 17:06:20 2008  wanabe  <s.wanabe@gmail.com>
4167         * rational.c (string_to_r_internal): save and restore backref.
4168           fixed [ruby-dev:34990]
4170 Fri Jun 13 14:41:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4172         * README.EXT.ja: update about Fixnum. reported in
4173            <http://www.tmtm.org/ja/tdiary/?date=20080611#p01>
4175         * README.EXT.ja: describe about StringValueCStr().
4177         * README.EXT: ditto.
4179 Fri Jun 13 14:24:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4181         * gc.c (rb_memerror): exit with EXIT_FAILURE instead of magic number.
4183         * gc.c (ruby_stack_check): STACK_LENGTH should be less than
4184           STACK_LEVEL_MAX.
4186 Fri Jun 13 12:55:37 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4188         * enum.c (sort_by_i): use NODE_DOT2 instead of NODE_MEMO to avoid
4189           extra calls to is_pointer_to_heap() in GC.
4191         * enum.c (enum_zip): ditto.
4193 Fri Jun 13 00:41:58 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4195         * test/ruby/test_thread.rb: add a test.
4197 Thu Jun 12 23:30:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4199         * thread.c (mutex_unlock): fix cond_notified consistency.
4201 Thu Jun 12 22:19:45 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4203         * thread_win32.c (native_sleep): fixed previous commit.
4205 Thu Jun 12 21:59:17 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4207         * thread.c, vm_core.h, vm.c, thread_pthread.c, thread_win32.c: add
4208           deadlock detection.  [ruby-dev:35044]
4210         * bootstraptest/test_thread.rb: add tests for above.
4212 Thu Jun 12 21:39:55 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4214         * complex.c: refactoring.
4216         * rational.c: ditto.
4218 Thu Jun 12 17:11:24 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4220         * regint.h: undefine USE_CAPTURE_HISTORY which is mentioned as
4221           unsupported in the Onigiruma document.
4223 Thu Jun 12 13:36:54 2008  Tanaka Akira  <akr@fsij.org>
4225         * include/ruby/ruby.h (rb_intern): use rb_intern2 with strlen for
4226           constant symbols to optimize strlen.
4228 Thu Jun 12 08:47:51 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4230         * io.c (read_all): should use io_read_encoding(), not
4231           io_input_encoding().
4233         * io.c (rb_io_getline_1): reduce calling of io_read_encoding().
4235         * string.c (rb_str_scan): need not to restore $~ value, so avoid
4236           pinning match object.
4238 Thu Jun 12 02:49:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4240         * ext/stringio/stringio.c (strio_init): rewind when reopened.
4242 Thu Jun 12 02:43:27 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4244         * array.c (rb_ary_zip): ANSI style.
4246 Thu Jun 12 02:25:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4248         * io.c (rb_io_reopen): clear read buffer.
4250 Thu Jun 12 00:56:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4252         * ext/tk: check proper conditions.  [ruby-dev:35047]
4254 Wed Jun 11 23:33:13 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4256         * io.c (io_fread): bypass buffered read if reading buffer is empty.
4258         * io.c (remain_size): do not add extra one byte.
4260 Wed Jun 11 12:15:17 2008  Tanaka Akira  <akr@fsij.org>
4262         * bootstraptest/runner.rb (assert_normal_exit): hide stderr output
4263           when success.
4265 Wed Jun 11 09:26:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4267         * common.mk (encs): need to pass miniruby path for windows.
4269 Wed Jun 11 05:53:20 2008  Koichi Sasada  <ko1@atdot.net>
4271         * vm.c, eval_intern.h (PASS_PASSED_BLOCK):
4272           set a VM_FRAME_FLAG_PASSED flag to skip this frame when
4273           searching ruby-level-cfp.
4275         * eval.c, eval_intern.h, proc.c: fix to check cfp.  if there is
4276           no valid ruby-level-cfp, cause RuntimeError exception.
4277           [ruby-dev:34128]
4279         * vm_core.h, vm_evalbody.c, vm.c, vm_dump.c, vm_insnhelper.c,
4280           insns.def: rename FRAME_MAGIC_* to VM_FRAME_MAGIC_*.
4282         * KNOWNBUGS.rb, bootstraptest/test*.rb: move solved bugs.
4284 Wed Jun 11 05:55:31 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
4286         * ext/tk/tcltklib.c: SEGV when tcltk-stubs is enabled.
4288         * ext/tk/tcltklib.c: avoid error on a shared object.
4290         * ext/tk/extconf.rb: support --with-tcltkversion
4292         * ext/tk/README.tcltklib: add document about --with-tcltkversion
4294         * ext/tk/lib/tk.rb, ext/tk/lib/multi-tk.rb, ext/tk/lib/remote-tk.rb:
4295           not work on $SAFE==4
4297         * ext/tk/lib/multi-tk.rb: Object#methods returns Symbols on Ruby1.9.
4299         * ext/tk/lib/tk/timer.rb: add TkTimer#at_end(proc) to register the
4300           procedure which called at end of the timer.
4302         * ext/tk/lib/tk.rb, ext/tk/lib/tk/itemfont.rb, ext/tk/lib/font.rb:
4303           support __IGNORE_UNKNOWN_CONFIGURE_OPTION__ about font options.
4305         * ext/tk/lib/*: treat __IGNORE_UNKNOWN_CONFIGURE_OPTION__
4307         * ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb,
4308           ext/tk/lib/tkextlib/iwidgets/scrolledlistbox.rb,
4309           ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: bug fix.
4311         * ext/tk/lib/tk/text.rb: typo. call a wrong method.
4313         * ext/tk/lib/tk/itemconfig.rb: ditto.
4315         * ext/tk/lib/tk.rb, ext/tk/lib/tk/itemconfig.rb,
4316           ext/tk/lib/tk/canvas.rb: support alias names of option keys.
4318         * ext/tk/lib/tk/grid.rb: lack of module-method definitions.
4320         * ext/tk/lib/tk/pack.rb, ext/tk/lib/tk/grid.rb: increase supported
4321           parameter patterns of configure method.
4323         * ext/tk/lib/tk.rb: add TkWindow#grid_anchor, grid_column, grid_row.
4325         * ext/tk/lib/tk/wm.rb: methods of Tk::Wm_for_General module cannot
4326           pass the given block to methods of Tk::Wm module.
4328         * ext/tk/lib/tk/wm.rb: Wm#overrideredirect overwrites argument to
4329           an invalid value.
4331         * ext/tk/lib/tk.rb: fix memory (object) leak bug.
4333         * ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: fix memory leak.
4335         * ext/tk/sample/demos-jp/aniwave.rb, ext/tk/sample/demos-en/aniwave.rb:
4336           bug fix.
4338         * ext/tk/lib/tkextlib/blt/component.rb,
4339           ext/tk/lib/tkextlib/tile/tentry.rb,
4340           ext/tk/lib/tkextlib/tile/treeview.rb: ditto.
4342         * ext/tk/lib/tkextlib/tile/tpaned.rb: improve TPaned#add.
4344         * ext/tk/sample/demos-jp/widget, ext/tk/sample/demos-en/widget,
4345           ext/tk/sample/demos-jp/style.rb, ext/tk/sample/demos-en/style.rb,
4346           ext/tk/sample/demos-jp/bind.rb, ext/tk/sample/demos-en/bind.rb:
4347           bug fix.
4349         * ext/tk/sample/ttk_wrapper.rb: ditto.
4351         * ext/tk/sample/ttk_wrapper.rb: support "if __FILE__ == $0" idiom.
4353         * ext/tk/sample/tktextio.rb: add binding for 'Ctrl-u' at console mode.
4355         * ext/tk/lib/tkextlib/tile.rb, ext/tk/lib/tkextlib/tile/style.rb,
4356           ext/tk/sample/ttk_wrapper.rb: improve treating and control themes.
4357           add Tk::Tile.themes and Tk::Tile.set_theme(theme).
4359         * ext/tk/lib/tkextlib/tile.rb: lack of autoload definitions.
4361         * ext/tk/lib/tkextlib/tile/tnotebook.rb: cannot use kanji (not UTF-8)
4362           characters for headings.
4364         * ext/tk/lib/tkextlib/tkDND/shape.rb: wrong package name.
4366         * ext/tk/tkutil/tkutil.c: improve handling callback-subst-keys.
4367           Now, support longnam-keys (e.g. '%CTT' on tkdnd-2.0; however, still
4368           not support tkdnd-2.0 on tkextlib), and symbols of parameters (e.g.
4369           :widget=>'%W', :keycode=>'%k', '%x'=>:x, '%X'=>:root_x, and so on;
4370           those are attributes of event object). It means that Ruby/Tk accepts
4371           not only "widget.bind(ev, '%W', '%k', ...){|w, k, ...| ... }", but
4372           also "widget.bind(ev, :widget, :keycode, ...){|w, k, ...| ... }".
4373           It is potentially incompatible, when user passes symbols to the
4374           arguments of the callback block (the block receives the symbols as
4375           strings). I think that is very rare case (probably, used by Ruby/Tk
4376           experts only). When causes such trouble, please give strings instead
4377           of such symbol parameters (e.g. call Symbol#to_s method).
4379         * ext/tk/lib/tk/event.rb, ext/tk/lib/tk/validation.rb,
4380           ext/tk/lib/tkextlib/blt/treeview.rb,
4381           ext/tk/lib/tkextlib/winico/winico.rb: ditto.
4383         * ext/tk/tkutil/tkutil.c: strings are available on subst_tables on
4384           TkUtil::CallbackSubst class (it is useful on Ruby 1.9).
4386         * ext/tk/lib/tk/spinbox.rb, ext/tk/lib/tkextlib/iwidgets/hierarchy.rb,
4387           ext/tk/lib/tkextlib/iwidgets/spinner.rb,
4388           ext/tk/lib/tkextlib/iwidgets/entryfield.rb,
4389           ext/tk/lib/tkextlib/iwidgets/calendar.rb,
4390           ext/tk/lib/tkextlib/blt/dragdrop.rb,
4391           ext/tk/lib/tkextlib/tkDND/tkdnd.rb,
4392           ext/tk/lib/tkextlib/treectrl/tktreectrl.rb,
4393           ext/tk/lib/tkextlib/tktable/tktable.rb: disable code piece became
4394           unnecessary by reason of the changes of ext/tk/tkutil/tkutil.c.
4396         * ext/tk/lib/tk.rb, ext/tk/lib/multi-tk.rb: change strategy to define
4397           the constant WITH_ENCODING.
4399         * ext/tk/lib/tk.rb: fix bug on Tk::Encoding.tk_encoding_names.
4401 Wed Jun 11 03:40:37 2008  Akinori MUSHA  <knu@iDaemons.org>
4403         * lib/find.rb (Find#find): Return an enumerator if no block is
4404           given.
4406 Wed Jun 11 01:28:12 2008  Koichi Sasada  <ko1@atdot.net>
4408         * include/ruby/intern.h, proc.c: revert rb_proc_call() and
4409           create rb_proc_call_with_block() instead.
4411         * include/ruby/ruby.h, eval_jump.c, thread.c, vm_insnhelper.c:
4412           rb_blockptr should not be exposed.
4414 Tue Jun 10 21:07:19 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
4416         * test/ruby/test_float.rb: add tests. [ruby-dev:35009]
4418 Tue Jun 10 20:55:57 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4420         * complex.c (nucomp_s_convert): need not to initialize optional
4421           argument for rb_scan_args().
4423 Tue Jun 10 20:13:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4425         * ext/extmk.rb: negate default of --without-ext if --with-ext is
4426           given.
4428         * ext/extmk.rb: negate default of --without-ext.
4430 Tue Jun 10 17:43:35 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4432         * array.c (rb_ary_shuffle_bang): update RDoc.  [ruby-dev:35034]
4434 Tue Jun 10 17:30:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4436         * include/ruby/intern.h (rb_obj_instance_exec, rb_mod_module_exec):
4437           added prototypes.
4439 Tue Jun 10 17:00:29 2008  wanabe  <s.wanabe@gmail.com>
4441         * util.c (ruby_strtod): ruby_strtod don't allow a trailing
4442           decimal point like "7.". [ruby-dev:34835] [ruby-dev:35009]
4444 Tue Jun 10 13:48:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4446         * rational.c (nurat_s_convert): need not to initialize optional
4447           argument for rb_scan_args().
4449 Tue Jun 10 12:58:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4451         * ext/io/wait/wait.c (FIONREAD_POSSIBLE_P): suppress warnings.
4453 Tue Jun 10 12:43:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4455         * include/ruby/ruby.h (CONST_ID_CACHE): fixed statement expression.
4457 Tue Jun 10 11:25:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4459         * ruby.c (rb_argv0): revised for ext/tk.
4461         * include/ruby/encoding.h: not to use varargs.h since requiring C89.
4463 Tue Jun 10 00:50:51 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4465         * include/ruby/ruby.h, vm_core.h: add a type rb_blockptr.
4467         * vm_insnhelper.c (vm_yield_with_cfunc): vm_yield_with_cfunc receives
4468           blockptr and passes it to iterating block.
4470         * proc.c (rb_proc_call), include/ruby/intern.h: rb_proc_call receives
4471           blockptr.  "rb_proc_call(self, args, blockptr)" in C corresponds to
4472           "self.call(*args, &block)" in Ruby.
4474         * proc.c (proc_call): pass blockptr to block that is written in C.
4476         * proc.c (curry): receive blockptr and pass it to original proc.
4477           [ruby-core:15551]
4479         * vm.c (invoke_block_from_c): fix for change of vm_yield_with_cfunc.
4481         * thread.c (call_trace_proc), eval_jump.c (rb_call_end_proc): fix for
4482           change of rb_proc_call.
4484 Tue Jun 10 00:10:49 2008  Tanaka Akira  <akr@fsij.org>
4486         * common.mk (test-knownbug): give $(OPTS) for bootstraptest/runner.rb.
4488 Mon Jun  9 23:10:50 2008  Tanaka Akira  <akr@fsij.org>
4490         * eval.c (Init_stack): don't declare.  it is a macro now.
4492 Mon Jun  9 22:46:47 2008  wanabe  <s.wanabe@gmail.com>
4494         * compile.c : treat []&&= in virtually the same way as []||=.
4495           [ruby-dev:34679]
4497 Mon Jun  9 21:17:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4499         * enc/depend (clean): remove build directories.
4501         * test_knownbug.rb -> KNOWNBUGS.rb: renamed.
4503         * common.mk: apply above change.
4505 Mon Jun  9 21:14:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4507         * lib/mkmf.rb (configuration): set flags.
4509 Mon Jun  9 21:09:02 2008  Koichi Sasada  <ko1@atdot.net>
4511         * bootstraptest/test_knownbug.rb -> ./test_knownbug.rb: moved.
4513         * common.mk: add a rule "test-knownbug".
4515 Mon Jun  9 21:00:32 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4517         * complex.c (nucomp_s_convert): can accept Complex('i').
4518           [ruby-dev:34991]
4520 Mon Jun  9 18:25:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4522         * include/ruby/ruby.h (CONST_ID): constant ID cache for non-gcc.
4524         * *.c: no cache in init functions.
4526 Mon Jun  9 17:56:30 2008  Akinori MUSHA  <knu@iDaemons.org>
4528         * lib/set.rb (Set#delete_if): Call to_a.
4529           (SortedSet#delete_if, TC_SortedSet#test_sortedset): Use super to
4530           yield elements in sorted order; [ruby-core:17144] by Arthur
4531           Schreiber.
4532           (SortedSet#each, SortedSet#each, TC_Set#test_each)
4533           (TC_SortedSet#test_sortedset): Return self; [ruby-dev:35002] by
4534           Arthur Schreiber.
4536 Mon Jun  9 17:47:09 2008  Tanaka Akira  <akr@fsij.org>
4538         * io.c (fptr_finalize): close IO object if fd is already closed.
4539           (rb_p): call rb_io_write just once.
4541 Mon Jun  9 15:37:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4543         * ruby.c (require_libraries): req_list may be NULL.  [ruby-dev:35008]
4545 Mon Jun  9 14:18:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4547         * vm_core.h (struct rb_vm_struct): moved src_encoding_index,
4548           ruby_debug, ruby_verbose, and rb_progname.
4550         * ruby.c (rb_argv0): no longer used.
4552         * ruby.c (struct cmdline_options): moved setids and req_list, and the
4553           latter is now an array, to prevent memory leak.
4555         * ruby.c (cmdline_options_init): added.
4557         * ruby.c (add_modules, require_libraries, init_ids, forbid_setid): use
4558           struct cmdline_options.
4560         * vm.c (vm_init2): initialize src_encoding_index.
4562         * vm.c: getters/setters for ruby_{debug,verbose}.
4564 Mon Jun  9 09:54:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4566         * include/ruby/intern.h (Init_stack): make to call ruby_init_stack.
4568 Mon Jun  9 08:12:40 2008  wanabe  <s.wanabe@gmail.com>
4570         * vm_insnhelper.c, vm.c, proc.c : revert r17021. [ruby-dev:34997]
4572 Mon Jun  9 03:12:23 2008  Koichi Sasada  <ko1@atdot.net>
4574         * bootstraptest/pending.rb: move/remove solved issues.
4576         * bootstraptest/test_class.rb: ditto.
4578 Mon Jun  9 02:32:58 2008  Akinori MUSHA  <knu@iDaemons.org>
4580         * ext/zlib/zlib.c (rb_deflate_init_copy): Copy buffers as well.
4581           [ruby-list:45018]
4583 Sun Jun  8 22:22:20 2008  wanabe  <s.wanabe@gmail.com>
4585         * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with
4586           block that both is written in C. [ruby-dev:34273] [ruby-core:15551]
4588         *  proc.c (curry): use proc_call instead of rb_proc_call.
4589           [ruby-dev:34273] [ruby-core:15551]
4591 Sun Jun  8 21:50:27 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4593         * test/zlib/test_zlib.rb: add tests to achieve over 90% test coverage
4594           of zlib.
4596 Sun Jun  8 20:12:47 2008  wanabe  <s.wanabe@gmail.com>
4598         * vm_insnhelper.c (vm_throw): regard break as return in lambda.
4599           [ruby-dev:34646]
4601 Sun Jun  8 19:17:59 2008  Koichi Sasada  <ko1@atdot.net>
4603         * gc.c: add a build option "CALC_EXACT_MALLOC_SIZE".
4604           This option enables to calculate exact size of current
4605           allocated size by malloc().  You can access these information
4606           with GC.malloc_allocated_size and GC.malloc_allocations.
4607           This option consume additional memory as a header of each memory
4608           object.  This option also helps to find out xmalloc()/xfree()
4609           consistency.  If you get trouble with this option, some extension
4610           using "free()" instead of "xfree()".
4611           This options is disabled by default.
4613 Sun Jun  8 18:15:38 2008  Koichi Sasada  <ko1@atdot.net>
4615         * array.c, bignum.c, cont.c, dir.c, dln.c, encoding.c, enumerator.c,
4616           enumerator.c (enumerator_allocate), eval_jump.c, file.c, hash.c,
4617           io.c, load.c, pack.c, proc.c, random.c, re.c, ruby.c, st.c,
4618           string.c, thread.c, thread_pthread.c, time.c, util.c, variable.c,
4619           vm.c, gc.c:
4620           allocated memory objects by xmalloc (ruby_xmalloc) should be
4621           freed by xfree (ruby_xfree).
4623         * ext/curses/curses.c, ext/dbm/dbm.c, ext/digest/digest.c,
4624           ext/gdbm/gdbm.c, ext/json/ext/parser/parser.c,
4625           ext/json/ext/parser/unicode.c, ext/openssl/ossl_cipher.c,
4626           ext/openssl/ossl_hmac.c, ext/openssl/ossl_pkey_ec.c,
4627           ext/sdbm/init.c, ext/strscan/strscan.c, ext/zlib/zlib.c:
4628           ditto.
4630 Sun Jun  8 01:15:11 2008  Tanaka Akira  <akr@fsij.org>
4632         * hash.c (hash_i): make Hash#hash order insensitive.
4633           (rb_hash_dup): use DUPSETUP.
4635 Sat Jun  7 23:47:35 2008  Akinori MUSHA  <knu@iDaemons.org>
4637         * ext/zlib/zlib.c (rb_deflate_initialize, Init_zlib): Fix up
4638           initialize_copy; [ruby-list:45016].
4640 Sat Jun  7 22:15:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4642         * configure.in (VENDOR_DIR): use LIBDIR instead of PREFIX as well as
4643           SITE_DIR.  a patch from Richard Brown <rbrown AT exherbo.org> in
4644           [ruby-core:17129].
4646 Sat Jun  7 21:37:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4648         * io.c (rb_f_open), re.c (rb_reg_search), transcode.c (str_transcode):
4649           suppress warnings.
4651         * util.c (quorem, rv_alloc, nrv_alloc): only used in dtoa().
4653 Sat Jun  7 16:06:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4655         * configure.in (CFLAGS, CXXFLAGS): append default flags.
4657 Sat Jun  7 01:23:59 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4659         * io.c (rb_open_file, rb_io_s_sysopen): fmode should be unsigned int.
4660           fixed [ruby-dev:34979]
4662 Fri Jun  6 23:46:19 2008  Koichi Sasada  <ko1@atdot.net>
4664         * vm_insnhelper.c (vm_callee_setup_arg): check simple flag before
4665           calling setup_arg function().  this change reduce function call.
4667 Fri Jun  6 21:51:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4669         * win32/Makefile.sub (COMMON_HEADERS): include ws2tcpip.h.
4671         * ext/socket/addrinfo.h (addrinfo, getaddrinfo, getnameinfo,
4672           freehostent, freeaddrinfo): undef before define because these are
4673           macros in some versions of Windows SDK.
4675           merged from ruby_1_8.
4677 Fri Jun  6 18:25:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4679         * test/iconv/utils.rb (default_test): override not to croak.
4681 Fri Jun  6 16:41:45 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4683         * include/ruby/win32.h: include ws2tcpip.h. fixed [ruby-Bugs-20528]
4685 Fri Jun  6 15:05:02 2008  Tanaka Akira  <akr@fsij.org>
4687         * gc.c (count_objects): clear hash after counting objects.
4689 Fri Jun  6 12:43:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4691         * test/ruby/test_dir.rb (TestDir::test_glob): glob file names not sorted.
4693 Fri Jun  6 00:05:33 2008  Tanaka Akira  <akr@fsij.org>
4695         * lib/time.rb (Time.xmlschema): don't use float.  fix
4696           http://rubyforge.org/tracker/index.php?func=detail&group_id=426&atid=1698&aid=20504
4698 Thu Jun  5 23:56:18 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4700         * test/ruby/test_gc.rb: add tests to achieve over 90% test coverage of
4701           gc.c.
4703         * test/ruby/test_objectspace.rb: ditto.
4705         * test/ruby/test_marshal.rb: ditto.
4707 Thu Jun  5 23:40:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4709         * gc.c (rb_objspace_alloc): this function is needed only when
4710           ENABLE_VM_OBJSPACE macro is defined.
4712         * vm.c: ditto.
4714 Thu Jun  5 23:31:21 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4716         * test/stringio/test_stringio.rb: add tests to achieve over 95% test
4717           coverage of stringio.
4719         * test/strscan/test_stringscanner.rb: ditto for strscan.
4721 Thu Jun  5 23:25:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4723         * eval.c (ruby_finalize_0): clear trace_func after executing END
4724           procs.
4726         * thread.c: fix typo.
4728 Thu Jun  5 22:50:50 2008  Tanaka Akira  <akr@fsij.org>
4730         * gc.c (os_obj_of): heaps may be modified in yield.
4732 Thu Jun  5 21:46:50 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4734         * st.c (st_reverse_foreach): comment out unused function.
4736         * util.c (dtoa): ditto.
4738 Thu Jun  5 20:30:46 2008  Akinori MUSHA  <knu@iDaemons.org>
4740         * ext/openssl/ossl_ssl_session.c (ossl_ssl_session_initialize):
4741           Add a null check for ssl; submitted by akira yamada
4742           in [ruby-dev:34950].
4744         * ext/openssl/ossl_ssl.c (Init_ossl_ssl): Define OP_NO_TICKET if
4745           SSL_OP_NO_TICKET is present; submitted by akira yamada
4746           in [ruby-dev:34944].
4748         * test/openssl/test_ssl.rb (OpenSSL#test_server_session): Add a
4749           workaround for the case where OpenSSL is configured with
4750           --enable-tlsext; submitted by akira yamada in [ruby-dev:34944].
4752 Thu Jun  5 20:24:15 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4754         * thread.c (thread_set_trace_func_m): fix check for proc argument.
4756 Thu Jun  5 20:17:29 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4758         * lib/rexml/document.rb (REXML::Document:write): leaky modification
4759           trans -> transitive.  [ruby-dev:32040], r13686
4761         * lib/rexml/text.rb (Text.check): fix check for illegal character.
4763 Thu Jun  5 14:03:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4765         * ext/iconv/iconv.c (iconv_create): find encoding without options.
4767 Thu Jun  5 07:48:32 2008  Koichi Sasada  <ko1@atdot.net>
4769         * string.c (hash): should be "static".
4771 Thu Jun  5 01:47:18 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4773         * test/ruby/test_transcode.rb: add tests for iso-2022-jp.
4775 Thu Jun  5 01:27:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4777         * test/ruby/test_process.rb: add tests.
4779 Wed Jun  4 23:10:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4781         * ext/zlib/zlib.c (rb_gzfile_set_mtime): fix typo.
4783 Wed Jun  4 18:53:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4785         * object.c (rb_obj_alloc): RDoc updated.  a patch from Gaston
4786           Ramos <ramos.gaston at gmail.com> in [ruby-core:17073].
4788 Wed Jun  4 18:36:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4790         * lib/rdoc.rb: massive spelling correction patch from Evan Farrar
4791           <evanfarrar at gmail.com> in [ruby-doc:1382] applied.
4793 Wed Jun  4 17:52:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4795         * ext/iconv/iconv.c (iconv_iconv): fix for length argument and now
4796           allows range.  [ruby-core:17092]
4798 Wed Jun  4 15:45:41 2008  Akinori MUSHA  <knu@iDaemons.org>
4800         * enumerator.c (enumerator_with_index, enumerator_with_memo): Fix
4801           grammo in rdoc.
4803 Wed Jun  4 13:06:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4805         * configure.in (CFLAGS, CXXFLAGS): include additional flags to
4806           CFLAGS and CXXFLAGS while configuration.
4808 Tue Jun  3 23:06:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4810         * ext/strscan/strscan.c (strscan_scan_full, strscan_search_full): fix
4811           document.
4813 Tue Jun  3 22:37:26 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4815         * ext/strscan/strscan.c (strscan_exist_p): fix document.
4817 Tue Jun  3 22:33:29 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4819         * test/ruby/test_dir.rb: add tests to achieve over 90% test coverage
4820           of dir.c.
4822         * test/ruby/test_encoding.rb: add tests for dummy?, name_list and
4823           aliases.
4825         * test/ruby/test_marshal.rb: add some tests.
4827 Tue Jun  3 22:25:51 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4829         * test/etc/test_etc.rb: new tests for etc.
4831 Tue Jun  3 19:35:02 2008  Akinori MUSHA  <knu@iDaemons.org>
4833         * enumerator.c (enumerator_with_memo): New method: with_memo().
4835 Tue Jun  3 20:04:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4837         * win32/Makefile.sub (miniruby$(EXEEXT)): miniruby cannot be
4838           written by miniruby itself.
4840 Tue Jun  3 19:33:22 2008  Akinori MUSHA  <knu@iDaemons.org>
4842         * enumerator.c (enumerator_init_copy): Take care of
4843           initialize_copy as well as initialize.
4845 Tue Jun  3 16:06:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4847         * file.c (file_expand_path): fix for non-existent files and SFN of
4848           symlinks.  [ruby-talk:303736]
4850 Tue Jun  3 15:12:01 2008  Akinori MUSHA  <knu@iDaemons.org>
4852         * lib/set.rb (Set#classify): Back out the `group_by' alias.
4853           Better think twice.
4855 Tue Jun  3 15:00:22 2008  Akinori MUSHA  <knu@iDaemons.org>
4857         * lib/set.rb (Set#collect, Set#select): Back out.  I thought it
4858           was consistent but turned out to be wrong.
4860 Tue Jun  3 13:41:08 2008  Akinori MUSHA  <knu@iDaemons.org>
4862         * lib/set.rb (Set#collect, Set#select): Override Enumerable
4863           methods and make them return a set. [ruby-core:17055]
4864           (Set#delete_if, Set#collect!, Set#reject!, Set#classify)
4865           (Set#divide, Set#delete_if): Return an enumerator if no block is
4866           given.
4867           (Set#classify): Define an alias `group_by' to override that of
4868           Enumerable.
4870 Tue Jun  3 13:35:40 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4872         * process.c (run_exec_pgroup): C99 ism.
4874 Tue Jun  3 12:51:57 2008  Akinori MUSHA  <knu@iDaemons.org>
4876         * enumerator.c (enumerator_allocate, enumerator_ptr): Properly
4877           detect if the object is initialized and raise error when
4878           appropriate.
4879           (enumerator_initialize): Fix a typo in rdoc. [ruby-core:17052]
4881 Tue Jun  3 01:21:51 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4883         * test/ruby/test_method.rb: add a test.
4885 Tue Jun  3 00:26:48 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4887         * marshal.c (w_object): add a check for modification of array during
4888           its dump.
4890 Mon Jun  2 22:27:57 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4892         * enc/iso_8859_5.c: Large omicron should lowercase to small omicron.
4894         * test/ruby/test_big5.rb, test/ruby/test_cp949.rb,
4895           test/ruby/test_euc_jp.rb, test/ruby/test_euc_kr.rb,
4896           test/ruby/test_euc_tw.rb, test/ruby/test_gb18030.rb,
4897           test/ruby/test_gbk.rb, test/ruby/test_iso_8859.rb,
4898           test/ruby/test_koi8.rb, test/ruby/test_shift_jis.rb,
4899           test/ruby/test_windows_1251.rb: new tests for encoding.
4901         * test/ruby/test_utf16.rb, test/ruby/test_utf32.rb,
4902           test/ruby/test_regexp.rb: add tests.
4904 Mon Jun  2 21:56:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4906         * test/ruby/test_file.rb: add tests for uninitialized object.
4908         * test/ruby/test_class.rb: ditto.
4910         * test/ruby/test_thread.rb: ditto.
4912 Mon Jun  2 21:44:15 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4914         * re.c: fix SEGV by Regexp.allocate.names, Match.allocate.names, etc.
4916         * test/ruby/test_regexp.rb: add tests for above.
4918         * io.c: fix SEGV by IO.allocate.print, etc.
4920         * test/ruby/test_io.rb: add tests for above.
4922 Mon Jun  2 19:17:47 2008  Tanaka Akira  <akr@fsij.org>
4924         * test/ruby/test_argf.rb (teardown): remove renamed temporary files.
4926 Mon Jun  2 18:51:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4928         * lib/un.rb (wait_writable): wait until target files can be
4929           written actually.
4931         * win32/Makefile.sub (LDSHARED_0, LINK_SO): get rid of failure of
4932           mt.exe.
4934 Mon Jun  2 16:26:17 2008  Akinori MUSHA  <knu@iDaemons.org>
4936         * lib/delegate.rb (Delegator::MethodDelegation#respond_to):
4937           respond_to? should now take optional second argument; submitted
4938           by Jeremy Kemper <jeremy at bitsweat.net> in [ruby-core:17045].
4940 Mon Jun  2 16:14:18 2008  Akinori MUSHA  <knu@iDaemons.org>
4942         * lib/erb.rb (ERB::Compiler::TrimScanner#scan_line): Oops.  This
4943           change did not apply to trunk.  Backed out.
4945 Mon Jun  2 16:08:24 2008  Akinori MUSHA  <knu@iDaemons.org>
4947         * lib/erb.rb (ERB::Compiler::TrimScanner#scan_line): Fix a bug
4948           where tokens are not yielded one by one.
4950         * test/erb/test_erb.rb (TestERBCore#_test_01)
4951           (TestERBCore#test_02_safe_04): The expected value should come
4952           first for assert_equal().
4954 Mon Jun  2 13:06:38 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4956         * mkconfig.rb: hide build path from rbconfig.rb.
4958 Mon Jun  2 08:46:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4960         * util.c (ruby_strtod, dtoa): initialize more variables for error
4961           handling.
4963 Mon Jun  2 04:55:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4965         * suppress warnings on cygwin, mingw and mswin.
4967 Mon Jun  2 04:35:32 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4969         * enc/gb18030.c (gb18030_code_to_mbc): add 0x80000000
4970           for 4bytes character.
4972 Mon Jun  2 03:52:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4974         * ruby.c (set_arg0): reverted used variable definition.
4976 Mon Jun  2 03:23:25 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4978         * enc/gb18030.c (gb18030_mbc_to_code): mask by 0x7FFFFFFF
4979           because OnigCodePoint will be used as 32bit signed int.
4980           Masking by 0x7FFFFFFF is ok on GB18030;
4981           Minimum 4bytes character is 0x81308130.
4983 Sun Jun  1 22:29:35 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4985         * rational.c (string_to_r_internal): use rb_isdigit.
4987         * marshal.c (long_toobig): use %zd.
4989         * ruby.c (set_arg0): move unused variable definition.
4991 Sun Jun  1 12:18:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4993         * insns.def (DEFINE_INSN): subtract of pointers is ptrdiff_t.
4994           this is not int on 64bit system.
4996         * vm_dump.c (control_frame_dump): ditto.
4998         * vm_dump.c (stack_dump_each): ditto.
5000         * vm_dump.c (debug_print_register): ditto.
5002         * vm_dump.c (debug_print_pre): ditto.
5004         * transcode.c (str_transcode): ditto.
5006 Sun Jun  1 10:32:18 2008  Tanaka Akira  <akr@fsij.org>
5008         * test/ruby/envutil.rb (assert_normal_exit): show coredump status.
5010 Sat May 31 23:33:34 2008  Akinori MUSHA  <knu@iDaemons.org>
5012         * README, README.ja: Add a note about default C flags.
5014 Sat May 31 23:02:00 2008  Tanaka Akira  <akr@fsij.org>
5016         * gc.c (count_objects): clear given hash.
5018 Sat May 31 20:28:10 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5020         * test/ruby/test_regexp.rb: add tests.
5022 Sat May 31 19:11:39 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5024         * enc/utf_16{be,le}.c (utf16{be,le}_code_to_mbc):
5025           fix codepoint to bytes.
5027 Sat May 31 18:28:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5029         * suppress warnings with -Wwrite-string.
5031 Sat May 31 18:26:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5033         * array.c (rb_ary_delete_if): should return enumerator if no block
5034           is given.  [ruby-dev:34901]
5036 Sat May 31 15:58:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5038         * Makefile.in, configure.in (warnflags): defaulted to -Wall
5039           -Wno-parentheses with gcc.  [ruby-dev:34810]
5041 Sat May 31 15:17:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5043         * include/ruby/mvm.h: new header file for MVM, and moved rb_vm_t and
5044           rb_thread_t from vm_core.h.
5046 Sat May 31 12:02:23 2008  Tanaka Akira  <akr@fsij.org>
5048         * test/ruby/envutil.rb (assert_normal_exit): show pid when fail.
5050 Fri May 30 23:55:56 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
5052         * test/ruby/test_rubyoptions.rb: add a test of RUBY_DESCRIPTION.
5054 Fri May 30 22:47:17 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5056         * test/ruby/test_regexp.rb: add tests.
5058 Fri May 30 22:40:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5060         * test/ruby/test_signal.rb: add tests to achieve over 80% test
5061           coverage of signal.c.
5063 Fri May 30 22:28:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5065         * signal.c (esignal_signo): fix SignalException#signo which returned
5066           nil absolutely.
5068         * signal.c (esignal_init): always prepend "SIG" to a string that is
5069           returned by SignalException#signm.
5071 Fri May 30 22:17:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5073         * test/ruby/test_argf.rb: rename a conflicting method name.
5075         * test/ruby/test_string.rb: ditto.
5077         * test/ruby/test_io.rb: ditto.
5079 Fri May 30 22:14:37 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5081         * compile.c (defined_expr): fix SEGV by defined?([1]).
5083 Fri May 30 12:18:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5085         * common.mk (prelude.c): simply depends on PREP.  [ruby-dev:34877]
5087         * enc/make_encdb.rb, enc/trans/make_transdb.rb: ditto.
5089 Fri May 30 10:55:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5091         * vm_core.h (struct rb_unblock_callback), thread.c
5092           (set_unblock_function), thread_{pthread,win32}.c (native_sleep):
5093           extracted from struct rb_thread_struct.
5095         * thread.c (reset_unblock_function): not check interrupts at leaving
5096           blocking region.  [ruby-dev:34874]
5098 Fri May 30 06:09:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5100         * enc/utf_8.c: add UTF8-MAC (UTF-8-MAC).
5102 Fri May 30 04:17:13 2008  Akinori MUSHA  <knu@iDaemons.org>
5104         * enum.c (enum_count, count_all_i, Init_Enumerable),
5105           array.c (rb_ary_count): If no argument or block is given, count
5106           the number of all elements.
5108 Fri May 30 03:12:18 2008  Akinori MUSHA  <knu@iDaemons.org>
5110         * ext/openssl/ossl_bn.c (ossl_bn_s_rand, ossl_bn_s_pseudo_rand):
5111           Int should be enough here.
5113 Fri May 30 02:35:00 2008  Akinori MUSHA  <knu@iDaemons.org>
5115         * ext/openssl/ossl_bn.c (ossl_bn_s_rand, ossl_bn_s_pseudo_rand),
5116           ext/openssl/ossl_pkey_dh.c (ossl_dh_s_generate)
5117           (ossl_dh_initialize),
5118           ext/openssl/ossl_pkey_dsa.c (ossl_dsa_s_generate),
5119           ext/openssl/ossl_rand.c (ossl_rand_bytes)
5120           (ossl_rand_pseudo_bytes, ossl_rand_egd_bytes),
5121           ext/openssl/ossl_x509store.c (ossl_x509stctx_set_error): Do not
5122           use FIX2INT() without checking the value type.  Use NUM2INT()
5123           instead; found by akr in [ruby-dev:34890].
5125 Fri May 30 02:08:20 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5127         * signal.c (esignal_init): handle a non-integer argument correctly,
5128           allowing SignalException.new(:INT).
5130 Fri May 30 00:59:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5132         * test/ruby/test_regexp.rb: add tests.
5134 Thu May 29 22:51:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5136         * test/ruby/test_require.rb: add a test for load with wrap flag, to
5137           achieve 100% test coverage of eval_jump.c.
5139 Thu May 29 22:47:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5141         * test/ruby/test_argf.rb: new tests for ARGF, to achieve over 85% test
5142           coverage of file.c.
5144         * test/ruby/test_io.rb: add tests.
5146 Thu May 29 22:41:48 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5148         * io.c (argf_readchar): raise EOFError, synchronizing IO#readchar.
5150 Thu May 29 22:29:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5152         * io.c (argf_external_encoding, argf_internal_encoding): fix SEGV by
5153           ARGF.external_encoding.
5155 Thu May 29 17:52:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5157         * ext/zlib/extconf.rb: search zlib1, and regard mswin32 later than VC6
5158           as WIN32.  [ruby-core:16984]
5160 Wed May 28 18:05:28 2008  Akinori MUSHA  <knu@iDaemons.org>
5162         * array.c (rb_ary_nitems, Init_Array): Axe Array#nitems().
5163           cf. [ruby-dev:34676]-[ruby-dev:34713]
5165 Wed May 28 17:50:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5167         * win32/mkexports.rb (Exports#objdump, Exports#each_line): extracted.
5169 Wed May 28 17:41:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5171         * Makefile.in (MKPREP): appended $(RBCONFIG).
5173         * common.mk (enc.mk, prelude.c): not depend on $(RBCONFIG) on mswin32
5174           to get of compiling twice each time.
5176         * win32/Makefile.sub (prelude.c): not depend on $(PREP).
5178 Wed May 28 17:37:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5180         * win32/mkexports.rb (Exports::Mswin#each_export): speed up.
5182 Wed May 28 16:41:59 2008  Akinori MUSHA  <knu@iDaemons.org>
5184         * array.c (rb_ary_slice_bang): Call rb_ary_modify_check() at the
5185           beginning. [rubyspec]
5187 Wed May 28 16:12:44 2008  Akinori MUSHA  <knu@iDaemons.org>
5189         * lib/webrick/httpservlet/cgihandler.rb (WEBrick::HTTPServlet::CGIHandler#do_GET):
5190           Set the HTTP status code to 302 if a Location header field is
5191           present and the status code is not valid as a client
5192           redirection.  cf. RFC 3875 6.2.3, 6.2.4.
5194 Wed May 28 15:53:52 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5196         * enc/trans/japanese.c (to_SHIFT_JIS_EF_infos): typo.
5198 Wed May 28 15:18:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5200         * lib/singleton.rb (SingletonClassMethods): _load should be public.
5202 Wed May 28 13:30:43 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5204         * enc/trans/japanese.c: add workaround for Unicode to CP932.
5205           U+2015->0x815C, U+2225->0x8161, U+FF0D->0x817C, U+FF3C->0x815F,
5206           U+FF5E->0x8160, U+FFE0->0x8191, U+FFE1->0x8192, U+FFE2->0x81CA
5208 Wed May 28 12:52:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5210         * marshal.c (w_object, marshal_dump, r_object0, marshal_load): search
5211           private methods too.  [ruby-dev:34671]
5213         * object.c (convert_type): ditto.
5215 Wed May 28 08:42:51 2008  Tanaka Akira  <akr@fsij.org>
5217         * numeric.c: "%" is required before PRI?VALUE.
5219 Tue May 27 22:10:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5221         * eval_error.c (error_handle): SystemExit and SignalException throws
5222           TAG_RAISE but not TAG_FATAL.
5224         * thread.c (rb_thread_execute_interrupts): delay interrupts during
5225           raising exceptions.  [ruby-dev:34855]
5227 Tue May 27 20:18:30 2008  Akinori MUSHA  <knu@iDaemons.org>
5229         * array.c (rb_ary_slice_bang): Return an empty array instead of
5230           nil when pos is valid and len is adjusted from a valid value to
5231           zero; caught by RubySpec.
5233 Tue May 27 19:12:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5235         * Makefile.in (MKPREP), common.mk, win32/Makefile.sub (prelude.c): get
5236           rid of depending PREP with nmake.
5238         * common.mk (encs): depends on libruby.
5240 Tue May 27 19:00:22 2008  Akinori MUSHA  <knu@iDaemons.org>
5242         * ext/stringio/stringio.c (strio_each_char, Init_stringio): Add
5243           StringIO#{each_char,chars}.
5244           (Init_stringio): Fix StringIO#bytes.
5246 Tue May 27 17:54:35 2008  Akinori MUSHA  <knu@iDaemons.org>
5248         * ext/stringio/stringio.c (strio_each_byte): Return self instead
5249           of nil as the rdoc says.
5251 Tue May 27 15:36:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5253         * numeric.c (check_int): use PRIxVALUE format specifier.
5255         * numeric.c (check_uint, rb_num2fix, int_chr): ditto.
5257         * numeric.c (num_fdiv): fallback to_f should always return float
5258           result.  should not use #quo that may return rational.
5260         * numeric.c (num_div): should raise ZeroDivisionError.
5262         * numeric.c (fix_divide): ditto.
5264         * test/ruby/test_numeric.rb (TestNumeric::test_divmod): avoid
5265           ZeroDivisionError in tests.
5267 Tue May 27 13:14:53 2008  Akinori MUSHA  <knu@iDaemons.org>
5269         * enum.c (enum_to_a): Pass arguments through to #each().
5270           (enum_sort): Follow the enum_to_a signature change.
5271           (enum_reverse_each): Add #reverse_each().
5273 Tue May 27 13:12:37 2008  Akinori MUSHA  <knu@iDaemons.org>
5275         * io.c (Init_IO): Define ARGF.{lines,bytes,chars}.
5277 Tue May 27 12:06:37 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5279         * file.c (BUFCHECK): wrong condition. [ruby-core:16921]
5281         * file.c (file_expand_buf): shouldn't use buflen for length of string.
5283 Mon May 26 18:24:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5285         * file.c (BUFCHECK): no resize if enough room.
5287         * file.c (file_expand_path): use BUFCHECK.
5289 Mon May 26 17:48:42 2008  Akinori MUSHA  <knu@iDaemons.org>
5291         * enumerator.c (struct enumerator, enumerator_init)
5292           (enumerator_init_copy, enumerator_each): Eliminate iter.
5293           (enumerator_ptr): Do not hardcode the class name.
5294           (enumerator_with_index): Delay variable initialization after
5295           RETURN_ENUMERATOR().
5297 Mon May 26 17:23:49 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5299         * file.c (file_expand_path): add more space for '/'.
5301         * file.c (file_expand_path): should reset address of p after calling
5302           rb_str_resize(). [ruby-dev:34800]
5304 Mon May 26 16:49:55 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5306         * misc/ruby-mode.el (ruby-mode): use run-hooks if run-mode-hook is
5307           not available.  a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>
5308           in [ruby-dev:34853].
5310 Mon May 26 16:41:35 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5312         * file.c (ntfs_tail): filename which starts with '.' is valid.
5314         * file.c (file_expand_path): cygwin symlink support.
5316 Mon May 26 07:15:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5318         * vm_dump.c (rb_vm_bugreport): rb_make_backtrace has no arguments.
5320 Mon May 26 01:17:54 2008  Tanaka Akira  <akr@fsij.org>
5322         * test/ruby/envutil.rb (assert_normal_exit): signal description
5323           refined.
5325 Mon May 26 00:52:52 2008  Akinori MUSHA  <knu@iDaemons.org>
5327         * hash.c (env_each_key, env_each_value, env_reject_bang)
5328           (rb_env_clear, env_replace): Omit duplicated secure level check.
5330 Mon May 26 00:37:16 2008  Akinori MUSHA  <knu@iDaemons.org>
5332         * hash.c (env_each_value): Do not call env_values() twice.
5334 Sun May 25 17:54:36 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5336         * compile.c (iseq_compile): set local_table for
5337           ISEQ_TYPE_DEFINED_GUARD.
5339 Sun May 25 17:52:25 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5341         * compile.c (iseq_build_body): remove side effect from
5342           VM::InstructionSequence.load.
5344 Sun May 25 04:30:45 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5346         * test/ruby/test_modules.rb (remove_json_mixins): change judgment
5347           condition.
5349 Sun May 25 03:54:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5351         * test/ruby/test_modules.rb (test_ancestors, test_included_modules):
5352           ignore json mixins.
5354 Sun May 25 02:37:25 2008  Koichi Sasada  <ko1@atdot.net>
5356         * eval_method.c: renamed from vm_method.c.  "vm_method.c" is included
5357           by "vm.c".
5359         * vm_eval.c: added.  Some codes are moved from "eval.c"
5361         * common.mk: fix for above changes.
5363         * compile.c: make a vm_eval(0)
5365         * eval.c, eval_error.c, eval_intern.h, eval_jump.c, proc.c, vm.c,
5366           id.c, id.h, vm_core.h, vm_dump.c, vm_evalbody.c, vm_insnhelper.c,
5367           blockinlining.c: fix for above changes.  and do some refactoring.
5368           this changes improve rb_yield() performance.
5370 Sat May 24 22:32:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5372         * util.c (ruby_strtod): clear errno at the top of our own
5373           implementation of strtod(3).  [ruby-dev:34834] [ruby-dev:34839]
5375 Sat May 24 15:26:16 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5377         * compile.c (iseq_set_exception_table, NODE_WHILE, NODE_NEXT): remove
5378           special handling that decrements sp in CATCH_TYPE_NEXT for NODE_WHILE.
5380         * vm.c (vm_eval_body), vm_insnhelper.c (vm_throw): remove unused code.
5382 Sat May 24 08:13:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5384         * transcode.c (rb_str_transcode): argc is 1, and argv is &to.
5386 Fri May 23 17:55:11 2008  Akinori MUSHA  <knu@iDaemons.org>
5388         * array.c (rb_ary_slice_bang): Be consistent with Array#slice()
5389           and String#slice!().  Just return nil when a negative length or
5390           out of boundary index is given instead of raising an exception
5391           via internal functions.
5393 Fri May 23 16:44:34 2008  Akinori MUSHA  <knu@iDaemons.org>
5395         * enumerator.c (Init_Enumerator): Override
5396           Enumerable::Enumerator#each_with_index with #with_index.
5398 Fri May 23 12:23:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5400         * vm_core.h (rb_num_t): moved form vm.h.
5402         * tool/instruction.rb (RubyVM::Instruction#sp_increase_c_expr),
5403           tool/instruction.rb (RubyVM::VmBodyGenerator#make_header_operands):
5404           omit unused variables.
5406 Fri May 23 08:47:02 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5408         * error.c (exc_equal): == operator should be transitional.
5409           [ruby-dev:34808]
5411         * error.c (syserr_eqq): === should be able to handle delegated
5412           objects as well.
5414 Fri May 23 06:15:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5416         * iseq.c (rb_iseq_compile_with_option): get rid of segv.
5418 Fri May 23 02:29:14 2008  Koichi Sasada  <ko1@atdot.net>
5420         * insns.def (opt_gt|ge|lt|le): use values directly to compare.
5422 Fri May 23 01:15:09 2008  Koichi Sasada  <ko1@atdot.net>
5424         * eval.c, eval_intern.h, include/ruby/intern.h, include/ruby/ruby.h,
5425           vm.c, vm_core.h, vm_insnhelper.c: remove pointless "const".
5427 Thu May 22 23:45:17 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5429         * compile.c (get_destination_insn, get_next_insn, get_prev_insn):
5430           peephole optimization should not ignore ISEQ_ELEMENT_ADJUST.
5432 Thu May 22 20:20:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5434         * marshal.c (check_dump_arg, check_load_arg): check if reentered.
5435           [ruby-dev:34802]
5437 Thu May 22 20:14:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5439         * iseq.c (iseq_load, iseq_data_to_ary): support
5440           ISEQ_TYPE_DEFINED_GUARD.
5442 Thu May 22 19:01:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5444         * vm.c (vm_get_ruby_level_cfp): moved from eval_intern.h.
5446         * vm.c (sdr, nsdr): define methods only if VMDEBUG is defined.
5448 Thu May 22 17:18:35 2008  Tanaka Akira  <akr@fsij.org>
5450         * array.c (rb_ary_compact_bang): fix reallocation size.
5452 Thu May 22 15:20:20 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5454         * eval_intern.h, vm_core.h, include/ruby/intern.h, include/ruby/ruby.h,
5455           vm.c: need to add const to prototypes, of course.
5457 Thu May 22 13:24:43 2008  Koichi Sasada  <ko1@atdot.net>
5459         * eval.c, vm.c, vm_core.h, vm_insnhelper.c: specify "const".
5461         * vm_opts.h: add a OPT_TOKEN_THREADED_CODE macro.
5463 Thu May 22 12:51:41 2008  Tanaka Akira  <akr@fsij.org>
5465         * insns.def (newhash): fix a variable definition: "const k".
5467 Thu May 22 12:40:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5469         * array.c (flatten): check if reentered.  [ruby-dev:34798]
5471 Thu May 22 11:39:59 2008  Tanaka Akira  <akr@fsij.org>
5473         * test/ruby/envutil.rb (assert_normal_exit): capture stdout and stderr
5474           of the child process.
5476 Thu May 22 08:28:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5478         * array.c (flatten): free memo hash table before raising exception.
5479           [ruby-dev:34789]
5481 Thu May 22 06:30:10 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
5483         * array.c (flatten): fix memory leak.
5485 Thu May 22 06:21:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5487         * ext/nkf/nkf-utf8/nkf.c (nkf_str_caseeql): added.
5489         * ext/nkf/nkf-utf8/nkf.c (nkf_enc_find_index): use nkf_str_caseeql.
5491 Thu May 22 05:45:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5493         * proc.c (proc_dup): should copy safe_level from src proc
5494           properly.  a patch from Keita Yamaguchi
5495           <keita.yamaguchi at gmail.com>
5497 Thu May 22 02:46:08 2008  Shugo Maeda  <shugo@ruby-lang.org>
5499         * lib/net/imap.rb: do not use Thread#raise. [ruby-dev:34739]
5501 Thu May 22 00:30:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5503         * test/ruby/test_require.rb: new tests for library requiring, to
5504           achieve over 90% test coverage of dln.c.
5506         * test/ruby/test_class.rb: add tests to achieve over 90% test coverage
5507           of class.c.
5509         * test/ruby/test_module.rb: ditto.
5511 Thu May 22 00:15:44 2008  Koichi Sasada  <ko1@atdot.net>
5513         * insns.def, vm_insnhelper.c: specify "const".
5515 Wed May 21 23:20:21 2008  Koichi Sasada  <ko1@atdot.net>
5517         * bootstraptest/test_eval.rb: fix syntax.
5519 Wed May 21 17:46:17 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5521         * ext/nkf/nkf-utf8/nkf.c (nkf_enc_find_index):
5522           use strcasecmp. [ruby-dev:34787]
5524 Wed May 21 16:48:22 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5526         * array.c (rb_ary_compact_bang): avoid forceful realloc.
5528 Wed May 21 07:42:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5530         * string.c (rb_usascii_str_new): use rb_str_new.
5532         * string.c (rb_enc_str_new): ditto.
5534         * string.c (rb_usascii_str_new2): use rb_str_new2.
5536 Wed May 21 07:22:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5538         * encoding.c, include/ruby/encoding.h
5539           (rb_enc_associate, rb_enc_associate_index):
5540           returns obj. [ruby-dev:34778]
5542 Wed May 21 04:20:20 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5544         * encoding.c (rb_ascii8bit_encoding): use ENCINDEX_ASCII.
5546         * encoding.c, include/ruby/encoding.h (rb_ascii8bit_encindex):
5547           added.
5549         * encoding.c (rb_locale_encoding): use rb_usascii_encoding().
5551 Wed May 21 01:45:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5553         * test/ruby/test_file_exhaustive.rb (setup): workaround for Windows
5554           Vista.
5556         * test/ruby/envutil.rb (rubyexec): now Open3.open3 is supported on
5557           Windows.
5559         * test/ruby/test_process.rb: use ``||'' instead of ``;'' because
5560           cmd.exe not support it.
5562 Wed May 21 01:28:47 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5564         * transcode.c, include/ruby/encoding.h (rb_str_transcode):
5565           C API of encoding conversion for Ruby object.
5566           VALUE rb_str_transcode(VALUE str, VALUE to).
5568         * transcode.c (str_encode, str_encode_bang):
5569           rename from rb_tr_transcode or rb_str_transcode_bang.
5571 Tue May 20 23:26:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5573         * test/ruby/test_array.rb: fix tests for 64bit CPU.
5575 Tue May 20 20:59:56 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5577         * ext/nkf/nkf-utf8/nkf.c (rb_nkf_convert) (nkf_enc_without_bom):
5578           reverted. nkf-utf8/nkf.c should be independent of ruby.
5580         * ext/nkf/nkf.c (options):
5581           moved from nkf-utf8/nkf.c.
5582           override nkf's original settings for Unicode BOM.
5584 Tue May 20 13:20:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5586         * ext/nkf/nkf.c (rb_nkf_convert), ext/nkf/nkf-utf8/nkf.c
5587           (nkf_enc_without_bom): BOM is not a part of encodings.
5589         * ext/nkf/nkf.c (Init_nkf), ext/nkf/nkf-utf8/nkf.c (options):
5590           UTF-{16,32} without endian have no sense.
5592 Tue May 20 12:13:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5594         * ruby.c (proc_options, process_options): --dump option.
5596 Tue May 20 11:36:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5598         * include/ruby/ruby.h (PRI[diouxX]VALUE): printf format for VALUE.
5600         * gc.c (assign_heap_slot): suppress a warning.
5602 Tue May 20 03:42:43 2008  Koichi Sasada  <ko1@atdot.net>
5604         * eval.c, vm_insnhelper.c: fix cref in instance_eval
5605           and cvar_base search protocol.
5607         * bootstraptest/test_knownbug.rb, test_eval.rb: move solved test
5608           and add new tests.
5610         * test/ruby/test_eval.rb: fix tests for spec.
5612 Tue May 20 01:43:44 2008  Koichi Sasada  <ko1@atdot.net>
5614         * bootstraptest/test_knownbug.rb: fix a test.
5615           "block_given?" returns true if "yield" can be used.
5617 Tue May 20 01:07:19 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5619         * parse.y (assignable_gen): when "self = 1" was evaluated, unnecessary
5620           error message was output, which might cause null pointer access.
5622 Tue May 20 08:38:56 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5624         * string.c (rb_enc_strlen_cr): need to set ENC_CODERANGE_7BIT if
5625           search_nonascii() fails.    [ruby-dev:34751]
5627         * string.c (rb_str_reverse): preserve coderange info if the
5628           receiver is 7bit string.
5630         * string.c (rb_str_reverse_bang): ditto.
5632         * string.c (rb_str_reverse_bang): should have called
5633           single_byte_optimizable before rb_str_modify() that clears
5634           coderange info.
5636         * string.c (tr_trans): handle single bytes more eagerly.
5638 Mon May 19 23:32:12 2008  Koichi Sasada  <ko1@atdot.net>
5640         * vm.c (invoke_block_from_c): fix call flow.
5642 Mon May 19 23:19:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5644         * regexec.c (slow_search): check the case when the length is 1.
5645           The behavior of memcmp is undefined if the third argument is 0.
5647 Mon May 19 21:07:48 2008  Koichi Sasada  <ko1@atdot.net>
5649         * thread_pthread.c (native_thread_apply_priority):
5650           fix argument range check.  [ruby-dev:33124]
5652 Mon May 19 18:22:35 2008  Akinori MUSHA  <knu@iDaemons.org>
5654         * ext/openssl/ossl_pkcs5.c (ossl_pkcs5_pbkdf2_hmac): Fix the type
5655           of md; pointed out by Takahiro Kambe <taca at back-street.net>
5656           in [ruby-dev:34748].
5658 Mon May 19 17:23:55 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5660         * regparse.c (PINC): use optimized enclen() instead of
5661           ONIGENC_MBC_ENC_LEN().
5663         * regparse.c (PFETCH): ditto.
5665         * regparse.c (PFETCH): small optimization.
5667         * regexec.c (slow_search): single byte encoding optimization.
5669         * regenc.h (enclen): avoid calling function when encoding's
5670           min_len == max_len.
5672         * re.c (rb_reg_regsub): rb_enc_ascget() optimization for single
5673           byte encoding.
5675         * re.c (rb_reg_search): avoid allocating new re_registers if we
5676           already have MatchData.
5678         * re.c (match_init_copy): avoid unnecessary onig_region_free()
5679           before onig_region_copy.
5681         * encoding.c (rb_enc_get_index): remove implicit enc_capable check
5682           each time.
5684         * encoding.c (rb_enc_set_index): ditto.
5686         * encoding.c (enc_compatible_p): small refactoring.
5688         * include/ruby/encoding.h (rb_enc_dummy_p): inline
5689           rb_enc_dummy_p() and export related code.
5691 Mon May 19 14:32:03 2008  Koichi Sasada  <ko1@atdot.net>
5693         * version.h: fix strange change by version.h update tool.
5695 Mon May 19 14:18:13 2008  Koichi Sasada  <ko1@atdot.net>
5697         * bootstraptest/test_knownbug.rb: move solved tests.
5699         * bootstraptest/test_eval.rb, test_literal.rb, test_syntax.rb,
5700           test_thread.rb: ditto.
5702         * test/ruby/test_m17n.rb, test_proc.rb, test_sprintf.rb,
5703           test_string.rb, test/ruby/test_struct.rb: ditto.
5705 Mon May 19 13:23:03 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5707         * process.c (rb_spawn_internal): set last_status when status == -1
5708           because there is no path to set it on win32. this patch is derived
5709           from [ruby-core:16787], submitted by Luis Lavena <luislavena at
5710           gmail.com>
5712 Mon May 19 11:32:47 2008  Koichi Sasada  <ko1@atdot.net>
5714         * vm.c, insns.def, eval.c, vm_insnhelper.c: fix CREF handling.
5715           VM value stack frame of block contains cref information.
5716          (dfp[-1] points CREF)
5718         * compile.c, eval_intern.h, eval_method.c, load.c, proc.c,
5719           vm_dump.h, vm_core.h: ditto.
5721         * include/ruby/ruby.h, gc.c: remove T_VALUES because of above
5722           changes.
5724         * bootstraptest/test_eval.rb, test_knownbug.rb: move solved test.
5726 Sun May 18 22:26:51 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
5728         * lib/webrick/httpservlet/filehandler.rb: should normalize path
5729           name in path_info to prevent script disclosure vulnerability on
5730           DOSISH filesystems. (fix: CVE-2008-1891)
5731           Note: NTFS/FAT filesystem should not be published by the platforms
5732           other than Windows. Pathname interpretation (including short
5733           filename) is less than perfect.
5735         * lib/webrick/httpservlet/abstract.rb
5736           (WEBrick::HTTPServlet::AbstractServlet#redirect_to_directory_uri):
5737           should escape the value of Location: header.
5739         * lib/webrick/httpservlet/cgi_runner.rb: accept interpreter
5740           command line arguments.
5742 Sun May 18 02:54:46 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5744         * pack.c (pack_pack): check errno to detect error of ruby_strtoul.
5746         * pack.c (pack_unpack): ditto.
5748         * test/ruby/test_pack.rb: add a test for above.
5750 Sat May 17 23:53:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5752         * file.c (file_expand_path): fix for short file name on Cygwin.
5754 Sat May 17 18:03:52 2008  Yuki Sonoda (Yugui) <yugui@yugui.jp>
5756         * vm.c (Init_VM): removed the definition of Thread#initialize,
5757           which is overwritten in Init_Thread and is never used.
5759 Sat May 17 14:01:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5761         * array.c (rb_ary_sort_bang): should not free shared pointer, and set
5762           shared.  [ruby-dev:34732]
5764 Sat May 17 12:34:54 2008  Yuki Sonoda (Yugui) <yugui@yugui.jp>
5766         * thread_pthread.c (Init_native_thread): Kernel#.sleep used never to
5767           sleep on Mac OS X. Reported by arton <artonx AT yahoo.co.jp>.
5769         * thread_pthread.c (native_sleep): added error checks.
5771 Sat May 17 11:29:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5773         * file.c (rb_file_s_extname): first dot is not an extension name.
5775 Sat May 17 03:21:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5777         * array.c (rb_ary_sort_bang): stop memory leak.  [ruby-dev:34726]
5779         * re.c (rb_reg_search): need to free allocated buffer in re_register.
5781         * regexec.c (onig_region_new): more pedantic malloc check.
5783         * regexec.c (onig_region_resize): ditto.
5785         * regexec.c (STATE_CHECK_BUFF_INIT): ditto.
5787         * regexec.c (onig_region_copy): use onig_region_resize.
5789 Fri May 16 12:48:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5791         * math.c (to_flo): rb_Float() accepts even strings for input.
5793         * complex.c (nucomp_to_f): fix wrong message.
5795         * complex.c (nucomp_to_r): ditto.
5797         * object.c (rb_Float): do not check NaN for error.  NaN is a part
5798           of valid float values.
5800 Thu May 15 23:36:09 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5802         * test/ruby/test_string.rb: add tests to achieve over 90% test
5803           coverage of string.c.
5805         * test/ruby/test_m17n.rb: ditto.
5807         * test/ruby/test_symbol.rb: ditto.
5809         * test/ruby/test_pack.rb: ditto.
5811 Thu May 15 23:01:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5813         * string.c (tr_find): String#delete returned wrong result when multiple
5814           utf-8 arguments are passed.
5816         * test/ruby/test_m17n.rb (test_delete): add a test for above.
5818 Thu May 15 22:37:56 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5820         * parse.y (ripper_warningS): now used.
5822 Thu May 15 15:33:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5824         * file.c (file_expand_path): support for alternative data stream
5825           and ignored trailing garbage of NTFS.
5827         * file.c (rb_file_s_basename): ditto.
5829         * file.c (rb_file_s_extname): ditto.
5831 Thu May 15 13:43:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5833         * object.c (rb_cstr_to_dbl): no need for forceful warning when
5834           converting to float.  overflow is a nature of float values.
5836         * parse.y (parser_yylex): ditto.
5838 Thu May 15 13:23:20 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5840         * re.c (rb_reg_prepare_enc): error condition was updated for non
5841           ASCII compatible strings.
5843 Thu May 15 12:19:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5845         * ext/openssl/openssl_missing.c (HMAC_CTX_copy): adopted
5846           prototype change in openssl bundled with newer OpenBSD.
5847           a patch from Takahiro Kambe <taca at back-street.net> in
5848           [ruby-dev:34691].
5850 Wed May 14 22:09:25 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5852         * ChangeLog: fix typo.
5854 Wed May 14 21:49:14 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5856         * test/ruby/test_object.rb: new tests to achieve over 90% test
5857           coverage of object.c, eval.c and eval_method.c.
5859         * test/ruby/test_module.rb: ditto.
5861         * test/ruby/test_trace.rb: ditto.
5863         * test/ruby/test_integer.rb: ditto.
5865         * test/ruby/test_float.rb: ditto.
5867         * test/ruby/test_method.rb: ditto.
5869         * test/ruby/test_variable.rb: ditto.
5871         * test/ruby/test_eval.rb: ditto.
5873         * test/ruby/test_exception.rb: ditto.
5875         * test/ruby/test_class.rb: ditto.
5877 Wed May 14 12:46:37 2008  Koichi Sasada  <ko1@atdot.net>
5879         * iseq.c (insn_operand_intern): remove Qundef related code.
5881 Wed May 14 12:42:36 2008  Akinori MUSHA  <knu@iDaemons.org>
5883         * array.c (rb_ary_count): Override Enumerable#count for better
5884           performance.
5886 Wed May 14 11:29:06 2008  Koichi Sasada  <ko1@atdot.net>
5888         * insns.def: add a "putcbase" instruction.
5890         * compile.c, insns.def: fix to use putcbase instruction for
5891           class search.  Qundef should not be used.
5893 Wed May 14 07:49:35 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5895         * eval.c (rb_call0): defer calling of rb_frame_self() until it
5896           become really necessary.
5898         * eval.c (rb_call): ditto.
5900 Wed May 14 00:55:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5902         * test/ruby/test_io_m17n.rb: remove a duplicative method.
5904         * test/ruby/test_utf16.rb: rename a conflicting method name.
5906         * test/ruby/test_array.rb: ditto.
5908         * test/ruby/test_file_exhaustive.rb: ditto.
5910         * test/ruby/test_hash.rb: ditto.
5912         * test/ruby/test_env.rb: ditto.
5914         * test/ruby/test_fixnum.rb: ditto.
5916         * test/ruby/test_rational.rb: ditto.
5918 Wed May 14 00:45:58 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5920         * eval_method.c (rb_add_method): fix check for warning when
5921           Object#initialize is redefined. (same as 1.8)
5923 Tue May 13 23:32:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5925         * enum.c (enum_yield): use rb_yield_values2.
5927         * enum.c (DEFINE_ENUMFUNCS): macro to define enumerator and yielding
5928           functions.
5930         * enum.c (enum_all_func, enum_any_func, enum_one_func,
5931           enum_none_func): reduced duplicate code.
5933 Tue May 13 15:09:38 2008  Akinori MUSHA  <knu@iDaemons.org>
5935         * enumerator.c: Update rdoc.
5936           (enumerator_initialize): Discourage the use.
5937           (enum_each_slice, enum_each_cons, enumerator_each)
5938           (enumerator_with_index): Add a note about a call without a block.
5940 Tue May 13 08:25:31 2008  Tanaka Akira  <akr@fsij.org>
5942         * io.c (rb_f_gets): re-enable rdoc.
5943           (rb_f_readline): ditto.
5944           (rb_f_readlines): ditto.
5946 Tue May 13 07:56:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5948         * string.c (rb_str_cat): fixed buffer overrun reported by
5949           Christopher Thompson <cthompson at nexopia.com> in [ruby-core:16746]
5951 Mon May 12 23:37:57 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5953         * vm.c (collect_local_variables_in_env): remove unnecessary check
5954           which causes: x=1;proc{local_variables}.call #=> []
5956         * test/ruby/test_variable.rb: add a test for above.
5958 Mon May 12 23:05:24 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5960         * process.c, include/ruby/intern.h (rb_run_exec_options): externed.
5962         * process.c (save_redirect_fd, save_env_i, save_env, run_exec_dup2,
5963           run_exec_open, run_exec_pgroup, run_exec_rlimit, rb_run_exec_options):
5964           save parent's process environments.
5966         * process.c (rb_spawn_internal): remove calling run_exec_options()
5967           because cannot restore after spawn.
5969         * io.c (pipe_open): ditto.
5971         * test/ruby/test_process.rb (test_execopts_env): upcase environment
5972           variable name for case insensitive platforms.
5974         * win32/win32.c (init_env): set USER environment variable only when
5975           USERNAME is available.
5977 Mon May 12 22:23:01 2008  Tanaka Akira  <akr@fsij.org>
5979         * lib/date.rb (once): use Object#object_id instead of Symbol#to_i.
5981 Mon May 12 21:34:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5983         * test/ruby/envutil.rb (rubybin): return expanded rubyexe instead of
5984           expanded ruby if available.
5986 Mon May 12 20:19:55 2008  Akinori MUSHA  <knu@iDaemons.org>
5988         * enum.c (grep_i): Be aware of multiple values;
5989           fix [ruby-dev:34653].
5990           (grep_iter_i): Ditto.
5991           (count_i): Ditto.
5992           (find_i): Ditto.
5993           (find_index_i): Ditto.
5994           (find_all_i): Ditto.
5995           (reject_i): Ditto.
5996           (inject_i): Ditto.
5997           (inject_op_i): Ditto.
5998           (partition_i): Ditto.
5999           (group_by_i): Ditto.
6000           (first_i): Ditto.
6001           (sort_by_i): Ditto.
6002           (all_i): Ditto.
6003           (all_iter_i): Ditto.
6004           (any_i): Ditto.
6005           (any_iter_i): Ditto.
6006           (one_i): Ditto.
6007           (one_iter_i): Ditto.
6008           (none_i): Ditto.
6009           (none_iter_i): Ditto.
6010           (min_i): Ditto.
6011           (min_ii): Ditto.
6012           (max_i): Ditto.
6013           (max_ii): Ditto.
6014           (minmax_i): Ditto.
6015           (minmax_ii): Ditto.
6016           (min_by_i): Ditto.
6017           (max_by_i): Ditto.
6018           (minmax_by_i): Ditto.
6019           (member_i): Ditto.
6020           (take_i): Ditto.
6021           (take_while_i): Ditto.
6022           (drop_i): Ditto.
6023           (drop_while_i): Ditto.
6024           (cycle_i): Ditto.
6026         * enum.c (each_with_index): Update rdoc.  each_with_index() takes
6027           arguments that are passed through to each(), and a hash preserves
6028           key order.
6030 Mon May 12 19:05:24 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6032         * process.c (rb_spawn_internal): remove calling run_exec_options()
6033           because cannot restore after spawn. we'll fix this later.
6035 Mon May 12 18:16:44 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6037         * process.c (rb_spawn_internal): need to call run_exec_options() before
6038           spawn if the platform doesn't have fork. [ruby-dev:34647]
6040 Mon May 12 15:20:02 2008  Tanaka Akira  <akr@fsij.org>
6042         * gc.c (ruby_vm_xmalloc): increase malloc_increase only if malloc
6043           succeeds.  failed malloc size can be huge.  it may increase
6044           malloc_limit too big which cause less GC and memory full.
6045           (ruby_vm_xrealloc): ditto.
6046           (rb_objspace): make params.limit and params.increase size_t.
6048 Mon May 12 15:04:58 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6050         * re.c (rb_reg_prepare_re): made non static with small refactoring.
6052         * ext/strscan/strscan.c (strscan_do_scan): should adjust encoding
6053           before regex searching.
6055 Mon May 12 13:57:19 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6057         * eval.c (is_defined): add NODE_OP_ASGN_{OR,AND}.  "defined?(a||=1)"
6058           should not operate assignment.  [ruby-dev:34645]
6060 Mon May 12 13:29:26 2008  Tanaka Akira  <akr@fsij.org>
6062         * bignum.c (bigzero_p): check from MSB to LSB.  [ruby-dev:34649]
6064 Mon May 12 12:32:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6066         * common.mk (RUBYOPT): affected BASERUBY too.  [ruby-talk:301514]
6068 Mon May 12 12:27:55 2008  Tanaka Akira  <akr@fsij.org>
6070         * gc.c (assign_heap_slot): fix condition for number of objects in
6071           a heap.
6073 Mon May 12 12:24:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6075         * string.c (sym_to_i): really removed.  [ruby-dev:34641]
6077 Mon May 12 11:15:55 2008  Yuki Sonoda (Yugui) <yugui@yugui.jp>
6079         * gc.c (assign_heap_slot):  put the binary search routine in order.
6081 Mon May 12 10:52:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6083         * ruby.c (ruby_init_gems), gem_prelude.rb: check if Gem is defined
6084           instead of Gem::Enable.
6086         * gem_prelude.rb (load_full_rubygems_library, const_missing): prevent
6087           infinite recursion.  [ruby-dev:34539]
6089 Sun May 11 23:19:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6091         * enum.c (all_iter_i, any_iter_i): reduced duplicated code.
6093 Sun May 11 22:54:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6095         * bootstraptest/runner.rb (main): leave -I options for purelib.rb
6096           untouched.
6098         * bootstraptest/runner.rb (main): handle relative path -r options.
6100 Sun May 11 19:04:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6102         * test/ruby/test_thread.rb: kill and join temporal threads that are
6103           created in each test.
6105 Sun May 11 17:58:45 2008  Tanaka Akira  <akr@fsij.org>
6107         * test/ruby/test_process.rb (TestProcess#with_stdin): defined.
6108           (TestProcess#test_argv0_noarg): don't use redirect_fds.
6109           [ruby-dev:34647]
6111 Sun May 11 17:57:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6113         * configure.in (MINIRUBY): should not include extension library path.
6115 Sun May 11 14:40:36 2008  Tanaka Akira  <akr@fsij.org>
6117         * include/ruby/ruby.h (SIZET2NUM): new macro.
6118           (NUM2SIZET): new macro.
6120         * gc.c (struct rb_objspace): use size_t for increment, length and
6121           used for 64bit.
6122           (allocate_heaps): ditto.
6123           (assign_heap_slot): ditto.
6124           (set_heaps_increment): ditto.
6125           (gc_mark_all): ditto.
6126           (is_pointer_to_heap): ditto.
6127           (free_unused_heaps): ditto.
6128           (gc_sweep): ditto.
6129           (os_obj_of): ditto.
6130           (rb_gc_call_finalizer_at_exit): ditto.
6131           (count_objects): ditto.
6133 Sun May 11 13:14:09 2008  Tanaka Akira  <akr@fsij.org>
6135         * thread.c (thread_cleanup_func_before_exec): extracted from
6136           thread_cleanup_func not to touch pthread data.
6137           pthread_cond_destroy in forked process may cause deadlock on
6138           Debian GNU/Linux Etch on x86, x86-64 and IA64.
6139           this doesn't cause resource leak because the process will exec soon.
6140           (terminate_atfork_before_exec_i): defined.
6141           (rb_thread_atfork_before_exec): defined.
6143         * include/ruby/intern.h (rb_thread_atfork_before_exec): declared.
6145         * process.c (rb_exec_atfork): call rb_thread_atfork_before_exec
6146           instead of rb_thread_atfork.
6148         * io.c (popen_exec): call rb_thread_atfork_before_exec instead of
6149           rb_thread_atfork.
6151 Sat May 10 22:14:03 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6153         * string.c (tr_trans): single '^' does not mean negation.
6154           [ruby-dev:34632]
6156         * string.c (tr_trans): should check src size, not str size.
6157           [ruby-dev:34637]
6159         * string.c (tr_trans): should not turn on modify flag if no
6160           modification happens.  [ruby-dev:34631]
6162 Sat May 10 18:11:18 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6164         * string.c (rb_str_each_line): zero length record separator should
6165           split a string into paragraphs.  [ruby-dev:34586]
6167         * string.c (rb_str_each_line): RDoc updated.
6169 Sat May 10 11:36:20 2008  Tanaka Akira  <akr@fsij.org>
6171         * vm.c (env_mark): mark env->block.self.  prevent SEGV when GC occur
6172           in prepare_iseq_build with gcc version 3.4.6 [FreeBSD] 20060305 on
6173           FreeBSD/amd64.
6175 Fri May  9 19:16:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6177         * thread.c (timeofday): use monotonic clock.  based on a patch
6178           from zimbatm <zimbatm at oree.ch> in [ruby-core:16627].
6180 Fri May  9 07:47:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6182         * cont.c (cont_restore_0): dynamic stack direction code should be
6183           consistent with static one.  [ruby-talk:301152]
6185 Fri May  9 00:03:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6187         * parse.y (arg): operator assignment "a += b rescue c" should be
6188           parsed as "a += (b rescue c)" just like normal assignment.
6189           [ruby-talk:301000]
6191 Thu May  8 18:14:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6193         * bignum.c (rb_big_and): bit-wise operation should not take float
6194           values.  [ruby-dev:34612]
6196         * bignum.c (rb_big_or): ditto.
6198         * bignum.c (rb_big_xor): ditto.
6200 Thu May  8 17:44:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6202         * common.mk, ext/extmk.rb, lib/mkmf.rb: use absolute path for RUBYOPT.
6204         * file.c (rb_find_file_ext): guard load_path from GC.
6205           gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21) optimizes
6206           load_path by holding only RARRAY_LEN(load_path) and
6207           RARRAY_PTR(load_path) in registers on IA64 GNU/Linux Etch.
6209 Thu May  8 16:41:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6211         * configure.in (MINIRUBY), common.mk (RUBYOPT): add purelib.rb.
6212           [ruby-core:16642]
6214 Thu May  8 16:00:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6216         * parse.y (parser_yylex): ! and ? at the bottom are no longer part
6217           of valid symbol names.  [ruby-dev:34590]
6219 Thu May  8 15:36:11 2008  Tanaka Akira  <akr@fsij.org>
6221         * thread.c (rb_gc_save_machine_context): call FLUSH_REGISTER_WINDOWS
6222           to mark the register stack from GC on another thread.
6224 Thu May  8 15:14:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6226         * array.c (rb_ary_sort_bang): freeze temporary array.
6228 Thu May  8 13:19:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6230         * vm.c (rb_thread_mark): mark stat_insn_usage only when ptr is not
6231           null.
6233 Thu May  8 10:44:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6235         * array.c (sort_reentered): reentered check may be called from
6236           Array#sort.
6238 Thu May  8 09:51:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6240         * array.c (sort_1, sort_2): check for reentered and if elements are
6241           accessible.  [ruby-core:16679]
6243 Thu May  8 06:43:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6245         * dln.c (dln_find_exe_r, dln_find_file_r): reentrant versions.
6247         * file.c (rb_find_file_ext, rb_find_file), process.c (proc_exec_v),
6248           (rb_proc_exec, proc_spawn_v, proc_spawn), ruby.c (process_options):
6249           use reentrant versions.
6251 Thu May  8 06:27:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6253         * thread.c (rb_thread_key_p): thread local storage stores ID.
6255 Thu May  8 01:10:03 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6257         * string.c (tr_trans): should squeeze properly.  [ruby-dev:34587]
6259         * string.c (tr_trans): had a bug in treating multi-byte character
6260           replacement.
6262         * string.c (rb_str_delete_bang): need not to do anything for empty
6263           strings.
6265         * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_delete): add
6266           test for empty receiver.
6268 Wed May  7 20:19:18 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6270         * ruby.c (process_options, ruby_set_argv): set encoding of rb_argv
6271           after Init_prelude() because cannot load encoding extensions before
6272           it.
6274 Wed May  7 20:00:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6276         * numeric.c (bit_coerce): float should not be a valid operand of
6277           bitwise operations.  [ruby-dev:34583]
6279 Wed May  7 19:35:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6281         * thread.c (rb_thread_key_p): should always convert symbol to ID.
6282           [ruby-dev:34588]
6284 Wed May  7 19:30:34 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6286         * numeric.c (fix_divide): float division should floor() before
6287           rounding into integer.  [ruby-dev:34584]
6289 Wed May  7 18:02:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6291         * string.c (sym_to_i): remove obsolete method.  preparation for
6292           symbol GC.
6294         * numeric.c (fix_to_sym): ditto.
6296         * numeric.c (fix_id2name): ditto.
6298 Wed May  7 17:43:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6300         * io.c (io_puts_ary): check recursion first.  [ruby-dev:34580]
6302 Wed May  7 17:41:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6304         * vm.c (vm_eval_body): initialize retval.  [ruby-dev:34576]
6306 Wed May  7 13:02:56 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6308         * bignum.c (rb_big_fdiv): flo.fdiv(NaN) should result NaN.
6310         * numeric.c (num_quo): renamed and moved from bignum.c.
6311           [ruby-dev:34582]
6313         * bignum.c (rb_big_fdiv): update RDoc description
6315         * rational.c (nurat_s_new_m): small refactoring.
6317         * bignum.c (rb_big2dbl): no need for forceful warning when
6318           converting to float.  overflow is a nature of float values.
6320 Wed May  7 00:54:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6322         * ext/zlib/zlib.c (gzreader_gets): may cause infinite loop.
6323           a patch from Kouya <kouyataifu4 at gmail.com> in
6324           [ruby-reference-manual:762].
6326 Tue May  6 02:08:18 2008  Tanaka Akira  <akr@fsij.org>
6328         * test/io/nonblock/test_flush.rb: don't set Thread.abort_on_exception.
6330         * test/net/imap/test_imap.rb: ensure disconnecting imap to terminate
6331           receiver thread.
6333 Tue May  6 00:29:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6335         * iseq.c (insn_operand_intern): should handle Qundef embedded in
6336           operand.  [ruby-core:16656]
6338 Tue May  6 00:00:02 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6340         * compile.c (iseq_compile_each): should call compile_cpath() for
6341           modules as well.  [ruby-dev:34585]
6343         * insns.def (defineclass): add undef handling.
6345 Mon May  5 23:49:40 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6347         * insns.def (defineclass): was using wrong variable.  [ruby-dev:34592]
6349 Mon May  5 20:07:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6351         * io.c (io_fflush): IO#flush problem within threads.  a patch from
6352           <s.wanabe at gmail.com> in [ruby-dev:34595].
6354 Mon May  5 19:58:44 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6356         * compile.c (defined_expr): protect some expression from
6357           segmentation fault.  a patch from wanabe <s.wanabe at gmail.com>
6358           in [ruby-dev:34593].
6360 Mon May  5 19:49:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6362         * struct.c (rb_struct_s_def): Struct.new(0) should not SEGV.
6363           based on the patch from wanabe <s.wanabe at gmail.com> in
6364           [ruby-dev:34594].
6366         * struct.c (make_struct): call to_str on name object.
6368 Mon May  5 17:17:40 2008  Tanaka Akira  <akr@fsij.org>
6370         * eval.c (ruby_cleanup): wrap ruby_finalize_0 by SAVE_ROOT_JMPBUF to
6371           avoid SEGV by at_exit { Fiber.new{}.resume } on IA64.
6373 Mon May  5 12:12:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6375         * array.c (rb_ary_slice_bang): should adjust length before making
6376           sub-array.
6378 Mon May  5 11:36:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6380         * array.c (rb_ary_dup): should dupe corresponding information.
6381           [ruby-dev:34581]
6383 Mon May  5 11:13:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6385         * compile.c (compile_cpath): use Qundef to denote cbase lookup.
6387         * insns.def (defineclass): Qundef is passed for cbase.
6389         * insns.def (setconstant): ditto.
6391         * vm_insnhelper.c (vm_check_if_namespace): use rb_inspect()
6392           instead of rb_obj_as_string() for better description.
6394 Mon May  5 02:10:23 2008  Tanaka Akira  <akr@fsij.org>
6396         * gc.c (set_heaps_increment): fix memory allocation strategy by
6397           determining heaps_inc from heaps_used, not objects_delta.
6398           (struct rb_objspace): delta removed.  change increment, length and
6399           used to long for LP64.
6400           (objects_delta): removed.
6401           (allocate_heaps): add next_heaps_length argument.
6402           (init_heap): renamed from add_heap.
6403           (garbage_collect): use heaps_increment in dont_gc.
6405 Sun May  4 21:09:32 2008  Tanaka Akira  <akr@fsij.org>
6407         * lib/getoptlong.rb: use $stderr instead of $deferr.
6409 Sun May  4 16:04:28 2008  Tanaka Akira  <akr@fsij.org>
6411         * time.c (obj2nsec): fix string argument.
6413 Sun May  4 14:29:14 2008  Tanaka Akira  <akr@fsij.org>
6415         * eval.c (rb_obj_respond_to): check the result of respond_to? method
6416           by RTEST.
6418 Sun May  4 12:57:58 2008  Tanaka Akira  <akr@fsij.org>
6420         * string.c (rb_str_each_line): return original string.
6422 Sat May  3 20:57:06 2008  Tanaka Akira  <akr@fsij.org>
6424         * test/ruby/envutil.rb (Test::Unit::Assertions#assert_normal_exit):
6425           new method.
6427 Sat May  3 18:10:54 2008  Tanaka Akira  <akr@fsij.org>
6429         * time.c (time_timespec): raise TypeError for nil and other objects
6430           which has no divmod method.
6432 Fri May  2 23:59:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6434         * io.c (internal_read_func, internal_write_func): split from
6435           internal_io_func.
6437 Fri May  2 23:55:15 2008  Tanaka Akira  <akr@fsij.org>
6439         * variable.c (rb_define_hooked_variable): guard *var from GC to
6440           prevent collecting argf under RUBY_DEBUG=gc_stress.
6442 Fri May  2 17:29:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6444         * range.c (range_step): call to_int if step is not a numeric
6445           value.  [ruby-dev:34575]
6447 Fri May  2 16:10:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6449         * range.c (range_step): do not forcefully convert steps into
6450           integers.  [ruby-dev:34571]
6452 Fri May  2 14:52:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6454         * misc/ruby-mode.el: move fontifying code from hook.  a patch from
6455           Phil Hagelberg <phil at hagelb.org> in [ruby-core:16636].
6457 Fri May  2 14:10:17 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6459         * range.c (range_step): step may be bignum.
6461 Fri May  2 13:52:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6463         * re.c (Init_Regexp): remove MatchData#select.  [ruby-dev:34563]
6465 Thu May  1 23:59:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6467         * bignum.c (rb_big_divide), numeric.c (fix_divide): check for result
6468           domain.  [ruby-dev:34559]
6470 Thu May  1 23:57:06 2008  James Edward Gray II  <jeg2@ruby-lang.org>
6472         * lib/net/telnet.rb:  This patch from Brian Candler adds a FailEOF mode which
6473           can be activated to have net/telnet raise EOFError exceptions when the
6474           remote connection is closed.  The default behavior remains unchanged though.
6476 Thu May  1 23:43:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6478         * range.c (range_step): check if step can be converted to an integer.
6479           [ruby-dev:34558]
6481         * range.c (range_step): allow float step bigger than zero but less
6482           than one.  [ruby-dev:34557]
6484 Thu May  1 23:20:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6486         * bignum.c (rb_big_divide): return an integer for idiv.
6487           [ruby-dev:34553]
6489 Thu May  1 20:47:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6491         * hash.c (rb_hash_s_create): should access converted hash value.
6492           [ruby-dev:34555]
6494 Thu May  1 20:31:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6496         * test/ruby/test_parse.rb (TestParse::test_void_expr_stmts_value):
6497           shut up warning.
6499         * rational.c (nurat_to_f): no need for forceful warning when
6500           converting to float.  overflow is a nature of float values.
6502 Thu May  1 16:10:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6504         * hash.c (env_delete_if): return enumerator if no block given.
6505           [ruby-dev:34554]
6507 Wed Apr 30 21:36:40 2008  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
6509         * lib/erb.rb (url_encode): [ruby-dev:34497] ERB::Util#url_encode
6510           bug fix. Reported by rubikitch.
6512         * test/erb/test_erb.rb: ditto
6514 Wed Apr 30 20:11:36 2008  James Edward Gray II  <jeg2@ruby-lang.org>
6516         * lib/net/telnet.rb:  Fixing a bug where line endings would not be properly
6517           escaped when the two character ending was broken up into separate TCP
6518           packets.  Issue reported and patched by Brian Candler.
6520 Wed Apr 30 18:03:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6522         * load.c (rb_load_path), vm_core.h (rb_vm_t): moved to VM.
6524         * load.c (rb_get_load_path): returns absolute load path.
6526         * load.c (load_path_getter): $LOAD_PATH getter.
6528         * file.c (rb_find_file_ext, rb_find_file), ruby.c (push_include,
6529           ruby_init_loadpath): use the accessor.
6531         * vm.c (rb_vm_mark): mark load_path.
6533 Wed Apr 30 17:47:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6535         * re.c (rb_reg_search): use local variable.  a patch from wanabe
6536           <s.wanabe AT gmail.com> in [ruby-dev:34537].  [ruby-dev:34492]
6538 Wed Apr 30 16:10:18 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6540         * eval_intern.h: specify the values of the enumeration constants
6541           explicitly.  [ruby-dev:34489]
6543 Wed Apr 30 12:32:39 2008  Tanaka Akira  <akr@fsij.org>
6545         * process.c (check_exec_redirect_fd): prohibit duplex IO.
6546           (check_exec_fds): record maxhint even if close_others is not
6547           specified.
6548           (rb_exec_arg_fixup): renamed from rb_exec_arg_fix.
6550 Mon Apr 28 20:24:27 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6552         * rational.c (nurat_marshal_load): checks the given
6553           denominator. [ruby-dev:34536]
6555 Mon Apr 28 14:21:18 2008  Tanaka Akira  <akr@fsij.org>
6557         * include/ruby/ruby.h (POSFIXABLE): use FIXNUM_MAX+1 instead of
6558           FIXNUM_MAX to make it possible to convert to double accurately on
6559           environments with 64bit VALUE and 64bit double.
6560           It assumes FLT_RADIX is 2.
6561           fix RubyForge bug #14102.
6563 Mon Apr 28 12:48:57 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6565         * process.c (rb_exec_arg_addopt, rb_exec_arg_addopt): now can specify
6566           close_exec on having no fork environment (but still meaningless).
6568 Mon Apr 28 11:11:29 2008  Tanaka Akira  <akr@fsij.org>
6570         * process.c (run_exec_options): don't call FIX2INT for nil.
6572 Mon Apr 28 11:11:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6574         * proc.c (method_name): should return symbols instead of strings.
6575           [ruby-dev:34531]
6577 Mon Apr 28 09:02:43 2008  Tanaka Akira  <akr@fsij.org>
6579         * include/ruby/intern.h (rb_exec_arg_init): declared.
6580           (rb_exec_arg_addopt): declared.
6581           (rb_exec_arg_fix): declared.
6582           (rb_exec_initarg): removed.
6583           (rb_exec_getargs): removed.
6584           (rb_exec_initarg2): removed.
6586         * io.c (struct popen_arg): make execarg as a pointer.
6587           (popen_exec): follow popen_arg change.
6588           (pipe_open): add eargp argument.  extract argc and argv from eargp.
6589           use rb_exec_arg_addopt to add redirect options.
6590           (pipe_open_v): set up struct rb_exec_arg.
6591           (pipe_open_s): set up struct rb_exec_arg.
6593         * process.c (rb_exec_arg_addopt): new function extracted from
6594           check_exec_options_i.
6595           (check_exec_options_i): use rb_exec_arg_addopt.
6596           (rb_check_exec_options): opthash is always a hash now.
6597           (rb_exec_getargs): make it static.
6598           (rb_exec_fillarg): renamed from rb_exec_initarg2.  don't set up
6599           redirect_fds.
6600           (rb_exec_arg_init): new function.
6601           (rb_exec_arg_fix): new function.
6602           (rb_f_exec): use rb_exec_arg_init and rb_exec_arg_fix.  use
6603           rb_exec_arg_addopt to set close_others option.
6604           (run_exec_options): make close_others by default.
6605           (rb_spawn_internal): use rb_exec_arg_init and rb_exec_arg_fix.  use
6606           rb_exec_arg_addopt to set close_others option.
6608 Sun Apr 27 18:59:04 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6610         * rational.c (nurat_expt): use f_rational_new2. [ruby-dev:34524]
6612 Sun Apr 27 15:23:40 2008  Koichi Sasada  <ko1@atdot.net>
6614         * gc.c (gc_count): add a GC.count method.  This method returns
6615           a GC invoking count.
6617 Sun Apr 27 12:20:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6619         * vm_core.h (rb_vm_t), gc.c (rb_objspace, rb_newobj), vm.c
6620           (Init_BareVM): per-VM object space support, which is disabled now.
6622         * gc.c (rb_objspace_alloc), vm.c (Init_BareVM): should not use ruby
6623           malloc here.
6625         * gc.c (garbage_collect, etc): performance improvement by passing the
6626           reference instead of referring the global variable in each functions.
6628 Sun Apr 27 08:06:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
6630         * ruby.c (ruby_set_argv): ARGV should be locale encoding.
6631           [ruby-list:44861]
6633 Sun Apr 27 01:46:29 2008  Tanaka Akira  <akr@fsij.org>
6635         * lib/open3.rb (Open3.popen3w): removed.
6636           (Open3.popen3): notice wait_thr.
6638 Sun Apr 27 01:13:05 2008  Eric Hodel  <drbrain@segment7.net>
6640         * lib/rdoc, test/rdoc:  Update to RDoc 2.0.0 r56.
6642 Sat Apr 26 21:30:40 2008  Tanaka Akira  <akr@fsij.org>
6644         * include/ruby/intern.h (rb_hash_dup): declared.
6646         * hash.c (rb_hash_dup): new function.
6648         * process.c (rb_spawn_internal): don't modify option hash.
6650 Sat Apr 26 18:36:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6652         * io.c, signal.c, thread.c, thread_win32.c, include/ruby/intern.h:
6653           suppress warnings.
6655 Sat Apr 26 17:42:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6657         * error.c (builtin_types), gc.c (count_objects): added Complex and
6658           Rational.
6660 Sat Apr 26 17:35:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6662         * error.c (rb_eNOERROR): renamed.
6664 Sat Apr 26 17:30:11 2008  Koichi Sasada  <ko1@atdot.net>
6666         * include/ruby/ruby.h, gc.c: remove T_BLOCK.
6668         * include/ruby/ruby.h: re-number T_xxx.
6670 Sat Apr 26 17:31:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6672         * process.c (rb_cProcessTms, rb_cProcessStatus): renamed.
6674         * error.c (builtin_types), signal.c (siglist), st.c (primes),
6675           struct.c (ref_func), time.c (months): constified.
6677 Sat Apr 26 13:00:41 2008  Tanaka Akira  <akr@fsij.org>
6679         * lib/open3.rb: double fork is replaced by spawn with Process.detach.
6680           (Open3.popen3w): new method to access the thread returned by
6681           Process.detach.
6683 Sat Apr 26 00:47:43 2008  Tanaka Akira  <akr@fsij.org>
6685         * process.c (rb_spawn_internal): new function to specify
6686           default_close_others.
6687           (rb_spawn): specify default_close_others true.
6688           (rb_f_system): call rb_spawn_internal with default_close_others as
6689           false.
6691 Sat Apr 26 12:26:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6693         * range.c (range_each): use INT2FIX() for fixnum values.
6695 Fri Apr 25 17:56:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6697         * gc.c (free_unused_heaps): preserve last used heap segment to
6698           reduce malloc() call.
6700 Fri Apr 25 17:54:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6702         * gc.c (HEAP_SIZE): use smaller heap segment (2K) for more chance
6703           to be freed.  based on patch from authorNari <authornari at gmail.com>.
6705         * gc.c (rb_newobj_from_heap): eventually allocate heap segments.
6707 Fri Apr 25 15:35:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6709         * process.c (rb_spawn): rb_exec_initarg() returns new argc and argv in
6710           earg.
6712 Fri Apr 25 12:37:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6714         * array.c (flatten): returns an instance of same class.
6715           [ruby-core:16554]
6717 Fri Apr 25 10:52:27 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6719         * include/ruby/win32.h: define mode_t for umask.
6721         * process.c (check_exec_options_i, check_exec_fds, run_exec_options):
6722           support "close_others" only when fork(2) is available.
6724 Fri Apr 25 00:16:11 2008  Tanaka Akira  <akr@fsij.org>
6726         * process.c: include sys/stat.h for umask.
6728 Thu Apr 24 23:25:17 2008  Tanaka Akira  <akr@fsij.org>
6730         * include/ruby/intern.h (rb_env_clear): declared.
6731           (rb_io_mode_modenum): declared.
6732           (rb_close_before_exec): declared.
6733           (struct rb_exec_arg): add options and redirect_fds field.
6734           (rb_check_argv): removed.
6735           (rb_exec_initarg): declared.
6736           (rb_exec_getargs): declared.
6737           (rb_exec_initarg2): declared.
6738           (rb_fork): add third argument: fds.
6740         * io.c (max_file_descriptor): new static variable to record maximum
6741           file descriptor ruby used.
6742           (UPDATE_MAXFD): new macro.
6743           (UPDATE_MAXFD_PIPE): new macro.
6744           (rb_io_mode_modenum): externed.
6745           (rb_sysopen): update max_file_descriptor.
6746           (rb_close_before_exec): new function.
6747           (popen_exec): redirection removed because it is done by extended
6748           spawn mechanism.
6749           (pipe_open): generate a hash for spawn options to specify
6750           redirections.
6751           (pipe_open_v): use rb_exec_getargs.
6752           (pipe_open_s): use rb_exec_getargs.
6753           (rb_io_initialize): update max_file_descriptor.
6755         * process.c (hide_obj): new function.
6756           (check_exec_redirect_fd): new function.
6757           (check_exec_redirect): new function.
6758           (check_exec_options_i): new function.
6759           (check_exec_fds): new function.
6760           (rb_check_exec_options): new function.
6761           (check_exec_env_i): new function.
6762           (rb_check_exec_env): new function.
6763           (rb_exec_getargs): new function.
6764           (rb_exec_initarg2): new function.
6765           (rb_exec_initarg): new function.
6766           (rb_f_exec): use rb_exec_initarg.
6767           (intcmp): new function.
6768           (run_exec_dup2): new function.
6769           (run_exec_close): new function.
6770           (run_exec_open): new function.
6771           (run_exec_pgroup): new function.
6772           (run_exec_rlimit): new function.
6773           (run_exec_options): new function.
6774           (rb_exec): call run_exec_options.
6775           (move_fds_to_avoid_crash): new function.
6776           (pipe_nocrash): new function.
6777           (rb_fork): use pipe_nocrash to avoid file descriptor conflicts.
6778           (rb_spawn): use rb_exec_initarg.
6779           (rlimit_resource_name2int): extracted from rlimit_resource_type.
6780           (rlimit_type_by_hname): new function.
6781           (rlimit_type_by_lname): new function.
6782           (rlimit_resource_type): use rlimit_type_by_hname.
6783           (proc_daemon): add fds argument for rb_fork.
6785         * hash.c (rb_env_clear): renamed from env_clear and externed.
6787         [ruby-dev:34086]
6789 Thu Apr 24 23:00:58 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6791         * test/ruby/test_thread.rb: fix typos.
6793         * test/ruby/envutil.rb (rubyexec): move Open3.popen3 call into timeout
6794           block.
6796 Thu Apr 24 22:34:52 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6798         * test/ruby/test_comparable.rb: new tests for Comparable, to achieve
6799           100% test coverage of compar.c.
6801 Thu Apr 24 17:19:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6803         * ruby.c (process_options): set safe_level before loading script.
6804           [ruby-dev:34421]
6806 Thu Apr 24 14:15:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6808         * dln.c (dln_find_1): prior files with extensions to files sans
6809           extensions.  [ruby-core:16517]
6811 Thu Apr 24 00:26:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6813         * lib/rdoc/ri/descriptions.rb: fixed wrong class nestings.
6815 Thu Apr 24 00:20:01 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6817         * test/ruby/test_settracefunc.rb: add a test for set_trace_func.
6819         * test/ruby/envutil.rb: move "rubyexec" method from test_rubyoptions.rb.
6821         * test/ruby/test_rubyoptions.rb: use rubyexec in envutil.rb.
6823         * test/ruby/test_thread.rb: add tests to achieve over 90% test coverage
6824           of thread.c.
6826 Wed Apr 23 15:28:52 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
6828         * test/gdbm/test_gdbm.rb (TestGDBM#test_s_open_no_create): failed
6829           notice moved from comment to assertion message. [ruby-dev:29127]
6831 Wed Apr 23 11:49:54 2008  Akinori MUSHA  <knu@iDaemons.org>
6833         * lib/set.rb (Set#each, SortedSet#each, TC_Set#test_each): Return
6834           an enumerator if no block is given.
6836 Wed Apr 23 00:36:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6838         * test/openssl/test_ssl.rb (start_server): add timeout to server.join.
6840 Wed Apr 23 00:18:45 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
6842         * test/ruby/test_symbol.rb (TestSymbol#test_to_proc): Improve
6843           tests of Symbol#to_proc.
6845 Tue Apr 22 22:40:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6847         * lib/drb/drb.rb (DRb::DRbServer::check_insecure_method): should
6848           check method names by symbols, not by strings.  a patch from
6849           Kazuhiro NISHIYAMA <zn at mbf.nifty.com> in [ruby-dev:34487].
6851 Tue Apr 22 22:15:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6853         * misc/ruby-style.el (ruby-style-{case,label}-indent): up list from
6854           indentation point.
6856 Tue Apr 22 21:09:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
6858         * ext/nkf/nkf-utf8/nkf.c (score_table_A0, score_table_F0):
6859           type of content is unsigned char.
6861         * ext/nkf/nkf-utf8/nkf.c (push_broken_buf): 'c' is nkf_char.
6863         * ext/nkf/nkf-utf8/nkf.c (push_broken_buf): enc is 0 or pointer.
6865         * ext/nkf//nkf.c (options): type of option is unsigned char.
6867 Tue Apr 22 20:51:58 2008  NARUSE, Yui  <naruse@ruby-lang.org>
6869         * ext/nkf/nkf-utf8/nkf.c (z_conv): characters must be nkf_char.
6871 Tue Apr 22 19:23:05 2008  Akinori MUSHA  <knu@iDaemons.org>
6873         * enumerator.c (enumerator_initialize): Remove an undocumented
6874           feature (passing a block to the constructor) that's broken.
6875           This is not what I intended.
6877 Tue Apr 22 17:54:05 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
6879         * vm_core.h (exec_event_hooks): ``inline'' is a type modifier, not
6880           a type itself.
6882 Tue Apr 22 16:24:27 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
6884         * string.c (rb_enc_cr_str_buf_cat): do not use C++ comments.
6886 Tue Apr 22 16:23:53 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
6888         * configure.in: use AC_USE_SYSTEM_EXTENSIONS.
6890 Tue Apr 22 16:23:16 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
6892         * vm_evalbody.c (DECL_SC_REG): use __asm__ instead.
6894 Tue Apr 22 16:18:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6896         * vm_evalbody.c (DECL_SC_REG): typo fixed.
6898 Tue Apr 22 15:25:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6900         * configure.in (struct timespec): needs time.h according to POSIX.
6902 Tue Apr 22 13:19:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6904         * thread.c (rb_thread_stop_timer_thread): should clear
6905           timer_thread_id after stopping it.
6907 Tue Apr 22 13:12:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6909         * thread.c (thread_join): remove the current thread from the join list
6910           of the target thread.
6912 Tue Apr 22 12:03:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6914         * vm_insnhelper.c (vm_get_ev_const): search from the base klass if it
6915           is given.
6917 Tue Apr 22 09:58:13 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6919         * ext/win32ole/win32ole.c: avoid warnings.
6921 Tue Apr 22 09:56:51 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6923         * file.c (eaccess): workaround for recent msvcrt's behavior.
6924           [ruby-core:16460]
6926 Mon Apr 21 19:08:32 2008  Tanaka Akira  <akr@fsij.org>
6928         * io.c (copy_stream_body): call rb_io_check_readable and
6929           rb_io_check_writable.
6931 Mon Apr 21 17:45:27 2008  Akinori MUSHA  <knu@iDaemons.org>
6933         * ext/dbm/dbm.c (fdbm_each_value, fdbm_each_key, fdbm_each_pair):
6934           GDBM#{each,each_pair,each_key,each_value}: Return an enumerator
6935           if no block is given.
6937         * ext/gdbm/gdbm.c (fgdbm_each_value, fgdbm_each_key,
6938           fgdbm_each_pair): GDBM#{each,each_pair,each_key,each_value}:
6939           Return an enumerator if no block is given.
6941         * ext/openssl/ossl_config.c (ossl_config_each):
6942           OpenSSL::Config#each: Return an enumerator if no block is given.
6944         * ext/readline/readline.c (hist_each): Readline::HISTORY#each:
6945           Return an enumerator if no block is given.
6947         * ext/sdbm/init.c (fsdbm_each_value, fsdbm_each_key,
6948           fsdbm_each_pair): SDBM#{each,each_pair,each_key,each_value}:
6949           Return an enumerator if no block is given.
6951         * ext/stringio/stringio.c (strio_each_byte, strio_each):
6952           StringIO#{each,each_line,each_byte}: Return an enumerator if no
6953           block is given.
6955         * ext/stringio/stringio.c (Init_stringio): Add #lines and #bytes,
6956           which are aliases to #each_line and #each_byte, respectively.
6958         * ext/win32ole/win32ole.c (fole_each): WIN32OLE#each: Return an
6959           enumerator if no block is given.
6961         * ext/zlib/zlib.c (rb_gzreader_each_byte, rb_gzreader_each):
6962           Zlib::GzipReader#{each,each_line,each_byte}: Return an
6963           enumerator if no block is given.
6965         * ext/zlib/zlib.c (Init_zlib): Add Zlib::GzipReader#lines and
6966           #bytes, which are aliases to #each_line and #each_byte,
6967           respectively.
6969 Mon Apr 21 17:01:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6971         * iseq.c (rb_iseq_compile_with_option): check if src is a string.
6972           [ruby-core:16453]
6974 Mon Apr 21 16:06:47 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6976         * enumerator.c (enumerator_init): preserve the method name in ID.
6978         * enumerator.c (enumerator_each): need not to call rb_to_id().
6980         * enumerator.c (enumerator_with_index): ditto.
6982 Mon Apr 21 11:00:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6984         * compile.c (defined_expr): capture exception during defined?
6985           evaluation.  a patch from wanabe <s.wanabe at gmail.com> in
6986           [ruby-dev:34461].  [ruby-core:16010]
6988 Mon Apr 21 10:06:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6990         * time.c: should include <errno.h> to refer errno.
6992 Mon Apr 21 09:58:04 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6994         * time.c (rb_strftime): check errno to detect strftime(3)'s error.
6995           this is workaround for recent version of MSVCRT.
6996           [ruby-dev:34456]
6998 Mon Apr 21 08:54:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7000         * gc.c (ruby_xmalloc): use size_t for malloc argument instead of long.
7002 Sun Apr 20 21:00:21 2008  Akinori MUSHA  <knu@iDaemons.org>
7004         * enumerator.c, include/ruby/ruby.h: Export rb_cEnumerator.
7006 Sun Apr 20 20:47:50 2008  Akinori MUSHA  <knu@iDaemons.org>
7008         * enumerator.c: Resolve the method every time an enumeration
7009           method is run, not once when the enumerator is initialized as it
7010           was before, so that method_missing() and method (re)definition
7011           afterwards are both in effect; pointed out in: [ruby-core:16441]
7013 Sun Apr 20 15:11:00 2008  Tanaka Akira  <akr@fsij.org>
7015         * io.c (copy_stream_rbuf_to_dst): removed.
7016           (copy_stream_fallback_body): don't bypass write method.
7017           (copy_stream_body): simplified.
7019 Sun Apr 20 15:01:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7021         * vm_core.h (struct iseq_compile_data): moved label_no from
7022           new_label_body().
7024         * compile.c (iseq_set_exception_table): allocates catch_table only
7025           when entries exist.
7027         * compile.c (struct iseq_link_element, struct iseq_insn_data): made
7028           enum for debuggers.
7030 Sun Apr 20 14:44:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7032         * compile.c (iseq_compile_each): fix for splat in when and rescue.
7033           a patch from wanabe <s.wanabe AT gmail.com> in [ruby-dev:34429].
7034           [ruby-core:14537]
7036 Sun Apr 20 13:55:37 2008  Tanaka Akira  <akr@fsij.org>
7038         * io.c (copy_stream_fallback): write directly (bypassing write method)
7039           if possible.
7041 Sun Apr 20 12:49:03 2008  Tanaka Akira  <akr@fsij.org>
7043         * io.c (copy_stream_fallback): read directly (bypassing readpartial
7044           method) if possible.
7046 Sun Apr 20 04:45:13 2008  Tanaka Akira  <akr@fsij.org>
7048         * io.c (copy_stream_body): use readpartial and write method for
7049           non-IOs such as StringIO and ARGF.
7051 Fri Apr 18 20:57:33 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7053         * test/ruby/test_array.rb: add tests to achieve over 95% test coverage
7054           of array.c.
7056 Fri Apr 18 17:37:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7058         * gc.c (rb_gc_mark_locations): get rid of underflow.
7060         * gc.c (mark_current_machine_context): check if the main thread stack
7061           position may shrink under the initialized position.  [ruby-core:16436]
7063 Thu Apr 17 22:20:52 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7065         * enc/trans/utf_16_32.c (fun_so_to_utf_16be, fun_so_to_utf_16le): add
7066           parentheses to remove warnings of gcc.
7068         * io.c (rb_io_getc): remove unused variables.
7070         * compile.c (NODE_NEXT, NODE_REDO): remove unused labels.
7072         * ext/nkf/nkf.c (rb_nkf_convert): remove unused variables.
7074         * ext/syck/rubyext.c (syck_resolver_initialize,
7075           syck_resolver_detect_implicit, syck_emitter_emit): remove unused
7076           variables.
7078 Thu Apr 17 20:12:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7080         * test/ruby/test_rubyoptions.rb (test_search): enable some assertions.
7082         * test/ruby/test_rubyoptions.rb: flunk message in win32.
7084 Thu Apr 17 16:07:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7086         * test/ruby/test_rubyoptions.rb (ruby): run in C locale.
7088         * test/ruby/test_rubyoptions.rb (test_encoding): --encoding does not
7089           affect source code.
7091 Thu Apr 17 00:45:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7093         * test/ruby/test_process.rb (test_rlimit_nofile): reset RLIMIT_NOFILE
7094           before exit (for gcov).
7096         * test/ruby/test_rubyoptions.rb: new tests for option of ruby
7097           interpreter, to achieve over 95% test coverage of ruby.c.
7099 Wed Apr 16 02:40:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7101         * ruby.c (process_options): preludes and parser need to run in safe
7102           level 0.  [ruby-dev:34407]
7104 Wed Apr 16 02:26:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7106         * ruby.c (process_options): dln_find_file returns the pointer to a
7107           static buffer, so should copy it.  [ruby-dev:34409]
7109 Tue Apr 15 23:08:46 2008  Kouhei Sutou  <kou@cozmixng.org>
7111         * lib/xmlrpc/client.rb: fix cookie handling. [ruby-dev:34403]
7113         * test/xmlrpc/test_cookie.rb: add a test for the above fix.
7115 Tue Apr 15 19:20:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7117         * io.c: #undef rb_argv moved before #define.
7119 Tue Apr 15 18:02:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7121         * include/ruby/intern.h (rb_argv): replaced with rb_get_argv().
7122           [ruby-Bugs-19514]
7124 Tue Apr 15 17:10:59 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
7126         * lib/net/http.rb, lib/net/smtp.rb, lib/net/pop.rb: update
7127           URLs of Japanese documents.
7129 Tue Apr 15 16:45:14 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
7131         * test/ruby/test_symbol.rb (TestSymbol#test_to_proc): add tests.
7133 Tue Apr 15 15:38:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7135         * misc/ruby-mode.el (ruby-encoding-map): added shift-jis for older
7136           versions.
7138         * misc/ruby-mode.el (ruby-mode-set-encoding):
7139           coding-system-to-mime-charset is not a standard function.
7140           [carbon-emacs:795]
7141           fix for the case that magic comment exists but coding system is
7142           absent.
7144         * misc/ruby-mode.el (ruby-mode): use write-contents-functions or
7145           write-contents-hooks for older versions.
7147 Tue Apr 15 07:21:21 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7149         * complex.c (nucomp_div): [ruby-dev:34357]
7151         * complex.c (nucomp_abs): use hypot.
7153         * complex.c (nucomp_quo): do not force conversion.
7155         * test/ruby/test_complex.rb: omitted some meaningless tests.
7157 Mon Apr 14 23:25:50 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7159         * test/ruby/test_objectspace.rb: add a test for
7160           ObjectSpace.count_objects.
7162 Mon Apr 14 22:44:24 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7164         * file.c (SET_EXTERNAL_ENCODING): avoid call rb_enc_check() on
7165           half-baked result string.
7167         * re.c (rb_reg_search): make search reentrant.  [ruby-dev:34223]
7169         * test/ruby/test_parse.rb (TestParse::test_global_variable):
7170           should preserve $& variable.
7172 Mon Apr 14 17:23:27 2008  Akinori MUSHA  <knu@iDaemons.org>
7174         * hash.c (rb_hash_delete_if, rb_hash_reject_bang, env_delete_if,
7175           env_reject_bang): Return an enumerator if no block is given.
7177 Mon Apr 14 14:33:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7179         * compile.c, compile.h (compile_debug): made runtime option.
7181         * debug.c (ruby_debug_print_indent): returns if debug_level exceeds
7182           the threshold.
7184         * debug.c (ruby_debug_printf): printf to stderr.
7186         * iseq.c (make_compile_option, make_compile_option_value): added
7187           debug_level option.
7189         * vm_core.h (rb_compile_option_t): added debug_level.
7191         * vm_core.h (struct iseq_compile_data): added node_level.
7193 Mon Apr 14 12:52:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7195         * gc.c (Init_stack): use ruby_init_stack.  [ruby-dev:34350]
7197         * gc.c (rb_objspace_t): packed globals.  [ruby-dev:34348]
7199         * gc.c (finalizers): removed.  [ruby-dev:34349]
7201 Mon Apr 14 11:30:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7203         * array.c (ary_new): new integer overflow check condition.
7204           suggested by TOYOFUKU Chikanobu <nobu_toyofuku at nifty.com> in
7205           [ruby-dev:34156].
7207         * array.c (rb_ary_initialize): ditto.
7209 Mon Apr 14 00:51:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7211         * test/ruby/test_parse.rb: add tests to achieve over 95% test coverage
7212           of parse.y.
7214 Sun Apr 13 23:53:58 2008  Akinori MUSHA  <knu@iDaemons.org>
7216         * enum.c (enum_cycle): Make Enumerable#cycle do a finite loop when
7217           the number of cycles is specified.
7219         * array.c (rb_ary_cycle): Ditto for Array#cycle.
7221 Sun Apr 13 18:52:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7223         * thread_pthread.c (lock_func): should not check interrupts in
7224           blocking region.  [ruby-dev:34378]
7226 Sat Apr 12 12:41:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7228         * eval.c (ruby_exec_node, ruby_run_node), ruby.c (process_options):
7229           use iseq instead of NODE.
7231         * gc.c (source_filenames): removed.
7233         * include/ruby/intern.h, parse.y (yycompile, parser_mark, parser_free,
7234           ripper_initialize): rb_source_filename() is no longer used.
7236         * compile.c, compile.h (ERROR_ARGS), parse.y (node_newnode, fixpos,
7237           parser_warn, e_option_supplied, warn_unless_e_option, range_op,
7238           cond0): nd_file is no longer used.
7240 Sat Apr 12 12:17:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7242         * prelude.rb (require_relative): move require_relative from
7243           lib/require_relative.rb.  [ruby-core:16356]
7245         * lib/require_relative.rb: removed.
7247 Sat Apr 12 05:55:57 2008  Eric Hodel  <drbrain@segment7.net>
7249         * lib/rubygems*, test/rubygems*:  Update to RubyGems 1.1.1 r1701.
7251 Sat Apr 12 03:13:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7253         * file.c (file_expand_path): set external encoding.
7255         * file.c (rb_file_s_basename, rb_file_s_dirname, rb_file_s_extname):
7256           copy encoding.
7258 Fri Apr 11 17:35:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7260         * enum.c (count_i): modified to shut warning up.
7262 Fri Apr 11 17:25:09 2008  Akinori MUSHA  <knu@iDaemons.org>
7264         * enum.c (count_i, count_iter_i, enum_count, enum_find_index):
7265           Reduce code.
7267 Fri Apr 11 17:06:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7269         * enum.c (find_index_i): modified to shut warning up.
7271         * enum.c (find_index_iter_i): ditto.
7273 Fri Apr 11 16:44:43 2008  Akinori MUSHA  <knu@iDaemons.org>
7275         * enum.c (enum_find_index): Add support for find_index(obj);
7276           [ruby-dev:34313].
7278         * array.c (rb_ary_index): Define find_index as an alias to index.
7280 Fri Apr 11 16:42:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7282         * lib/yaml/store.rb (YAML::load): modified to support empty
7283           database.
7285 Fri Apr 11 08:05:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7287         * marshal.c (w_object): add volatile to avoid potential GC bug.  a
7288           patch from Tomoyuki Chikanaga <chikanag at nippon-control-system.co.jp>
7289           in [ruby-dev:34311].
7291 Thu Apr 10 23:08:52 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7293         * lib/pstore.rb (PStore::dump, PStore::load): allow subclass
7294           overriding.  [ruby-dev:34305]
7296         * lib/yaml/store.rb (YAML::Store::marshal_dump_supports_canonical_option?):
7297           add a method to support faster PStore.
7299 Thu Apr 10 20:36:45 2008  Akinori MUSHA  <knu@iDaemons.org>
7301         * misc/rdebug.el, misc/README: Remove rdebug.el as per request
7302           from the maintainer and mention the ruby-debug project at
7303           RubyForge in README; bug#19043.
7305 Thu Apr 10 19:41:00 2008  Akinori MUSHA  <knu@iDaemons.org>
7307         * eval.c (rb_f_loop): Mention StopIteration in the document.
7309 Thu Apr 10 19:23:55 2008  Akinori MUSHA  <knu@iDaemons.org>
7311         * array.c (rb_ary_pop_m, rb_ary_shift_m): Update documents for
7312           #pop() and #shift().
7314         * array.c (rb_ary_slice_bang): Update document.  Assigning
7315           array[*args]= nil no longer removes elements.
7317 Thu Apr 10 16:58:44 2008  Tanaka Akira  <akr@fsij.org>
7319         * marshal.c (w_object): TYPE_USERDEF assigns id for ivars first.
7320           [ruby-dev:34159] by nagachika.
7322 Thu Apr 10 15:03:47 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7324         * lib/generator.rb: removed obsolete library.  [ruby-core:16233]
7326         * test/test_generator.rb: removed as well.  [ruby-dev:34306]
7328         * lib/pstore.rb: replaced by Hongli Lai's faster version.
7330 Thu Apr 10 10:27:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7332         * thread_pthread.c (native_sleep): sleep_cond is initialized at
7333           creation.  [ruby-Patches-19361].
7335 Wed Apr  9 14:43:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7337         * thread.c (lock_func): optimized and checks for interrupt_flag.
7338           based on a patch from Sylvain Joyeux in [ruby-Patches-19361] and
7339           [ruby-Patches-19362].
7341 Wed Apr  9 12:12:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7343         * test/ruby/test_thread.rb: new tests from Sylvain Joyeux in
7344           [ruby-Patches-19361].
7346 Tue Apr  8 21:36:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7348         * thread.c (rb_mutex_sleep): ensures to re-acquire at waking up.
7349           [ruby-Patches-19361]
7351 Tue Apr  8 11:00:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7353         * lib/complex.rb: remove Math first before overwriting by CMath.
7355 Tue Apr  8 10:34:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7357         * load.c (rb_require_safe): should check fname path after $SAFE is
7358           properly set.  [ruby-dev:34268]
7360         * re.c (rb_reg_quote): should always copy the quoting string.
7361           [ruby-core:16235]
7363 Tue Apr  8 10:30:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7365         * common.mk (prelude.c): depends on enc/prelude.rb.
7367         * enc/prelude.rb: fixed initial library names.
7369 Tue Apr  8 03:39:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7371         * load.c (rb_provided): check expanded path for relative path
7372           features, loading or loaded features are already expanded in 1.9.
7374         * variable.c (rb_autoload_load): no needs to check if provided before
7375           rb_require_safe.  [ruby-dev:34266]
7377 Mon Apr  7 22:41:21 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7379         * numeric.c: cancelled recent changes (except to remove rdiv).
7381         * bignum.c: ditto.
7383         * bignum.c: added rb_big_idiv.
7385 Mon Apr  7 15:51:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7387         * encoding.c (enc_init_db): moved to enc/encdb.c.
7389         * transcode.c (init_transcoder_table): moved to enc/trans/transdb.c.
7391         * enc/depend (enc/encdb.o enc/trans/transdb.o): depend on
7392           corresponding headers.
7394         * common.mk (COMMONOBJS): moved transcode.o from OBJS
7396 Mon Apr  7 12:26:32 2008  Koichi Sasada  <ko1@atdot.net>
7398         * bootstraptest/test_knownbug.rb: add a known-bug.
7400 Mon Apr  7 12:15:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7402         * range.c (range_each_func): should not leave a variable
7403           uninitialized, which could cause SEGV.
7405         * range.c (range_step): removed duplicated and unreachable code.
7407 Mon Apr  7 02:12:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7409         * string.c (rb_str_intern): need not to check if tainted.
7410           [ruby-dev:34219]
7412 Sun Apr  6 09:45:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7414         * dir.c (dir_tell): check if closed.  [ruby-core:16223]
7416 Sat Apr  5 23:17:20 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7418         * lib/cmath.rb: new.
7420         * lib/complex.rb: depends lib/cmath.rb.
7422         * lib/rational.rb: added rdiv.
7424         * complex.c: removed some math functions.
7426 Sat Apr  5 05:50:57 2008  Eric Hodel  <drbrain@segment7.net>
7428         * lib/rdoc/parsers/parse_rb.rb: Fix uninitialized variable warnings.
7430         * lib/rdoc/generator/html.rb: ditto.
7432         * lib/rdoc/options.rb: Fix shadowed variable warning.
7434         * lib/webrick/httprequest.rb: Fix redefined method warning.
7436 Sat Apr  5 02:13:52 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7438         * bignum.c (rb_cmpint): moved from compar.c, to check bignum
7439           zero.
7441 Fri Apr  4 23:24:06 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7443         * re.c (rb_memsearch_qs): wrong boundary condition.
7445         * re.c (rb_memsearch_qs_utf8): ditto.
7447 Fri Apr  4 14:11:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7449         * re.c (rb_memsearch_qs): wrong boundary condition.  a patch from
7450           wanabe <s.wanabe AT gmail.com> in [ruby-dev:34248].
7452 Fri Apr  4 05:57:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7454         * lib/net/pop.rb (Net::POP3::do_finish): clear @n_mails and
7455           @n_bytes as well.  [ruby-core:16144]
7457 Fri Apr  4 01:59:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7459         * range.c (range_step): add step for each iteration if begin and
7460           end are numeric.  [ruby-core:15990]
7462 Fri Apr  4 00:42:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7464         * bignum.c (Init_Bignum): rdiv method removed.  [ruby-dev:34242]
7466         * complex.c (nucomp_quo): ditto.
7468         * numeric.c (num_rdiv): ditto.
7470         * rational.c (nurat_div): ditto.
7472         * complex.c (nucomp_fdiv): fdiv implementation restored.
7474         * numeric.c (num_quo): RDoc updated.
7476 Thu Apr  3 21:51:45 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7478         * complex.c (nucomp_int_check): function for DRY real check.
7480         * complex.c (nucomp_{add,sub,mul,div,expt}): use rb_num_coerce_bin().
7482 Thu Apr  3 19:59:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7484         * insns.def (defineclass): check if cbase is a class or a module.
7485           [ruby-core:16118]
7487 Thu Apr  3 14:42:11 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7489         * common.mk (INSNS): add insns_info.inc.
7491         * common.mk (INSNS): make incs separately for nmake.
7493 Thu Apr  3 13:20:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7495         * common.mk (endb.h, transdb.h, prelude.c): depend on $(PREP) and
7496           check if really changed.  [ruby-core:16102]
7498         * Makefile.in, common.mk, configure.in, {win32,bcc32}/Makefile.sub
7499           (MINIOBJS, ARCHMINIOBJS): separated.
7501 Thu Apr  3 09:00:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7503         * compile.c (iseq_set_sequence, iseq_insns_unification,
7504           insn_data_to_s_detail): constified.
7506         * iseq.c (insn_operand_intern, ruby_iseq_disasm_insn): ditto.
7508         * template/{insns_info,opt_sc,optunifs}.inc.tmpl: ditto.
7510         * tool/instruction.rb (OptUnifsIncGenerator): ditto.
7512 Thu Apr  3 08:46:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7514         * range.c (range_include): add RDoc to describe that comparison
7515           for numeric is done according magnitude of values.
7516           [ruby-core:15907]
7518 Wed Apr  2 22:29:35 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7520         * rational.c (nurat_int_check): function for DRY integer check.
7522         * numeric.c (num_rdiv): should always return rational number.
7524         * rational.c (nurat_add, nurat_sub, nurat_mul, nurat_fdiv,
7525           nurat_cmp): use rb_num_coerce_bin().
7527         * rational.c (nurat_division): does / and rdiv.
7529         * .gdbinit (rp): no longer use rb_p().
7531 Wed Apr  2 06:52:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7533         * .gdbinit (rp): supports rational and complex numbers.  it's
7534           cheating since it uses rb_p().
7536 Wed Apr  2 06:24:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7538         * include/ruby/node.h: add new constants for rb_call()'s scope.
7540         * eval.c (iterate_method): use CALL_* scope constant to specify
7541           proper scope value.
7543         * eval.c (rb_each, rb_apply, rb_funcall, rb_funcall2, rb_funcall3):
7544           ditto.
7546 Tue Apr  1 21:19:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7548         * rational.c: need to include <float.h> just once.
7550 Tue Apr  1 16:40:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7552         * bignum.c (big2dbl): more precise conversion at edge cases.
7553           [ruby-dev:34195]
7555 Tue Apr  1 14:43:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7557         * configure.in: get rid of empty expansion.
7559         * configure.in: _setjmp is available but _longjmp is not on mingw.
7561 Tue Apr  1 09:41:22 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7563         * {bcc,win}32/Makefile (config.h): need to define RUBY_SETJMP, etc.
7565 Tue Apr  1 07:31:58 2008  Eric Hodel  <drbrain@segment7.net>
7567         * lib/rubygems* test/rubygems*: Import RubyGems 1.1.0.
7569 Tue Apr  1 03:20:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7571         * configure.in (RUBY_SETJMP, RUBY_LONGJMP, RUBY_JMP_BUF): prefers
7572           _setjmp over setjmp and sigsetjmp.  [ruby-core:16023]
7573           __builtin_setjmp cannot handle a variable.
7575         * configure.in (--with-setjmp-type): new option to override the
7576           default rule in the above.
7578         * eval_intern.h (ruby_setjmp, ruby_longjmp), gc.c (rb_setjmp),
7579           vm_core.h (rb_jmpbuf_t): use RUBY_SETJMP, RUBY_LONGJMP and
7580           RUBY_JMP_BUF.
7582 Tue Apr  1 01:55:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7584         * lib/resolv.rb (Resolv::Config.default_config_hash): requires
7585           win32/resolv to use Win32::Resolv.  [ruby-dev:34138]
7587 Tue Apr  1 01:40:58 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7589         * complex.c: adopted the ruby's style.
7591         * rational.c: ditto.
7593 Tue Apr  1 00:17:35 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7595         * rational.c: revert.
7597 Mon Mar 31 18:57:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7599         * {bcc,win}32/Makefile.sub (config.h): define ssize_t.
7601         * io.c (copy_stream_body): some platform don't have O_NOCTTY.
7603 Mon Mar 31 18:42:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7605         * configure.in: check for ssize_t.  [ruby-dev:34184]
7607 Mon Mar 31 14:45:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7609         * numeric.c (num_quo): should convert its operand to Rational.
7611         * rational.c (string_to_r_strict): should raise TypeError.
7613         * bignum.c (Init_Bignum): should not redefine Bignum#div.
7614           Numeric#div will do.  [ruby-dev:34066]
7616 Mon Mar 31 04:05:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7618         * io.c (io_getc): set coderange while getting characters.
7620 Sun Mar 30 23:16:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7622         * proc.c (proc_dup): should copy is_lambda attribute as well.
7623           [ruby-talk:296244]
7625 Sun Mar 30 15:33:29 2008  Tanaka Akira  <akr@fsij.org>
7627         * io.c: IO.copy_stream implemented.  [ruby-dev:33843]
7629         * thread.c (rb_fd_select): new function.
7631         * configure.in (sys/sendfile.h): check the header file.
7632           (sendfile): check the function.
7633           (pread): check the function.
7635 Sat Mar 29 14:18:41 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
7637         * ext/tk/*: full update Ruby/Tk to support Ruby(1.9|1.8) and Tc/Tk8.5.
7639         * ext/tk/lib/tkextlib/tile.rb: [incompatible] remove TileWidgets'
7640           instate/state/identify method to avoid the conflict with standard
7641           widget options. Those methods are renamed to ttk_instate/ttk_state/
7642           ttk_identify (tile_instate/tile_state/tile_identify are available
7643           too). Although I don't recommend, if you really need old methods,
7644           please define "Tk::USE_OBSOLETE_TILE_STATE_METHOD = true" before
7645           "require 'tkextlib/tile'".
7647         * ext/tk/lib/tkextlib/tile.rb: "Tk::Tile::__Import_Tile_Widgets__!"
7648           is obsolete. It outputs warning. To control default widget set,
7649           use "Tk.default_widget_set = :Ttk".
7651         * ext/tk/lib/tk.rb: __IGNORE_UNKNOWN_CONFIGURE_OPTION__ method and
7652           __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode) method are defined
7653           as module methods of TkConfigMethod. It may help users to wrap old
7654           Ruby/Tk scripts (use standard widgets) to force to use Ttk widgets.
7655           Ttk widgets don't have some options of standard widgets which are
7656           control the view of widgets. When set ignore-mode true, configure
7657           method tries to ignore such unknown options with no exception.
7658           Of course, it may raise other troubles on the GUI design.
7659           So, those are a little danger methods.
7661         * ext/tk/lib/tk/itemconfig.rb: __IGNORE_UNKNOWN_CONFIGURE_OPTION__
7662           method and __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode) method
7663           are defined as module methods of TkItemConfigMethod as the same
7664           purpose as TkConfigMethod's ones.
7666         * ext/tk/sample/ttk_wrapper.rb: A new example. This is a tool for
7667           wrapping old Ruby/Tk scripts (which use standard widgets) to use
7668           Ttk (Tile) widgets as default.
7670         * ext/tk/sample/tkextlib/tile/demo.rb: use ttk_instate/ttk_state
7671           method instead of instate/state method.
7673         * ext/tk/lib/tk/root, ext/tk/lib/tk/namespace.rb,
7674           ext/tk/lib/tk/text.rb, ext/tk/lib/tkextlib/*: some 'instance_eval's
7675           are replaced to "instance_exec(self)".
7677         * ext/tk/lib/tk/event.rb: bug fix on KEY_TBL and PROC_TBL (?x is not
7678           a character code on Ruby1.9).
7680         * ext/tk/lib/tk/variable.rb: support new style of operation argument
7681           on Tcl/Tk's 'trace' command for variables.
7683         * ext/tk/sample/demos-jp/widget, ext/tk/sample/demos-en/widget: bug fix
7685         * ext/tk/sample/demos-jp/textpeer.rb,
7686           ext/tk/sample/demos-en/textpeer.rb: new widget demo.
7688         * ext/tk/tcltklib.c: decrease SEGV troubles (probably)
7690         * ext/tk/lib/tk.rb: remove Thread.critical access if Ruby1.9
7692         * ext/tk/lib/tk/multi-tk.rb: support Ruby1.9 (probably)
7694         * ext/tk/lib/tkextlib/tile.rb: add method to define Tcl/Tk command
7695           to make Tcl/Tk theme sources (based on different version of Tile
7696           extension) available.
7697           (Tk::Tile::__define_LoadImages_proc_for_compatibility__)
7699         * ext/tk/lib/tk.rb, ext/tk/lib/tk/wm.rb: support dockable frames
7700           (Tcl/Tk8.5 feature). 'wm' command can treat many kinds of widgets
7701           as toplevel widgets.
7703         * ext/tk/lib/tkextlib/tile/style.rb: ditto.
7704           (Tk::Tile::Style.__define_wrapper_proc_for_compatibility__)
7706         * ext/tk/lib/tk/font.rb: add actual_hash and metrics_hash to get
7707           properties as a hash. metrics_hash method returns a boolean value
7708           for 'fixed' option. But metrics method returns numeric value
7709           (0 or 1) for 'fixed' option, because of backward compatibility.
7711         * ext/tk/lib/tk/timer.rb: sometimes fail to set callback procedure.
7713         * ext/tk/lib/tk.rb: add Tk.sleep and Tk.wakeup method. Tk.sleep
7714           doesn't block the eventloop. It will be better to use the method
7715           in event callbacks.
7717         * ext/tk/sample/tksleep_sample.rb: sample script about Tk.sleep.
7719 Thu Mar 27 20:44:22 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7721         * complex.c (f_lcm): removed.
7723         * rational.c (rb_lcm, rb_gcdlcm): added.
7725         * lib/complex.rb (gcd, lcm, gcdlcm): removed.
7727         * lib/rational.rb (gcd, lcm, gcdlcm): ditto.
7729 Wed Mar 26 18:11:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7731         * variable.c (rb_mod_constants): rdoc updated.  a patch from
7732           Florian Gilcher <flo AT andersground.net> in [ruby-core:16009].
7734 Wed Mar 26 00:55:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7736         * test/ruby/test_rand.rb: add tests to achieve over 95% test coverage
7737           of random.c.
7739 Wed Mar 26 00:28:55 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7741         * test/ruby/test_rational.rb: add tests to achieve over 90% test
7742           coverage of rational.c.
7744         * test/ruby/test_complex.rb: ditto for complex.c.
7746 Tue Mar 25 19:34:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7748         * bootstraptest/test_knownbug.rb: add tests.  [ruby-dev:34128]
7750 Tue Mar 25 19:09:04 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7752         * array.c (ary_new): fix size check.  [ruby-dev:34123]
7754         * array.c (rb_ary_take, rb_ary_drop): check negative size and use
7755           NUM2LONG instead of FIX2LONG.  [ruby-dev:34123]
7757         * enum.c (enum_take, enum_drop): check negative size.
7759         * test/ruby/test_array.rb: add tests for above.
7761 Tue Mar 25 16:32:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7763         * ruby.c (proc_options): checks if the word is empty.
7765         * ruby.c (process_options): typo fixed.  [ruby-dev:34122]
7767 Tue Mar 25 15:26:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7769         * compile.c (defined_expr): false short-circuit destination label may
7770           be needed.  [ruby-talk:295296]
7772         * compile.c (iseq_compile_each): put nil if false short-circuit is
7773           created.
7775         * compile.c (compile_massign_opt): no need to use alloca.
7777 Mon Mar 24 19:23:52 2008  Akinori MUSHA  <knu@iDaemons.org>
7779         * parse.y (debug_lines): Always prepare a new array for each
7780           file's SCRIPT_LINES__ storage, instead of appending source lines
7781           every time a file is re-loaded; submitted by Rocky Bernstein in
7782           #18517.
7784 Mon Mar 24 10:25:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7786         * configure.in: sitearch should use target_cpu.  [ruby-core:15986]
7788 Sun Mar 23 02:51:57 2008  Tanaka Akira  <akr@fsij.org>
7790         * process.c (rlimit_resource_value): use NUM2RLIM.
7792 Sun Mar 23 02:28:01 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7794         * complex.c: fixed. [ruby-dev:34109]
7796         * rational.c: ditto.
7798 Fri Mar 21 21:32:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7800         * io.c (rb_f_gets, rb_f_readline, rb_f_readlines): delegates to ARGF
7801           as well as puts and putc.  [ruby-dev:34100]
7803 Fri Mar 21 21:26:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7805         * lib/resolv.rb (Resolv::Hosts): should not use win32/resolv on cygwin.
7806           [ruby-dev:29945], [ruby-dev:34095]
7808         * lib/win32/registry.rb (Win32::Registry.expand_environ): try upcased
7809           name too for cygwin.  [ruby-dev:29945]
7811         * lib/win32/resolv.rb (Win32::Resolv.get_hosts_path): use expand_path.
7813 Fri Mar 21 21:10:00 2008  Akinori MUSHA  <knu@iDaemons.org>
7815         * lib/ipaddr.rb: Say that I am the current maintainer.
7817         * lib/set.rb: Ditto.
7819         * lib/shellwords.rb: Ditto.
7821         * ext/syslog/syslog.txt: Ditto.
7823 Fri Mar 21 09:24:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7825         * instruby.rb (open_for_install): write block result and rewrite only
7826           if changed from existing file.
7828 Fri Mar 21 08:29:33 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7830         * rational.c (nurat_to_f): rearrangement.
7832 Fri Mar 21 06:44:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7834         * rational.c (nurat_to_f): C99.
7836 Fri Mar 21 01:40:27 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7838         * complex.c (nucomp_sub, nucomp_expt): call corresponding functions.
7840 Fri Mar 21 01:21:43 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7842         * missing/tgamma.c: include config.h before math.h.  [ruby-dev:34075]
7844 Thu Mar 20 21:46:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7846         * io.c (argf_getline): use receiver.
7848 Thu Mar 20 21:20:19 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7850         * rational.c: some improvements (include Shin-ichiro HARA's
7851           effort).
7853         * complex.c: some improvements.
7855         * test/ruby/test_rational2.rb: new.
7857 Thu Mar 20 00:21:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7859         * io.c (argf_initialize_copy): get rid of segfault.
7861         * io.c (argf_tell, argf_seek_m, argf_set_pos, argf_rewind,
7862           argf_fileno, argf_to_io, argf_eofl, argf_getc, argf_getbyte,
7863           argf_readchar, argf_readbyte, argf_each_line): use receiver.
7865 Wed Mar 19 23:52:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7867         * io.c (rb_io_putc, rb_io_puts): output directly if the receiver is
7868           rb_stdout to get rid of infinite recursion.  [ruby-dev:34059]
7870 Wed Mar 19 22:27:41 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7872         * rational.c: added rb_gcd.
7874         * complex.c: use rb_gcd.
7876 Wed Mar 19 18:37:00 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7878         * complex.c: revert.
7880         * rational.c: revert.
7882 Wed Mar 19 17:31:20 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7884         * eval_intern.h (TH_EXEC_TAG): need not to FLUSH_REGISTER_WINDOWS.
7885           [ruby-core:15871], [ruby-dev:34088]
7887 Wed Mar 19 14:53:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7889         * complex.c (nucomp_to_s, nucomp_inspect): get rid of making
7890           unnecessary intermediate objects.
7892         * complex.c (make_patterns, string_to_c): do not treat successive
7893           underscores as a part of numeric like as literals.  [ruby-dev:34085]
7895         * rational.c (make_patterns, string_to_r): ditto.
7897 Wed Mar 19 14:36:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7899         * bignum.c (rb_cstr_to_inum): treat successive underscores as
7900           nondigit.  [ruby-dev:34089]
7902 Wed Mar 19 14:08:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7904         * encoding.c (enc_check_encoding): should not load autoloaded encoding
7905           directly, instead use rb_enc_find_index() which deal with alias and
7906           replica.  [ruby-core:15957]
7908 Wed Mar 19 11:49:47 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7910         * regint.h (include): include ruby.h instead of defines.h and config.h.
7912 Wed Mar 19 10:17:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7914         * regint.h (CHECK_INTERRUPT_IN_MATCH_AT): add interrupt check
7915           during match.  [ruby-talk:295002]
7917 Tue Mar 18 16:24:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7919         * parse.y (literal_concat_gen): bail out at different encoding.
7921 Tue Mar 18 04:00:27 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7923         * re.c (rb_memsearch_ss): simple shift search.
7925         * re.c (rb_memsearch_qs): quick search.
7927         * re.c (rb_memsearch_qs_utf8): quick search for UTF-8 string.
7929         * re.c (rb_memsearch_qs_utf8_hash): hash functions for above.
7931         * re.c (rb_memsearch): use above functions.
7933         * string.c (rb_str_index): give enc to rb_memsearch.
7935         * include/ruby/intern.h (rb_memsearch): move to encoding.h.
7937         * include/ruby/encoding.h (rb_memsearch): move from intern.h.
7939         * common.mk (PREP): add dependency.
7941 Mon Mar 17 22:23:54 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7943         * array.c (rb_ary_take, rb_ary_take_while, rb_ary_drop,
7944           rb_ary_drop_while): new methods. [ruby-dev:34067]
7946         * test/ruby/test_array.rb: add tests for above.
7948 Mon Mar 17 17:11:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7950         * misc/ruby-mode.el (ruby-mode): should use `run-mode-hooks' instead
7951           of calling `run-hooks' directly to run the mode hook.  patch from
7952           Chiyuan Zhang <pluskid AT gmail.com> in [ruby-core:15915]
7954 Mon Mar 17 16:41:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7956         * configure.in: unset GREP_OPTIONS.  [ruby-core:15918]
7958 Sun Mar 16 18:07:07 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
7960         * enc/trans/utf_16_32.c: bug fix (some invalid UTF-8 sequences
7961           were legal)
7963         * test/ruby/test_transcode.rb: test for above bug
7965 Sun Mar 16 17:28:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7967         * common.mk (LIBRUBY_SO): add dependency to $(BUILTIN_ENCOBJS).
7969 Sun Mar 16 08:51:41 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7971         * include/ruby/intern.h: added some declarations.
7973         * include/ruby/ruby.h: ditto.
7975         * common.mk: added some entries.
7977         * configure.in: added a check for signbit.
7979         * lib/complex.rb: nearly all of core definitions have been removed.
7981         * lib/rational.rb: ditto.
7983         * lib/mathn.rb: some trivial adjustments.
7985         * complex.c: new.
7987         * rational.c: ditto.
7989         * numeric.c (flo_{quo,rdiv}, fix_fdiv): added.
7991         * numeric.c ({num,int}_{numerator,denominator}): ditto.
7993         * bignum.c (rb_big_fdiv): ditto.
7995         * numeric.c (fix_{quo,pow}): now may yield rational number.
7997         * bignum.c (rb_big_{quo,pow}): ditto.
7999         * numeric.c (rb_{int,flo}_induced_from): now can accept rational.
8001         * gc.c (gc_mark_children, obj_free): now detects complex and rational.
8003         * inits.c (rb_call_inits): now calls Init_{Complex,Rational}.
8005         * test/ruby/test_complex.rb: new.
8007         * test/ruby/test_rational.rb: ditto.
8009 Sat Mar 15 17:48:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8011         * encoding.c (rb_enc_associate_index): pass unnecessary enc_capable().
8013         * string.c (rb_str_cmp): reduce invocation of rb_enc_compatible().
8015 Fri Mar 14 17:04:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8017         * include/ruby/ruby.h (inttypes.h): includes always if available.
8019         * string.c, ext/digest/defs.h: moved inttypes.h to ruby.h.
8021 Fri Mar 14 16:59:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8023         * configure.in (RUBY_LIB_PREFIX): fix for prefix.
8025 Fri Mar 14 16:35:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8027         * lib/cgi.rb (CGI::Cookie::initialize): performance patch from
8028           Makoto Kuwata <kwa@kuwata-lab.com> in [ruby-dev:34048].
8030 Fri Mar 14 15:49:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8032         * configure.in (RUBY_LIB_PREFIX): use libdir.
8034 Fri Mar 14 14:24:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8036         * ext/digest/defs.h: inttypes.h is still needed.
8038 Fri Mar 14 11:34:12 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8040         * {bcc,win}32/Makefile.sub: follow below changes.
8042 Fri Mar 14 11:24:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8044         * misc/ruby-mode.el (ruby-encoding-map, ruby-use-encoding-map): added
8045           to customize.
8047 Fri Mar 14 10:37:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8049         * configure.in (int8_t, uint8_t,  int16_t,  uint16_t int32_t,
8050           uint32_t int64_t, uint64_t, int128_t, uint128_t,
8051           intptr_t, uintptr_t): check if defined.
8053         * win32/Makefile.sub: follow configure.in.
8055         * ext/digest/defs.h: remove checks for uint8_t, uint32_t and uint64_t.
8057 Fri Mar 14 10:12:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8059         * configure.in (RUBY_CHECK_VARTYPE): should not indent preprocessor
8060           directives.
8062 Fri Mar 14 10:03:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8064         * string.c (UNALIGNED_WORD_ACCESS): IA64 cannot access unaligned word.
8066 Thu Mar 13 21:00:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8068         * array.c (rb_ary_slice_bang): should not use rb_ary_subseq()
8069           which shares internal pointer.  splice modifies the receiver
8070           right after subseq.  [ruby-dev:34005]
8072         * bootstraptest/test_struct.rb: some test moved from test to shut
8073           warning up.
8075 Thu Mar 13 19:42:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8077         * {bcc,win}32/Makefile.sub (config.h): define uint32_t.
8079 Thu Mar 13 14:14:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8081         * trunk/configure.in (AC_CHECK_HEADERS): stdint.h is not needed to
8082           check.
8084         * trunk/configure.in (rb_cv_type_uint32_t): unquoted.  [ruby-dev:34030]
8086         * trunk/string.c (hash): use inttypes.h instead of stdint.h.
8088 Thu Mar 13 10:42:46 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8090         * numeric.c (fix_divmod): should return integer division.  [ruby-dev:34006]
8092         * enum.c (zip_ary): wrong boundary condition.
8094         * test/ruby/test_numeric.rb (TestNumeric::test_num2long): bit-and
8095           should not raise RangeError.
8097 Thu Mar 13 03:12:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8099         * lib/irb/cmd/help.rb: should be updated for new ri structure.
8100           [ruby-core:15825]
8102         * lib/rdoc/ri/driver.rb (RDoc::initialize): allow options to be optional.
8104         * lib/rdoc/ri/driver.rb (RDoc::class_cache): map_dirs may be
8105           empty.
8107         * lib/rdoc/ri/driver.rb (RDoc::get_info_for): revive get_info_for
8108           method.  maybe broken.
8110         * lib/rdoc/ri/util.rb (RDoc::initialize): should not use RiError
8111           no more.
8113 Thu Mar 13 01:45:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8115         * configure.in (stdint.h): check if presence.
8117         * configure.in (uint32_t): check if defined.
8119         * string.c (hash): fix for portability.  [ruby-dev:34020]
8121 Wed Mar 12 17:33:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8123         * object.c (rb_cstr_to_dbl): fix for a mere underscore.
8125 Wed Mar 12 14:47:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8127         * eval_intern.h (rb_thread_raised_set): use generic flags.
8129         * eval.c (rb_longjmp): clear all raised flags.
8131         * eval.c (stack_check): leave clearing flag to rb_longjmp.
8133         * gc.c (rb_memerror): use thread raised flag instead of static flag.
8135 Tue Mar 11 23:38:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8137         * array.c (rb_ary_combination): argument check before creating
8138           Enumerator.
8140         * array.c (rb_ary_permutation): ditto.
8142         * enum.c (enum_zip): optimize if all arguments are arrays.
8144 Tue Mar 11 19:48:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8146         * numeric.c (fix_coerce): try conversion before type check.
8147           [ruby-core:15838]
8149 Tue Mar 11 12:39:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8151         * common.mk (clean-local): WINMAINOBJ is Windows specific.
8153 Tue Mar 11 10:19:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8155         * string.c (hash): replaced by MurmurHash described in
8156           <http://murmurhash.googlepages.com/>.
8158 Tue Mar 11 09:52:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8160         * string.c (rb_str_comparable): empty strings in any encoding are
8161           compatible each other.
8163 Tue Mar 11 00:46:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8165         * ruby.c (usage): remove some unimportant lines to fit -h message
8166           in a page.  [ruby-dev:34018]
8168 Mon Mar 10 17:11:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8170         * eval.c (rb_f_local_variables): local_variables should return an
8171           array of symbols.  [ruby-dev:34008]
8173         * vm.c (collect_local_variables_in_env): ditto.
8175 Mon Mar 10 15:53:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8177         * version.c (MKSTR): make US-ASCII.  [ruby-dev:34010]
8179 Mon Mar 10 02:08:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8181         * string.c (rb_str_index): if t == s + pos, the character beginning
8182           from s + pos is valid.
8184 Sun Mar  9 13:51:21 2008  Eric Hodel  <drbrain@segment7.net>
8186         * lib/rdoc/generator.rb: Restore missing line to #params.  Patch by
8187           Lincoln Stoll <lstoll at lstoll.net>
8189 Sun Mar  9 09:52:00 2008  Eric Hodel  <drbrain@segment7.net>
8191         * lib/rdoc/code_objects.rb: Remove debugging Kernel#p.  Patch by
8192           Lincoln Stoll <lstoll at lstoll.net>
8193         * lib/rdoc/generator/html.rb: Fully qualify AllReferences.  Patch by
8194           Lincoln Stoll <lstoll at lstoll.net>
8195         * lib/rdoc/ri/writer.rb: Fix 1.8 backwards compatibility.
8197 Sat Mar  8 18:50:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8199         * file.c (isdirsep): backslash is valid path separator on cygwin too.
8201 Sat Mar  8 06:53:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8203         * string.c (search_nonascii): Use VALUE instead of unsigned long
8204           because VALUE can be the fastest unsigned integer type.
8205           On LLP64 unsigned long isn't the fastest.
8206         * string.c (str_strlen): ditto.
8207         * string.c (str_utf8_nth): ditto.
8208         * string.c (count_utf8_lead_bytes_with_ulong): ditto.
8210         * string.c (count_utf8_lead_bytes_with_word): renamed.
8212 Fri Mar  7 21:27:43 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8214         * bignum.c: fix indent.
8216 Fri Mar  7 21:12:19 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8218         * bignum.c (power_cache_init, power_cache_get_power0, Init_Bignum):
8219           delayed initializing power cache per base.  [ruby-dev:34003]
8221 Fri Mar  7 20:30:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8223         * cont.c (cont_restore_0): fixed typo.  [ruby-core:15821]
8225 Fri Mar  7 19:56:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8227         * lib/mkmf.rb: rdoc added.  [ruby-Patches-9762]
8229 Thu Mar  6 17:26:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8231         * sprintf.c (rb_str_format): space flag is in effect for Inf/NaN too.
8232           [ruby-dev:34002]
8234 Thu Mar  6 15:44:20 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8236         * sprintf.c (rb_str_format): casting double to long is undefined
8237           if the integer part of double is out of the range of long.
8239 Thu Mar  6 15:11:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8241         * sprintf.c (rb_str_format): ignore 0 flag for NaN and Inf.
8242           [ruby-dev:33994]
8244 Thu Mar  6 15:05:25 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8246         * {bcc32,win32}/Makefile.sub (RUNRUBY): use $(PROGRAM) instead of
8247           ruby$(EXEEXT).
8248           suggested by KIMURA Koichi <kimura.koichi at canon.co.jp>.
8249           [ruby-dev:34000]
8251 Thu Mar  6 14:46:08 2008  Tanaka Akira  <akr@fsij.org>
8253         * missing/lgamma_r.c (loggamma): return 0 for 1 and 2.
8255         * test/ruby/test_math.rb: accept errors by functions under missing/.
8257 Thu Mar  6 14:29:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8259         * transcode.c (rb_str_transcode_bang): set coderange.
8261         * transcode.c (rb_str_transcode): use rb_str_transcode_bang.
8263 Thu Mar  6 14:00:10 2008  Tanaka Akira  <akr@fsij.org>
8265         * include/ruby/missing.h (cbrt): add declaration.
8267 Thu Mar  6 11:14:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8269         * misc/ruby-mode.el (ruby-add-log-current-method): use ruby style
8270           method name format.
8272 Thu Mar  6 11:12:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8274         * sprintf.c (rb_str_format): no need of loop.
8276 Thu Mar  6 08:30:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8278         * object.c (rb_mod_freeze): call rb_class_name() directly.
8279           [ruby-core:15802]
8281 Thu Mar  6 04:32:06 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8283         * string.c (count_utf8_lead_bytes_with_ulong): fix shift size.
8284           [ruby-dev:33993]
8286         * string.c (str_utf8_nth) fix wrong counting.
8288 Thu Mar  6 00:34:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8290         * sprintf.c (rb_str_format): size_t returned from strlen() can be
8291           unsigned.
8293 Thu Mar  6 00:31:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8295         * struct.c (make_struct): preserve encoding of struct name.
8297 Wed Mar  5 22:49:20 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8299         * string.c (is_utf8_lead_byte, count_utf8_lead_bytes_with_ulong):
8300           defined for UTF-8 optimization.
8302         * string.c (str_strlen): use is_utf8_lead_byte and
8303           count_utf8_lead_bytes_with_ulong.
8305         * string.c (str_utf8_nth) ditto.
8307 Wed Mar  5 17:53:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8309         * file.c (rb_file_flock): returns false on EAGAIN if non-blocking.
8310           [ruby-core:15795]
8312 Wed Mar  5 17:43:43 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
8314         * transcode.c (transcode_loop): Adjusted detection of invalid
8315           (ill-formed) UTF-8 sequences. Fixing potential security issue, see
8316           http://www.unicode.org/versions/Unicode5.1.0/#Notable_Changes.
8318         * test/ruby/test_transcode.rb: Added two tests for above fix.
8320 Wed Mar  5 14:00:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8322         * numeric.c (fix_to_s): avoid rb_scan_args() when no argument
8323           given.
8324         * bignum.c (rb_big_to_s): ditto.
8325         * enum.c (enum_first): ditto.
8326         * eval_jump.c (rb_f_catch): ditto.
8327         * io.c (rb_obj_display): ditto.
8328         * class.c (rb_obj_singleton_methods): ditto.
8329         * object.c (rb_class_initialize): ditto.
8330         * random.c (rb_f_srand): ditto.
8331         * range.c (range_step): ditto.
8332         * re.c (rb_reg_s_last_match): ditto.
8333         * string.c (rb_str_to_i): ditto.
8334         * string.c (rb_str_each_line): ditto.
8335         * string.c (rb_str_chomp_bang): ditto.
8336         * string.c (rb_str_sum): ditto.
8338         * string.c (str_modifiable): declare inline.
8339         * string.c (str_independent): ditto.
8341 Wed Mar  5 11:50:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8343         * lib/debug.rb: require 'continuation' to implement "restart"
8344           command.  [ruby-dev:33992]
8346         * lib/debug.rb (Context::debug_command): remove local variable
8347           shadowing to shut up warnings.  [ruby-dev:33992]
8349         * lib/debug.rb (Context::display_list): ditto.
8351         * lib/debug.rb (Context::resume): ditto.
8353         * lib/debug.rb (Context::get_thread): no longer use #index for Hash.
8355 Tue Mar  4 21:35:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8357         * lib/irb.rb (IRB::Irb::eval_input): SyntaxError should not be
8358           considered as IRB bug.  [ruby-dev:33991]
8360         * lib/irb/workspace.rb (IRB::WorkSpace::filter_backtrace): should
8361           filter 'irb.rb' as well for context mode 2 and 3.
8363 Tue Mar  4 19:10:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8365         * hash.c (rb_hash_aset): should not copy key string when
8366           compare_by_identity is set.  [ruby-dev:33604]
8368         * hash.c (hash_equal): two hash tables are different when internal
8369           comparison table differ.  [ruby-dev:33989]
8371 Tue Mar  4 16:29:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8373         * parse.y (parser_yylex): disallow non digits '0o' expression.
8375 Tue Mar  4 14:35:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8377         * io.c (open_key_args): use rb_io_open_with_args instead of rb_f_open.
8378           [ruby-core:15763]
8380 Tue Mar  4 13:41:46 2008  Tanaka Akira  <akr@fsij.org>
8382         * gc.c (add_heap): fix previous change.  [ruby-dev:33988]
8384 Tue Mar  4 10:21:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8386         * gc.c (add_heap): use binary search to find the place to insert the
8387           new heap slot.  [ruby-dev:33983]
8389 Tue Mar  4 05:30:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8391         * io.c (open_key_args): use rb_io_open instead of rb_f_open.
8392           [ruby-core:15746]
8394 Mon Mar  3 23:28:37 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
8396         * lib/webrick/httpservlet/filehandler.rb: should normalize path
8397           separators in path_info to prevent directory traversal
8398           attacks on DOSISH platforms.
8399           reported by Digital Security Research Group [DSECRG-08-026].
8401         * lib/webrick/httpservlet/filehandler.rb: pathnames which have
8402           not to be published should be checked case-insensitively.
8404 Mon Mar  3 17:25:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8406         * gc.c (add_heap): sort heaps array in ascending order to use
8407           binary search.
8409         * gc.c (is_pointer_to_heap): use binary search to identify object
8410           in heaps.  works better when number of heap segments grow big.
8412 Mon Mar  3 17:15:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8414         * re.c (rb_reg_regsub): remove too strict encoding check.
8415           [ruby-dev:33966]
8417 Mon Mar  3 16:14:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8419         * hash.c (rb_any_hash): shrinks all results in Fixnum range.
8420           [ruby-core:15713]
8422 Sun Mar  2 23:03:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8424         * io.c (rb_io_ungetc): reduce redundant call.
8426 Sun Mar  2 10:13:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8428         * ruby.c (load_file): parse shebang in us-ascii.  a patch from
8429           sheepman <sheepman AT sheepman.sakura.ne.jp> in [ruby-dev:33955]
8431 Sun Mar  2 00:08:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8433         * object.c (rb_cstr_to_dbl): check for successive underscores.
8434           [ruby-dev:33952]
8436 Sat Mar  1 17:59:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8438         * io.c (struct argf): packed ARGF stuffs.
8440         * ruby.c (proc_options): use ruby_set_inplace_mode().
8442 Sat Mar  1 17:51:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8444         * lib/test/unit/collector/dir.rb (recursive_collect): do not always
8445           include all test_*.rb.
8447 Sat Mar  1 14:14:17 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8449         * development snapshot 1.9.0-1 released.
8451 Sat Mar  1 13:46:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8453         * tool/make-snapshot: make prereq uses MINIRUBY.
8455         * tool/make-snapshot: allow packaging like 1.9.0-1 by second
8456           command-line argument.
8458 Sat Mar  1 13:11:03 2008  Tanaka Akira  <akr@fsij.org>
8460         * test/ruby/allpairs.rb: new file for all pairs method.
8462         * test/ruby/test_m17n_comb.rb: use allpairs.rb to reduce test cases.
8464         * test/ruby/test_sprintf_comb.rb: ditto.
8466 Sat Mar  1 12:34:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8468         * string.c (sym_inspect): use rb_str_inspect() instead of
8469           rb_str_dump().  [ruby-dev:33946]
8471 Sat Mar  1 12:15:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8473         * eval_method.c (rb_get_method_body): ent->method may be freed by
8474           GC.  [ruby-dev:31819]
8476         * thread.c (remove_event_hook): should not access freed memory.
8477           [ruby-dev:31820]
8479 Sat Mar  1 10:31:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8481         * io.c (read_all, rb_io_getline_fast): encoding is io_input_encoding.
8483 Sat Mar  1 10:09:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8485         * string.c (tr_setup_table, rb_str_split_m, rb_str_chomp_bang):
8486           simplified with rb_enc_ascget().  [ruby-dev:33944]
8488 Sat Mar  1 10:01:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8490         * string.c (rb_str_coderange_scan_restartable): should not return
8491           offset in the middle of a character.
8493         * string.c (rb_str_coderange_scan_restartable): should not return
8494           invalid cr value.
8496 Sat Mar  1 09:36:08 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8498         * sprintf.c (rb_str_format): "%#.0o" should keep prefix where
8499           "%#.0x" should not.
8501 Sat Mar  1 02:35:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8503         * bignum.c (big2str_find_n1): check integer overflow.
8505 Sat Mar  1 00:29:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8507         * encoding.c (rb_enc_dummy_p): bootstrap encodings can not be dummy.
8509         * encoding.c (rb_enc_ascget): no needs to call rb_enc_precise_mbclen()
8510           twice.
8512 Fri Feb 29 23:14:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8514         * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_chomp): test
8515           updated.
8517 Fri Feb 29 20:58:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8519         * test/ruby/test_iterator.rb (TestIterator::test_enumerator):
8520           adjust test for zip behavior reversion.
8522 Fri Feb 29 20:25:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8524         * string.c (rb_str_chomp_bang): now works on UTF-16.
8526         * string.c (tr_setup_table): negation should work on non ASCII
8527           compatible strings as well.
8529         * string.c (rb_str_split_m): awk split should work on non ASCII
8530           compatible strings as well.
8532 Fri Feb 29 18:08:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8534         * time.c (time_strftime): format should be ascii compatible.
8536         * parse.y (rb_intern3): non ASCII compatible symbols.
8538         * re.c (rb_reg_regsub): add encoding check.
8540         * string.c (rb_str_chomp_bang): ditto.
8542         * test/ruby/test_utf16.rb (TestUTF16::test_chomp): raises exception.
8544 Fri Feb 29 15:16:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8546         * string.c (rb_str_rpartition): calculation was done in byte indexing.
8548         * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_start_with):
8549           allow start_with? matching on broken strings.
8551 Fri Feb 29 15:12:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8553         * parse.y (opt_block_param): command can start just after block param
8554           definition.  [ruby-list:44479]
8556 Fri Feb 29 03:22:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8558         * test/ruby/test_time.rb (test_readers): fix typo.
8559           (test_strftime): "UTC" is also ok for time.gmtime.strftime("%Z").
8561 Fri Feb 29 02:50:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8563         * string.c (str_new): remove encoding assumption of empty string.
8565         * hash.c ( rb_f_getenv, env_fetch, env_inspect): result of ENV should
8566           be always ASCII-8BIT.
8568         * object.c (nil_to_s): nil.to_s should be US-ASCII.
8570 Fri Feb 29 02:24:22 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
8572         * ext/tk/lib/tk.rb: forgot to update RELEASE_DATE
8574         * ext/tk/lib/tk.rb, ext/tk/lib/tk/text.rb,
8575           ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: remove adhoc check
8576           of Ruby's features (use existence of some classes instead of
8577           comparing with RUBY_VERSION)
8579         * ext/tk/lib/tk/root.rb, ext/tk/lib/tk/autoload.rb: make TkRoot
8580           (Tk::Root) unswitchable
8582         * ext/tk/lib/multi-tk.rb: partial bug fix (still not work!!)
8584 Thu Feb 28 23:37:12 2008  Tanaka Akira  <akr@fsij.org>
8586         * lib/open-uri.rb (OpenURI::Meta#meta_setup_encoding): use ASCII-8BIT
8587           for charset unspecified non-text data.
8589 Thu Feb 28 22:19:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8591         * encoding.c (enc_capable): IMMEDIATE_P doesn't include Qnil and Qfalse.
8592           use SPECIAL_CONST_P.
8594 Thu Feb 28 19:45:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8596         * encoding.c (enc_find): check type of argument and convert to String
8597           if it is StringValue. [ruby-cvs:22866]
8599 Thu Feb 28 18:07:52 2008  Tanaka Akira  <akr@fsij.org>
8601         * lib/open-uri.rb (OpenURI::Meta#meta_setup_encoding): setup encoding
8602           by charset.
8603           (OpenURI::Meta#meta_add_field): call meta_setup_encoding when
8604           content-type.
8606 Thu Feb 28 15:29:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8608         * io.c (rb_io_getline_fast): scan coderange.
8610 Thu Feb 28 14:36:46 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8612         * string.c (rb_enc_str_copy): removed.
8614 Thu Feb 28 13:51:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8616         * eval.c (stack_check): made flag per threads.
8618         * thread.c (rb_thread_set_raised, rb_thread_reset_raised): prefixed.
8620 Thu Feb 28 11:43:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8622         * file.c (rb_file_flock): immediately returns on EAGAIN if
8623           non-blocking.  [ruby-core:15672]
8625 Thu Feb 28 11:23:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8627         * io.c (rb_io_getline_1): get rid of segfault.  [ruby-dev:33938]
8629 Thu Feb 28 11:19:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8631         * string.c (rb_str_reverse_bang): removed unused variables.
8633         * include/ruby/encoding.h (rb_str_coderange_scan_restartable): added
8634           prototype.
8636         * string.c (rb_str_coderange_scan_restartable, rb_str_times): removed
8637           unused variables.
8639         * string.c (rb_str_reverse_bang): ditto
8641         * string.c (rb_enc_str_copy): unused now.  may be used in future?
8643 Thu Feb 28 03:03:32 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
8645         * ext/tk/lib/tk.rb, ext/tk/lib/*: make default widget set
8646           switchable between Tk (standard Tcl/Tk widget set) and
8647           Ttk (Tile). Initial default widget set is Tk. Now, toplevel
8648           widget classes are removed and defined as aliases.
8649           For example, "TkButton" is an alias of the "Tk::Button" class.
8650           Those aliases are replaced when switching default widget set.
8651           "Tk.default_widget_set=" is the method for switching default
8652           widget set. "Tk.default_widget_set = :Ttk" defines Ttk (Tile)
8653           widget set as default. It means that "TkButton" denotes
8654           "Tk::Tile::Button" class. And then, "TkButton.new" creates
8655           a Tk::Tile::Button widget. Of course, you can back to use
8656           standard Tk widgets as the default widget set by calling
8657           "Tk.default_widget_set = :Tk", whenever you want. Based on
8658           the feature, you can use Ttk widget styling engine on your
8659           old Ruby/Tk application without modifying its source, if you
8660           don't use widget options unsupported on Ttk widgets (At first,
8661           call "Tk.default_widget_set = :Ttk", and next load and run
8662           your application).
8663           This is one step for supporting Tcl/Tk8.5 features.
8665 Wed Feb 27 22:55:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8667         * string.c (rb_str_coderange_scan_restartable): coderange scanning
8668           for partial read.
8670         * io.c (read_all): set coderange when not convert encoding.
8672 Wed Feb 27 03:55:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8674         * ext/extmk.rb, enc/make_encmake.rb: load current mkmf.rb even if
8675           cross-compiling.
8677         * ext/extmk.rb, enc/make_encmake.rb, lib/mkmf.rb: need to be 1.8
8678           compatible for cross-compiling.
8680 Tue Feb 26 16:53:13 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8682         * misc/ruby-mode.el (ruby-calculate-indent): should distinguish
8683           comment and # in strings.  [ruby-dev:33874]
8685 Tue Feb 26 16:41:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8687         * array.c (combi_len, rb_ary_product): check for overflow.
8688           [ruby-Bugs-18355]
8690 Tue Feb 26 16:38:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8692         * array.c (recursive_cmp): compare minimal length parts.
8694 Tue Feb 26 16:06:00 2008  Technorama Ltd.  <oss-ruby@technorama.net>
8696         * ext/openssl/ossl_{ec,dh,dsa,rsa}.c: Remove useless warnings.
8698         * ext/openssl/ossl_asn1.c: Simplify code.
8700         * ext/openssl/ossl_ssl_session.c Fix compiler warnings.
8701           Undefine #id if SSL_SESSION_get_id is not supported.
8703 Tue Feb 26 15:50:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8705         * parse.y (value_expr_gen): removed inappropriate warning.
8706           [ruby-core:15660]
8708 Tue Feb 26 15:43:42 2008  Tanaka Akira  <akr@fsij.org>
8710         * parse.y (tokadd_escape): refactored.  [ruby-core:15657]
8712 Tue Feb 26 15:30:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8714         * array.c (rb_ary_eql, rb_ary_cmp): get rid of stack overflow with
8715           self-recursive constructs.  [ruby-Bugs-18356]
8717 Tue Feb 26 01:16:01 2008  Tanaka Akira  <akr@fsij.org>
8719         * include/ruby/ruby.h (ROBJECT_NUMIV): renamed from ROBJECT_LEN.
8720           (ROBJECT_IVPTR): renamed from ROBJECT_PTR.
8722         * variable.c: follow the above renaming.
8724         * object.c: ditto.
8726         * gc.c: ditto.
8728         * marshal.c: ditto.
8730 Mon Feb 25 17:30:29 2008  Technorama Ltd.  <oss-ruby@technorama.net>
8732         * ext/openssl/digest.c ext/openssl/lib/openssl/digest.rb:
8733           Commit patch #9280 from Akinori MUSHA.
8734           Simplify the OpenSSL::Digest class and make use of the
8735           existing Digest framework.
8736           Enhance performance.
8738 Mon Feb 25 15:33:29 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8740         * bignum.c (big2str_karatsuba): initialize cache if not initialized.
8742         * bignum.c (Init_Bignum): delayed initializing cache.
8743           [ruby-dev:33930]
8745 Mon Feb 25 13:40:03 2008  Tanaka Akira  <akr@fsij.org>
8747         * process.c (Init_process): share bignum objects for RLIM_INFINITY,
8748           RLIM_SAVED_MAX and RLIM_SAVED_CUR if they are equal.
8750 Mon Feb 25 10:41:41 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
8752         * encoding.c (Encoding#dummy): minor grammatical fixes
8753           in rdoc documentation.
8755 Mon Feb 25 00:01:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8757         * cygwin/GNUmakefile.in (clean-local): should be double-colon.
8759 Sun Feb 24 23:39:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8761         * common.mk, {bcc,win}32/Makefile.sub (clean-local): remove
8762           intermediate files.
8764         * cygwin/GNUmakefile.in (clean-local): remove def file.
8766 Sun Feb 24 06:49:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8768         * debug.c (ruby_set_debug_option): separated ruby_each_words().
8770         * util.c (ruby_each_words): extracted from ruby_set_debug_option().
8772         * ruby.c (enable_option, disable_option): allow all for all known
8773           features.
8775         * ruby.c (proc_options): generalized enable/disable options.
8777         * ruby.c (ruby_init_gems): take enabled flag.  [ruby-core:14840]
8779         * ruby.c (process_options): added --disable-rubyopt flag.
8781         * include/ruby/util.h (ruby_each_words): prototype.
8783 Sun Feb 24 05:25:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8785         * ruby.c (proc_options): check if argument for -E exists.
8787 Sun Feb 24 05:09:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8789         * misc/ruby-style.el (ruby-style-label-indent): fix for labels inside
8790           blocks in switch.
8792 Sun Feb 24 03:52:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8794         * util.c (valid_filename): use O_EXCL to get rid of clobbering
8795           existing files in race conditions.
8797 Sat Feb 23 21:36:13 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8799         * ext/win32ole/win32ole.c (ole_init_cp): should return value.
8801 Sat Feb 23 20:16:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8803         * string.c (str_sublen): removed.
8805         * string.c (rb_str_reverse, rb_str_reverse_bang): use
8806           single_byte_optimizable.
8808 Sat Feb 23 19:25:18 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8810         * string.c (rb_enc_cr_str_copy_for_substr): renamed from
8811           rb_enc_cr_str_copy.
8813         * string.c: use rb_enc_cr_str_copy_for_substr and keep coderange.
8815 Sat Feb 23 18:50:17 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
8817         * ext/win32ole/win32ole.c (ole_encoding2cp): remove US-ASCII
8818           mapping.
8820 Sat Feb 23 01:09:47 2008  Tanaka Akira  <akr@fsij.org>
8822         * process.c (rlimit_resource_type): new function.
8823           (rlimit_resource_value): new function.
8824           (proc_getrlimit): use rlimit_resource_type to accept
8825           symbol and string as resource type.
8826           (proc_setrlimit): use rlimit_resource_type and rlimit_resource_value
8827           to accept symbol and string as resource type and values.
8829 Fri Feb 22 21:12:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8831         * string.c (rb_enc_cr_str_copy): check string's coderange is 7bit or
8832           valid.
8834 Fri Feb 22 19:50:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8836         * bignum.c (BIGZEROP): fix for longer Bignum zeros.  [ruby-Bugs-17454]
8838 Fri Feb 22 15:47:36 2008  Tanaka Akira  <akr@fsij.org>
8840         * encoding.c (rb_enc_mbclen): return minlen instead of 1 when
8841           a character is not found properly.
8843         * string.c (rb_enc_strlen): round up string length with fixed
8844           multibyte encoding such as UTF-32.
8845           (rb_enc_strlen_cr): ditto.
8846           (rb_str_substr): fix substring with fixed multibyte encoding.
8847           (rb_str_justify): check number of characters.
8849 Fri Feb 22 12:11:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8851         * string.c (rb_str_inspect): string of ascii incompatible encoding
8852           should be escaped and returned as US-ASCII encoding.
8854 Fri Feb 22 11:16:55 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8856         * string.c (rb_str_substr): copy encoding although empty string.
8858 Fri Feb 22 04:48:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8860         * string.c (rb_str_times): empty string's coderange is CODERANGE_7BIT.
8862         * string.c (rb_str_substr): ditto.
8864         * encoding.c (rb_enc_compatible): empty string is compatible with not
8865           only nonasciicompatible strings. [ruby-dev:33895]
8867 Thu Feb 21 17:15:15 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
8869         * transcode.c: Added basic support for passing options to String#encode
8870           via a hash. Currently only one option, with one value, is supported:
8871           invalid: :ignore (dropping invalid byte sequences instead of
8872           producing an error). Option naming is not yet stable!
8874         * test/ruby/test_transcode.rb: Added a single test for invalid: :ignore
8875           option. Not more tests because most data does not yet distinguish
8876           between INVALID and UNKNOWN.
8878 Thu Feb 21 16:35:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8880         * array.c (rb_ary_unshift_m): expands enough for argc.  [ruby-dev:33880]
8882 Thu Feb 21 14:49:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8884         * io.c (argf_set_encoding): uses current_file after check if next
8885           input is available.
8887 Thu Feb 21 14:13:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8889         * io.c (rb_f_putc): invoke stdout method so that redefining putc
8890           may take effect.   [ruby-talk:291844]
8892         * io.c (rb_f_puts): ditto.
8894 Thu Feb 21 11:10:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8896         * string.c: replace rb_enc_copy by rb_enc_cr_str_copy or
8897           rb_enc_cr_str_exact_copy.
8899 Thu Feb 21 10:35:04 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8901         * include/ruby/encoding.h (rb_enc_asciicompat): dummy encoding is not
8902           ascii compatible. [ruby-dev:33878]
8904 Thu Feb 21 00:01:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8906         * configure.in (RPATHFLAG): -R option of HP-UX ld is not for runtime
8907           load path.  [ruby-list:44600]
8909 Wed Feb 20 23:55:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8911         * win32/win32.c (rb_w32_map_errno): exported.
8913 Wed Feb 20 23:28:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8915         * ext/readline/extconf.rb (rl_event_hook): workaround for native
8916           windows.
8918 Wed Feb 20 19:42:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8920         * encoding.c (rb_enc_associate_index): doesn't clear coderange
8921           when new encoding equals to old one.
8923 Wed Feb 20 19:15:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8925         * string.c (rb_enc_str_copy): added for wrapper for rb_enc_copy.
8926           this also copy coderange when ptr and len is equal.
8928         * string.c (rb_enc_cr_str_copy): added for wrapper for rb_enc_copy.
8929           this always copy coderange.
8931         * string.c (str_replace_shared): use rb_enc_str_copy.
8933         * string.c (str_new3): don't rb_enc_copy because encoding is copied
8934           at str_replace_shared.
8936 Wed Feb 20 13:08:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8938         * instruby.rb (parse_args): added --dir-mode, --script-mode and
8939           --cmd-type options.  [ruby-dev:33816]
8941         * instruby.rb (parse_args): added bin-arch and bin-comm to install
8942           type, for compiled files and script files.
8944         * instruby.rb (parse_args): deal with make style command line macros,
8945           and count as long style options if prefixed with INSTALL_.
8947         * instruby.rb (makedirs): use $dir_mode.  [ruby-dev:33805]
8949         * instruby.rb (open_for_install): set file mode, which is now
8950           permission mode instead of access mode.
8952         * instruby.rb (bin-comm): installs scripts with replacing shebang
8953           lines.
8955 Wed Feb 20 10:04:22 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8957         * io.c (open_key_args): set arg->io even if no options passed.
8958           [ruby-dev:33072]
8960 Tue Feb 19 21:11:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8962         * string.c (rb_enc_strlen_cr): get length with coderange scan.
8964         * string.c (str_strlen): use rb_enc_strlen_cr. [ruby-dev:33849]
8966 Tue Feb 19 20:49:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8968         * eval.c (rb_raise_jump): moved adjustment for control frame.
8970 Tue Feb 19 18:34:32 2008  Tanaka Akira  <akr@fsij.org>
8972         * gc.c (STACK_LENGTH) [SPARC] : 0x80 offset removed.  [ruby-dev:33857]
8974 Tue Feb 19 14:27:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8976         * ext/readline/readline.c (readline_event): prevent polling.  based on
8977           a patch from error errorsson in [ruby-Bugs-17675].
8979 Tue Feb 19 11:14:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8981         * eval.c (ruby_exec_node): no thread starts inside iseq compilation.
8983         * eval.c (rb_f_raise): skip current control frame.  [ruby-core:15589]
8985         * insns.def (opt_div): raise as the ordinary method. [ruby-core:15589]
8987 Mon Feb 18 15:16:30 2008  Tanaka Akira  <akr@fsij.org>
8989         * string.c (rb_str_each_line): fix newline size.
8991 Mon Feb 18 13:06:37 2008  Tanaka Akira  <akr@fsij.org>
8993         * lib/irb/locale.rb (IRB::Locale#lc2kconv): check ja_JP.EUC-JP as well.
8995 Mon Feb 18 11:51:19 2008  Tanaka Akira  <akr@fsij.org>
8997         * re.c (re_warn): defined to restore warnings for /[a-c-e]/, etc.
8999 Mon Feb 18 10:17:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9001         * ext/pty/lib/expect.rb (IO#expect): check if peer is closed.
9002           [ruby-Bugs-17940]
9004 Mon Feb 18 00:33:03 2008  Tanaka Akira  <akr@fsij.org>
9006         * re.c (rb_reg_regsub): don't repeat repl twice with
9007           "X".sub!(/./, sprintf("\\%c", 255)).
9009 Sun Feb 17 23:06:55 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
9011         * lib/cgi.rb (CGI::escapeHTML): use gsub with Hash. [ruby-dev:33828]
9013 Sun Feb 17 21:38:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9015         * encoding.c (ENC_CODERANGE_AND): fix broken case. [ruby-dev:33826]
9017         * string.c (rb_str_times): fix broken case. [ruby-dev:33826]
9019 Sun Feb 17 20:45:10 2008  Tanaka Akira  <akr@fsij.org>
9021         * re.c (rb_reg_prepare_re): add enable_warning parameter.
9022           (rb_reg_adjust_startpos): disable warning by rb_reg_prepare_re.
9023           (rb_reg_search): follow rb_reg_prepare_re parameter change.
9025 Sun Feb 17 20:12:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9027         * test/ruby/test_regexp.rb: add tests to achieve over 90% test
9028           coverage of re.c.
9030 Sun Feb 17 15:25:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9032         * encoding.c (ENC_CODERANGE_AND): added.
9034         * string.c (rb_str_plus, rb_str_times): keep coderange.
9036         * parse.y (STR_NEW0) use rb_usascii_str_new.
9038 Sun Feb 17 14:07:24 2008  Tanaka Akira  <akr@fsij.org>
9040         * string.c (str_strlen): rb_enc_strlen doesn't fail.
9042 Sun Feb 17 13:03:48 2008  Tanaka Akira  <akr@fsij.org>
9044         * string.c (str_sublen): use rb_enc_strlen.
9046 Sun Feb 17 12:17:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9048         * enc/{euc_jp.c,gbk.c,iso_8859_1.c,iso_8859_11.c,iso_8859_13.c,
9049           iso_8859_2.c,iso_8859_6.c,iso_8859_7.c,iso_8859_8.c,iso_8859_9.c,
9050           shift_jis.c,windows_1251.c}: add document about encodings.
9052         * enc/cp949.c: divided into new file.
9054 Sun Feb 17 10:59:04 2008  Tanaka Akira  <akr@fsij.org>
9056         * re.c (rb_reg_quote): return US-ASCII string consistently.
9058 Sun Feb 17 09:17:08 2008  Tanaka Akira  <akr@fsij.org>
9060         * string.c (rb_str_times): reduce loop overhead.
9062 Sun Feb 17 03:37:01 2008  Tanaka Akira  <akr@fsij.org>
9064         * include/ruby/re.h (struct rmatch_offset): new struct for character
9065           offsets.
9066           (struct rmatch): new struct.
9067           (struct RMatch): reference struct rmatch.
9068           (RMATCH_REGS): new macro.
9070         * re.c (match_alloc): initialize struct rmatch.
9071           (pair_byte_cmp): new function.
9072           (update_char_offset): update character offsets.
9073           (match_init_copy): copy regexp and character offsets.
9074           (match_sublen): removed.
9075           (match_offset): use update_char_offset.
9076           (match_begin): ditto.
9077           (match_end): ditto.
9078           (rb_reg_search): make character offset updated flag false.
9079           (match_size): use RMATCH_REGS.
9080           (match_backref_number): ditto.
9081           (rb_reg_nth_defined): ditto.
9082           (rb_reg_nth_match): ditto.
9083           (rb_reg_match_pre): ditto.
9084           (rb_reg_match_post): ditto.
9085           (rb_reg_match_last): ditto.
9086           (match_array): ditto.
9087           (match_aref): ditto.
9088           (match_values_at): ditto.
9089           (match_inspect): ditto.
9091         * string.c (rb_str_subpat_set): use RMATCH_REGS.
9092           (rb_str_sub_bang): ditto.
9093           (str_gsub): ditto.
9094           (rb_str_split_m): ditto.
9095           (scan_once): ditto.
9097         * gc.c (obj_free): free character offsets.
9099 Sun Feb 17 03:13:40 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9101         * win32/resource.rb: made version infos confirm to OS spec.
9103         * {bcc32,win32}/Makefile.sub (*.rc): add dependency.
9105 Sat Feb 16 20:49:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9107         * string.c (rb_str_substr): optimized for UTF-8.
9109 Sat Feb 16 18:13:53 2008  Tanaka Akira  <akr@fsij.org>
9111         * encoding.c (rb_enc_compatible): check encoding incapable arguments.
9113 Sat Feb 16 20:12:47 2008  Tanaka Akira  <akr@fsij.org>
9115         * re.c (match_inspect): avoid SEGV with MatchData.allocate.inspect.
9117 Sat Feb 16 19:04:17 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9119         * string.c (str_strlen): revert r15507. [ruby-dev:33810]
9121 Sat Feb 16 18:25:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9123         * string.c (str_strlen): little more optimization.
9124           (rb_enc_nth): remove needless variable 'c'.
9126 Sat Feb 16 18:00:13 2008  Tanaka Akira  <akr@fsij.org>
9128         * encoding.c (rb_enc_compatible): empty strings are always compatible.
9130         * string.c (rb_enc_cr_str_buf_cat): ditto.
9132 Sat Feb 16 16:14:35 2008  Tanaka Akira  <akr@fsij.org>
9134         * string.c (rb_enc_strlen): UTF-8 character count moved to str_strlen.
9135           (str_strlen): UTF-8 character count is only applicable for valid
9136           UTF-8 string.  [ruby-dev:33807]
9138 Sat Feb 16 13:16:49 2008  Tanaka Akira  <akr@fsij.org>
9140         * string.c (rb_str_sub_bang): stringize replacing hash values.
9141           (str_gsub): ditto.
9143 Sat Feb 16 13:01:33 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9145         * string.c (rb_enc_strlen): add search_nonascii like character
9146           counter for UTF-8.
9148 Sat Feb 16 11:53:35 2008  Tanaka Akira  <akr@fsij.org>
9150         * encoding.c (rb_enc_strlen): moved to string.c.
9152         * string.c (rb_enc_strlen): use search_nonascii.
9153           (str_strlen): don't use search_nonascii.
9155 Sat Feb 16 11:45:31 2008  Tanaka Akira  <akr@fsij.org>
9157         * lib/require_relative.rb: check require_relative call in eval.
9159 Sat Feb 16 08:00:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9161         * ruby.c (process_options): set default_external before loading
9162           libraries. [ruby-dev:33801]
9164 Sat Feb 16 05:49:54 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9166         * enc/iso_8859_{4,13}.c: Windows-1257 is replica of ISO-8859-13.
9168         * string.c (single_byte_optimizable): rb_enc_mbminlen must be 1
9169           when rb_enc_mbmaxlen is 1.
9171 Sat Feb 16 03:43:18 2008  Tanaka Akira  <akr@fsij.org>
9173         * encoding.c (rb_enc_nth): moved to string.c.
9175         * string.c (rb_enc_nth): moved from string.c.  use search_nonascii
9176           for ASCII compatible string.
9177           (str_nth): wrong optimization removed to fix
9178           "a".force_encoding("EUC-JP").slice!(0,10) returns
9179           "a\x00\x00\x00\x00\x00\x00\x00\x00\x00"
9181 Sat Feb 16 00:21:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9183         * range.c (rb_range_beg_len): check if responds to "begin" and "end"
9184           methods for non-Range object.
9186 Fri Feb 15 20:29:42 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
9188         * ext/win32ole/win32ole.c (ole_init_cp): initialize WIN32OLE.codepage
9189           according to Encoding.default_external.
9191         * test/win32ole/test_win32ole.rb: ditto.
9193 Fri Feb 15 19:31:23 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9195         * include/ruby/node.h (NODE_FL_NEWLINE): renamed from NODE_NEWLINE
9196           to denote its a flag.  [ruby-core:15529]
9198 Fri Feb 15 18:23:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9200         * string.c (rb_str_sub_bang, str_gsub): allows hash for replacement.
9202 Fri Feb 15 17:12:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9204         * string.c (str_strlen): use search_nonascii() for performance.
9206         * string.c (str_nth): ditto.
9208 Fri Feb 15 16:22:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9210         * io.c (open_key_args): allow specifying both :mode and :encoding.
9212 Fri Feb 15 15:34:47 2008  Tanaka Akira  <akr@fsij.org>
9214         * string.c (rb_str_getbyte): new method.
9215           (rb_str_setbyte): new method.
9217 Fri Feb 15 15:29:03 2008  Tanaka Akira  <akr@fsij.org>
9219         * lib/require_relative.rb: new file.
9221 Fri Feb 15 15:23:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9223         * ext/iconv/iconv.c (iconv_convert): check upper bound.  a patch from
9224           Daniel Luz at [ruby-Bugs-17910].
9226 Fri Feb 15 10:35:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9228         * re.c (rb_reg_quote): set US-ASCII for ASCII-only string.
9229           [ruby-dev:33785]
9231 Fri Feb 15 10:27:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9233         * {win,bcc}32/Makefile.sub (config.h): added HAVE_FTRUNCATE.
9234           [ruby-dev:33786]
9236 Fri Feb 15 09:44:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9238         * parse.y (reg_compile_gen): reg_fragment_setenc might not raise an
9239           exception before rb_reg_compile.
9241 Fri Feb 15 07:37:40 2008  Eric Hodel  <drbrain@segment7.net>
9243         * lib/rdoc/ri/paths.rb: Preserve compatibility with 1.8.
9245 Fri Feb 15 02:42:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9247         * configure.in (ftruncate): check if available.
9249         * file.c (rb_file_truncate): check if ftruncate instead of truncate.
9251 Fri Feb 15 02:40:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9253         * configure.in (sigsetmask): check when signal semantics is not POSIX.
9255         * signal.c (USE_TRAP_MASK): set true if sigprocmask or sigsetmask is
9256           available.
9258 Thu Feb 14 23:56:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9260         * eval_error.c (error_print): append a newline to rest lines.
9262         * parse.y (reg_compile_gen): appends error message from
9263           rb_reg_compile() to one from reg_fragment_setenc().
9265 Thu Feb 14 21:00:14 2008  Tanaka Akira  <akr@fsij.org>
9267         * io.c (io_reopen): check STDIN, STDOUT and STDERR mode according to
9268           stdio streams.
9270 Thu Feb 14 16:07:40 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9272         * test/ruby/test_math.rb: actual-expected argument ordering for
9273           test_math.rb fixed.  a patch from Tadashi Saito
9274           <shiba AT mail2.accsnet.ne.jp> in [ruby-dev:33770].
9276 Thu Feb 14 16:02:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9278         * file.c (rb_file_s_utime): inhibits with secure level 2 or higher.
9280 Thu Feb 14 12:30:02 2008  Tanaka Akira  <akr@fsij.org>
9282         * re.c (rb_reg_preprocess_dregexp): use non-preprocessed regexp source
9283           for result.
9285 Thu Feb 14 01:43:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9287         * lib/timeout.rb (Timeout::timeout): made sensitive to location on the
9288           stack.  [ruby-core:15458]
9290 Thu Feb 14 00:49:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9292         * common.mk (INSTRUBY_ARGS): pass mode to install.  [ruby-dev:33766]
9294         * instruby.rb (parse_args): added --data-mode and --prog-mode options.
9296 Thu Feb 14 00:02:19 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9298         * eval.c (eval): allow to eval in a binding that has a singleton method.
9299           [ruby-dev:33763]
9301         * test/ruby/test_proc.rb: add tests to achieve over 70% test coverage
9302           of proc.c.
9304         * test/ruby/test_method.rb: ditto.
9306 Wed Feb 13 22:46:36 2008  Tanaka Akira  <akr@fsij.org>
9308         * lib/pathname.rb (Pathname#sub_ext): new method.  [ruby-list:44608]
9310 Wed Feb 13 21:50:32 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9312         * proc.c (proc_curry): new method. [ruby-dev:33676]
9314         * test/ruby/test_proc.rb: add tests for above.
9316 Wed Feb 13 20:48:50 2008  Tanaka Akira  <akr@fsij.org>
9318         * include/ruby/ruby.h (RObject): add iv_index_tbl for shortcut of
9319           RCLASS_IV_INDEX_TBL(rb_obj_class(obj)).
9320           (ROBJECT_IV_INDEX_TBL): defined.
9322         * object.c (init_copy): initialize iv_index_tbl in struct RObject.
9324         * variable.c (ivar_get): use ROBJECT_IV_INDEX_TBL.
9325           (rb_ivar_defined): ditto.
9326           (obj_ivar_each): ditto.
9327           (rb_obj_remove_instance_variable): ditto.
9328           (rb_ivar_set): update iv_index_tbl in struct RObject.
9330 Wed Feb 13 16:21:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9332         * lib/uri/generic.rb: revert r15442. 2nd argument of String#sub parse
9333           escapes. [ruby-dev:33726]
9335         * bootstraptest/test_method.rb, enc/depend, instruby.rb, lib/mkmf.rb,
9336           mkconfig.rb: revert r15443. ditto.
9338 Wed Feb 13 11:20:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9340         * enc/depend: fix typo.
9342         * lib/mkmf.rb: revert r15443. "\\1#{sep}\\2" is wrong if sep is ended
9343           with "\\".
9345 Wed Feb 13 08:57:21 2008  Eric Hodel  <drbrain@segment7.net>
9347         * lib/rdoc/markup/inline.rb:  Allow inline markup to have a leading
9348           '#' or '\', or trailing punctuation.  i.e. *#freeze?*, *\foo?*.
9350 Wed Feb 13 07:21:23 2008  Eric Hodel  <drbrain@segment7.net>
9352         * lib/rdoc/to_html_hyperlink.rb:  Moved linking to to_html.rb, move
9353           crossref to to_html_crossref.rb
9355 Wed Feb 13 04:15:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9357         * parse.y (arg_concat_gen, arg_append_gen): optimize for array push.
9359         * parse.y (arg_concat_gen): optimize for array concat.
9361         * parse.y (arg_add_gen): removed since identical to arg_append_gen.
9363 Tue Feb 12 21:04:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9365         * parse.y (exc_list): should use mrhs if non array.
9367 Tue Feb 12 20:32:50 2008  Tadayoshi Funaba  <tadf@dotrb.org>
9369         * lib/rational.rb (floor, ceil, truncate, round): do not use
9370           definitions of Numeric.
9372         * lib/rational.rb (to_i): should returns truncated self.
9374         * lib/complex.rb (numerator): requires
9375           Integer#{numerator,denominator}.
9377         * lib/complex.rb (quo): do not use definition of Numeric.
9379         * lib/complex.rb (>, >=, <, <=, between?, div, divmod, modulo,
9380           floor, ceil, truncate, round): undef'ed.
9382         * lib/mathn.rb (Rational#inspect): removed.
9384 Tue Feb 12 16:48:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9386         * parse.y (args, mrhs): flattens literal array splats.
9388         * parse.y (exc_list): splat literal array.
9390 Tue Feb 12 15:27:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9392         * bootstraptest/runner.rb, bootstraptest/test_method.rb, enc/depend,
9393           instruby.rb, lib/mkmf.rb, lib/test/unit/util/procwrapper.rb,
9394           mkconfig.rb, sample/test.rb, template/vm.inc.tmpl,
9395           test/ruby/test_stringchar.rb: fixes around String#gsub.
9398 Tue Feb 12 15:11:47 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9400         * ext/json/lib/json/pure/generator.rb,
9401           ext/json/lib/json/pure/parser.rb, ext/openssl/lib/openssl/x509.rb,
9402           ext/win32ole/sample/olegen.rb, lib/date/format.rb, lib/irb/context.rb,
9403           lib/irb/workspace.rb, lib/net/http.rb, lib/net/imap.rb,
9404           lib/rdoc/generator.rb, lib/rdoc/markup/to_html.rb,
9405           lib/rdoc/markup/to_latex.rb, lib/rdoc/parsers/parse_c.rb,
9406           lib/rdoc/ri/formatter.rb, lib/rexml/parsers/baseparser.rb,
9407           lib/rexml/quickpath.rb, lib/rexml/text.rb, lib/rss/parser.rb,
9408           lib/uri/common.rb, lib/uri/generic.rb, lib/webrick/httpresponse.rb,
9409           lib/webrick/httpservlet/filehandler.rb, lib/yaml/baseemitter.rb,
9410           lib/yaml/encoding.rb: performance tuning around String#gsub.
9412 Tue Feb 12 12:16:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9414         * string.c (rb_str_hash_cmp): lighter version of rb_str_cmp() for
9415           hash comparison function.
9417         * hash.c (rb_any_cmp): use rb_str_hash_cmp().
9419         * string.c (rb_str_casecmp): should return nil for incompatible
9420           comparison.
9422 Tue Feb 12 12:13:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9424         * instruby.rb: specify file mode to install.  a patch from
9425           pegacorn  <subscriber.jp AT gmail.com> in [ruby-dev:33699].
9427 Tue Feb 12 11:38:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9429         * numeric.c (rb_num_coerce_bin): add ID argument to specify
9430           caller's method name.  [ruby-dev:33663]
9432         * numeric.c (rb_num_coerce_cmp): ditto.
9434         * numeric.c (rb_num_coerce_relop): ditto.
9436         * ext/bigdecimal/bigdecimal.c (DoSomeOne): add function name argument.
9438 Tue Feb 12 10:25:02 2008
9440         * lib/rdoc/rdoc.rb:  Wrap parse_files' read in version check for
9441           backwards compatibility.
9443 Tue Feb 12 10:15:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9445         * ruby.c (load_file): enc must effect source encoding.
9446           [ruby-core:15496]
9448 Tue Feb 12 10:16:47 2008  Eric Hodel  <drbrain@segment7.net>
9450         * lib/rdoc/ri/paths.rb:  Restore require rubygems check.
9452 Tue Feb 12 02:42:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9454         * range.c (range_include): specialize single character string
9455           case (e.g. (?a ..?z).include(?x)) for performance.
9456           [ruby-core:15481]
9458         * string.c (rb_str_upto): specialize single character case.
9460         * string.c (rb_str_hash): omit coderange scan for performance.
9462         * object.c (rb_check_to_integer): check Fixnum first.
9464         * object.c (rb_to_integer): ditto.
9466         * string.c (rb_str_equal): inline memcmp to avoid unnecessary
9467           rb_str_comparable().
9469         * parse.y (rb_intern2): use US-ASCII encoding.
9471         * parse.y (rb_intern_str): ditto.
9473 Mon Feb 11 17:21:18 2008  Kouhei Sutou  <kou@cozmixng.org>
9475         * lib/rss/rss.rb (RSS::VERSION), test/rss/test_version.rb:
9476           0.2.3 -> 0.2.4.
9478         * lib/rss/maker.rb, lib/rss/maker/, test/rss/test_maker_2.0.rb:
9479           fixed a bug that RSS::Maker.make("0.9")'s item doesn't make some
9480           elements if description is missed.
9481           Reported by Michael Auzenne. Thanks!!!
9483         * lib/rss/maker/0.9.rb, test/rss/test_maker_0.9.rb:
9484           RSS::Maker.make("0.9") generates RSS 0.92 not RSS 0.91.
9486 Mon Feb 11 10:43:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9488         * ruby.c (load_file): the encoding of DATA follows the source
9489           file encoding. [ruby-dev:33693]
9491 Mon Feb 11 06:50:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9493         * test/ruby/test_pack.rb: fix tests for 64bit CPU.
9495         * test/ruby/test_bignum.rb: ditto.
9497         * test/ruby/test_file_exhaustive.rb: ditto.
9499         * test/ruby/test_integer.rb: ditto.
9501         * test/ruby/test_time.rb: ditto.
9503         * test/ruby/test_numeric.rb: ditto.
9505         * test/ruby/test_fixnum.rb: ditto.
9507 Mon Feb 11 00:18:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9509         * lib/benchmark.rb (Job::Benchmark#item): fix typo.
9511 Sun Feb 10 21:58:32 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9513         * common.mk (encdb, transdb): depend on $(PREP).
9515 Sun Feb 10 16:58:20 2008  Eric Hodel  <drbrain@segment7.net>
9517         * lib/rubygems*, test/rubygems*, gem_prelude.rb: Import RubyGems
9518           r1601.  [ruby-core:15381]
9520 Sun Feb 10 15:07:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9522         * {bcc32,win32,wince}/Makefile.sub (MISSING): added cbrt.obj.
9524 Sun Feb 10 12:58:33 2008  Eric Hodel  <drbrain@segment7.net>
9526         * lib/rdoc/code_objects.rb: Make some attributes accessible for reuse.
9527         * lib/rdoc/generator/html.rb: Pull out ContextUser classes and related
9528           methods for reuse.
9529         * lib/rdoc/generator.rb: Move ContextUser classes to
9530           RDoc::Generator::Context for reuse.
9531         * lib/rdoc/rdoc.rb: Make RDoc::RDoc initialization a little easier.
9532         * lib/rdoc/options.rb: Make RDoc::Options easier to use without
9533           parsing an ARGV.
9534         * lib/rdoc/markup/to_*.rb: Subclass RDoc::Markup::Formatter.
9535         * lib/rdoc/markup/formatter.rb: Add RDoc::Markup::Formatter to make
9536           RDoc markup conversion easier.
9537         * lib/rdoc/markup/fragments.rb: Make RDoc::Markup::ListItem easier to
9538           test.
9539         * lib/rdoc/markup/to_html_hyperlink.rb: Pulled out of the HTML
9540           generator for easier reusability.
9541         * lib/rdoc/markup.rb: Fix bug with labeled lists containing bullet
9542           lists.
9543         * lib/rdoc/generators/html/html.rb: Fix Constant display.
9545 Sat Feb  9 23:44:29 2008  Tanaka Akira  <akr@fsij.org>
9547         * missing/tgamma.c (tgamma): use lgamma_r if available.
9549 Sat Feb  9 23:22:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9551         * ext/bigdecimal/extconf.rb: simplified the condition.
9553 Sat Feb  9 21:20:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9555         * test/ruby/test_math.rb: add tests for Math.gamma, Math.lgamma and
9556           Math.cbrt, and use assert_in_delta instead of assert.
9558 Sat Feb  9 18:34:45 2008  Tanaka Akira  <akr@fsij.org>
9560         * math.c (math_cbrt): new method Math.cbrt.
9562         * configure.in (cbrt): check for replacement functions.
9564         * missing/cbrt.c: new file.
9566 Sat Feb  9 17:51:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9568         * ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): use strtod() for more
9569           precision.  [ruby-talk:290296]
9571         * ext/bigdecimal/bigdecimal.c (BASE_FIG): made constant.
9573         * ext/bigdecimal/extconf.rb: ditto.  [ruby-dev:33658]
9575 Sat Feb  9 12:06:45 2008  Tanaka Akira  <akr@fsij.org>
9577         * missing/tgamma.c (tgamma): add error check.
9579 Sat Feb  9 11:47:03 2008  Tanaka Akira  <akr@fsij.org>
9581         * math.c (math_gamma): add error check.
9582           (math_lgamma): ditto.
9584 Sat Feb  9 11:09:26 2008  Tanaka Akira  <akr@fsij.org>
9586         * missing/lgamma_r.c (lgamma_r): return HUGE_VAL for non-positive
9587           integers.
9589 Sat Feb  9 10:03:07 2008  Tanaka Akira  <akr@fsij.org>
9591         * string.c (rb_str_new4): copy encoding from orig, instead of shared
9592           one.
9594 Sat Feb 09 01:01:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9596         * file.c (lchmod_internal): fix warning cast from pointer to integer of
9597           different size.
9599 Sat Feb  9 00:44:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9601         * lib/irb.rb (IRB::Irb::eval_input): rescues Interrupt and other than
9602           SystemExit and SignalException.  [ruby-core:15359]
9604 Fri Feb  8 23:51:36 2008  Tanaka Akira  <akr@fsij.org>
9606         * missing/lgamma_r.c (lgamma_r): use smaller argument for sin function.
9608 Fri Feb  8 22:10:36 2008  Tanaka Akira  <akr@fsij.org>
9610         * lib/open-uri.rb (OpenURI.open_http): rescue URI::InvalidURIError by
9611           URI.parse for location URI.
9613 Fri Feb  8 19:22:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9615         * ext/iconv/iconv.c (rb_str_derive): uses rb_str_subseq() for byte
9616           length.  [ruby-dev:33653]
9618         * ext/iconv/iconv.c (iconv_convert): added toidx argument to set
9619           encoding of successfully converted string.  [ruby-dev:33221]
9621 Fri Feb  8 15:09:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9623         * lib/mkmf.rb (xsystem): expand macros like as make.
9625 Fri Feb  8 09:27:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9627         * lib/rdoc/ri/driver.rb (read_yaml): remove SM* for compatibility.
9629 Fri Feb  8 00:07:24 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9631         * test/ruby/test_hash.rb: follow the change of Hash#flatten.
9633         * test/ruby/test_time.rb: add tests to achieve over 70% test coverage
9634           of time.c.
9636         * test/ruby/test_prec.rb: ditto over 90% for prec.c.
9638 Thu Feb  7 19:11:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9640         * string.c (rb_str_dup): reverted unneeded change.  [ruby-dev:33634]
9642         * string.c (rb_str_replace): makes frozen shared string before
9643           sharing.
9645 Thu Feb  7 16:33:51 2008  Tanaka Akira  <akr@fsij.org>
9647         * io.c (io_reopen): don't change access mode for stdin, stdout and
9648           stderr.  [ruby-core:15360]
9650 Thu Feb  7 16:33:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9652         * string.c (str_replace_shared): replaces string with sharing.
9654         * string.c (rb_str_new4, rb_str_associate, rb_str_associated): allows
9655           associated strings shared.
9657         * string.c (rb_str_dup, rb_str_substr, rb_str_replace): shares memory.
9658           [ruby-core:15400]
9660 Thu Feb  7 15:42:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9662         * string.c (rb_str_end_with): compares with the suffix.
9664 Thu Feb  7 15:03:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9666         * enc/trans/korean.c: add support for CP949 by Park Ji-In.
9667           [ruby-dev:33626]
9669 Thu Feb  7 11:11:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9671         * missing/lgamma_r.c (lgamma_r): some compilers don't permit dividing
9672           by literal 0.0. use const variable instead.
9674         * {bcc32,win32,wince}/Makefile.sub (MISSING): add lgamma_r.obj and
9675           tgamma.obj.
9677 Thu Feb  7 10:39:21 2008  Tanaka Akira  <akr@fsij.org>
9679         * math.c (math_gamma): new method Math.gamma.
9680           (math_lgamma): new method Math.lgamma.
9682         * include/ruby/missing.h (tgamma): declared unless HAVE_TGAMMA.
9683           (lgamma_r): declared unless HAVE_LGAMMA_R.
9685         * configure.in (tgamma): check for replacement functions.
9686           (lgamma_r): ditto.
9688         * missing/tgamma.c: new file.  based on gamma.c from
9689           "C-gengo niyoru saishin algorithm jiten" (New Algorithm handbook
9690           in C language) (Gijyutsu hyouron sha, Tokyo, 1991)
9691           by Haruhiko Okumura.
9693         * missing/lgamma_r.c: ditto.
9695         * LEGAL (missing/tgamma.c): describe as public domain.
9696           (missing/lgamma_r.c): ditto.
9698 Thu Feb  7 09:05:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9700         * ext/nkf/nkf-utf8/nkf.c (nkf_enc_from_index): BINARY does not
9701           have in-bound encoding index.
9703 Thu Feb  7 04:26:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9705         * enc/trans/korean.c: add EUC-KR conversion support by Park Ji-In.
9706           [ruby-dev:33621]
9708 Wed Feb  6 01:47:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9710         * hash.c (rb_hash_flatten): do not flatten recursively by default.
9711           [ruby-dev:33603]
9713 Wed Feb  6 00:50:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9715         * insns.def (adjuststack): never use INC_SP with minus value because
9716           some compilers cannot deal it correctly. use DEC_SP instead.
9718 Wed Feb  6 00:48:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9720         * test/ruby/test_hash.rb: add tests to achieve over 90% test coverage
9721           of hash.c.
9723         * test/ruby/test_env.rb: ditto.
9725 Wed Feb  6 00:24:49 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9727         * hash.c (env_rassoc): remove access to free'd environment on mswin32.
9729 Tue Feb  5 21:57:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9731         * vm.c (rb_call_super): pass a passed block when super is called via
9732           rb_call_super.  [ruby-dev:33598]
9734 Tue Feb  5 11:14:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9736         * lib/mkmf.rb (INSTALL_DIRS, install_dirs): added BINDIR.
9738         * lib/mkmf.rb (install_files): rejects files matching to
9739           $NONINSTALLFILES.
9741         * lib/mkmf.rb (init_mkmf): defaults $NONINSTALLFILES to backup and
9742           temporary files.
9744 Mon Feb  4 21:52:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9746         * lib/delegate.rb (DelegateClass): use define_method instead of
9747           module_eval to improve performance.  [ruby-dev:33586]
9749 Mon Feb  4 16:44:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9751         * configure.in (darwin): NSIG is not defined if _XOPEN_SOURCE > 500L.
9752           [ruby-dev:33584]
9754 Mon Feb  4 14:51:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9756         * parse.y (rb_enc_symname2_p): support "!", "!=" and "!~".
9757           [ruby-dev:33592]
9759 Mon Feb  4 13:58:42 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9761         * lib/delegate.rb (Delegator.preserved, DelegateClass.methods): extend
9762           shouldn't be delegated. [ruby-dev:32987], etc.
9764 Mon Feb  4 08:59:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9766         * lib/cgi.rb (CGI::QueryExtension::[]): no more transition
9767           extend(CGI::Value).  a patch from <tommy AT tmtm.org> in
9768           [ruby-dev:33583].
9770 Sun Feb  3 21:13:13 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9772         * test/ruby/test_numeric.rb: forgot to add this (at r15360).
9774         * test/ruby/test_file_exhaustive.rb: add tests to achieve over 80% test
9775           coverage of file.c.
9777 Sat Feb  2 20:06:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9779         * lib/benchmark.rb (Benchmark::realtime): make Benchmark#realtime
9780           a bit faster.  a patch from Alexander Dymo <dymo AT ukrpost.ua> in
9781           [ruby-core:15337].
9783 Sat Feb  2 17:40:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9785         * time.c (time_cmp): Time.<=> no longer supports comparison with
9786           numeric. [ruby-core:15332]
9788 Sat Feb  2 09:53:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9790         * configure.in (darwin): disabled fat-binary support which confuses
9791           configure much, since ``universal'' implies hidden cross-compiling.
9792           TODO: ruby and libruby.bundle might be possible to bound with `lipo'
9793           after builds for each archs.  Anyway, config.h and rbconfig.rb must
9794           be separated definitely at least.
9796 Sat Feb  2 09:28:36 2008  Tanaka Akira  <akr@fsij.org>
9798         * random.c (limited_big_rand): fix buffer overflow when SIZEOF_BDIGITS
9799           is 2.  fixed by Kenta Murata.  [ruby-dev:33565]
9801 Fri Feb  1 21:42:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9803         * configure.in (darwin): _XOPEN_SOURCE is necessary to make ucontext_t
9804           consistent with the library implementation of MacOS X 10.5.
9805           [ruby-dev:33461]
9807         * configure.in (darwin): ucontext on PowerPC MacOS X 10.5 is broken.
9809 Fri Feb  1 11:44:22 2008  Tanaka Akira  <akr@fsij.org>
9811         * tool/compile_prelude.rb (C_ESC): use octal escape to avoid
9812           "\x09for (;;) ..." to be interpret the first character 0x9f.
9814 Thu Jan 31 23:06:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9816         * test/ruby/test_bignum.rb: suppress warnings during test.
9818         * test/ruby/test_enum.rb: ditto.
9820         * test/ruby/test_integer.rb: add tests to achieve over 90% test
9821           coverage of numeric.c.
9823         * test/ruby/test_float.rb: ditto.
9825         * test/ruby/test_fixnum.rb: ditto.
9827         * test/ruby/test_numeric.rb: ditto.
9829         * test/ruby/test_pack.rb: add tests to achieve over 90% test coverage
9830           of pack.c.
9832 Thu Jan 31 17:30:42 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9834         * marshal.c (r_object0): no need to call r_entry for immediate values.
9836 Thu Jan 31 15:46:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9838         * lib/rdoc/ri/formatter.rb (output): add accessor.
9840         * lib/rdoc/ri/display.rb (page): replace @formatter.output instead of
9841           $stdout.
9843 Thu Jan 31 15:06:50 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9845         * marshal.c (r_object0): call r_entry/r_leave to call proc when
9846           TYPE_FIXNUM, TYPE_NIL, TYPE_TRUE, TYPE_FALSE, TYPE_SYMBOL.
9848 Thu Jan 31 14:03:38 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9850         * lib/rdoc/ri/display.rb (display_method_list, display_class_list):
9851           use @formatter.raw_print_line instead of puts.
9853         * lib/rdoc/ri/driver.rb (select_methods): new method to collect all
9854           instance/class methods which match with passed pattern.
9856         * lib/rdoc/ri/driver.rb (run): use class_cache's result directly
9857           instead of select_classes' because it's removed now.
9859         * lib/rdoc/ri/driver.rb (run): search methods when passed name is not
9860           class name. [ruby-core:15309]
9862 Thu Jan 31 08:31:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9864         * common.mk (ext/extmk.rb, instruby.rb): inlined $(MAKE) so that can
9865           be executed even with -n.
9867 Thu Jan 31 06:24:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9869         * io.c (rb_io_close_read): replaces fptr with the tied writer if
9870           duplex.
9872         * io.c (rb_io_close_write): unties the tied IO for writing if duplex.
9873           [ruby-dev:33532]
9875 Thu Jan 31 02:22:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9877         * io.c (open_key_args): allow encoding key to take two encoding
9878           names.  a patch from <rubikitch AT ruby-lang.org>.  [ruby-dev:33540]
9880 Thu Jan 31 02:15:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9882         * parse.y (dsym): allow empty symbols.  [ruby-core:15248]
9884 Thu Jan 31 00:01:51 2008  Tanaka Akira  <akr@fsij.org>
9886         * io.c (select_internal): fix SEGV by `select [STDIN],nil,[STDIN]'.
9887           fixed by Petr Chromec.
9888           http://rubyforge.org/tracker/index.php?func=detail&aid=17275&group_id=426&atid=1698
9890 Wed Jan 30 17:32:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9892         * enc/*.c: add GB12345, UCS-{2,4}{BE,LE}.
9894 Wed Jan 30 14:32:18 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9896         * lib/rdoc/ri/driver.rb (cache_file_for): shouldn't use `:' in filename.
9898 Wed Jan 30 14:27:19 2008  Tanaka Akira  <akr@fsij.org>
9900         * string.c (rb_str_succ): use wrapped character as a carry for
9901           ASCII incompatible encoding.
9903 Wed Jan 30 12:26:59 2008  Tanaka Akira  <akr@fsij.org>
9905         * enc/utf_16be.c (UTF16_IS_SURROGATE_FIRST): avoid branch.
9906           (UTF16_IS_SURROGATE_SECOND): ditto.
9907           (UTF16_IS_SURROGATE): defined.
9908           (utf16be_mbc_enc_len): validation implemented.
9910         * enc/utf_16le.c (UTF16_IS_SURROGATE_FIRST): avoid branch.
9911           (UTF16_IS_SURROGATE_SECOND): ditto.
9912           (UTF16_IS_SURROGATE): defined.
9913           (utf16le_mbc_enc_len): validation implemented.
9915 Wed Jan 30 12:06:43 2008  Tadayoshi Funaba  <tadf@dotrb.org>
9917         * bignum.c (rb_cstr_to_inum): '0_2' is a valid representation.
9919 Wed Jan 30 11:57:50 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9921         * bootstraptest/runner.rb: fix -I../../hoge case.
9923 Wed Jan 30 01:25:16 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9925         * test/ruby/test_range.rb: add tests to achieve over 90% test coverage
9926           of range.c.
9928 Wed Jan 30 00:09:37 2008  Tanaka Akira  <akr@fsij.org>
9930         * enc/euc_tw.c (euctw_mbc_enc_len): validation implemented.
9932 Tue Jan 29 22:58:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9934         * test/ruby/test_enumerator.rb: add tests to achieve over 90% test
9935           coverage of enumerator.c.
9937         * test/ruby/test_enum.rb: add for enum.c.
9939 Tue Jan 29 22:29:48 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9941         * enumerator.c: fix documents.
9943 Tue Jan 29 22:27:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9945         * range.c: fix SEGV by ("a" .. "z").step(2 ** 30) { }.
9947 Tue Jan 29 21:59:16 2008  Tanaka Akira  <akr@fsij.org>
9949         * enc/euc_tw.c (euctw_islead): 0x8e is a leading byte.
9951 Tue Jan 29 21:55:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9953         * bignum.c: move object allocation out of blocking_region.
9954           [ruby-dev:33139]
9956 Tue Jan 29 20:37:36 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9958         * enc/trans/make_transdb.rb: add for make transdb.h.
9960         * dmytranscode.c: add for miniruby.
9962         * enc/gbk.c (gbk_left_adjust_char_head, gbk_is_allowed_reverse_match):
9963           fix odd regexp match. [ruby-dev:33502]
9965 Tue Jan 29 20:17:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9967         * {bcc32,win32}/Makefile.sub (MINIOBJS): add dmytranscode.$(OBJEXT).
9969 Tue Jan 29 19:39:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9971         * configure.in, common.mk: fix rule for dmytranscode.o.
9973 Tue Jan 29 19:03:16 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9975         * enc/trans/japanese.c (rb_to_Windows_31J): to 'Windows-31J'.
9977         * common.mk: add rules for transdb.h.
9979         * transcode.c (init_transcoder_table): use transdb.h.
9981 Tue Jan 29 18:05:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9983         * encoding.c (encdb_{replicate,alias,dummy,declare}): define only if
9984           NO_ENCDB_H is not defined.
9986 Tue Jan 29 17:54:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9988         * enc/gbk.c (EncLen_gbk): too short. [ruby-dev:33497]
9990 Tue Jan 29 17:25:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9992         * dmyencoding.c, encoding.c (enc_init_db, NO_ENCDB_H):
9993           miniruby doesn't use encdb.
9995         * common.mk: encdb.h use miniruby.
9997 Tue Jan 29 17:37:36 2008  Tanaka Akira  <akr@fsij.org>
9999         * enc/gb18030.c (gb18030_mbc_enc_len): validation implemented.
10001 Tue Jan 29 17:01:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10003         * tool/ifchange: remove $temp when unchanged.
10005 Tue Jan 29 16:59:01 2008  Tanaka Akira  <akr@fsij.org>
10007         * insns.def (toregexp): generate a regexp from strings instead of one
10008           string.
10010         * re.c (rb_reg_new_ary): defined for toregexp.  it concatenates
10011           strings after each string is preprocessed.
10013         * compile.c (compile_dstr_fragments): split from compile_dstr.
10014           (compile_dstr): call compile_dstr_fragments.
10015           (compile_dregx): defined for dynamic regexp.
10016           (iseq_compile_each): use compile_dregx for dynamic regexp.
10018           [ruby-dev:33400]
10020 Tue Jan 29 16:25:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10022         * common.mk, ext/extmk.rb: always make encdb.h.
10024 Tue Jan 29 12:53:39 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10026         * enc/gbk.c: add GBK, CP936 and CP949.
10028         * enc/euc_kr.c: remove CP949.
10030         * enc/euc_cn.c: remove CP936 and rename to gb2312.c
10032         * enc/gb2312.c: GB2312 is preferred MIME name.
10034 Tue Jan 29 03:01:29 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10036         * parse.y (reg_fragment_setenc_gen): US-ASCII script special code.
10038         * parse.y (reg_fragment_check_len, reg_compile_gen): no need such
10039           trick.
10040           [ruby-dev:33399]
10042         * test/ruby/test_m17n.rb (test_regexp_usacii_literal): add tests.
10044 Tue Jan 29 01:38:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10046         * common.mk ($(srcdir)/revision.h): no need to show ifchange execution
10047           because ifchange echos updated or unchanged.
10049 Tue Jan 29 01:26:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10051         * common.mk (up): use last changed revision.
10053         * common.mk (up): force to update revision.h.
10055 Tue Jan 29 00:12:17 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10057         * bignum.c (rb_big2str0): should be US-ASCII.
10059 Tue Jan 29 00:10:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10061         * misc/ruby-mode.el (ruby-mode-set-encoding): updates magic comment.
10063 Mon Jan 28 23:47:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10065         * parse.y (rb_id2str, ripper_initialize, Init_ripper):
10066           use rb_usascii_str_new2. [ruby-dev:33449]
10068 Mon Jan 28 19:37:08 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10070         * ext/win32ole/win32ole.c (ole_cp2encoding): new function.
10072         * ext/win32ole/win32ole.c (ole_wc2vstr, ole_variant2val, fole_missing):
10073           set encoding to result.
10075         * ext/win32ole/win32ole.c (fole_s_set_code_page, Init_win32ole): set
10076           default encoding.
10077           [ruby-dev:33433]
10079 Mon Jan 28 11:17:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10081         * string.c, parse.y, re.c: use rb_ascii8bit_encoding.
10083 Mon Jan 28 17:54:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10085         * enc/utf_7.h: add dummy encoding UTF-7 and its alias CP65000.
10087 Mon Jan 28 17:41:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10089         * enc/utf_8.c: add alias CP65001.
10091 Mon Jan 28 15:33:23 2008  Tanaka Akira  <akr@fsij.org>
10093         * enc/big5.c (big5_mbc_enc_len): validation implemented.
10095 Mon Jan 28 13:02:02 2008  Tanaka Akira  <akr@fsij.org>
10097         * enc/euc_kr.c (euckr_mbc_enc_len): validation implemented.
10099 Mon Jan 28 11:24:49 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10101         * parse.y (parser_str_new): encoding of UTF-8 literal string in
10102           US-ASCII script is UTF-8. [ruby-dev:33406]
10104 Mon Jan 28 10:25:59 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10106         * test/ruby/test_m17n.rb (test_magic_comment): add test.
10108 Mon Jan 28 09:34:54 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10110         * common.mk (help): use double quotes for nmake.
10112 Mon Jan 28 00:39:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10114         * parse.y (parser_set_encode): check if encoding is ASCII compatible.
10116 Mon Jan 28 01:21:15 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10118         * io.c (rb_open_file): should check NUL in path.
10119           <http://www.rubyist.net/~matz/20080125.html#c01>.
10121         * io.c (rb_io_s_popen): ditto.
10123         * io.c (rb_io_reopen): ditto.
10125         * io.c (next_argv): ditto.
10127 Sun Jan 27 23:33:35 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10129         * sprintf.c (rb_str_format): fix for left justify flag.
10131         * sprintf.c (rb_str_format): zero-precision zero bug revised.
10132           [ruby-dev:33419]
10134 Sun Jan 27 23:20:54 2008  Tanaka Akira  <akr@fsij.org>
10136         * include/ruby/oniguruma.h: precise mbclen API redesigned to avoid
10137           inline functions.
10138           (onigenc_mbclen_charfound): removed.
10139           (onigenc_mbclen_needmore): removed.
10140           (onigenc_mbclen_recover): removed.
10141           (ONIGENC_MBCLEN_CHARFOUND): removed.
10142           (ONIGENC_MBCLEN_CHARFOUND_P): defined.
10143           (ONIGENC_MBCLEN_CHARFOUND_LEN): defined.
10144           (ONIGENC_MBCLEN_INVALID): removed.
10145           (ONIGENC_MBCLEN_INVALID_P): defined.
10146           (ONIGENC_MBCLEN_NEEDMORE): removed.
10147           (ONIGENC_MBCLEN_NEEDMORE_P): defined.
10148           (ONIGENC_MBCLEN_NEEDMORE_LEN): defined.
10149           (ONIGENC_MBC_ENC_LEN): use onigenc_mbclen_approximate.
10151         * regenc.c (onigenc_mbclen_approximate): defined.
10153         * include/ruby/encoding.h (MBCLEN_CHARFOUND): removed.
10154           (MBCLEN_INVALID): removed.
10155           (MBCLEN_NEEDMORE): removed.
10156           (MBCLEN_CHARFOUND_P): defined.
10157           (MBCLEN_INVALID_P): defined.
10158           (MBCLEN_NEEDMORE_P): defined.
10159           (MBCLEN_CHARFOUND_LEN): defined.
10160           (MBCLEN_NEEDMORE_LEN): defined.
10162         * encoding.c: use new API.
10164         * re.c: ditto.
10166         * string.c: ditto.
10168         * parse.y: ditto.
10170 Sun Jan 27 22:55:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10172         * parse.y (value_expr_gen): reverted r12880.  [ruby-dev:33388]
10174 Sun Jan 27 22:33:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10176         * sprintf.c (rb_str_format): fix for octal with precision.
10177           [ruby-dev:33411]
10179 Sun Jan 27 22:31:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10181         * misc/ruby-mode.el (ruby-mode-set-encoding): automatically insert
10182           encoding magic comment.
10184         * misc/ruby-mode.el (ruby-mode): set ruby-mode-set-encoding to buffer
10185           local before-save-hook.
10187 Sun Jan 27 19:51:15 2008  Tanaka Akira  <akr@fsij.org>
10189         * string.c (rb_str_inspect): avoid exception by
10190           "\#\xa1".force_encoding("euc-jp").inspect.
10192 Sun Jan 27 19:07:33 2008  Tanaka Akira  <akr@fsij.org>
10194         * string.c (rb_str_succ): warning suppressed.
10196 Sun Jan 27 18:18:13 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10198         * common.mk (help): show major targets.
10200 Sun Jan 27 17:54:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10202         * ext/nkf/nkf.c: raise error when no output encoding is given.
10204 Sun Jan 27 17:20:10 2008  Tanaka Akira  <akr@fsij.org>
10206         * string.c (rb_str_succ): don't increment/decrement codepoint.
10208 Sun Jan 27 16:03:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10210         * lib/irb/ruby-lex.rb (RubyLex#buf_input): use chars.to_a.
10212 Sun Jan 27 16:27:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10214         * ext/nkf/nkf-utf8: update nkf.
10216 Sun Jan 27 16:25:27 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10218         * re.c (rb_reg_source): set encoding as regexp encoding.
10220 Sun Jan 27 05:56:39 2008  Tanaka Akira  <akr@fsij.org>
10222         * re.c (rb_reg_preprocess): force fixed encoding when ASCII
10223           incompatible source string.
10225 Sat Jan 26 23:46:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10227         * sprintf.c (rb_str_format): zero-precision zero should be empty.
10228           [ruby-dev:33363]
10230         * sprintf.c (rb_str_format): not prepend octal prefix to negative or
10231           zero value.  [ruby-dev:33363], [ruby-dev:33367]
10233 Sat Jan 26 23:42:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10235         * parse.y (assignable_gen, keyword_to_name): __ENCODING__ was missing.
10237 Sat Jan 26 19:08:45 2008  Tanaka Akira  <akr@fsij.org>
10239         * marshal.c (w_object): dump string encoding in USERDEF.
10240           [ruby-dev:33401]
10242 Sat Jan 26 17:42:23 2008  Koichi Sasada  <ko1@atdot.net>
10244         * compile.c (iseq_compile_each): validate argument expr of "next"
10245           statement.
10247         * bootstraptest/test_syntax.rb: add a test.
10249 Sat Jan 26 17:22:46 2008  Koichi Sasada  <ko1@atdot.net>
10251         * compile.c, compile.h: fix to calculate correct stack depth
10252            at each instruction.
10254 Sat Jan 26 09:41:02 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10256         * lib/rexml/doctype.rb, test/rss/test_maker_itunes.rb: replace
10257           multi-byte string.
10259         * test/json/{test_json.rb, test_json_unicode.rb}:
10260           add magic comment.
10262 Sat Jan 26 09:30:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10264         * include/ruby/encoding.h (rb_usascii_encindex): added prototype.
10266         * include/ruby/intern.h (rb_usascii_str_new, rb_usascii_str_new2):
10267           ditto.
10269 Sat Jan 26 09:17:13 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10271         * string.c (rb_str_new): set US-ASCII and ENC_CODERANGE_7BIT when
10272           empty string (len == 0).
10274 Sat Jan 26 03:41:53 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10276         * parse.y (parser_initialize): set default script encoding as US-ASCII.
10278         * ruby.c (load_file): ditto.
10280         * ruby.c (process_options): set script encoding of -e from locale
10281           except when -K is specified.
10283         * ruby.c (load_file): set script encoding of stdin from locale except
10284           when -K is specified. [ruby-dev:33375]
10286 Sat Jan 26 02:51:06 2008  Koichi Sasada  <ko1@atdot.net>
10288         * compile.c, compile.h: fix stack pointer issues.
10289           calculate correct stack depth at compile time.
10291         * insns.def (emptstack): remove it and add a new insn "adjuststack".
10293         * bootstraptest/test_knownbug.rb: move/remove fixed test.
10295         * bootstraptest/test_syntax.rb: ditto.
10297 Sat Jan 26 00:17:18 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10299         * string.c (rb_str_usascii_new{,2}: defined.
10300           (rb_str_new): set US-ASCII and ENC_CODERANGE_7BIT when empty
10301           string.
10303         * encoding.c (rb_usascii_encoding, rb_usascii_encindex): defined.
10304           (rb_enc_inspect, enc_name, rb_locale_charmap, rb_enc_name_list_i):
10305           use rb_str_ascii_new.
10307         * array.c (recursive_join, inspect_ary): ditto.
10309         * object.c (nil_to_s, nil_inspect, true_to_s, false_to_s,
10310           rb_mod_to_s): ditto.
10312         * hash.c (inspect_hash, rb_hash_inspect, rb_f_getenv, env_fetch,
10313           env_clear, env_to_s, env_inspect): ditto.
10315         * numeric.c (flo_to_s, int_chr, rb_fix2str): ditto.
10317         * bignum.c (rb_big2str): ditto.
10319         * file.c (rb_file_ftype, rb_file_s_dirname, rb_file_s_extname,
10320           file_inspect_join, Init_file): ditto.
10322         * test/ruby/test_ruby_m17n.rb: add checks for encoding of string.
10324 Sat Jan 26 01:35:46 2008  Tanaka Akira  <akr@fsij.org>
10326         * marshal.c (r_byte): use getbyte instead of getc.
10327           (marshal_load): ditto.
10328           [ruby-dev:33264]
10330 Sat Jan 26 00:43:40 2008  Tanaka Akira  <akr@fsij.org>
10332         * io.c (rb_io_getline_fast): don't care ASCII incompatible encoding.
10333           (prepare_getline_args): generate a newline according to IO encoding
10334           when necessary.
10335           (rb_io_getline_1): call rb_io_getline_fast only for ASCII
10336           compatible encoding.
10338 Fri Jan 25 21:49:36 2008  Tanaka Akira  <akr@fsij.org>
10340         * string.c (rb_str_buf_cat_ascii): use rb_enc_cr_str_buf_cat.
10342 Fri Jan 25 19:38:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10344         * common.mk (version.$(OBJEXT)): depends on $(srcdir)/revision.h.
10346         * common.mk (revision.h): extracts revision number with ``svn info''.
10348         * common.mk (up): target to update from the repository.
10350         * Makefile.in, {win,bcc}32/Makefile.sub (IFCHANGE): tool to update a
10351           file if changed.
10353         * tool/ifchange: for unixen.
10355         * win32/ifchange.bat: some fix
10357 Fri Jan 25 17:12:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10359         * ruby.c (load_file): set default to ASCII-8BIT explicitly if -K
10360           option is not given.
10362 Fri Jan 25 16:31:47 2008  Tanaka Akira  <akr@fsij.org>
10364         * include/ruby/intern.h (rb_str_buf_cat_ascii): declared.
10366         * string.c (rb_str_buf_cat_ascii): defined.
10368         * re.c (rb_reg_s_union): use rb_str_buf_cat_ascii to support ASCII
10369           incompatible encoding.
10371 Fri Jan 25 16:11:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10373         * ruby.c (process_options, load_file, rb_load_file): propagates script
10374           encoding by -K to libraries.  [ruby-dev:33156]
10376 Fri Jan 25 15:56:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10378         * ruby.c (cmdline_arguments): split argc and argv from cmdline_options.
10380         * ruby.c (process_options): not set encoding of -e option from -E
10381           option if they are not compatible.
10383 Fri Jan 25 13:15:23 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10385         * ruby.c (proc_options, process_options, load_file): shouldn't effect
10386           --encoding to script encoding. [ruby-dev:33169]
10388 Fri Jan 25 10:31:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10390         * */*.bat: set svn:mime-type to text/batch.
10392 Thu Jan 24 23:23:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10394         * enum.c (enum_one, enum_take_while, enum_drop_while): fix documents.
10396 Thu Jan 24 21:46:24 2008  Tanaka Akira  <akr@fsij.org>
10398         * parse.y (reg_fragment_setenc_gen): associate ASCII-8BIT only if
10399           str has only ASCII characters.
10401 Thu Jan 24 20:46:17 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10403         * test/ruby/test_m17n.rb: follow to the following changes.
10405 Thu Jan 24 20:21:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10407         * parser.y (parser_str_new): automatically update string literal's
10408           encoding from US-ASCII to ASCII-8BIT when script encoding is US-ASCII
10409           and the string includes non-ascii bytes. [ruby-dev:33348]
10411         * parser.y (reg_fragment_check_gen, reg_compile_gen): automatically
10412           update regexp literal's encoding from US-ASCII to ASCII-8BIT when
10413           script encoding is US-ASCII, the regexp has no kcode option and the
10414           regexp includes non-ascii bytes. [ruby-dev:33353]
10416 Thu Jan 24 19:36:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10418         * lib/uri/generic.rb (URI::Generic::inspect): use Kernel#to_s instead
10419           object_id with printf.  [ruby-dev:33347]
10421 Thu Jan 24 19:29:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10423         * sprintf.c (remove_sign_bits): returns pointer to the first char to
10424           be used, instead of copying.
10426         * sprintf.c (rb_str_format): negative indicator dots should come
10427           before sign digits always.  [ruby-dev:33224]
10429 Thu Jan 24 18:19:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10431         * include/ruby/encoding.h (rb_enc_is_newline): parenthesized arguments.
10433 Thu Jan 24 18:14:14 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10435         * re.c (rb_reg_fixed_encoding_p): no need to treat ASCII-8BIT specially.
10437 Thu Jan 24 16:53:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10439         * re.c (rb_reg_initialize): 7bit clean regexp should be US-ASCII.
10440           [ruby-dev:33346]
10442 Thu Jan 24 16:31:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10444         * io.c (rb_io_getline_fast): the end point of left_char_head()
10445           must be the last character.  [ruby-cvs:22445]
10447 Thu Jan 24 16:24:25 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10449         * parse.y (reg_fragment_setenc_gen): recognize regexp with option n as
10450           as ASCII-8BIT instead of US-ASCII. [ruby-dev:33339]
10452 Thu Jan 24 15:44:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10454         * array.c (collect_bang_i): use rb_ary_store() to avoid potential
10455           memory corruption.  a patch from Yusuke Endoh <mame@tsg.ne.jp>
10456           in [ruby-dev:33328].
10458         * array.c (ITERATE): remove unnecessary macro.
10460         * array.c (sort_1): remove ary_sort_check().  in-place sort keep
10461           original elements even when it's modified.
10463         * array.c (sort_2): ditto.
10465 Thu Jan 24 15:09:40 2008  Tanaka Akira  <akr@fsij.org>
10467         * time.c (make_time_t): revert round trip test.  [ruby-dev:33058]
10469 Thu Jan 24 11:14:56 2008  Tanaka Akira  <akr@fsij.org>
10471         * string.c (rb_enc_cr_str_buf_cat): ASCII incompatible encoding is
10472           not compatible with any other encoding.
10474 Thu Jan 24 07:34:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10476         * parse.y (STR_NEW0): set encoding as US-ASCII.
10478 Thu Jan 24 03:47:41 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10480         * lib/rexml/text.rb, lib/rubygems/open-uri.rb, lib/open-uri.rb,
10481           test/logger/test_logger.rb, test/ruby/test_regexp.rb:
10482           fix tests. [ruby-dev:33336]
10484 Thu Jan 24 03:23:44 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10486         * string.c (rb_str_each_line): use memchr(3) for faster newline
10487           search.
10489         * io.c (appendline): remove unused arguments
10491         * io.c (rb_io_getline_fast): make much simpler (and faster).
10493 Thu Jan 24 02:13:07 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10495         * insns.def (expandarray): fix stack inc.  [ruby-dev:32892]
10497         * bootstraptest/test_knownbug.rb, test_massign.rb: move a fixed test.
10499 Thu Jan 24 01:00:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10501         * encoding.{c, h} (rb_usascii_encoding): added.
10503         * parse.y (parser_str_new, rb_intern3): ascii only string literal is
10504           US-ASCII.
10506         * ruby.c (proc_optionc): -Kn means ASCII-8BIT.
10508 Wed Jan 23 23:54:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10510         * sprintf.c: fix comment.  [ruby-dev:33275]
10512         * math.c: fix comment.  [ruby-dev:33276]
10514 Wed Jan 23 22:47:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10516         * test/ruby/test_struct.rb: add tests to achieve over 90% test
10517           coverage of struct.c.
10519         * test/ruby/test_sprintf.rb: ditto for sprintf.c.
10521         * test/ruby/test_math.rb: ditto for math.c.
10523 Wed Jan 23 22:14:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10525         * enc/trans/japanese.c (rb_from_Windows_31J, rb_to_Windows_31J):
10526           provisional workaround for Windows-31J.  [ruby-dev:33320]
10528 Wed Jan 23 15:25:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10530         * time.c (time_strftime): copy encoding from format.  [ruby-dev:33303]
10532 Wed Jan 23 15:04:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10534         * string.c (str_make_independent): should set length.
10536         * string.c (rb_str_associate): hide associated array from ObjectSpace.
10538         * string.c (rb_str_associated): return associated array with freezing
10539           instead of false.  [ruby-dev:33282]
10541         * string.c (rb_str_freeze): freeze associated array together.
10543 Wed Jan 23 13:39:48 2008  Tanaka Akira  <akr@fsij.org>
10545         * re.c (rb_reg_prepare_re): fix SEGV by
10546           /a/ =~ "aa".force_encoding("utf-16be").
10548 Wed Jan 23 11:53:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10550         * string.c (str_mod_check, str_nth, str_offset): constified.
10552         * string.c (rb_str_dump): dump in ASCII-8BIT always.
10554 Wed Jan 23 10:18:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10556         * eval_method.c (rb_export_method): set ruby_vm_redefined_flag for
10557           visibility change as well.  reported by K.Kosako in
10558           http://d.hatena.ne.jp/kkos/20080122#1201012720.
10560 Tue Jan 22 22:26:23 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10562         * test/ruby/test_bignum.rb: change some tests because rational
10563           redefines Bignum#quo and Bignum#**.
10565 Tue Jan 22 20:58:15 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10567         * lib/mkmf.rb (create_makefile): need to output sodir rule.
10569 Tue Jan 22 19:37:16 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10571         * lib/mkmf.rb (create_makefile): lib files shouldn't depend on install
10572           dir because if the dir is newer than lib files, lib files will be
10573           always copied.
10575 Tue Jan 22 17:52:52 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10577         * enc/trans/utf_16_32.c: Streamline parentheses, add more
10578           'static' qualifiers.
10580 Tue Jan 22 12:57:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10582         * configure.in (MINIRUBY): remove -I$(EXTOUT)/$(arch) from
10583           MINIRUBY since miniruby might not be able to load DLL.
10585         * test/ruby/test_m17n.rb: move tests from bootstrap test.
10587         * encoding.c (enc_find): should check name if ASCII compatible.
10589         * string.c (rb_str_end_with): should check character boundary.
10591         * encoding.c (rb_enc_compatible): encoding must be ASCII
10592           compatible before checking ENC_CODERANGE_7BIT.
10594         * encoding.c (rb_enc_compatible): wrong compatibility condition.
10595           [ruby-dev:33273]
10597 Tue Jan 22 09:26:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10599         * string.c (rb_str_each_char): iterates over a shadow.
10600           [ruby-dev:33243]
10602 Tue Jan 22 08:59:52 2008  Eric Hodel  <drbrain@segment7.net>
10604         * lib/rdoc/ri/formatter.rb:  Indent labeled lists like note lists.
10606         * test/rdoc/test_rdoc_ri_overstrike_formatter.rb:  Added.
10608         * test/rdoc/test_rdoc_ri_formatter.rb:  Added tests.
10610 Tue Jan 22 04:40:28 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10612         * parse.y (rb_intern3): do not call rb_enc_mbclen() if *m is
10613           ASCII.  [ruby-talk:287225]
10615         * string.c (rb_str_each_line): use rb_enc_is_newline() to gain
10616           performance if the record separator ($/) is not modified.
10618 Tue Jan 22 01:15:51 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
10620         * ChangeLog: format-time-string under C locale. [ruby-dev:33261]
10622 Tue Jan 22 00:45:12 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10624         * test/ruby/test_bignum.rb: add tests for bignum.c.
10626 Tue Jan 22 00:30:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10628         * bignum.c (big_shift): fix a bug that caused infinite loop when
10629           left shifting.
10631 Mon Jan 21 20:09:38 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10633         * lib/date.rb (marshal_load): initialize the cache.
10635 Mon Jan 21 19:42:42 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10637         * transcode.c, enc/trans/utf_16_32.c, test/ruby/test_transcode.rb:
10638           added UTF-32BE and UTF-32LE conversions.
10640 Mon Jan 21 14:36:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10642         * transcode.c (str_transcode): initialize transcoder in
10643           rb_transcoding.  [ruby-dev:33234]
10645         * transcode_data.h (rb_transcoding): transcoder constified.
10647 Mon Jan 21 12:50:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10649         * eval.c, gc.c (setjmp): sigsetjmp is a macro on cygwin.
10651 Mon Jan 21 12:35:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10653         * transcode.c (transcode_loop, str_transcoding_resize): use unsigned
10654           char.  [ruby-dev:33232]
10656         * transcode_data.h (rb_transcoding, rb_transcoder): removed callback
10657           parameters.
10659         * enc/trans/japanese.c: ditto.
10661         * enc/trans/utf_16_32.c: parenthesized bit-or operands.
10663 Mon Jan 21 11:59:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10665         * string.c (rb_str_each_char): move forward.  [ruby-dev:33231]
10667 Mon Jan 21 06:40:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10669         * transcode.c (transcode_dispatch): constified return value.
10671         * transcode_data.h (rb_transcoding): include pointer to rb_transcoder
10672           and auxiliary data.
10674         * transcode_data.h (rb_transcoder): all callback functions should have
10675           their own parameters.
10677         * enc/trans/{japanese,single_byte}.c: constified.
10679 Mon Jan 21 03:45:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10681         * string.c (rb_str_each_char): advance offset before get next char
10682           length.  [ruby-dev:33211]
10684 Sun Jan 20 20:00:20 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10686         * transcode.c, enc/trans/utf_16_32.c, test/ruby/test_transcode.rb:
10687           added UTF-16LE conversions.
10689         * fixed changelog for last commit
10691 Sun Jan 20 17:54:00 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10693         * added changelog for last commit
10695 Sun Jan 20 15:08:08 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10697         * enc/trans/utf_16_32.c: new file, currently implementing
10698           UTF-16BE conversions only.
10700         * test/ruby/test_transcode.rb: Added tests for UTF-16BE;
10701           made check_both_ways() use force_encoding differently.
10703         * transcode_data.h, transcode.c: Support for more conversion
10704           functions.
10706 Sun Jan 20 13:06:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10708         * string.c (rb_str_each_char): performance improvement, and stop if
10709           shortened in the block.  [ruby-dev:33189]
10711 Sun Jan 20 09:12:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10713         * common.mk: use -Ks when read insns.def. [ruby-dev#33185]
10715         * parse.y: fix -e and stdin strings aren't set encoding.
10717 Sun Jan 20 05:12:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10719         * enc/make_encdb.rb: fix duplication check.
10721 Sun Jan 20 05:03:46 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10723         * ascii.c: remove definition of replica KOI8-U.
10725 Sun Jan 20 00:33:59 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10727         * enc/koi8_u.c: added.
10729         * regenc.c, enc/utf_8.c, enc/unicode.c, enc/gb18030.c: add ARG_UNUSED.
10731 Sat Jan 19 22:41:39 2008  Tanaka Akira  <akr@fsij.org>
10733         * string.c (coderange_scan): don't call mbclen functions for ASCII
10734           characters with ASCII compatible encoding.
10736 Sat Jan 19 21:00:34 2008  Tanaka Akira  <akr@fsij.org>
10738         * lib/rdoc/template.rb (RDoc): defined to avoid uninitialized constant
10739           error by `./ruby test/rubygems/test_gem_server.rb'.
10741 Sat Jan 19 20:41:29 2008  Tanaka Akira  <akr@fsij.org>
10743         * encoding.c (enc_new): don't free rb_encoding to avoid SEGV by
10744           `miniruby -e exit' on x86_64 GNU/Linux.
10746 Sat Jan 19 18:40:19 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10748         * lib/date.rb (once): use an instance variable which points a hash
10749           as cache. [experimental]
10751 Sat Jan 19 17:21:29 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10753         * lib/date.rb, lib/date/format.rb: parse's hints as an
10754           experimental function has been removed.
10756 Sat Jan 19 11:21:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10758         * configure.in (sigsetjmp): check if available.
10760         * eval.c, gc.c (setjmp): do not use _setjmp if sigsetjmp is available.
10762 Sat Jan 19 11:10:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10764         * configure.in: Remove wrong assumptions about Cygwin.  a patch from
10765           Corinna Vinschen in [ruby-Bugs-17018].
10767 Sat Jan 19 09:23:14 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
10769         * ext/win32ole/win32ole.c (ole_set_safe_array): should not use
10770           recursive calling.
10772         * test/win32ole/test_win32ole_variant.rb: ditto.
10774 Sat Jan 19 08:58:47 2008  Eric Hodel  <drbrain@segment7.net>
10776         * lib/rdoc/markup: Remove ListBase and Line constants.
10778         * lib/rdoc/ri: Allow output IO to be specified.
10780         * test/rdoc/parser/test_parse_c.rb: Move up one level, fixed.
10782         * test/rdoc/parser/test_rdoc_markup_attribute_manager.rb: Renamed to
10783           match new class name, updated to match new classes.
10785         * test/rdoc/test_rdoc_ri_formatter.rb: Start of RI formatting tests.
10787         * test/rdoc/test_rdoc_ri_attribute_manager.rb: Start of
10788           RDoc::RI::AttributeManager tests.
10790         * test/rdoc/test_simple_markup.rb: Moved to match new class name.
10792 Sat Jan 19 08:35:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10794         * parse.y (parser_prepare): get encoding from the first line.
10795           [ruby-dev:33168]
10797         * ruby.c (load_file): set encoding to input with set_encoding.
10799 Sat Jan 19 03:46:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10801         * thread.c (thread_create_core): prohibit thread creation in the
10802           frozen thread group.  a patch in [ruby-dev:33176] from sheepman
10803           <sheepman AT sheepman.sakura.ne.jp>.
10805         * thread.c (thread_create_core): should inherit ThreadGroup from
10806           the current thread.
10808 Sat Jan 19 00:37:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10810         * sprintf.c (rb_str_format): set result encoding for wider width.
10812 Sat Jan 19 00:13:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10814         * thread_win32.c (w32_wait_events): shouldn't invoke interrupt handle
10815           by timer_thread.
10817 Fri Jan 18 23:49:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10819         * thread.c (thread_create_core): set thread group before creating
10820           thread.
10822 Fri Jan 18 20:19:51 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10824         * parse.y (ripper_initialize): too early to set parser->enc.
10826 Fri Jan 18 20:03:05 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10828         * win32/setup.mak (BASERUBY): nmake cannot execute ruby correctly
10829           if the path of ruby.exe is quoted.
10831         * win32/setup.mak ($(ARCH)): if a macro is appended by $(APPEND),
10832           a space will be inserted on the top of the line.
10834 Fri Jan 18 17:56:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10836         * eval_intern.h, insnhelper.h, thread_pthread.h, vm_core.h, vm_opts.h:
10837           prefixed include guards with RUBY.
10839         * id.h: added include guard.
10841         * regenc.h, regint.h, regparse.h: prefixed include guards with
10842           ONIGURUMA.
10844 Fri Jan 18 15:57:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10846         * thread.c (thread_cleanup_func): ignore errors from destroying mutex
10847           of dead thread.  [ruby-core:15069]
10849         * thread_pthread.c, thread_win32.c (native_thread_destroy): ditto.
10851 Fri Jan 18 15:56:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10853         * encoding.c (rb_enc_name_list_i, rb_enc_aliases_enc_i): freeze
10854           element strings to be returned.
10856 Fri Jan 18 14:36:34 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
10858         * test/ruby/test_m17n.rb (test_str_dump): added test for
10859           String#dump. [ruby-dev:33142]
10861 Fri Jan 18 12:25:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10863         * encoding.c (load_encoding): check if successfully loaded.
10865         * encoding.c (rb_enc_find_index): use original encoding name to
10866           replicate loaded encoding instead alias.
10868 Fri Jan 18 09:43:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10870         * re.c (rb_char_to_option_kcode): Regexp switch `s' should mean
10871           Windows-31J, as wells as `-Ks'.
10873 Fri Jan 18 09:22:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10875         * parse.y (parser_initialize): explicitly call rb_ascii8bit_encoding().
10877         * parse.y (parser_prepare): lex_input may not be have encoding (e.g. IO).
10879         * parse.y (rb_parser_compile_string): set encoding from input string.
10881         * encoding.c (rb_enc_find_index): use ASCII-8BIT if loading known
10882           encoding failed.
10884         * parse.y (ripper_initialize): move parser->enc initialization.
10886         * encoding.c (rb_enc_aliases_enc_i): exclude non alias names from
10887           Encoding.aliases.
10889         * encoding.c (rb_enc_find_index): use original encoding name to
10890           load DLL.
10892 Fri Jan 18 07:06:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10894         * io.c (Init_IO): stdin/stdout may not be duplex.
10896 Fri Jan 18 04:27:57 2008  Eric Hodel  <drbrain@segment7.net>
10898         * sample/rdoc/markup/rdoc2latex.rb:  Fix for new namespacing.
10900         * lib/rdoc/markup/to_latex.rb:  Fix namespacing.
10902 Fri Jan 18 02:02:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10904         * bootstraptest/runner.rb (assert_valid_syntax): added.
10906         * bootstraptest/test_knownbug.rb: added test for [ruby-list:44479]
10908 Fri Jan 18 01:48:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10910         * vm_insnhelper.c (vm_call_method): check argument number to
10911           attr_reader.  [ruby-core:15120]
10913 Fri Jan 18 00:49:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10915         * io.c (rb_io_check_readable): flush tied write IO too.
10917         * io.c (Init_IO): tie stdin with stdout.  [ruby-core:15107]
10919 Fri Jan 18 00:23:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10921         * encoding.c (enc_free): removed since rb_encoding may be used while
10922           cleanup.
10924 Fri Jan 18 00:17:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10926         * enc/euc_cn.c: split from enc/euc_kr.c.
10928 Fri Jan 18 00:03:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10930         * ext/stringio/stringio.c (strio_init): use default external encoding
10931           if nothing is given.  a patch from sheepman <sheepman AT
10932           sheepman.sakura.ne.jp> in [ruby-dev:33159].
10934 Thu Jan 17 23:56:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10936         * common.mk (encdb.h): give output file name to make_encdb.rb.
10938         * encoding.c (enc_table): simplified.
10940         * encoding.c (enc_register_at): lazy loading.  [ruby-dev:33013]
10942         * regenc.h (ENC_DUMMY): added.
10944         * enc/make_encdb.rb: now emits macros only.
10946         * enc/iso_2022_jp.h: split from encoding.c.
10948 Thu Jan 17 21:48:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10950         * re.c (rb_char_to_option_kcode): fixed typo.
10952 Thu Jan 17 21:01:25 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10954         * lib/date.rb (Date::Infinity#<=>): didn't work.  A patch from
10955           Dirkjan Bussink <d.bussink AT gmail.com> [ruby-core:15098].
10956           This is a bug obviously.  However it didn't affect the library's
10957           functions.
10959         * lib/date.rb, lib/date/format.rb: some trivial changes.
10961 Thu Jan 17 13:07:18 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10963         * string.c (rb_str_dump): preserve the encoding of source string
10964           if it is ASCII compatible.  otherwise, add '.force_encoding()'
10965           for ugly work around.  maybe we should implement some other way
10966           to keep non ASCII encoding in dumped string.  [ruby-dev:33142]
10968 Thu Jan 17 10:30:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10970         * io.c (io_fwrite): always flush IO on tty, even without newlines.
10971           [ruby-core:15107]
10973 Wed Jan 16 22:45:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10975         * encoding.c (enc_register_at): make own copy.  [ruby-dev:33136]
10977 Wed Jan 16 18:03:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10979         * io.c (pipe_open, rb_io_s_popen): clear temporary object to release
10980           and prevent from GC.
10982 Wed Jan 16 17:55:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10984         * numeric.c (fix_quo): typo. a patch from Shin-ichiro HARA
10985           <sinara AT blade.nagaokaut.ac.jp> in [ruby-dev:33130]
10987 Wed Jan 16 17:36:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10989         * test/test_delegate.rb: add new test file for delegate.rb.
10991 Wed Jan 16 16:14:00 2008  Akinori MUSHA  <knu@iDaemons.org>
10993         * ruby.1: Fix grammar.
10995 Wed Jan 16 15:26:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10997         * file.c (sys_fail2): get rid of unlimited alloca.
10999         * io.c (mode_enc, pipe_open, rb_io_s_popen): ditto.
11001         * load.c (rb_feature_p): ditto.
11003         * object.c (rb_cstr_to_dbl): ditto.
11005         * io.c (mode_enc): fixed uninitialized variable.
11007 Wed Jan 16 12:51:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11009         * include/ruby/intern.h (rb_str_tmp_new, rb_str_shared_replace):
11010           prototype moved.
11012 Tue Jan 15 23:52:51 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11014         * enc/*: add ARG_UNUSED.
11016         * enc/koi8_u.c: added.
11018 Tue Jan 15 23:00:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11020         * enc/utf_{16,32}{be,le}.c: remove some ARG_UNUSED.  replace struct
11021           OnigEncodingST by OnigEncoding.
11023 Tue Jan 15 22:30:43 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11025         * encoding.c (ENC_REGISTER): use &OnigEncoding*.
11026           (ENCINDEX_UTF_8): renamed from ENCINDEX_UTF8.
11027           (rb_enc_init): use ENC_REGISTER.
11029         * include/ruby/oniguruma.h (OnigEncodingUTF8, ONIG_ENCODING_UTF8):
11030           removed.
11032         * enc/*.c: remove use of &encoding_*; use enc argument instead.
11034 Tue Jan 15 18:44:46 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11036         * enc/utf_8.c: remove use of ONIG_ENCODING_UTF8 altogether; use
11037           enc argument instead.
11039 Tue Jan 15 18:05:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11041         * enc/utf_8.c (ONIG_ENCODING_UTF8): reverted.
11043 Tue Jan 15 18:01:55 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11045         * win32/Makefile.sub (MKFILES): add dependencies.
11047 Tue Jan 15 18:00:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11049         * enc/utf_8.c (OnigEncodingDefine): encoding name should be kept
11050           unchanged.
11052 Tue Jan 15 17:53:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11054         * enc/utf_8.c: renamed as IANA name.
11056         * enc/Makefile.in: ditto.
11058 Tue Jan 15 16:59:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11060         * ruby.c (proc_options): encoding libraries cannot be loaded until
11061           load path is set.
11063 Tue Jan 15 15:09:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11065         * win32/setup.mak: strip out empty lines from CPP output.
11067 Tue Jan 15 14:57:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11069         * {win,bcc}32/setup.mak (-basic-vars-): expand BASERUBY to full path
11070           to get rid of ./ruby.exe.
11072         * win32/enc-setup.mak: workaround for Borland make.
11074 Tue Jan 15 14:44:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11076         * encoding.c (rb_locale_charmap): use ASCII-8BIT in miniruby.
11078 Tue Jan 15 13:54:41 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11080         * {bcc32,win32}/Makefile.sub (RUNRUBY): need to set archdir when
11081           invoking ruby.
11083 Tue Jan 15 13:43:18 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11085         * common.mk (us_ascii.o): add dependencies. [ruby-dev:33111]
11087 Tue Jan 15 03:41:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11089         * eval.c (eval): check if backtrace is empty.  [ruby-core:15040]
11091 Tue Jan 15 01:28:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11093         * common.mk: simplified dummy objects dependencies.
11095 Tue Jan 15 01:19:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11097         * common.mk (OBJS): moved encoding.o from COMMONOBJS.
11099         * common.mk (dmyencoding.o): added.  [ruby-dev:33099]
11101         * configure.in, {win,bcc}32/Makefile.sub (MINIOBJS): added
11102           dmyencoding.o.
11104         * dmyencoding.c (rb_locale_charmap): returns nil for miniruby.
11106 Tue Jan 15 00:05:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11108         * io.c (appendline): specifying limit should not generate broken
11109           byte sequence.  strings should be rounded.  [ruby-dev:33088]
11111 Mon Jan 14 23:33:02 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11113         * ext/nkf/lib/kconv.rb (Kconv.tolocale): argument is str.
11115 Mon Jan 14 23:31:05 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11117         * configure.in (setup): add -I$(EXTOUT)/$(arch) to MINIRUBY.
11119         * bootstraptest/runner.rb (main): expand -I directory path.
11121 Mon Jan 14 23:28:10 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11123         * win32/enc-setup.mak (BUILTIN_ENCOBJS): depends on enc/Makefile.in.
11125 Mon Jan 14 22:48:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11127         * re.c (rb_char_to_option_kcode): use rb_enc_find_index() instead
11128           of using fixed index value.
11130         * enc/Makefile.in (encsrcdir): make US-ASCII built-in.
11132 Mon Jan 14 22:25:02 2008  WATANABE Hirofumi  <eban@ruby-lang.org>
11134         * golf_prelude.rb: Shorter method name completion.  Same method
11135           used for const missing. do_while and do_until added.  Enumerator
11136           gains all of Array's abilities. Ex:
11137             '123'.m{|i|i*2} #=> "112233"
11138             '123'.pe #=> '123'.perm*' ' #=> "123 132 213 231 312 321"
11139           base on a patch from Darren Smith <darrenks AT ml1.net>.
11141 Mon Jan 14 21:10:02 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11143         * enc/us_ascii.c: wrong alias name: ANSI_X3.4-1986.
11145         * rubytest.rb: add -I#{srcdir} to load encoding DLL.
11147 Mon Jan 14 18:53:58 2008  Koichi Sasada  <ko1@atdot.net>
11149         * thread.c: clear thread structure.
11150           (TODO: survey that child process should clear mutex or not).
11152         * bootstraptest/test_knownbug.rb, test_thread.rb: move a fixed test.
11154 Mon Jan 14 18:43:38 2008  Koichi Sasada  <ko1@atdot.net>
11156         * bootstraptest/runner.rb: add "flunk" method.
11158         * bootstraptest/test_knownbug.rb: fix to use flunk.
11160 Mon Jan 14 18:10:59 2008  Koichi Sasada  <ko1@atdot.net>
11162         * vm.h: remove dangerous assembler sentence.
11164 Mon Jan 14 18:06:37 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11166         * encoding.c (rb_locale_encoding): return US-ASCII when charmap is
11167           nil.
11169 Mon Jan 14 16:12:58 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11171         * lib/shellwords.rb: scape should be an alias to shellescape.  a
11172           patch from Masahiro Kawato <m-kawato AT mwb.biglobe.ne.jp> in
11173           [ruby-dev:33060].
11175 Mon Jan 14 16:09:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11177         * ruby.1: a patch to describe --encoding.  a patch from Yugui
11178           <yugui AT yugui.sakura.ne.jp> in [ruby-dev:33079].
11180         * ruby.c: ditto.
11182 Mon Jan 14 13:49:26 2008  Tanaka Akira  <akr@fsij.org>
11184         * re.c (rb_reg_prepare_re): initialize error message buffer.
11185           (rb_reg_search): ditto.
11186           (rb_reg_check_preprocess): ditto.
11187           (rb_reg_new_str): ditto.
11188           (rb_enc_reg_new): ditto.
11189           (rb_reg_compile): ditto.
11190           (rb_reg_initialize_m): ditto.
11191           (rb_reg_s_union_m): ditto.
11193 Mon Jan 14 12:33:07 2008  Eric Hodel  <drbrain@segment7.net>
11195         * lib/rdoc/markup*:  Renamespace from SM::SimpleMarkup to
11196           RDoc::Markup.
11198 Mon Jan 14 10:45:45 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
11200         * enc/ascii.c: Exchanged order of arguments for one ENC_ALIAS
11202 Mon Jan 14 09:19:07 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11204         * lib/time.rb: do not reference Time directly from the inside of
11205           definitions. [ruby-dev:33059]
11207 Mon Jan 14 05:44:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11209         * enc/*.c: add replicas and aliases.
11211         * enc/make_encdb.h: add duplicate and undefined check.
11213 Mon Jan 14 02:03:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11215         * include/ruby/oniguruma.h: remove ONIG_ENCODING_* and OnigEncoding*
11216           which are not builtin.
11218         * regenc.{c,h} (onigenc_mb2_code_to_mbclen, onigenc_mb4_code_to_mbclen):
11219           fix prototype.
11221         * enc/big5.c, enc/euc_kr.c, enc/euc_tw.c, enc/gb18030.c,
11222           enc/koi8_r.c, enc/windows_1251.c: imported from Oniguruma.
11224 Sun Jan 13 22:47:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11226         * enc/make_encdb.h: sort encoding names by original name.
11228         * encoding.c, enc/*.c: define replicas and aliases.
11230 Sun Jan 13 20:24:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11232         * encoding.c: add documents.
11234 Sun Jan 13 18:41:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11236         * encoding.c (Init_Encoding): moved initialization from encdb.h.
11238         * enc/make_encdb.rb (enc_name_list): constified.
11240         * enc/make_encdb.rb (enc_init_db): moved some functions to encoding.c.
11242 Sun Jan 13 13:53:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11244         * ruby.c (load_file): local variable was not initialized when -x flag
11245           is given.
11247         * ruby.c (load_file): script files should not be affected by locale.
11248           [ruby-dev:33054]
11250 Sun Jan 13 12:01:32 2008  Eric Hodel  <drbrain@segment7.net>
11252         * lib/rdoc/generators*: Reorganize RDoc generators.
11254 Sun Jan 13 11:41:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11256         * encoding.c (ENCINDEX_EUC_JP, ENCINDEX_SJIS): removed.
11257           (rb_enc_init): EUC-JP and Shift_JIS are not builtin now.
11259         * enc/Makefile.in: ditto.
11261         * common.mk: ditto.
11263         * ruby.c (proc_options): ditto.
11265         * enc/shift_jis.c, enc/euc_jp.c: fixes for remove from builtin.
11267 Sun Jan 13 10:21:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11269         * encoding.c (enc_table): packed all enc_table stuff.
11271 Sun Jan 13 09:58:17 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11273         * encoding.c (rb_enc_init): revert removing SJIS.
11275         * enc/sjis.c: move to enc/shift_jis.c, to make encoding name equal to
11276           filename for convenience of loading lib.
11278         * enc/shift_jis.c: moved from enc/sjis.c.
11280         * common.mk: follows enc/shift_jis.c.
11282         * enc/Makefile.in: ditto.
11284 Sun Jan 13 09:22:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11286         * common.mk (incs): includes encdb.h.
11288 Sun Jan 13 09:17:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11290         * {bcc,win}32/Makefile.sub (MV): use move instead of ren.  [ruby-Bugs-17019]
11292 Sun Jan 13 01:52:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11294         * enc/make_encdb.rb: should work on Ruby 1.8.  [ruby-dev:33069]
11296         * common.mk (encdb.h): pass enc dir from outside to make_encdb.rb.
11298 Sun Jan 13 00:01:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11300         * enc/make_encdb.rb: added. search enc/*.c and make encoding database.
11302         * regenc.h (ENC_REPLICATE, ENC_ALIAS): added for defining replica
11303           encoding and encoding alias.
11305         * encoding.c (rb_enc_init): move alias definitions to enc/*.c.
11306           (rb_enc_find_index): search original of replica and alias when no
11307           encoding library.
11308           (rb_enc_name_list, rb_enc_aliases_enc_i, rb_enc_aliases_str_i,
11309            rb_enc_aliases, Encoding.name_list, Encoding.aliases): added.
11310           (Init_Encoding): init encdb.
11312         * enc/ascii.c, enc/us_ascii.c, enc/euc_jp.c, enc/sjis.c:
11313           add replica encoding and encoding alias definition.
11315         * common.mk (dist-clean-local): add rule for remove encdb.h.
11317 Sat Jan 12 18:27:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11319         * eval.c (rb_define_alloc_func, rb_undef_alloc_func): should
11320           define/undef on a singleton class.  [ruby-core:09959]
11322 Sat Jan 12 12:44:36 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11324         * ext/nkf/nkf.c: rdoc update.
11326 Sat Jan 12 12:01:49 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11328         * lib/date.rb, lib/date/format.rb: tuning for performance.
11330 Sat Jan 12 11:29:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11332         * bootstraptest/test_proc.rb: fixed wrong expected result.  pointed
11333           out by Kornelius "murphy" Kalnbach <murphy AT rubychan.de> in
11334           [ruby-core:15022].
11336 Sat Jan 12 04:38:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11338         * ruby.c (process_options): -e'script' is locale encoding by default.
11339           (load_file): ruby script from stdin is locale encoding by default.
11341 Sat Jan 12 04:31:59 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11343         * ext/nkf/nkf-utf8/nkf.c: fix bug: -m was -m0.
11345 Fri Jan 11 23:22:31 2008  Tanaka Akira  <akr@fsij.org>
11347         * string.c (string.c): call rb_str_buf_append to update encoding of
11348           str1, even if str2 is empty.
11350 Fri Jan 11 20:20:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11352         * proc.c (proc_mark): needs to mark the receiver too.  a patch from
11353           Chris Heath <chris AT heathens.co.nz> in [ruby-core:14983].
11354           [ruby-core:14885]
11356 Fri Jan 11 18:28:49 2008  Eric Hodel  <drbrain@segment7.net>
11358         * lib/rdoc/usage.rb: Removed.
11360         * lib/getoptlong.rb: Update example to not use lib/rdoc/usage.rb.
11362 Fri Jan 11 18:17:10 2008  Eric Hodel  <drbrain@segment7.net>
11364         * lib/rdoc/ri/driver.rb (read_yaml): Follow namespace change
11365           [ruby-core:14964].
11367 Fri Jan 11 16:55:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11369         * string.c (rb_str_append): performance improvement.
11371 Fri Jan 11 12:35:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11373         * configure.in: moved broken syscall checks from process.c etc.
11375         * defines.h (WORDS_BIGENDIAN): honor __BIG_ENDIAN__ than the result of
11376           configure.
11378         * lib/rdoc/options.rb (check_diagram): more precise check, darwin
11379           is not Windows but mingw is on it.
11381 Fri Jan 11 09:59:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11383         * ext/nkf/nkf-utf8/nkf.c: update to r1.163.
11385         * ext/nkf/nkf.c: ASCII's canonical name is US-ASCII.
11387         * ext/nkf/lib/kconv.rb (Kconv.isjis): force_encoding('BINARY').
11389 Fri Jan 11 09:23:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11391         * encoding.c (set_base_encoding): must use rb_enc_dummy_p.
11393 Fri Jan 11 06:13:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11395         * encoding.c (rb_to_encoding_index, rb_to_encoding): disallow nil.
11396           [ruby-dev:33003]
11398 Fri Jan 11 01:08:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11400         * thread.c (rb_mutex_unlock): proper error message for unlocking
11401           mutex that is not locked.  a patch from Yusuke ENDOH
11402           <mame at tsg.ne.jp> in [ruby-dev:33010].
11404 Thu Jan 10 18:00:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11406         * prelude.rb (Mutex::synchronize): capture exception from unlock.
11407           [ruby-dev:32935]
11409 Thu Jan 10 10:15:03 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11411         * io.c (io_encoding_set): IO.pipe("euc-jp", nil) should work as
11412           IO.pipe("euc-jp", nil).  [ruby-dev:33000]
11414         * io.c (io_encoding_set): handle nil for v1.
11416 Thu Jan 10 02:41:22 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11418         * io.c (rb_io_binmode): should not alter encoding.  [ruby-dev:32918]
11420         * io.c (io_read_encoding): need not to return ASCII-8BIT for
11421           binary IO.
11423 Wed Jan  9 22:04:17 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
11425         * lib/mathn.rb (Prime#each): returns an enumerator if no block
11426           given. [ruby-dev:32815]
11428 Wed Jan  9 22:03:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11430         * encoding.c (rb_enc_replicate): replica of dummy is a dummy.
11432 Wed Jan  9 20:55:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11434         * lib/e2mmap.rb (Exception2MessageMapper::Raise): define fail.
11435           [ruby-dev:32854]
11437 Wed Jan  9 20:35:42 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
11439         * lib/webrick/httprequest.rb: support X-Forwarded-* header fields.
11440           WEBrick::HTTPRequest#{host,port,request_uri} is derived having
11441           regards to X-Forwarded-Proto and X-Forwarded-Host.
11443         * lib/webrick/httprequest.rb
11444           (WEBrick::HTTPRequest#server_name?): new method.
11445           (WEBrick::HTTPRequest#remote_ip?): new method.
11446           (WEBrick::HTTPRequest#ssl?): new method.
11448 Wed Jan  9 18:24:39 2008  WATANABE Hirofumi  <eban@ruby-lang.org>
11450         * golf_prelude.rb (Array#to_s): alias to join.
11452         * golf_prelude.rb (FalseClass#to_s): return "".
11454 Wed Jan  9 16:59:54 2008  Tanaka Akira  <akr@fsij.org>
11456         * string.c (rb_enc_cr_str_buf_cat): fix self appending.
11458 Wed Jan  9 15:54:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11460         * ruby.c (process_options): give priority command line encoding option
11461           to RUBYOPT, and enable -E option in RUBYOPT.
11463         * ruby.c (load_file): deal with encoding option in shebang line if
11464           nothing in command line and RUBYOPT.
11466 Wed Jan  9 14:55:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11468         * parse.y (yycompile0): remove setting parser->enc because it is set
11469           in parser_prepare() by previous change of parser_prepare().
11471 Wed Jan  9 14:52:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11473         * string.c (rb_enc_cr_str_buf_cat, rb_str_buf_append): deal with self
11474           appending.
11476 Wed Jan  9 14:44:57 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11478         * parse.y (parser_prepare): set parser->enc from lex_input for ripper.
11480 Wed Jan  9 13:45:52 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
11482         * lib/webrick/server.rb (WEBrick::HTTPServer#start):
11483           :DoNotReverseLookup option had not been performed.
11485 Wed Jan  9 13:03:34 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11487         * string.c (rb_enc_cr_str_buf_cat): do not recalculate coderange
11488           value if it's given from outside.
11490 Wed Jan  9 08:42:01 2008  James Edward Gray II  <jeg2@ruby-lang.org>
11492         * enum.c:  Updating the documentation of Enumerable#zip to reflect
11493           the recent changes Matz made to the method.
11495 Wed Jan  9 01:35:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11497         * enc/Makefile.in (BUILTIN_ENCS): UTF-{16,32}{BE,LE} are not builtin.
11499 Tue Jan  8 23:55:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11501         * encoding.c (rb_enc_init): UTF-{16,32}{BE,LE} are not builtin.
11503 Tue Jan  8 22:33:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11505         * encoding.c, Makefile.in, include/ruby/oniguruma.h,
11506           enc/Makefile.in: fix rules for UTF-{16,32}{BE,LE}.
11508 Tue Jan  8 20:02:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11510         * win{32,ce}/Makefile.sub: merged.
11512 Tue Jan  8 19:48:15 2008  Eric Hodel  <drbrain@segment7.net>
11514         * lib/rdoc/ri/driver.rb: Speed up Marshal.load. Fix bug with nested
11515           classes' methods.
11517 Tue Jan  8 19:17:29 2008  Eric Hodel  <drbrain@segment7.net>
11519         * lib/rdoc/*: Clean up namespacing of RI's classes.
11521 Tue Jan  8 18:05:35 2008  Eric Hodel  <drbrain@segment7.net>
11523         * bin/ri, lib/rdoc/ri/*: Replace with Ryan Davis' cached ri.
11525 Tue Jan  8 17:32:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11527         * enum.c (enum_zip): honor length of the receiver, not the
11528           shortest length.  [ruby-core:14738]
11530         * enum.c (enum_zip): returns array not enumerator for no block
11531           form.  [ruby-core:14738]
11533         * enumerator.c (next_ii): do not ignore multiple values yielded.
11535         * array.c (rb_ary_zip): faster version without creating generators.
11537 Tue Jan  8 15:47:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11539         * enc/utf{16,32}_{be,le}.c: use &OnigEncodingName(*) instead of
11540           ONIG_ENCODING_*.
11542 Tue Jan  8 15:40:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11544         * regenc.c (onigenc_strlen_null, onigenc_str_bytelen_null): suppressed
11545           warnings.
11547         * regenc.h, enc/unicode.c (onigenc_unicode_ctype_code_range): added
11548           encoding argument.
11550         * enc/utf{16,32}_{be,le}.c: added init functions.
11552         * enc/utf{16,32}_{be,le}.c: imported from Oniguruma 5.9.1.
11554 Tue Jan  8 15:03:10 2008  Tanaka Akira  <akr@fsij.org>
11556         * string.c (str_gsub): avoid appending empty pre-match substr.
11558 Tue Jan  8 13:05:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11560         * compile.c (iseq_build_from_ary), iseq.c (iseq_load): fix for format change.
11562 Tue Jan  8 07:56:11 2008  Tanaka Akira  <akr@fsij.org>
11564         * string.c (rb_str_buf_append): fix append itself.
11566 Tue Jan  8 01:13:50 2008  Tanaka Akira  <akr@fsij.org>
11568         * string.c (STR_ENC_GET): defined.  same as rb_enc_get without
11569           enc_capable.
11570           (coderange_scan): ASCII-8BIT test refined.
11571           (rb_enc_cr_str_buf_cat): new internal function to accumulate
11572           strings with encoding.
11573           (rb_enc_str_buf_cat): use rb_enc_cr_str_buf_cat.
11574           (rb_str_buf_append): ditto
11575           (str_gsub): use rb_str_buf_append.
11576           (rb_str_hash): use ENCODING_GET.
11577           (rb_str_comparable): ditto.
11578           (rb_str_cmp): compare encoding index, not rb_encoding address.
11580 Mon Jan  7 20:37:55 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
11582         * lib/webrick/httpservlet/cgihandler.rb: external encoding of
11583           tempfiles is set to "ASCII-8BIT".
11585 Mon Jan  7 19:39:50 2008  Eric Hodel  <drbrain@segment7.net>
11587         * lib/rdoc/template.rb:  Use ERB instead of custom template language.
11589         * lib/rdoc/generators/template/html/old_html.rb:  Remove.
11591         * lib/rdoc/generators/template/*: Convert to ERB.
11593 Mon Jan  7 19:11:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11595         * string.c (Init_String): sym_match arity spec was wrong.  a patch
11596           from Hiroyuki Iwatsuki <don at na.rim.or.jp> in [ruby-dev:32957].
11598 Mon Jan  7 18:10:33 2008  Tanaka Akira  <akr@fsij.org>
11600         * string.c (str_gsub): move rb_enc_get(str) to out of loop.
11602 Mon Jan  7 15:52:10 2008  Tanaka Akira  <akr@fsij.org>
11604         * include/ruby/oniguruma.h (OnigEncodingType): new member
11605           ruby_encoding_index to avoid linear search in rb_enc_to_index.
11607         * include/ruby/encoding.h (rb_enc_to_index): macro defined to use
11608           ruby_encoding_index.
11610         * encoding.c (rb_enc_to_index): removed.
11611           (enc_register_at): initialize ruby_encoding_index member.
11613 Mon Jan  7 16:10:35 2008  Eric Hodel  <drbrain@segment7.net>
11615         * lib/rdoc/tokenstream.rb:  Namespace under RDoc.
11617 Mon Jan  7 16:06:09 2008  Eric Hodel  <drbrain@segment7.net>
11619         * lib/rdoc/dot.rb:  Namespace under RDoc.
11621         * lib/rdoc/diagram.rb:  Clean up formatting.
11623 Mon Jan  7 15:51:35 2008  Eric Hodel  <drbrain@segment7.net>
11625         * lib/rdoc/options.rb:  Convert to OptionParser, clean up -h output,
11626           namespace under RDoc.
11627         * lib/rdoc/*:  Namespace RDoc::Options.
11629 Mon Jan  7 15:42:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11631         * common.mk, Makefile.in, */Makefile.sub (distclean-local): move
11632           removing rule of ext/ripper/y.output from common.mk to Makefiles
11633           that depend on platforms.
11635 Mon Jan  7 13:54:57 2008  Tanaka Akira  <akr@fsij.org>
11637         * re.c (rb_reg_preprocess): fix fixed_enc condition.
11639 Mon Jan  7 11:51:49 2008  Eric Hodel  <drbrain@segment7.net>
11641         * lib/rdoc/generators/ri_generator.rb:  Merge documentation from the
11642           same class on output.  Fixes bug where documentation could
11643           disappear.
11645         * lib/rdoc/options.rb:  Fix typo.
11647         * lib/rdoc/generators/*: Clean up some namespacing and make RDoc
11648           consistent.
11650 Mon Jan  7 11:44:45 2008  Tanaka Akira  <akr@fsij.org>
11652         * encoding.c (rb_enc_internal_get_index): extracted from
11653           rb_enc_get_index.
11654           (rb_enc_internal_set_index): extracted from rb_enc_associate_index
11656         * include/ruby/encoding.h (ENCODING_SET): work over ENCODING_INLINE_MAX.
11657           (ENCODING_GET): ditto.
11658           (ENCODING_IS_ASCII8BIT): defined.
11659           (ENCODING_CODERANGE_SET): defined.
11661         * re.c (rb_reg_fixed_encoding_p): use ENCODING_IS_ASCII8BIT.
11663         * string.c (rb_enc_str_buf_cat): use ENCODING_IS_ASCII8BIT.
11665         * parse.y (reg_fragment_setenc_gen): use ENCODING_IS_ASCII8BIT.
11667         * marshal.c (has_ivars): use ENCODING_IS_ASCII8BIT.
11669 Mon Jan  7 02:14:07 2008  Tanaka Akira  <akr@fsij.org>
11671         * string.c (coderange_scan): avoid rb_enc_to_index.
11672           (rb_enc_str_buf_cat): ditto.
11673           (str_cat_char): use rb_enc_str_buf_cat.
11674           (rb_str_inspect): ditto.
11676 Mon Jan  7 01:36:49 2008  Tanaka Akira  <akr@fsij.org>
11678         * string.c (coderange_scan): optimize ASCII-8BIT string.
11679           (rb_enc_str_buf_cat): don't call coderange_scan if possible.
11681 Mon Jan  7 01:05:45 2008  Tanaka Akira  <akr@fsij.org>
11683         * lib/erb.rb (ERB::Revision): cut off locale dependent string in Date
11684           keyword.
11686 Mon Jan  7 00:48:02 2008  Tanaka Akira  <akr@fsij.org>
11688         * Date keyword removed to avoid inclusion of locale dependent
11689           string.  [ruby-dev:32940]
11691 Sun Jan  6 21:14:12 2008  Tanaka Akira  <akr@fsij.org>
11693         * re.c (rb_reg_initialize_str): forbid raw non ASCII character
11694           for ASCII-8BIT regexp in non ASCII-8BIT script.
11696 Sun Jan  6 18:19:12 2008  Tanaka Akira  <akr@fsij.org>
11698         * include/ruby/encoding.h (rb_enc_str_buf_cat): declared.
11700         * string.c (coderange_scan): extracted from rb_enc_str_coderange.
11701           (rb_enc_str_coderange): use coderange_scan.
11702           (rb_str_shared_replace): copy encoding and coderange.
11703           (rb_enc_str_buf_cat): new function for linear complexity string
11704           accumulation with encoding.
11705           (rb_str_sub_bang): don't conflict substituted part and replacement.
11706           (str_gsub): use rb_enc_str_buf_cat.
11707           (rb_str_clear): clear coderange.
11709         * re.c (rb_reg_regsub): use rb_enc_str_buf_cat.
11711 Sun Jan  6 17:55:44 2008  Technorama Ltd.  <oss-ruby@technorama.net>
11713         * lib/securerandom.rb: Add Win32 support.
11715 Sun Jan  6 09:32:58 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11717         * lib/date.rb, lib/date/format.rb: introduced some constants
11718           (for internal use) and aliases (minute and second).
11720         * sample/cal.rb: trivial adjustments.
11722 Sun Jan  6 01:38:07 2008  Tanaka Akira  <akr@fsij.org>
11724         * re.c (rb_reg_initialize_str): /\x80/n is not an error even if script
11725           encoding is EUC-JP.
11727 Sun Jan  6 00:48:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11729         * lib/resolv.rb (Resolv::DNS#each_address): get A record and then AAAA
11730           record. [ruby-dev:32925]
11732 Sat Jan  5 21:48:03 2008  Tanaka Akira  <akr@fsij.org>
11734         * vm_insnhelper.c (vm_callee_setup_arg): it is not inlinable because
11735           alloca is used.
11737 Sat Jan  5 16:50:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11739         * string.c (rb_str_resize): copy if old data is not empty
11740           [ruby-core:14785]
11742 Sat Jan  5 13:04:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11744         * ruby.c (proc_options): no need for intermediate object.
11746 Sat Jan  5 11:48:19 2008  Tanaka Akira  <akr@fsij.org>
11748         * encoding.c (Init_Encoding): alias csWindows31J to Windows-31J.
11749           IE6 accepts csWindows31J but Windows-31J.
11751 Sat Jan  5 02:21:10 2008  Tanaka Akira  <akr@fsij.org>
11753         * include/ruby/ruby.h (rb_intern): memorize interned ID for constant
11754           string, using gcc's __builtin_constant_p and statement expression.
11756 Sat Jan  5 02:14:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11758         * string.c (trnext): should enable backslash escape.
11760 Sat Jan  5 01:50:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11762         * eval.c (Init_eval): move instance_eval and instance_exec to
11763           BasicObject.  [ruby-core:14747]
11765         * lib/delegate.rb: should preserve new methods in BasicObject.
11767 Sat Jan  5 01:46:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11769         * ruby.c (proc_options): update according to the last API revert.
11771 Sat Jan  5 01:30:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11773         * include/ruby/intern.h, re.c (rb_reg_new): keep interface same as
11774           1.8.  [ruby-core:14583]
11776         * include/ruby/intern.h, re.c (rb_reg_new_str): renamed, and defines
11777           HAVE_RB_REG_NEW_STR macro to tell if it is available.
11779         * include/ruby/encoding.h (rb_enc_reg_new): added.
11781         * insns.def (toregexp), marshal.c (r_object0): use rb_reg_new_str().
11783         * re.c (rb_reg_regcomp, rb_reg_s_union): ditto.
11785 Fri Jan  4 23:08:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11787         * time.c (time_arg): use converted object.  [ruby-core:14759]
11789 Fri Jan  4 16:24:58 2008  Tanaka Akira  <akr@fsij.org>
11791         * ext/digest/lib/digest/hmac.rb (Digest::HMAC#initialize): use
11792           String#bytesize to avoid test errors on EUC-JP environment.
11794 Fri Jan  4 14:00:50 2008  Tanaka Akira  <akr@fsij.org>
11796         * re.c (rb_reg_prepare_re): check string encoding.  Oniguruma doesn't
11797           support invalid encoding.
11799 Fri Jan  4 10:22:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11801         * re.c (rb_reg_search): avoid inner loop for reverse search.
11803         * regexec.c: unset USE_MATCH_RANGE_MUST_BE_INSIDE_OF_SPECIFIED_RANGE
11804           which is turned on since oniguruma 5.9.1.
11806 Fri Jan  4 02:53:31 2008  Tanaka Akira  <akr@fsij.org>
11808         * enc/euc_jp.c: remove eucjp_ prefix.  breakpoint can be specified as
11809           euc_jp.c:mbc_enc_len.  avoid needless conflict by merge.
11811         * enc/sjis.c: remove sjis_ prefix.
11813         * enc/utf8.c: remove utf8_ prefix.
11815         * enc/iso_8859_1.c: remove iso_8859_1_ prefix.
11817         * enc/iso_8859_2.c: remove iso_8859_2_ prefix.
11819         * enc/iso_8859_3.c: remove iso_8859_3_ prefix.
11821         * enc/iso_8859_4.c: remove iso_8859_4_ prefix.
11823         * enc/iso_8859_5.c: remove iso_8859_5_ prefix.
11825         * enc/iso_8859_6.c: remove iso_8859_6_ prefix.
11827         * enc/iso_8859_7.c: remove iso_8859_7_ prefix.
11829         * enc/iso_8859_8.c: remove iso_8859_8_ prefix.
11831         * enc/iso_8859_9.c: remove iso_8859_9_ prefix.
11833         * enc/iso_8859_10.c: remove iso_8859_10_ prefix.
11835         * enc/iso_8859_11.c: remove iso_8859_11_ prefix.
11837         * enc/iso_8859_13.c: remove iso_8859_13_ prefix.
11839         * enc/iso_8859_14.c: remove iso_8859_14_ prefix.
11841         * enc/iso_8859_15.c: remove iso_8859_15_ prefix.
11843         * enc/iso_8859_16.c: remove iso_8859_16_ prefix.
11845 Fri Jan  4 02:47:06 2008  Tanaka Akira  <akr@fsij.org>
11847         * re.c (rb_reg_search): iterate onig_match for reverse mode.
11849 Fri Jan  4 01:20:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11851         * win32.h: only VC6 needs extern "C++" for math.h.  [ruby-talk:285660]
11853 Fri Jan  4 00:54:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11855         * include/ruby/oniguruma.h: Oniguruma 5.9.1 merged.
11857 Fri Jan  4 00:20:47 2008  Tanaka Akira  <akr@fsij.org>
11859         * io.c (io_ungetc): move data in buffer if it is required to store the
11860           argument.
11862 Thu Jan  3 21:56:07 2008  Tanaka Akira  <akr@fsij.org>
11864         * include/ruby/ruby.h (st_strcasecmp): declared for STRCASECMP.
11865           (st_strncasecmp): declared for STRNCASECMP.
11867 Thu Jan  3 20:24:48 2008  Koichi Sasada  <ko1@atdot.net>
11869         * eval_jump.c (rb_f_catch): Restore cfp if caught thrown object.
11871 Thu Jan  3 19:45:57 2008  Koichi Sasada  <ko1@atdot.net>
11873         * bootstraptest/test_eval.rb, test_knownbug.rb: move a fixed test.
11875 Thu Jan  3 18:39:12 2008  Tanaka Akira  <akr@fsij.org>
11877         * encoding.c: (rb_tolower, rb_toupper): body was exchanged.
11879 Thu Jan  3 17:54:01 2008  Tanaka Akira  <akr@fsij.org>
11881         * regenc.h (onigenc_ascii_is_code_ctype): put back.
11883 Thu Jan  3 17:33:09 2008  Tanaka Akira  <akr@fsij.org>
11885         * encoding.c (rb_isalnum): defined.
11886           (rb_isalpha): ditto.
11887           (rb_isblank): ditto.
11888           (rb_iscntrl): ditto.
11889           (rb_isdigit): ditto.
11890           (rb_isgraph): ditto.
11891           (rb_islower): ditto.
11892           (rb_isprint): ditto.
11893           (rb_ispunct): ditto.
11894           (rb_isspace): ditto.
11895           (rb_isupper): ditto.
11896           (rb_isxdigit): ditto.
11897           (rb_tolower): ditto.
11898           (rb_toupper): ditto.
11900         * include/ruby/ruby.h: don't include include/ruby/encoding.h.
11901           (rb_isascii): defined.
11902           (rb_isalnum): declared.
11903           (rb_isalpha): ditto.
11904           (rb_isblank): ditto.
11905           (rb_iscntrl): ditto.
11906           (rb_isdigit): ditto.
11907           (rb_isgraph): ditto.
11908           (rb_islower): ditto.
11909           (rb_isprint): ditto.
11910           (rb_ispunct): ditto.
11911           (rb_isspace): ditto.
11912           (rb_isupper): ditto.
11913           (rb_isxdigit): ditto.
11914           (rb_tolower): ditto.
11915           (rb_toupper): ditto.
11916           (ISASCII): simplified.
11917           (ISPRINT): ditto.
11918           (ISSPACE): ditto.
11919           (ISUPPER): ditto.
11920           (ISLOWER): ditto.
11921           (ISALNUM): ditto.
11922           (ISALPHA): ditto.
11923           (ISDIGIT): ditto.
11924           (ISXDIGIT): ditto.
11925           (TOUPPER): ditto.
11926           (TOLOWER): ditto.
11928         * include/ruby/encoding.h (rb_isascii): removed.
11929           (rb_isalnum): ditto.
11930           (rb_isalpha): ditto.
11931           (rb_isblank): ditto.
11932           (rb_iscntrl): ditto.
11933           (rb_isdigit): ditto.
11934           (rb_isgraph): ditto.
11935           (rb_islower): ditto.
11936           (rb_isprint): ditto.
11937           (rb_ispunct): ditto.
11938           (rb_isspace): ditto.
11939           (rb_isupper): ditto.
11940           (rb_isxdigit): ditto.
11941           (rb_tolower): ditto.
11942           (rb_toupper): ditto.
11944         * common.mk: dependency updated.
11946 Thu Jan  3 15:10:26 2008  Tanaka Akira  <akr@fsij.org>
11948         * include/ruby/encoding.h (rb_isascii): simplified.
11949           (rb_isalnum): call onigenc_ascii_is_code_ctype without indirect call.
11950           (rb_isalpha): ditto.
11951           (rb_isblank): ditto.
11952           (rb_iscntrl): ditto.
11953           (rb_isdigit): ditto.
11954           (rb_isgraph): ditto.
11955           (rb_islower): ditto.
11956           (rb_isprint): ditto.
11957           (rb_ispunct): ditto.
11958           (rb_isspace): ditto.
11959           (rb_isupper): ditto.
11960           (rb_isxdigit): ditto.
11962         * include/ruby/oniguruma.h (onigenc_ascii_is_code_ctype): declaration
11963           moved from regenc.h.
11965 Thu Jan  3 14:37:17 2008  Tanaka Akira  <akr@fsij.org>
11967         * parse.y (parser_magic_comment): use STRNCASECMP.
11968           (set_file_encoding): ditto.
11970 Thu Jan  3 11:44:37 2008  Tanaka Akira  <akr@fsij.org>
11972         * time.c: don't mention an obsolete library, ParseDate.
11974 Thu Jan  3 11:28:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11976         * io.c (fptr_finalize): clear errno first.  [ruby-talk:284492]
11978 Thu Jan  3 05:02:36 2008  Tanaka Akira  <akr@fsij.org>
11980         * enc/us_ascii.c: add us_ascii_ prefix for functions to ease
11981           setting breakpoint when debugging.
11983         * enc/euc_jp.c: add eucjp_ prefix.
11985         * enc/sjis.c: add sjis_ prefix.
11987         * enc/iso_8859_1.c: add iso_8859_1_ prefix.
11989         * enc/iso_8859_2.c: add iso_8859_2_ prefix.
11991         * enc/iso_8859_3.c: add iso_8859_3_ prefix.
11993         * enc/iso_8859_4.c: add iso_8859_4_ prefix.
11995         * enc/iso_8859_5.c: add iso_8859_5_ prefix.
11997         * enc/iso_8859_6.c: add iso_8859_6_ prefix.
11999         * enc/iso_8859_7.c: add iso_8859_7_ prefix.
12001 Thu Jan  3 02:44:34 2008  Tanaka Akira  <akr@fsij.org>
12003         * bignum.c (conv_digit): use ISDIGIT, ISLOWER and ISUPPER.
12005 Wed Jan  2 23:50:15 2008  Tanaka Akira  <akr@fsij.org>
12007         * util.c (ruby_strtoul): "0x", "+" and "-" is not a valid integer.
12008           end of integer should be just after "0", the beginning, the
12009           beginning respectively.
12011 Wed Jan  2 15:23:15 2008  Tanaka Akira  <akr@fsij.org>
12013         * util.c (ruby_strtoul): locale independent strtoul is implemented to
12014           avoid "i".to_i(36) cause 0 under tr_TR locale on Debian GNU/Linux
12015           4.0 (Etch).
12016           This is newly implemented, not a copy of missing/strtoul.c.
12018         * include/ruby/ruby.h (ruby_strtoul): declared.
12019           (STRTOUL): defined to use ruby_strtoul.
12021         * bignum.c, pack.c, ext/socket/socket.c: use STRTOUL.
12023         * configure.in (strtoul): don't check.
12025         * missing/strtoul.c: removed.
12027         * include/ruby/missing.h (strtoul): removed.
12029         * common.mk (strtoul.o): removed.
12031         * LEGAL (missing/strtoul.c): removed.
12033 Wed Jan  2 14:41:08 2008  Tanaka Akira  <akr@fsij.org>
12035         * common.mk (strcasecmp.o): removed.
12036           (strncasecmp.o): removed.
12038         * include/ruby/missing.h (strcasecmp): removed.
12039           (strncasecmp): removed.
12041 Wed Jan  2 11:34:57 2008  Tanaka Akira  <akr@fsij.org>
12043         * missing/strcasecmp.c: removed.  Ruby don't use locale dependent
12044           strcasecmp.
12046         * missing/strncasecmp.c: ditto.
12048         * configure.in: don't check strcasecmp and strncasecmp.
12050         * LEGAL: missing/strcasecmp.c and missing/strncasecmp.c removed.
12052 Wed Jan  2 10:13:54 2008  Tadayoshi Funaba  <tadf@dotrb.org>
12054         * sample/time.rb: use Process.times instead of Time.times.
12056 Wed Jan  2 09:09:53 2008  Tadayoshi Funaba  <tadf@dotrb.org>
12058         * sample/goodfriday.rb: examples for date are enough.  retired.
12060 Wed Jan  2 08:58:54 2008  Tadayoshi Funaba  <tadf@dotrb.org>
12062         * sample/cal.rb: just updated with the newest version.
12064 Wed Jan  2 01:19:31 2008  Tanaka Akira  <akr@fsij.org>
12066         * enc/depend: dependency updated.
12068 Wed Jan  2 00:14:41 2008  NARUSE, Yui  <naruse@ruby-lang.org>
12070         * ext/nkf/nkf-utf8/{nkf.c, utf8tbl.c}: Update nkf.
12072         * ext/nkf/nkf.c: fix documents.
12074         * ext/nkf/lib/kconv.rb: fix documents.
12075           (Kconv.is*): use valid_encoding?.
12076           (Kconv.isjis): defined.
12078 Tue Jan  1 23:17:03 2008  Tanaka Akira  <akr@fsij.org>
12080         * common.mk: dependency updated.
12082 Tue Jan  1 21:11:33 2008  Tanaka Akira  <akr@fsij.org>
12084         * include/ruby/encoding.h (rb_isascii): defined.
12085           (rb_isalnum): ditto.
12086           (rb_isalpha): ditto.
12087           (rb_isblank): ditto.
12088           (rb_iscntrl): ditto.
12089           (rb_isdigit): ditto.
12090           (rb_isgraph): ditto.
12091           (rb_islower): ditto.
12092           (rb_isprint): ditto.
12093           (rb_ispunct): ditto.
12094           (rb_isspace): ditto.
12095           (rb_isupper): ditto.
12096           (rb_isxdigit): ditto.
12097           (rb_tolower): ditto.
12098           (rb_toupper): ditto.
12100         * include/ruby/st.h (st_strcasecmp): declared.
12101           (st_strncasecmp): ditto.
12103         * st.c (type_strcasehash): use st_strcasecmp instead of strcasecmp.
12104           (st_strcasecmp): defined.
12105           (st_strncasecmp): ditto.
12107         * include/ruby/ruby.h: include include/ruby/encoding.h.
12108           (ISASCII): use rb_isascii.
12109           (ISPRINT): use rb_isprint.
12110           (ISSPACE): use rb_isspace.
12111           (ISUPPER): use rb_isupper.
12112           (ISLOWER): use rb_islower.
12113           (ISALNUM): use rb_isalnum.
12114           (ISALPHA): use rb_isalpha.
12115           (ISDIGIT): use rb_isdigit.
12116           (ISXDIGIT): use rb_isxdigit.
12117           (TOUPPER): defined.
12118           (TOLOWER): ditto.
12119           (STRCASECMP): ditto.
12120           (STRNCASECMP): ditto.
12122         * dir.c, encoding.c, file.c, hash.c, process.c, ruby.c, time.c,
12123           transcode.c, ext/readline/readline.c: use locale insensitive
12124           functions.  [ruby-core:14662]
12126 Tue Jan  1 17:50:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12128         * io.c (rb_io_mode_enc): encoding spec is not allowed in binary mode.
12129           [ruby-dev:32913]
12131 Tue Jan  1 14:41:56 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
12133         * lib/rexml: 1.9 patch from Sam Ruby mentioned in his blog:
12134           <http://intertwingly.net/blog/2007/12/31/Porting-REXML-to-Ruby-1-9>
12135           [ruby-core:14639]
12137 Tue Jan  1 14:15:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
12139         * string.c (rb_str_substr): offset movement bug.  a patch from
12140           Vincent Isambart <vincent.isambart at gmail.com> in
12141           [ruby-core:14647].  [ruby-core:14644]
12143 Tue Jan  1 01:29:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12145         * encoding.c (rb_to_encoding): raises for non-nil, non-encoding,
12146           non-string object.  [ruby-core:14634]
12148 Tue Jan  1 01:04:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12150         * ruby.c (process_options): rejects dummy encoding.
12152 Mon Dec 31 23:53:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12154         * ruby.c (proc_options, process_options): delays finding encoding
12155           until load_path is set.
12157 Mon Dec 31 23:27:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12159         * string.c (rb_str_resize): embeds if ptr is null.  [ruby-dev:32819]
12161 Mon Dec 31 23:17:22 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12163         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_service):
12164           call do_XXX which correspond with request method.
12165           (WEBrick::HTTPProxyServer#do_CONNECT,do_GET,do_POST,do_HEAD): added.
12167         * test/webrick/test_httpproxy.rb: add test for WEBrick::HTTPProxyServer.
12169 Mon Dec 31 22:53:29 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12171         * thread_pthread.c (native_sleep): timespec tv_sec may overflow on
12172           some platform.  a patch from zunda <zunda616e AT yahoo.co.jp> in
12173           [ruby-dev:32904].
12175 Mon Dec 31 19:35:20 2007  Tanaka Akira  <akr@fsij.org>
12177         * string.c (IS_7BIT): removed.
12178           (single_byte_optimizable): new function to test optimizationability
12179           using single byte string.
12180           (str_strlen): use single_byte_optimizable instead of
12181           is_ascii_string.
12182           (str_nth): rename argument: asc -> singlebyte.
12183           (str_offset): ditto.
12184           (rb_str_substr): use single_byte_optimizable instead of IS_7BIT.
12185           (rb_str_index): ditto.
12186           (rb_str_rindex): ditto.
12187           (rb_str_splice): ditto.
12188           (rb_str_justify): ditto.
12190 Mon Dec 31 07:39:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12192         * main.c, goruby.c (RUBY_MAIN_INIT): removed.
12194         * goruby.c (goruby_run_node): run after ruby_init_loadpath() so that
12195           require works, and protect the call.
12197 Mon Dec 31 06:50:38 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12199         * common.mk: not use -I$(srcdir)/lib with $(MINIRUBY) for cross
12200           compiling.
12202         * configure.in, {win,bcc}32/Makefile.sub (MINIRUBY): -I$(srcdir)/lib
12203           moved.
12205 Mon Dec 31 06:08:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12207         * include/ruby/encoding.h (rb_enc_sprintf, rb_enc_vsprintf): prototyped.
12209         * sprintf.c (rb_enc_sprintf, rb_enc_vsprintf): new functions to format
12210           arguments with encoding.
12212 Sun Dec 30 23:48:00 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12214         * golf_prelude.rb (String#/): define / as split, as association of
12215           Array#*.
12217 Sun Dec 30 23:19:06 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
12219         * golf_prelude.rb (@@golf_hash): for performance improvement.
12221 Sun Dec 30 22:44:50 2007  Tadayoshi Funaba  <tadf@dotrb.org>
12223         * lib/date.rb (_valid_time?): I'm not sure to recommend such an
12224           expression.  but anyway it is acceptable now.  [ruby-core:14580]
12226 Sun Dec 30 21:54:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12228         * parse.y (program, yycompile0): too early to drop lex_lastline in
12229           rules.
12231 Sun Dec 30 19:23:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12233         * bootstraptest/test_knownbug.rb: support DOSISH.
12235 Sun Dec 30 17:43:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12237         * encoding.c (Init_Encoding): registered rb_encoding differs from
12238           ONIG_ENCODINGs.
12240 Sun Dec 30 13:56:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12242         * parse.y (program): clear input strings after all process.
12244         * parse.y (parser_nextc, parser_yylex): should not drop lex_lastline
12245           while lex_p is valid.  [ruby-dev:32896]
12247 Sun Dec 30 10:54:49 2007  NARUSE, Yui  <naruse@ruby-lang.org>
12249         * configure.in: rm largefile.h.
12251         * common.mk: clean golf, conf*, preludes, and so on.
12253         * enc/depend: silent and ignore error for rm.
12255         * enc/Makefile.in: should define prefix and exec_prefix.
12257 Sun Dec 30 06:31:11 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12259         * encoding.c (Init_encoding): register Windows-31J and its alias.
12260           [ruby-dev:32843]
12262         * ruby.c (proc_options): -Ks options means Windows-31J, not Shift_JIS.
12264 Sun Dec 30 06:27:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12266         * lib/mkmf.rb (depend_rules): need to convert `/' to `\' for windows
12267           native commands.
12269 Sun Dec 30 01:43:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12271         * enc/Makefile.in (DLDFLAGS): like as extensions.  [ruby-core:14567]
12273 Sat Dec 29 23:48:13 2007  Tanaka Akira  <akr@fsij.org>
12275         * io.c (io_fflush): don't retry when wbuf modified by other threads.
12277 Sat Dec 29 22:44:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12279         * re.c (rb_reg_regsub): returns the given string itself if nothing
12280           changed.
12282         * string.c (rb_str_sub_bang): keeps code-range as possible.
12284         * string.c (str_gsub): adjusts code-range.  [ruby-core:14566]
12286 Sat Dec 29 21:54:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12288         * common.mk (clean, distclean, realclean): should include clean-enc
12289           and others.  [ruby-dev:32887]
12291 Sat Dec 29 13:29:29 2007  Tanaka Akira  <akr@fsij.org>
12293         * bootstraptest/test_knownbug.rb: add a test reported by
12294           Kazuhiro NISHIYAMA.  [ruby-dev:32819].
12295           add a test reported by Frederick Cheung.  [ruby-core:14556].
12297         * test/ruby/test_m17n.rb (test_gsub): add a test reported by
12298           Sam Ruby.  [ruby-core:14566]
12300 Sat Dec 29 04:46:58 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12302         * lib/test/unit/assertions.rb (Test::Unit::Assertions#assert_throws):
12303           throw won't raise NameError nor ThreadError but ArgumentError on 1.9.
12304           (Test::Unit::Assertions#assert_not_throws): ditto.
12306         * test/testunit/test_assertions.rb: add assertions for throwing some
12307           objects other than Symbol.
12309 Sat Dec 29 03:10:12 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12311         * io.c (io_unread): fix typo.
12313 Sat Dec 29 02:18:45 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12315         * io.c (io_unread): adhoc workaround for non-binary mode of some DOSish
12316           platforms. this is not perfect and safety, but works with most cases.
12318 Fri Dec 28 23:53:18 2007  Tanaka Akira  <akr@fsij.org>
12320         * ext/strscan/strscan.c (str_new): new function for allocate an string
12321           with encoding propagation.
12322           (extract_range): use str_new.
12323           (extract_beg_len): ditto.
12324           (strscan_peek): ditto.
12325           (strscan_rest): ditto.
12327 Fri Dec 28 20:18:42 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
12329         * golf_prelude.rb (Object.say): derived from Perl 5.10.
12331 Fri Dec 28 19:39:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12333         * encoding.c (rb_locale_encoding): should check return value from
12334           rb_locale_charmap().
12336         * ruby.c (locale_encoding): removed.
12338         * ruby.c (process_options): use rb_locale_encoding() instead of
12339           locale_encoding().
12341         * ext/readline/readline.c (readline_readline): use locale encoding
12342           instead of input IO's encoding. [ruby-dev:32872]
12344 Fri Dec 28 19:29:07 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12346         * ext/readline/readline.c (readline_readline, readline_s_set_input):
12347           use mReadline directly because self is not always same.
12349 Fri Dec 28 19:11:28 2007  Tanaka Akira  <akr@fsij.org>
12351         * encoding.c (rb_locale_encoding): defined.
12353         * include/ruby/encoding.h (rb_locale_encoding): declared.
12355 Fri Dec 28 18:45:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12357         * ext/readline/readline.c (readline_readline): set encoding to result.
12359         * ext/readline/readline.c (readline_s_set_input, Init_readline): save
12360           input IO to hidden instance variable.
12362 Fri Dec 28 01:55:04 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
12364         * transcode.c (transcode_dispatch): reverted some of the changes
12365           in r14746.
12367         * transcode.c, enc/trans/single_byte.c: Added conversions to/from
12368           US-ASCII and ASCII-8BIT (using data tables).
12370         * enc/trans/single_byte.c: Some spacing/ordering changes due to
12371           automatic data file generation.
12373         * transcode_data.h, transcode.c: Preliminary code for using
12374           micro-conversion functions.
12376         * test/ruby/test_transcode.rb: Added some tests for US-ASCII and
12377           ASCII-8BIT conversions.
12379 Fri Dec 28 17:33:44 2007  Tanaka Akira  <akr@fsij.org>
12381         * time.c (make_time_t): verify mktime and timegm result.
12383 Fri Dec 28 16:36:33 2007  NARUSE, Yui  <naruse@airemix.com>
12385         * lib/resolv.rb (Resolv::DNS#each_address): now returns IPv6 address.
12387 Fri Dec 28 16:10:00 2007  Eric Hodel  <drbrain@segment7.net>
12389         * lib/rdoc/dot/dot.rb: Move to lib/rdoc/dot.rb. Fix namespacing.
12391         * lib/rdoc/diagram.rb: Update for 1.9.
12393 Fri Dec 28 15:38:29 2007  Eric Hodel  <drbrain@segment7.net>
12395         * lib/rdoc/markup/sample/: Move to sample/rdoc/markup directory.
12397 Fri Dec 28 15:15:12 2007  Akinori MUSHA  <knu@iDaemons.org>
12399         * lib/irb/completion.rb: Remove garbage ("X=1").
12401 Fri Dec 28 15:12:05 2007  Eric Hodel  <drbrain@segment7.net>
12403         * lib/rdoc, test/rdoc: Move RDoc tests out of lib/.
12405 Fri Dec 28 15:10:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12407         * encoding.c (set_base_encoding, enc_base_encoding): renamed
12408           based_encoding as base_encoding.
12410 Fri Dec 28 13:57:49 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12412         * golf_prelude.rb (Integer#each): use alias simply.
12414 Fri Dec 28 13:45:21 2007  Akinori MUSHA  <knu@iDaemons.org>
12416         * golf_prelude.rb (Object.const_missing): No need to delegate to
12417           superclass.  Just raise a NameError when none matches.
12419 Fri Dec 28 13:18:47 2007  Kouhei Sutou  <kou@cozmixng.org>
12421         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.2 -> 0.2.3.
12423         * lib/rss/parser.rb, test/rss/test_parser.rb: supported "-" in tag name.
12424           Reported by Ray Chen. Thanks.
12426 Fri Dec 28 13:07:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12428         * gc.c (os_obj_of): returns an enumerator if no block given.  based on
12429           a patch from Yugui <yugui AT yugui.sakura.ne.jp>.  [ruby-dev:32828]
12431 Fri Dec 28 11:46:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12433         * tool/ytab.sed: skip yydestruct hack unless yymsg exists, for bison
12434           1.8 series.  [ruby-dev:32825]
12436 Fri Dec 28 11:39:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12438         * golf_prelude.rb (Object.quine): need to join because SCRIPT_LINES__[]
12439           returns an array of lines.
12441 Fri Dec 28 11:16:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12443         * golf_prelude.rb (Object.quine): get the script itself.
12445 Fri Dec 28 10:06:54 2007  Akinori MUSHA  <knu@iDaemons.org>
12447         * golf_prelude.rb (Object.const_missing): Auto-complete constants.
12449 Fri Dec 28 01:55:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12451         * transcode.c (transcode_dispatch): allows transcoding from/to
12452           ASCII-8BIT.
12454 Fri Dec 28 01:47:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12456         * golf_prelude.rb (Integer): Integer is now enumerable on goruby.
12458 Fri Dec 28 01:27:47 2007  Tanaka Akira  <akr@fsij.org>
12460         * lib/rdoc/rdoc.rb (parse_files): don't depend on the default external
12461           encoding.
12463 Fri Dec 28 00:01:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12465         * common.mk (golf_prelude.c): use MINIRUBY instead of BASERUBY because
12466           tool/compile_prelude.rb requires rbconfig.rb.
12468 Thu Dec 27 23:56:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12470         * mkconfig.rb: should not use the libraries under the source directory
12471           at cross compiling.
12473 Thu Dec 27 23:43:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12475         * cygwin/GNUmakefile.in (EXTOBJS): uses ruby.rc always for other than
12476           rubyw.exe.
12478 Thu Dec 27 22:31:37 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12480         * lib/rubygems/commands/update_command.rb (do_rubygems_update): use
12481           portable and safely ENV operation. reported in
12482           <http://slashdot.jp/developers/comments.pl?sid=384937&cid=1273085>.
12484 Thu Dec 27 21:47:04 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12486         * mkconfig.rb (prefix): archdir is "1.9.0", not "1.9". reported in
12487           <http://slashdot.jp/developers/comments.pl?sid=384937&cid=1273085>.
12489 Thu Dec 27 17:57:30 2007  Tanaka Akira  <akr@fsij.org>
12491         * parse.y, transcode_data.h, transcode.c, lib/weakref.rb,
12492           lib/irb/ruby-lex.rb, lib/irb/lc/error.rb, enc/trans/japanese.c:
12493           change "illegal" to "invalid" in a context which doesn't against
12494           a law.
12496 Thu Dec 27 16:37:06 2007  Tanaka Akira  <akr@fsij.org>
12498         * re.c (rb_reg_s_union): show encodings in error message.
12500 Thu Dec 27 15:25:16 2007  Tanaka Akira  <akr@fsij.org>
12502         * encoding.c (rb_enc_codelen): show codepoint in error message.
12504         * include/ruby/encoding.h (rb_enc_codelen): comment it returns
12505           positive integer.
12507         * string.c (rb_str_concat): rb_enc_codelen doesn't return 0.
12509 Thu Dec 27 15:18:44 2007  Tanaka Akira  <akr@fsij.org>
12511         * encoding.c (rb_enc_codelen): error message refined.
12513 Thu Dec 27 15:11:27 2007  Tanaka Akira  <akr@fsij.org>
12515         * encoding.c (rb_enc_check): show encodings in error message.
12517 Thu Dec 27 15:02:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12519         * string.c (rb_str_casecmp): fixed using a wrong variable.
12520           [ruby-list:44402]
12522 Thu Dec 27 14:34:38 2007  Tanaka Akira  <akr@fsij.org>
12524         * io.c (io_fflush): checks wbuf modification by other threads.
12525           not perfect.  it need locks.
12527 Thu Dec 27 10:44:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12529         * ext/socket/socket.c: a patch to support IRIX from Andrew
12530           Thompson <andrew@hijacked.us> in [ruby-core:14447].
12532 Thu Dec 27 02:25:45 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12534         * lib/mkmf.rb (create_tmpsrc): retry to create file if Errno::EACCES
12535           occurs. this is a workaround for mswin32.
12537 Wed Dec 26 22:47:31 2007  NARUSE, Yui <naruse@ruby-lang.org>
12539         * lib/resolv.rb (Resolv::DNS::Name.==): fix for other is array of
12540           Resolv::DNS::Label::Str.
12542         * lib/resolv.rb (Resolv::DNS::MessageEncoder#put_label): String#string
12543           is not defined, so replace to_s.
12545         * lib/resolv.rb (Resolv::IPv6#to_name): ip6.int is obsoleted by
12546           ip6.arpa.
12549 Wed Dec 26 21:27:02 2007  Tadayoshi Funaba  <tadf@dotrb.org>
12551         * lib/date/format.rb (_xmlschema): some improvements.
12553         * lib/date/format.rb (_parse): a new hint compfunc. [experimental]
12555 Wed Dec 26 17:31:08 2007  Tanaka Akira  <akr@fsij.org>
12557         * io.c (io_fflush): check closed fptr after rb_write_internal to avoid
12558           SEGV on MacOS X.
12560 Wed Dec 26 16:10:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12562         * string.c (Init_String): defines chars method.
12564 Wed Dec 26 14:38:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12566         * instruby.rb: install goruby if exists.
12568 Wed Dec 26 13:55:02 2007  James Edward Gray II  <jeg2@ruby-lang.org>
12570         * lib/csv.rb:  Cleaned up some code with Ruby 1.9 idioms.
12572 Wed Dec 26 13:29:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12574         * array.c (tmpbuf): use rb_str_tmp_new().
12576 Wed Dec 26 00:57:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12578         * ext/json/ext/generator/generator.c (Init_generator): requires
12579           json/common.rb for GeneratorError, when static linked.  a patch from
12580           Kenta Murata <muraken AT gmail.com> in [ruby-dev:32789].
12582 Tue Dec 25 23:33:55 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12584         * development version 1.9.0 released.
12586 Tue Dec 25 23:25:29 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12588         * lib/rexml/node.rb (REXML::Node::indent): should initialize rv
12589           variable.  a patch from Tadayoshi Funaba <tadf AT dotrb.org> in
12590           [ruby-dev:32783].
12592 Tue Dec 25 23:16:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12594         * ruby.c (proc_options): encoding option in shebang and RUBYOPT did not
12595           work, do not store alloca()ed string in a parent scope struct.
12597 Tue Dec 25 22:56:52 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12599         * win32/Makefile.sub (config.status): keep this file.
12601 Tue Dec 25 22:55:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12603         * configure.in (TIMEZONE_VOID): typo.
12605 Tue Dec 25 22:45:10 2007  Koichi Sasada  <ko1@atdot.net>
12607         * insns2vm.rb: add encoding option to shebang.
12609 Tue Dec 25 22:13:51 2007  Koichi Sasada  <ko1@atdot.net>
12611         * bootstraptest/pending.rb: add pending issue.
12613 Tue Dec 25 22:12:40 2007  Koichi Sasada  <ko1@atdot.net>
12615         * thread.c: remove Thread.critical(=).
12617 Tue Dec 25 21:44:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12619         * tool/make-snapshot: add version number.
12621 Tue Dec 25 21:32:54 2007  Koichi Sasada  <ko1@atdot.net>
12623         * compile.c (iseq_compile_each): fix stack consistency error
12624           (break is compiled to throw instead of jump insn).
12625           these problems are reported by Yusuke ENDOH <mame AT tsg.ne.jp>
12627         * bootstraptest/test_knownbug.rb, test_syntax.rb: move fixed test.
12629 Tue Dec 25 21:32:44 2007  Tanaka Akira  <akr@fsij.org>
12631         * parse.y (struct parser_params): make parser_ruby_sourcefile common
12632           field.  it is used by node_newnode.
12633           new field parser_ruby_sourcefile_string for ripper.
12634           (parser_initialize): initialize parser_ruby_sourcefile in ripper.
12635           (ripper_initialize): initialize parser_ruby_sourcefile_string.
12637 Tue Dec 25 21:26:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12639         * common.mk (parse.c): depends on tool/ytab.sed.
12641         * tool/ytab.sed: hack for bison 2.1.
12643 Tue Dec 25 20:24:58 2007  Technorama Ltd.  <oss-ruby@technorama.net>
12645         * ext/openssl/ossl_ssl.c: Only show a warning if the default
12646           DH callback is actually used.
12648         * ext/openssl/ossl_rand.c: New method: random_add().
12650 Tue Dec 25 20:24:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12652         * tool/make-snapshot: argument check, and cleanup exported directory.
12654 Tue Dec 25 20:07:13 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
12656         * tool/make-snapshot: more portable.
12658 Tue Dec 25 19:01:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12660         * encoding.h (rb_enc_mbc_to_codepoint): wrapper for
12661           ONIGENC_MBC_TO_CODE().
12663         * string.c (rb_str_succ): deal with invalid sequence as binary.
12665 Tue Dec 25 18:40:46 2007  Koichi Sasada  <ko1@atdot.net>
12667         * iseq.c: all methods need $SAFE < 1.
12669          vm.c: comment out debug functions.
12671 Tue Dec 25 18:37:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12673         * io.c (appendline): move RS comparison to rb_io_getline_1().
12675 Tue Dec 25 18:27:51 2007  Tanaka Akira  <akr@fsij.org>
12677         * string.c (rb_str_each_line): don't call rb_enc_codepoint with empty
12678           string.
12680 Tue Dec 25 18:06:04 2007  Tanaka Akira  <akr@fsij.org>
12682         * string.c (rb_str_inspect): don't call rb_enc_codepoint with empty
12683           string.  fix '#'.inspect.
12685         * encoding.c (rb_enc_codepoint): raise on empty string.
12687 Tue Dec 25 17:48:28 2007  Shugo Maeda  <shugo@ruby-lang.org>
12689         * vm.c (rb_frame_method_id_and_class): new function to get the
12690           method id and class of the current frame.
12692 Tue Dec 25 17:32:04 2007  Akinori MUSHA  <knu@iDaemons.org>
12694         * lib/mkmf.rb (create_makefile): Add a missing dependency on the
12695           target directory for each .rb file.  This will hopefully fix
12696           parallel make (-jN).  Tested on FreeBSD.
12698 Tue Dec 25 16:51:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12700         * enc/trans/japanese.c (rb_{from,to}_{SHIFT_JIS,EUC_JP}): inversed
12701           from_encoding and to_encoding.
12703 Tue Dec 25 16:41:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12705         * golf_prelude.rb (h): add new method for all golfers.
12707 Tue Dec 25 16:37:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12709         * enc/trans/japanese.c (rb_to_EUC_JP): fixed typo.
12711 Tue Dec 25 16:34:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12713         * ext/dl/depend: add dependencies. [ruby-dev:32760]
12715 Tue Dec 25 16:26:48 2007  Koichi Sasada  <ko1@atdot.net>
12717         * include/ruby/ruby.h, thread.c: rename is_ruby_native_thread() to
12718           ruby_native_thread_p().
12720         * ext/tk/tcltklib.c: apply it.
12722 Tue Dec 25 16:15:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12724         * common.mk (clean-enc): clean encoding objects.
12726 Tue Dec 25 16:04:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12728         * common.mk, goruby.c, golf_prelude.rb: for golfers.
12730         * main.c (main): hook for embedding applications.
12732         * tool/compile_prelude.rb: can change initialize function name.
12734 Tue Dec 25 15:59:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12736         * encoding.c (rb_enc_register): do not use based_encoding to check if
12737           dummy encoding.
12739 Tue Dec 25 15:55:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12741         * string.c (rb_str_succ): fix for string with non-alphanumeric chars.
12743 Tue Dec 25 15:42:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12745         * io.c (rb_io_external_encoding): should return nil for
12746           pass-through write IO.  [ruby-dev:32740]
12748 Tue Dec 25 15:24:57 2007  Tanaka Akira  <akr@fsij.org>
12750         * io.c (appendline): initialize rslen to 1 if rsptr is 0.
12751           rslen is the length of the delimiter.
12752           if only delim is given, it should be 1.
12753           [ruby-dev:32746]
12755 Tue Dec 25 15:21:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12757         * transcode.c (transcode_dispatch): fix for multistep transcode.
12759 Tue Dec 25 15:07:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12761         * enc/trans/single_byte.c (Init_single_byte): renamed.
12763 Tue Dec 25 15:00:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12765         * enum.c (enum_yield): when multiple values yielded from #each
12766           pack them into an array.  [ruby-dev:32708]
12768         * enum.c: all method but all?, any?, one? and none? passed packed
12769           multiple values to the block.
12771         * enum.c (collect_all): should pack all values.  [ruby-core:14410]
12773 Tue Dec 25 14:57:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12775         * common.mk (COMMONOBJS): transcode_data_*.c moved under enc/trans.
12777         * transcode_data.h (rb_transcoding, rb_transcoder): prefixed.
12779         * transcode.c (rb_register_transcoder, rb_declare_transcoder): split
12780           declaration and registration.  [ruby-dev:32704]
12782         * transcode.c (transcode_dispatch): autoload pre-declared transcoder.
12784         * transcode.c (str_transcode): use rb_define_dummy_encoding().
12786         * transcode.c (Init_transcode): initialize transcoder tables.
12788         * enc/trans/single_byte.c, enc/trans/japanese.c: moved from top.
12790 Tue Dec 25 14:20:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12792         * lib/mkmf.rb (map_dir): should generate path including $top_srcdir.
12794 Tue Dec 25 14:09:16 2007  James Edward Gray II  <jeg2@ruby-lang.org>
12796         * lib/csv.rb:  Fixed test failures caused by changes to Ruby.
12798         * test/csv/tc_serialization, test/csv/tc_csv_parsing, test/csv/tc_features:
12799           Fixed test failures caused by changes to Ruby.
12801 Tue Dec 25 14:11:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12803         * io.c (io_encoding_set): missing return type.
12805 Tue Dec 25 14:03:48 2007  NARUSE, Yui <naruse@ruby-lang.org>
12807         * test/rinda/test_rinda.rb (MockClock#{_forward, forward, sleep}):
12808           Change default value of n as @reso from nil.  If default value is
12809           nil, n.+ is not defined.
12811 Tue Dec 25 13:54:01 2007  Tanaka Akira  <akr@fsij.org>
12813         * test/ruby/test_io_m17n.rb (test_pipe): fixed.
12814           [ruby-dev:32743]
12816 Tue Dec 25 13:44:51 2007  Koichi Sasada  <ko1@atdot.net>
12818         * thread.c (rb_thread_wait_fd_rw): should check EBADF on select().
12820 Tue Dec 25 13:30:03 2007  Koichi Sasada  <ko1@atdot.net>
12822         * thread_pthread.c, thread_pthread.h, thread_win32.c,
12823           thread_win32.c: make some functions static functions.
12824           a patch from Tadashi Saito <shiba AT mail2.accsnet.ne.jp>
12825           in [ruby-core:14407]
12827 Tue Dec 25 13:23:13 2007  Tanaka Akira  <akr@fsij.org>
12829         * test/ruby/test_io_m17n.rb (test_write_noenc): don't mix text and
12830           binary mode.  [ruby-dev:32743]
12832 Tue Dec 25 13:13:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12834         * README.EXT.ja, dir.c, eval.c, eval_intern.h, lex.c.src,
12835           lex.c.blt, keywords, load.c, thread.c: more ANSI'ize.
12836           a patch from Tadashi Saito <shiba AT mail2.accsnet.ne.jp>
12837           in [ruby-dev:32725]
12839 Tue Dec 25 13:07:56 2007  Koichi Sasada  <ko1@atdot.net>
12841         * vm_core.h, thread.c, cont.c: add RUBY_VM_SET_INTERRUPT(),
12842           RUBY_VM_SET_TIMER_INTERRUPT(), RUBY_VM_INTERRUPTED().
12844         * thread.c, thread_pthread.c, thread_win32.c: fix to ignore time slice
12845           event until sleep.
12847         * bootstraptest/test_thread.rb: add a test for time limited join test.
12849 Tue Dec 25 12:42:59 2007  Koichi Sasada  <ko1@atdot.net>
12851         * vm.c (Init_VM): remove unused code.
12852           [ruby-dev:32732]
12854 Tue Dec 25 12:32:32 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
12856         * transcode.c: Moving a static counter from inside register_transcoder()
12857           and register_functional_transcoder() to outside the functions, renaming
12858           from n to next_transcoder_position. Fixes 3) in [ruby-dev:32715].
12860 Tue Dec 25 12:22:17 2007  NARUSE, Yui <naruse@ruby-lang.org>
12862         * sample/from.rb: follow Ruby 1.9 libraries.
12864 Tue Dec 25 12:21:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12866         * proc.c (method_inspect): preserve encoding of the method name.
12868 Tue Dec 25 12:07:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12870         * configure.in (BASERUBY): delayed error until BASERUBY is used.
12872 Tue Dec 25 11:48:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12874         * sample/README: removed obsoleted files: dbmtest.rb,
12875           getopts.test, mrshtest.rb, regx.rb.
12877 Tue Dec 25 11:45:34 2007  James Edward Gray II  <jeg2@ruby-lang.org>
12879         * lib/csv.rb:  Import the FasterCSV source as the new CSV class.
12881         * test/csv/*:  Added all applicable tests from FasterCSV.
12883 Tue Dec 25 11:33:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12885         * error.c (report_bug): uses ruby_description.
12887 Tue Dec 25 11:20:38 2007  Koichi Sasada  <ko1@atdot.net>
12889         * compile.c (iseq_compile_each): fix stack consistency error.
12890           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>  [ruby-dev:32720]
12892         * bootstraptest/test_syntax.rb: add 2 tests for above.
12894 Tue Dec 25 11:14:20 2007  Koichi Sasada  <ko1@atdot.net>
12896         * iseq.c, vm_core.h: comment out unused fields.
12898 Tue Dec 25 11:02:10 2007  Koichi Sasada  <ko1@atdot.net>
12900         * vm.c: check frame is FINAL when creating env.
12901           [ruby-core:14395]
12903         * bootstraptest/test_block.rb: add a test for above.
12905 Tue Dec 25 09:12:13 2007  Eric Hodel  <drbrain@segment7.net>
12907         * lib/rdoc/:  Enable RDoc debugging only with $DEBUG_RDOC.
12909 Tue Dec 25 08:37:43 2007  James Edward Gray II  <jeg2@ruby-lang.org>
12911         * lib/csv.rb, test/csv/test_csv.rb:  Removed in preparation for
12912           FasterCSV code import.
12914 Tue Dec 25 08:27:43 2007  Eric Hodel  <drbrain@segment7.net>
12916         * lib/rubygems.rb:  Fix test failures.
12918         * test/rubygems/test_gem.rb:  Fix test failure.
12920 Tue Dec 25 06:23:40 2007  Koichi Sasada  <ko1@atdot.net>
12922         * bootstraptest/test_knownbug.rb, test_literal.rb: move fixed test.
12924 Tue Dec 25 06:19:04 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12926         * sample/biorhythm.rb: follow Ruby 1.9 libraries.
12928 Tue Dec 25 06:15:01 2007  Koichi Sasada  <ko1@atdot.net>
12930         * vm.c: add dummy toplevel frame.
12932 Tue Dec 25 05:44:56 2007  Eric Hodel  <drbrain@segment7.net>
12934         * lib/net/http.rb:  Fix uninitialized variable warning.
12935           [ruby-talk:284582]
12937         * lib/irb/output-method.rb:  Remove unused #foo method.
12938           [ruby-talk:284582]
12940 Tue Dec 25 05:24:12 2007  Koichi Sasada  <ko1@atdot.net>
12942         * compile.c (iseq_compile): clear local table if node == 0.
12943           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>  [ruby-dev:32530]
12945         * vm.c: clear VM stack.
12947 Tue Dec 25 04:23:32 2007  Tanaka Akira  <akr@fsij.org>
12949         * parse.y (rb_id2str): fill klass of returned string as rb_cString.
12950           some strings are allocated before rb_cString is created.
12951           This prevents a "called on terminated object" error by
12952           ObjectSpace.each_object(Module) {|m| p m.name }.
12954 Tue Dec 25 03:51:55 2007  Koichi Sasada  <ko1@atdot.net>
12956         * compile.c (iseq_compile_each): fix stack consistency bug.
12957           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
12959 Tue Dec 25 03:19:47 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
12961         * tool/make-snapshot: must create configure and lex.c.
12963 Tue Dec 25 03:16:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12965         * io.c (rb_io_s_pipe): now takes up to two arguments.  allow its
12966           external/internal encoding by Encoding objects.
12968         * io.c (rb_io_set_encoding): new method to set encoding of the IO.
12970         * io.c (argf_set_encoding): ditto.
12972 Tue Dec 25 03:08:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12974         * pack.c (pack_pack): use NUM2LONG instead of NUM2INT.
12976         * numeric.c (fix_lshift, fix_aref): use SIZEOF_LONG instead of
12977           SIZEOF_VALUE.
12979         * bignum.c (big2ulong, rb_big_aref): ditto.
12981 Tue Dec 25 02:55:26 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12983         * lib/rexml/element.rb (REXML::Elements#each): yield in each
12984           should be called with one parameter. [ruby-dev:32708]
12986 Tue Dec 25 02:15:39 2007  Koichi Sasada  <ko1@atdot.net>
12988         * compile.c (iseq_compile_each): add a "pop" insn after break
12989           to fix stack consistency error.  [ruby-core:14385]
12991         * bootstraptest/test_syntax.rb: add tests for above.
12993         * bootstraptest/test_knownbug.rb: remove fixed bug.
12995 Tue Dec 25 01:54:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12997         * id.c (Init_id): remove several unused symbols. [ruby-core:14362]
12999         * compile.c (iseq_specialized_instruction): do not use
13000           VM_CALL_SEND_BANG flag any longer.
13002 Tue Dec 25 01:42:41 2007  Tanaka Akira  <akr@fsij.org>
13004         * lib/rdoc/rdoc.rb (parse_files): interpret coding cookie.
13006 Tue Dec 25 01:38:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13008         * proc.c (method_name): preserve Symbol's encoding.
13010         * numeric.c (fix_id2name): ditto.
13012 Tue Dec 25 01:19:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13014         * include/ruby/encoding.h (rb_enc_left_char_head): new utility macro.
13016         * include/ruby/encoding.h (rb_enc_right_char_head): ditto.
13018         * io.c (appendline): does multibyte RS search in the function.
13020         * io.c (prepare_getline_args): RS may be nil.
13022         * io.c (rb_io_getc): should process character based on external
13023           encoding, when transcoding required.
13025 Tue Dec 25 01:07:57 2007  Tanaka Akira  <akr@fsij.org>
13027         * lib/irb/output-method.rb: translate a comment to English to
13028           avoid mix of EUC-JP comment and UTF-8 Date keyword.
13029           svn substitute Date keyword with UTF-8 weekday on UTF-8 locale.
13031 Tue Dec 25 00:27:28 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13033         * lib/webrick/httpservley/cgihandler.rb
13034           (WEBrick::HTTPServlet::CGIHandler#do_GET): m17nized.
13036 Mon Dec 24 23:55:29 2007  Tanaka Akira  <akr@fsij.org>
13038         * lib/cgi.rb (CGI::escape): m17nized.
13039           (CGI::unescape): ditto.
13040           (CGI::escapeHTML): ditto.
13041           (CGI::unescapeHTML): ditto.
13043 Mon Dec 24 23:32:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13045         * transcode_data_japanese.c (select_iso_2022_mode): '\e' is not valid.
13047 Mon Dec 24 23:13:09 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13049         * lib/rdoc/diagram.rb (RDoc::Diagram#initialize): use fileuitls
13050           instead of ftools.
13052 Mon Dec 24 23:04:57 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
13054         * lib/ftools.rb: removed obsoleted lib.  use fileutils instead (by eban).
13056         * lib/rdoc/rdoc.rb, lib/rdoc/generators/*, lib/rake.rb: let it use
13057           fileutils instead of ftools.
13059         * lib/shell/command-processor.rb: removed unused references to ftools.
13061         * lib/parsedate.rb: removed.  see [ruby-core:12535], [ruby-dev:31969].
13063         * lib/README: updated.
13065 Mon Dec 24 23:01:04 2007  Tanaka Akira  <akr@fsij.org>
13067         * lib/open-uri.rb (OpenURI::Buffer): use Meta ===.  [ruby-core:14295]
13069 Mon Dec 24 22:46:42 2007  NARUSE, Yui <naruse@ruby-lang.org>
13071         * transcode.c: register_functional_transcoder() added.
13072           (init_transcoder_table(: register ISO-2022-JP.
13073           (str_transcode): add preprocessor and postprocessor.
13075         * transcode_data_japanese.c: add ISO-2022-JP support.
13077         * transcode_data.h: moved transcoder and transcoding definition from
13078           transcode.c.
13080 Mon Dec 24 20:29:28 2007  Koichi Sasada  <ko1@atdot.net>
13082         * test/io/nonblock/test_flush.rb: fix test for 1.9.
13084 Mon Dec 24 20:23:44 2007  Koichi Sasada  <ko1@atdot.net>
13086         * test/rinda/test_rinda.rb: revert last commit because this test seems
13087           to have timing problem to halt all tests.
13089 Mon Dec 24 20:18:52 2007  Koichi Sasada  <ko1@atdot.net>
13091         * test/rinda/test_rinda.rb: enable rinda test.
13093 Mon Dec 24 20:16:54 2007  Koichi Sasada  <ko1@atdot.net>
13095         * instruby.rb: fix rdoc install dir.
13097 Mon Dec 24 18:37:32 2007  Tanaka Akira  <akr@fsij.org>
13099         * re.c (rb_reg_prepare_re): show regexp encoding in the error message.
13101 Mon Dec 24 18:23:32 2007  Tanaka Akira  <akr@fsij.org>
13103         * eval.c (rb_exc_raise): ANSI style.
13104           (rb_exc_fatal): ditto.
13105           (rb_raise_jump): ditto.
13106           (rb_jump_tag): ditto.
13107           (rb_block_given_p): ditto.
13109         * variable.c (original_module): ditto.
13111 Mon Dec 24 18:05:09 2007  Koichi Sasada  <ko1@atdot.net>
13113         * iseq.c (Init_ISeq): disable ISeq.load() because there is no verifier.
13115         * iseq.c, proc.c: add ISeq.disasm(method).
13117 Mon Dec 24 18:06:03 2007  Tanaka Akira  <akr@fsij.org>
13119         * eval_method.c (Init_eval_method): extracted from Init_eval
13120           for rdoc to find rb_mod_remove_method, rb_mod_undef_method and
13121           rb_mod_alias_method.
13123         * eval.c (Init_eval): call Init_eval_method.
13125 Mon Dec 24 17:59:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13127         * load.c (load_lock): reverted.
13129         * thread.c (rb_barrier_wait): check for recursive wait.
13131 Mon Dec 24 17:50:54 2007  Tanaka Akira  <akr@fsij.org>
13133         * eval.c (function_call_may_return_twice_jmp_buf): removed.
13134           (function_call_may_return_twice_false): removed.
13135           [ruby-core:14335]
13137 Mon Dec 24 17:40:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13139         * common.mk (node_name.inc, miniprelude.c, prelude.c): nmake cannot
13140           handle target vpath in other than implicit rules.
13142 Mon Dec 24 17:20:34 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
13144         * lib/{mailread.rb,getopts.rb,parsearg.rb}: removed.
13145           see [ruby-core:12535], [ruby-dev:31969].
13147 Mon Dec 24 17:12:57 2007  Tanaka Akira  <akr@fsij.org>
13149         * include/ruby/intern.h, random.c, array.c:
13150           change exported name.
13151           genrand_int32 -> rb_genrand_int32.
13152           genrand_real -> rb_genrand_real.
13153           [ruby-core:14335]
13155 Mon Dec 24 17:06:37 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
13157         * {lib,test}/{soap,wsdl,xsd}: removed soap4r along to the discussion
13158           at ruby-core and ruby-dev.  see [ruby-core:12535], [ruby-dev:31969].
13160 Mon Dec 24 17:06:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13162         * load.c (rb_feature_p): returns loading path name too.
13164         * load.c (search_required): returns path too if feature is being
13165           loaded.  [ruby-dev:32048]  [TODO: refactoring]
13167 Mon Dec 24 16:29:12 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13169         * sample/openssl: reviewed and remove dependency on getopts.rb.
13171 Mon Dec 24 16:18:57 2007  Koichi Sasada  <ko1@atdot.net>
13173         * mkconfig.rb: add teeny to CONFIG['ruby_version'].
13175 Mon Dec 24 15:55:50 2007  Koichi Sasada  <ko1@atdot.net>
13177         * tool/compile.rb, getrev.rb, runruby.rb: remove unused tools.
13179 Mon Dec 24 15:42:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13181         * configure.in, cygwin/GNUmakefile.in, */Makefile.sub,
13182           djgpp/config.hin.: version dependent directory names now contain
13183           teeny.
13185 Mon Dec 24 15:29:13 2007  Tanaka Akira  <akr@fsij.org>
13187         * tool/serb.rb: removed.
13189 Mon Dec 24 13:55:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13191         * proc.c (rb_proc_new), vm.c (invoke_block): removed u3.state magic.
13192           [ruby-core:14310]
13194         * test/ruby/test_symbol.rb (test_to_proc): a test from Frederick
13195           Cheung <frederick.cheung AT gmail.com>.
13197 Mon Dec 24 13:43:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13199         * thread.c (rb_thread_atfork): should not leave living_threads
13200           referring freed table while allocating new table.
13202 Mon Dec 24 12:49:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13204         * Makefile.in, configure.in, lib/mkmf.rb, */Makefile.sub: specify
13205           compiled output file name explicitly.
13207         * enc/Makefile.in, enc/depend: now makes compiler to put generated
13208           files under directories corresponding to the each source.
13209           enc/trans supported.
13211         * enc/make_encmake.rb: evaluates depend file before Makefile.in so
13212           that the former can influence to CONFIG.
13214 Mon Dec 24 12:35:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13216         * win{32,ce}/Makefile.sub (MFLAGS): defaulted to -l.
13218 Mon Dec 24 12:08:10 2007  Eric Hodel  <drbrain@segment7.net>
13220         * /, ext/:  Add svn:ignore for OS X Xcode 3's conftest.dSYM
13221           directories.
13223 Mon Dec 24 11:56:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13225         * common.mk: should not pass MAKEFLAGS to recursive make.
13226           + normal make: MFLAGS are set and command line options and macros
13227             are all passed silently.
13228           + GNU make: ditto, and all options and macros in MAKEFLAGS are in
13229             effect.
13230           + nmake: MFLAGS is not set and MAKEFLAGS has only options without
13231             hyphen, no macros exist in any variables.
13232           + Borland make: ditto, and command line macros cannot override
13233             macros in makefile, so passing them is vain.
13235         * {bcc32,win{32,ce}}/Makefile.sub (SET_MAKE): set MFLAGS which is not
13236           set by default, to get rid of chaotic situation of MFLAGS/MAKEFLAGS.
13238 Mon Dec 24 11:32:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13240         * string.c (rb_str_comparable): fixed to keep transitivity.
13241           [ruby-dev:32693]
13243 Mon Dec 24 11:20:31 2007  Eric Hodel  <drbrain@segment7.net>
13245         * lib/rdoc/ri/ri_options.rb:  Fix display of GEMDIRS, make command
13246           examples match ri's name.
13248         * lib/rdoc/ri/ri_paths.rb:  Only allow latest ri dirs in ri output.
13250 Mon Dec 24 10:49:04 2007  Eric Hodel  <drbrain@segment7.net>
13252         * lib/uri/mailto.rb, lib/uri/common.rb:  Fix Regexp warnings.  Patch
13253           #16524 from Kornelius Kalnbach, [ruby-core:14302].
13255 Mon Dec 24 10:37:38 2007  Eric Hodel  <drbrain@segment7.net>
13257         * gem_prelude.rb:  Remove methods from Gem, not QuickLoader, to fix
13258           warnings.
13260 Mon Dec 24 09:45:45 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13262         * transcode.c, transcode_data_one_byte.c, transcode_data_japanese.c:
13263           added rb_ prefix to external data symbols.
13265 Mon Dec 24 05:32:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13267         * enum.c (enum_inject): updated documentation.  a patch from Keita
13268           Yamaguchi <keita.yamaguchi AT gmail.com> in [ruby-dev:32686].
13270         * README.EXT: updated.  a patch from Tadashi Saito
13271           <shiba AT mail2.accsnet.ne.jp> in [ruby-core:14328].
13273         * array.c (rb_ary_at): updated documentation. a patch from Tadashi
13274           Saito <shiba AT mail2.accsnet.ne.jp> in [ruby-core:14330].
13276 Mon Dec 24 05:13:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13278         * string.c (tr_trans): should associate new encoding if modified.
13280 Mon Dec 24 04:04:12 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13282         * test/net/http/test_https.rb: should rescue LoadError.
13284 Mon Dec 24 03:57:28 2007  Koichi Sasada  <ko1@atdot.net>
13286         * cont.c, vm.h: fix to support sparc machine.
13287           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
13289 Mon Dec 24 03:35:19 2007  Koichi Sasada  <ko1@atdot.net>
13291         * common.mk: remove additional "-".
13293 Mon Dec 24 02:59:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13295         * io.c (rb_io_check_readable): should not fill fptr->enc always.
13296           read-write IO (e.g. socket) does not work.  [ruby-dev:32685]
13298         * io.c (io_read_encoding): retrieve reading encoding.
13300         * io.c (prepare_getline_args): convert RS to external encoding.
13302         * string.c (str_new_shared): was setting embedding flag of wrong
13303           string object.  [ruby-dev:32685]
13305         * io.c (io_enc_str): should preserve default_external encoding.
13307         * io.c (appendline): should do multibyte aware RS search.
13309 Mon Dec 24 02:06:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13311         * io.c (rb_f_open): documentation update.
13313         * io.c (rb_io_s_pipe): ditto.
13315         * io.c (io_fwrite): wrong encoding destination.
13317         * io.c (rb_io_external_encoding): should return the encoding of
13318           the file reading.
13320         * io.c (rb_io_internal_encoding): should return the encoding of
13321           read string.
13323 Mon Dec 24 01:46:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13325         * io.c (rb_io_s_pipe): allow specifying read-side encoding.
13327         * io.c (io_enc_str): wrong encoding destination.
13329 Mon Dec 24 01:03:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13331         * string.c (rb_str_comparable): comparison including broken
13332           coderange strings do not consider encoding.
13334 Mon Dec 24 00:57:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13336         * io.c (open_key_args): IO direct methods (foreach, readlines,
13337           read) now takes keyword argument: encoding, mode, open_args.
13339 Mon Dec 24 00:52:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13341         * io.c (rb_io_s_read): encoding argument reverted.
13343         * io.c (mode_enc): independent function to share code.
13345         * io.c (rb_io_internal_encoding): new method.
13347 Mon Dec 24 00:47:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13349         * test/ruby/test_beginendblock.rb (TestBeginEndBlock::test_endblockwarn):
13350           rename endblockwarn.rb to endblockwarn_rb to avoid unnecessary
13351           warning in make test.
13353 Sun Dec 23 23:03:13 2007  Tanaka Akira  <akr@fsij.org>
13355         * encoding.c (rb_enc_codepoint): implemented to raise invalid
13356           encoding.
13358         * include/ruby/encoding.h (rb_enc_codepoint): macro is replaced as a
13359           declaration.
13361 Sun Dec 23 19:45:22 2007  Tanaka Akira  <akr@fsij.org>
13363         * lib/time.rb (Time.httpdate): fix 2 digits year for 20xx.
13364           reported by Tadayoshi Funaba.  [ruby-dev:32687]
13366 Sun Dec 23 19:33:42 2007  Eric Hodel  <drbrain@segment7.net>
13368         * lib/open-uri.rb:  Fix method redefined warning.  [ruby-core:14304]
13370 Sun Dec 23 18:31:49 2007  NARUSE, Yui <naruse@ruby-lang.org>
13372         * ext/nkf/nkf.c (rb_nkf_enc_get): use rb_define_dummy_encoding.
13374         * ext/nkf/nkf.c (Init_nkf): use rb_nkf_enc_get("ASCII").
13376         * ext/nkf/nkf-utf8/nkf.c: Update 1.161.
13378         * ext/nkf/nkf-utf9/config.h: default output encoding is now UTF-8.
13380         * ext/nkf/lib/kconv.rb (Kconv.kconv): replace Encoding#name by
13381           Encoding#to_s.
13383 Sun Dec 23 18:02:52 2007  Eric Hodel  <drbrain@segment7.net>
13385         * lib/rubygems/gem_open_uri.rb:  Fix version check.
13387 Sun Dec 23 17:24:48 2007  Tanaka Akira  <akr@fsij.org>
13389         * encoding.c (rb_enc_init): add eucJP as an alias of EUC-JP.
13391 Sun Dec 23 17:00:23 2007  Tanaka Akira  <akr@fsij.org>
13393         * lib/time.rb (Time.httpdate): use Time.utc for
13394           "day-of-week, dd-mon-yy HH::MM:SS GMT" format.
13396 Sun Dec 23 16:12:40 2007  Eric Hodel  <drbrain@segment7.net>
13398         * lib/rdoc:  Fix 1.9 warnings.
13400 Sun Dec 23 15:28:37 2007  Eric Hodel  <drbrain@segment7.net>
13402         * lib/rubygems, test/rubygems:  Fix new 1.9 warnings.
13404 Sun Dec 23 14:43:10 2007  Eric Hodel  <drbrain@segment7.net>
13406         * gem_prelude.rb:  Use require to load rubygems.rb so the correct path
13407           is in $LOADED_FEATURES on RubyGems upgrade.
13409 Sun Dec 23 11:26:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13411         * string.c (sym_call): use exact argument array interface.
13412           [ruby-core:14279]
13414 Sun Dec 23 11:01:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13416         * io.c (rb_io_binmode_m): removed C99ism.
13418 Sun Dec 23 10:23:23 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13420         * transcode_data_one_byte.c: Better (and more honest) optimization.
13422         * transcode_data_japanese.c: First optimization step.
13424 Sun Dec 23 09:07:02 2007  Tanaka Akira  <akr@fsij.org>
13426         * include/ruby/encoding.h, encoding.c, re.c, io.c, parse.y, numeric.c,
13427           ruby.c, transcode.c, ext/nkf/nkf.c: rename rb_ascii_encoding to
13428           rb_ascii8bit_encoding.  rb_ascii_encoding is ambiguous with
13429           ASCII-8BIT and US-ASCII.
13431 Sun Dec 23 03:35:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13433         * version.h: use patchlevel if revision is not set.
13435         * {bcc32,win{32,ce}}/setup.mak (-version-): skip including revision.h.
13437         * common.mk (srcs): new target to generated sources.
13439         * common.mk (encs, ext/ripper/ripper.c): MAKEFLAGS needs -.
13441         * enc/depend, enc/make_encmake.rb: use erb.
13443 Sun Dec 23 01:56:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13445         * io.c (rb_io_mode_enc): do not set encoding unless explicitly
13446           specified.
13448         * io.c (rb_io_check_readable): fill fptr->enc by default_external
13449           if it's empty.
13451         * io.c (io_enc_str): fptr->enc is always set for reading IO (by
13452           rb_io_check_readable(fptr)).
13454 Sun Dec 23 01:18:06 2007  David Flanagan  <david@davidflanagan.com>
13456         * io.c, io.h: temporary patch to partially implement
13457           transcode-on-read and transcode-on-write
13459 Sun Dec 23 00:48:05 2007  Shugo Maeda  <shugo@ruby-lang.org>
13461         * test/net/imap/test_imap.rb: added tests for SSL.
13463 Sat Dec 22 21:10:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13465         * ext/syck/rubyext.c (syck_genericresolver_node_import): should
13466           not set instance variable "@kind" before initializing it.
13467           [ruby-dev:32677]
13469 Sat Dec 22 19:52:23 2007  Koichi Sasada  <ko1@atdot.net>
13471         * bootstraptest/test_objectspace.rb: fix condition.
13473 Sat Dec 22 19:17:10 2007  Koichi Sasada  <ko1@atdot.net>
13475         * ext/probeprofiler/: removed.
13477 Sat Dec 22 19:14:38 2007  Koichi Sasada  <ko1@atdot.net>
13479         * process.c (rb_f_fork): Unsupport Kernel.fork() on NetBSD.
13481 Sat Dec 22 15:54:54 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13483         * test/ruby/test_transcode.rb: Added simple tests for
13484           EUC-JP and Shift_JIS and tests for ASCII-only range
13486 Sat Dec 22 18:20:13 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13488         * common.mk (version.o): add dependency. [ruby-dev:32680]
13490 Sat Dec 22 17:45:11 2007  NARUSE, Yui <naruse@ruby-lang.org>
13492         * ext/nkf/nkf.c (Init_nkf): use rb_ascii_encoding() for
13493           rb_nkf_enc_get("US-ASCII").
13494           * if use rb_nkf_enc_get("US-ASCII"), ruby will crash - this is bug?
13496 Sat Dec 22 17:39:03 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13498         * lib/mkmf.rb ($extmk): fixed broken condition.
13500 Sat Dec 22 17:35:59 2007  NARUSE, Yui <naruse@ruby-lang.org>
13502         * ext/nkf/nkf-utf8.c: Update nkf.c rev:1.157.
13504         * ext/nkf/nkf.c (rb_nkf_enc_get): replicate proper based encoding.
13506         * ext/nkf/kconv.c (Kconv#kconv, to*): use self.encoding as from_enc
13507           when from_enc isn't given.
13509 Sat Dec 22 17:06:50 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13511         * ext/openssl/lib/net/ssl.rb (OpenSSL::SSL::SSLContext.build): removed.
13513         * ext/openssl/lib/net/ssl.rb (OpenSSL::SSL::SSLContext#set_params):
13514           new method to set suitable SSL parameters.
13516         * lib/net/pop.rb, lib/net/http.rb, lib/net/imap.rb,
13517           test/openssl/test_ssl.rb: follow above change.
13519         * test/net/http/test_https.rb: refine error case.
13521 Sat Dec 22 16:58:49 2007  Shugo Maeda  <shugo@ruby-lang.org>
13523         * lib/net/imap.rb (encode_utf7): accept UTF-8 strings.
13525         * lib/net/imap.rb (decode_utf7): return UTF-8 strings.
13527 Sat Dec 22 15:56:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13529         * transcode_data_japanese: typo.
13531 Sat Dec 22 15:54:54 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13533         * ChangeLog: Information for last patch got lost, fixed
13535 Sat Dec 22 15:45:45 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13537         * transcode_data_one_byte: slightly optimized
13539         * transcode_data_japanese: new data file for EUC-JP and SHIFT_JIS
13540           (not yet optimized; tests to follow; data from
13541           http://nkf.sourceforge.jp/ucm/{SJIS|eucJP}-nkf.ucm)
13543         * common.mk, transcode.c: Adjusted for transcode_data_japanese
13545 Sat Dec 22 15:30:13 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13547         * */Makefile.sub (MFLAGS): define unless defined.
13549 Sat Dec 22 15:17:40 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13551         * lib/mkmf.rb ($extmk): set true only when under ext/ or tool/.
13553 Sat Dec 22 15:14:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13555         * common.mk (encs, ext/ripper/ripper.c): needs MFLAGS.
13557         * configure.in (STRINGIZE): stringizing macro.
13559         * include/ruby/defines.h (STRINGIZE): fallback.
13561         * tool/make-snapshot: new file.
13563         * version.c (ruby_description, ruby_copyright): string constants for
13564           -v option.
13566 Sat Dec 22 15:03:37 2007  Shugo Maeda  <shugo@ruby-lang.org>
13568         * lib/net/imap.rb (initialize): fixed documentation.
13570 Sat Dec 22 15:01:16 2007  Shugo Maeda  <shugo@ruby-lang.org>
13572         * lib/net/pop.rb (enable_ssl): use OpenSSL::SSL::SSLContext.build
13573           instead of SSLContext.new (default verify mode is now
13574           OpenSSL::SSL::VERIFY_PEER).
13576 Sat Dec 22 14:45:21 2007  Tadayoshi Funaba  <tadf@dotrb.org>
13578         * lib/date.rb: shouldn't freeze nil. [ruby-dev:32677]
13580 Sat Dec 22 14:27:27 2007  Tanaka Akira  <akr@fsij.org>
13582         * regenc.c (onigenc_ascii_is_code_ctype): moved from enc/ascii.c.
13584         * regenc.h (onigenc_ascii_is_code_ctype): declared.
13586         * enc/ascii.c: use onigenc_ascii_is_code_ctype.
13588         * enc/us_ascii.c: new file for US-ASCII.
13590 Sat Dec 22 14:30:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13592         * parse.y (reg_named_capture_assign_iter): allows non-ascii names and
13593           get rid of reserved word IDs.
13595 Sat Dec 22 14:18:45 2007  Koichi Sasada  <ko1@atdot.net>
13597         * test/ruby/test_float.rb, test_sprintf.rb: fix test place.
13599 Sat Dec 22 14:17:02 2007  Koichi Sasada  <ko1@atdot.net>
13601         * bootstraptest/test_objectspace.rb: skip frozen string.
13603 Sat Dec 22 14:02:58 2007  Koichi Sasada  <ko1@atdot.net>
13605         * array.c (rb_ary_permutation): add volatile to avoid GC problem.
13607 Sat Dec 22 11:47:42 2007  Koichi Sasada  <ko1@atdot.net>
13609         * eval.c (rb_obj_instance_eval): use class of immediate objects.
13611         * test/ruby/test_eval.rb: fix a test.
13613 Sat Dec 22 11:37:06 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13615         * encoding.c (rb_locale_charmap): win32 support.
13617 Sat Dec 22 11:31:14 2007  Eric Hodel  <drbrain@segment7.net>
13619         * gem_prelude.rb:  Place bin dir before lib dir so gem bin stubs work.
13621 Sat Dec 22 11:05:44 2007  Jim Weirich  <jim@tardis.local>
13623         * lib/rake.rb (Rake): Added Rake and related libraries to the
13624           source code base.
13626 Sat Dec 22 10:30:45 2007  Koichi Sasada  <ko1@atdot.net>
13628         * tool/insns2vm.rb: moved from lib/vm/instruction.rb.
13630 Sat Dec 22 10:25:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13632         * parse.y (reg_named_capture_assign_iter): captured name should
13633           not be reserved word.  a patch from Keita Yamaguchi
13634           <keita.yamaguchi AT gmail.com> in [ruby-dev:32675].
13636         * parse.y (reg_named_capture_assign_iter): just ignore the
13637           captures that do not have valid local variable name.
13639 Sat Dec 22 10:19:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13641         * eval.c (rb_f_method_name): now __method__ and __callee__ are
13642           aliases.  [ruby-core:14244]
13644 Sat Dec 22 08:29:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13646         * string.c (rb_str_buf_append): improvement for non-broken coded
13647           strings.
13649 Sat Dec 22 06:30:04 2007  Koichi Sasada  <ko1@atdot.net>
13651         * bootstraptest/test_fork.rb: skip if fork is not unsupported.
13653         * bootstraptest/test_io.rb: skip if require failed.
13655 Sat Dec 22 06:09:12 2007  David Flanagan  <david@davidflanagan.com>
13657         * io.c: fix typo in rdoc comment
13659 Sat Dec 22 05:09:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13661         * parse.y (parser_str_new, rb_intern3): rb_default_encoding() renamed.
13663         * ext/nkf/nkf.c (rb_nkf_putchar): ditto.
13665 Sat Dec 22 03:54:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13667         * encoding.c (rb_ascii_encoding): renamed from previous
13668           rb_default_encoding().
13670 Sat Dec 22 02:49:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13672         * parse.y (command): block from cmd_brace_block was ignored.
13673           [ruby-dev:32644]
13675         * re.c (rb_reg_prepare_re): stop ENCODING_NONE warning if the
13676           encoding of the str is ASCII-8BIT.
13678 Sat Dec 22 01:52:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13680         * io.c (io_ungetc): avoid buffer relocation, which might cause
13681           serious problem under concurrent situation.
13683 Sat Dec 22 01:35:41 2007  Tanaka Akira  <akr@fsij.org>
13685         * re.c (ARG_ENCODING_NONE): defined for /.../n option.
13686           (REG_ENCODING_NONE): ditto.
13687           (rb_char_to_option_kcode): return ARG_ENCODING_NONE for n.
13688           (rb_reg_prepare_re): warn /ascii/n =~ "non-ascii".
13689           (rb_reg_initialize): set REG_ENCODING_NONE from ARG_ENCODING_NONE.
13691 Sat Dec 22 01:23:10 2007  Shugo Maeda  <shugo@ruby-lang.org>
13693         * test/json/test_json_addition.rb (test_core): do not use Time.now
13694           because JSON can't hold nsec.
13696 Sat Dec 22 01:10:30 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13698         * ext/tk/sample/tkextlib/vu/canvSticker2.rb,
13699           ext/tk/sample/demos-{en,jp}/bind.rb: fix typo. [ruby-dev:32668]
13701 Sat Dec 22 00:56:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13703         * sample/test.rb (valid_syntax): force_encoding input script.
13705 Fri Dec 21 23:48:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13707         * lib/mkmf.rb (depend_rules): suffixes list broken. fixed.
13709 Fri Dec 21 20:18:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13711         * bignum.c (rb_big_mul0): remove unused variable.
13713         * bignum.c (bigdivrem): ditto.
13715 Fri Dec 21 20:13:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13717         * include/ruby/ruby.h (rb_catch_obj, rb_throw_obj): prototyped.
13719         * include/ruby/intern.h (rb_fiber_alive_p): prototyped.
13721 Fri Dec 21 20:09:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13723         * string.c (rb_str_succ): retry increasing until valid char is found.
13725 Fri Dec 21 20:00:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13727         * encoding.c (rb_enc_replicate): now creates first class encoding.
13729         * encoding.c (rb_define_dummy_encoding): always based on the default
13730           encoding.
13732         * encoding.c (rb_enc_dummy_p): check if dummy.
13734         * encoding.c (enc_inspect): shows if dummy.
13736         * encoding.c (Init_Encoding): added dummy? method
13738         * include/ruby/encoding.h (ENCODING_INLINE_MAX): increased.
13740 Fri Dec 21 18:40:54 2007  Koichi Sasada  <ko1@atdot.net>
13742         * io.c: write() should be in blocking region.
13744         * bootstraptest/test_io.rb, test_knownbug.rb: move a fixed test.
13746 Fri Dec 21 17:56:30 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
13748         * ext/tk/tcltklib.c: provisional support on Ruby-VM.
13750         * ext/tk/MANUAL_tcltklib.eng, ext/tk/MANUAL_tcltklib.eucj:
13751           modify document about new functions.
13753         * ext/tk/lib/tk.rb, ext/tk/lib/tk/labelframe.rb,
13754           ext/tk/lib/tk/frame.rb, ext/tk/lib/tk/toplevel.rb,
13755           ext/tk/lib/tk/scrollbar.rb, ext/tk/lib/tk/message.rb,
13756           ext/tk/lib/tk/listbox.rb, ext/tk/lib/tk/text.rb,
13757           ext/tk/lib/tk/scale.rb, ext/tk/lib/tk/entry.rb,
13758           ext/tk/lib/tk/ttk_selector.rb, ext/tk/lib/tk/menu.rb,
13759           ext/tk/lib/tk/label.rb, ext/tk/lib/tk/spinbox.rb,
13760           ext/tk/lib/tk/textmark.rb, ext/tk/lib/tk/winpkg.rb,
13761           ext/tk/lib/tk/checkbutton.rb, ext/tk/lib/tk/panedwindow.rb,
13762           ext/tk/lib/tk/texttag.rb, ext/tk/lib/tk/root.rb,
13763           ext/tk/lib/tk/textimage.rb, ext/tk/lib/tk/radiobutton.rb,
13764           ext/tk/lib/tk/package.rb, ext/tk/lib/tk/macpkg.rb,
13765           ext/tk/lib/tk/composite.rb, ext/tk/lib/tk/autoload.rb,
13766           ext/tk/lib/tk/canvas.rb, ext/tk/lib/tk/button.rb,
13767           ext/tk/lib/tk/textwindow.rb,
13768           ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb,
13769           ext/tk/lib/tkextlib/tile/style.rb,
13770           ext/tk/lib/tkextlib/tile/tscrollbar.rb,
13771           ext/tk/lib/tkextlib/tile/tpaned.rb, ext/tk/lib/tkextlib/tile.rb,
13772           ext/tk/extconf.rb: support Tcl/Tk8.5 (partial, not complete).
13774         * ext/tk/sample/demos-jp/widget,
13775           ext/tk/sample/demos-jp/pendulum.rb,
13776           ext/tk/sample/demos-jp/bind.rb,
13777           ext/tk/sample/tkextlib/vu/canvSticker2.rb,
13778           ext/tk/sample/demos-en/pendulum.rb,
13779           ext/tk/sample/demos-en/bind.rb: remove $KCODE and minor bug fix.
13781 Fri Dec 21 17:49:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13783         * transcode.c (rb_str_transcode_bang): returns self if no conversion.
13784           [ruby-dev:32662]
13786 Fri Dec 21 17:44:47 2007  Eric Hodel  <drbrain@segment7.net>
13788         * lib/rubygems*:  Update to RubyGems 1.0.1, r1581
13790 Fri Dec 21 17:32:49 2007  Koichi Sasada  <ko1@atdot.net>
13792         * bootstraptest/pending.rb: renamed from featurebug.rb.
13793           This file contains bugs which is known but will not be
13794           fixed in days.
13796 Fri Dec 21 17:31:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13798         * debug.c (dummy_gdb_enums.various): added ENCODING and CODERANGE
13799           constants.
13801         * .gdbinit: use enum constants.
13803 Fri Dec 21 17:28:17 2007  Koichi Sasada  <ko1@atdot.net>
13805         * bootstraptest/featurebug.rb: added.
13807         * bootstraptest/test_knownbug.rb: move a feature bug.
13809 Fri Dec 21 17:25:22 2007  Koichi Sasada  <ko1@atdot.net>
13811         * thread.c (rb_thread_atfork): fix to mark thread object.
13812           [ruby-dev:32404]
13814         * bootstraptest/test_knownbug.rb, test_fork.rb: move a fixed test.
13816 Fri Dec 21 17:07:13 2007  Koichi Sasada  <ko1@atdot.net>
13818         * gc.h: extern variable should not be initialized.
13820         * thread_pthread.c: add a parameter.
13822 Fri Dec 21 16:50:43 2007  Tanaka Akira  <akr@fsij.org>
13824         * encoding.c (Init_Encoding): use enc_name as to_s.
13825           (enc_inspect): renamed from enc_to_s.  add "#" at beginning.
13827 Fri Dec 21 16:37:43 2007  NARUSE, Yui <naruse@ruby-lang.org>
13829         * ext/nkf/nkf-utf8/config.h (MIME_DECODE_DEFAULT, X0201_DEFAULT):
13830          defined as FALSE.  nkf and kconv don't decode MIME encoded string
13831          and don't convert JIS X 0201 Katakana.
13833         * test/nkf/test_kconv.rb: fix tests.
13835 Fri Dec 21 16:33:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13837         * enumerator.c (enumerator_iter_i): adjusted for rb_block_call_func.
13839         * include/ruby/ruby.h (rb_block_call_func): function to be called back
13840           as block.
13842 Fri Dec 21 16:25:25 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13844         * common.mk, transcode_data_iso_8859.c: renamed to
13845           transcode_data_one_byte.c.
13847 Fri Dec 21 16:10:30 2007  Shigeo Kobayashi  <shigeo@tinyforest.jp>
13849         * ext/bigdecimal/bigdecimal.c (VpMidRound): Round method bug
13850           pointed by Ryan Platte fixed(Patch to the patch from "NATORI
13851           Shin").  [ruby-talk:273360]
13853 Fri Dec 21 16:06:13 2007  Tanaka Akira  <akr@fsij.org>
13855         * re.c (append_utf8): use rb_utf8_encoding() instead of
13856           rb_enc_find("utf-8").
13858 Fri Dec 21 15:59:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13860         * encoding.c (rb_enc_init): use enc_register_at() directly.
13862         * encoding.c (rb_utf8_encoding): returns utf-8 encoding.
13864         * include/ruby/encoding.h (rb_utf8_encoding): prototyped.
13866         * parse.y (UTF8_ENC): uses rb_utf8_encoding().
13868 Fri Dec 21 15:31:59 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13870         * io.c (rb_io_s_read): allow specifying encoding explicitly.
13872         * io.c (rb_io_binmode): specifies encoding to ASCII-8BIT (binary).
13874         * io.c (rb_io_s_read): IO should be in binary mode when offset is
13875           specified.
13877         * encoding.c (rb_to_encoding): returns default encoding if no
13878           corresponding encoding found.
13880 Fri Dec 21 15:24:22 2007  Shugo Maeda  <shugo@ruby-lang.org>
13882         * lib/net/imap.rb (initialize): accept service name.  changed
13883           the default value of the old style +verify+ argument to true.
13885 Fri Dec 21 15:15:44 2007  Tanaka Akira  <akr@fsij.org>
13887         * gc.c (rb_garbage_collect): new function for debugging.
13889 Fri Dec 21 15:16:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13891         * encoding.c (rb_to_encoding_index): should return error instead of
13892           exception even if type is incorrect.
13894 Fri Dec 21 14:58:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13896         * enumerator.c (enumerator_init_copy): prohibit cloning of
13897           generators since Fibers cannot be copied.
13899         * enumerator.c (enumerator_init_copy): typo fixed.
13901 Fri Dec 21 14:46:07 2007  Tanaka Akira  <akr@fsij.org>
13903         * io.c (Init_IO): define IO::BINARY even if O_BINARY is not exist.
13905 Fri Dec 21 14:01:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13907         * test/ruby/test_system.rb (TestSystem::valid_syntax): apply
13908           ASCII-8BIT encoding explicitly.
13910         * re.c (rb_reg_prepare_re): add encoding name in the message.
13912 Fri Dec 21 13:54:05 2007  Tanaka Akira  <akr@fsij.org>
13914         * re.c: change "character encodings differ" error messages.
13916 Fri Dec 21 13:46:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13918         * encoding.c (rb_enc_register): set encoding constant.
13920         * encoding.c (rb_enc_find_index): replace non-alphanumeric chars with
13921           underscores, so that initialize function can be called.
13923         * encoding.c (rb_enc_find_index): extension libraries have lower case
13924           names conventionally.
13926         * ruby.c (proc_options, process_options): finds encoding after
13927           load_path is initialized.
13929 Fri Dec 21 13:10:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13931         * io.c (rb_io_external_encoding): new method.
13933         * encoding.c (rb_enc_from_encoding): returns Qnil for NULL
13934           encoding.
13936         * io.c (rb_io_external_encoding): should fill delayed
13937           initialization for STDIN.
13939 Fri Dec 21 13:09:11 2007  Tanaka Akira  <akr@fsij.org>
13941         * encoding.c (rb_locale_charmap): return nil if no locale information.
13943 Fri Dec 21 12:55:39 2007  Tanaka Akira  <akr@fsij.org>
13945         * lib/runit, lib/rubyunit.rb, test/testunit/runit: removed.
13947 Fri Dec 21 12:45:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13949         * string.c (rb_str_chomp_bang): avoid unnecessary loop using
13950           ONIGENC_LEFT_ADJUST_CHAR_HEAD().
13952 Fri Dec 21 12:32:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13954         * file.c (Init_File): File.exists? revived.
13956         * dir.c (Init_Dir): Dir.exists? again.
13958 Fri Dec 21 12:26:36 2007  Koichi Sasada  <ko1@atdot.net>
13960         * compile.c: remove "illegal".
13962 Fri Dec 21 12:22:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13964         * keywords, parse.y (__ENCODING__): represent script encoding.
13966 Fri Dec 21 12:16:50 2007  Tanaka Akira  <akr@fsij.org>
13968         * string.c (rb_str_is_ascii_only_p): new method ascii_only?.
13970 Fri Dec 21 12:11:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13972         * io.c (rb_io_mode_enc): set default external encoding if no
13973           encoding specified explicitly.
13975 Fri Dec 21 12:00:34 2007  Tanaka Akira  <akr@fsij.org>
13977         * configure.in: check langinfo.h and locale.h.
13979         * encoding.c: use langinfo.h only if available.
13981         * main.c: use locale.h only if available.
13983 Fri Dec 21 11:47:56 2007  Tanaka Akira  <akr@fsij.org>
13985         * encoding.c: include locale.h
13986           (rb_locale_charmap): new method Encoding.locale_charmap for
13987           nl_langinfo(CODESET).
13989         * include/ruby/encoding.h (rb_locale_charmap): declared.
13991         * main.c (main): call setlocale with LC_CTYPE.
13993         * ruby.c (locale_encoding): use rb_locale_charmap.
13995 Fri Dec 21 11:35:10 2007  Koichi Sasada  <ko1@atdot.net>
13997         * vm.c, vm_dump.c: fix typo.  Reported by Yuki Mitsui.
13999 Fri Dec 21 11:28:00 2007  Tanaka Akira  <akr@fsij.org>
14001         * regerror.c, string.c, io.c, lib/getoptlong.rb, lib/net/imap.rb,
14002           compile.c, sprintf.c, parse.y, ext/win32ole/win32ole.c,
14003           ext/tk/sample/demos-en/entry3.rb, ext/tk/lib/tcltk.rb,
14004           ext/openssl/ossl_bn.c, numeric.c, vm.c,
14005           benchmark/bm_so_meteor_contest.rb, bignum.c, ruby.c: don't "illegal"
14006           for non law violation context.
14008 Fri Dec 21 11:23:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14010         * common.mk (enc.mk): depends on $(RBCONFIG) instead of rbconfig.rb.
14012         * encoding.c (Init_Encoding): ISO-8859-1 is no longer a replica.
14014         * regenc.h (OnigEncodingDefine): names of extension and encoding can
14015           differ.
14017         * enc/Makefile.in: always shared.
14019         * enc/depend (deffile): should not upcase.
14021         * enc/{ascii,euc_jp,sjis,utf8,iso_8859_{1..16}}.c: fix for Init.
14023 Fri Dec 21 09:26:48 2007  Tanaka Akira  <akr@fsij.org>
14025         * tool/compile_prelude.rb: use erb.
14027 Fri Dec 21 08:07:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14029         * enumerator.c (enumerator_next): should call next_init() if fiber
14030           is dead already. [ruby-dev:32459]
14032 Fri Dec 21 01:21:49 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14034         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLContext.build):
14035           enable CRL checking by default.
14037 Fri Dec 21 01:20:56 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14039         * lib/net/http.rb (Net::HTTP#connect): use
14040           OpenSSL::SSL::SSLContext.build instead of SSLContext.new (default
14041           verify mode is now OpenSSL::SSL::VERIFY_PEER).
14043         * lib/net/https.rb: SSL parameters are defined by attr_accessor.
14045         * test/net/http/test_https.rb: add test for HTTPS features.
14047 Fri Dec 21 01:11:37 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14049         * io.c (select_internal): should return original value.
14051 Fri Dec 21 00:26:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14053         * string.c (tr_trans): wrong encoding check for tree strings.
14055         * test/ruby/test_m17n.rb (TestM17N::test_tr_s): "invalid mbstring
14056           sequence" is not an error to be tested.
14058         * test/ruby/test_m17n.rb (TestM17N::test_tr): ditto.
14060 Thu Dec 20 19:29:07 2007  Shugo Maeda  <shugo@ruby-lang.org>
14062         * lib/net/imap.rb (initialize): the second argument is an option
14063           hash now.  use SSLContext.build to specify SSL parameters.
14065 Thu Dec 20 19:11:56 2007  Koichi Sasada  <ko1@atdot.net>
14067         * thread_pthread.c (native_thread_apply_priority): check
14068           _POSIX_PRIORITY_SCHEDULING for OpenBSD.
14070 Thu Dec 20 18:33:54 2007  Koichi Sasada  <ko1@atdot.net>
14072         * configure.in: add libthr for FreeBSD.
14074 Thu Dec 20 18:17:14 2007  Koichi Sasada  <ko1@atdot.net>
14076         * common.mk, *.ci: renamed to *.c.
14078         * eval_load.c: renamed to load.c.
14080 Thu Dec 20 17:36:01 2007  Eric Hodel  <drbrain@segment7.net>
14082         * lib/rubygems*:  Import RubyGems 1.0.0, r1575.
14084 Thu Dec 20 17:18:38 2007  Koichi Sasada  <ko1@atdot.net>
14086         * proc.c: support Proc#binding.
14088         * sample/test.rb: add a test.
14090 Thu Dec 20 17:15:15 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
14092         * pack.c: Slight change to documentation ('character' ->
14093           'byte (C char)'). [ruby-core:13126], see also [ruby-core:13998].
14095 Thu Dec 20 17:07:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14097         * common.mk (enc.mk): depends on rbconfig.rb.
14099         * regenc.h (OnigEncodingDefine): external encoding definition macro.
14101         * enc/Makefile.in: fix for linking.
14103         * enc/depend, enc/make_encmake.rb: fix for Windows.
14105         * enc/{ascii,euc_jp,sjis,utf8,iso_8859_{1..16}}.c: renamed.
14107 Thu Dec 20 16:42:55 2007  Koichi Sasada  <ko1@atdot.net>
14109         * iseq.c (find_line_no): return 0 if not found.
14111 Thu Dec 20 16:04:17 2007  Koichi Sasada  <ko1@atdot.net>
14113         * insnhelper.ci, vm.c, vm_core.h: change interface of
14114           vm_invoke_block() to specify block ptr.  [ruby-talk:266422]
14116         * cont.c, eval_jump.ci, insns.def, proc.c, signal.c, thread.c:
14117           apply above change.
14119         * bootstraptest/test_knownbug.rb: move fixed bug.
14121         * bootstraptest/test_block.rb: ditto. and add a test.
14123 Thu Dec 20 15:47:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14125         * enc/iso_8859_{1..16}.c: renamed.
14127 Thu Dec 20 09:59:27 2007  Koichi Sasada  <ko1@atdot.net>
14129         * insnhelper.ci (vm_expandarray): fix sp increase place.
14130           a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32581].
14132         * bootstraptest/test_massign.rb: add a test for above.
14134         * bootstraptest/test_syntax.rb: fix last committed test.
14136 Thu Dec 20 09:47:58 2007  Koichi Sasada  <ko1@atdot.net>
14138         * bootstraptest/test_syntax.rb: add a test.
14140 Thu Dec 20 09:40:51 2007  Koichi Sasada  <ko1@atdot.net>
14142         * compile.c (iseq_compile_each/NODE_RETURN): fix stack consistency.
14144 Thu Dec 20 09:42:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14146         * bignum.c (big2str_orig): access beyond memory region cause crash
14147           on interrupt.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in
14148           [ruby-dev:32651].  [ruby-dev:32641]
14150 Thu Dec 20 09:06:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14152         * string.c (rb_str_index): wrong starting position.
14154 Thu Dec 20 06:34:27 2007  Koichi Sasada  <ko1@atdot.net>
14156         * compile.c (iseq_compile_each): add pop after throw as return.
14158         * bootstraptest/test_knownbug.rb, test_syntax.rb: move resolved test.
14160         * vm_core.h, iseq.c, compile.h: add debug output code.
14162 Thu Dec 20 04:57:18 2007  Koichi Sasada  <ko1@atdot.net>
14164         * compile.c (iseq_compile_each): remove unused retry entry.
14166 Thu Dec 20 04:15:41 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14168         * */Makefile.sub (DEFS, RM): output to config.status.
14170 Thu Dec 20 02:59:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14172         * common.mk (encs): create encoding directory.
14174 Thu Dec 20 02:50:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14176         * enc/iso8859_{1..16}.c: adjust for ruby.
14178 Thu Dec 20 02:28:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14180         * enc/iso8859_{1..16}.c: imported from Onigiruma 5.9.0.
14182 Thu Dec 20 02:23:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14184         * enc/Makefile.in (RM): added.
14186         * enc/depend (encs): sort in alpha-numeric order.
14188         * enc/depend (clean, distclean): added.
14190 Thu Dec 20 01:10:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14192         * compile.c (iseq_compile_each): should handle upper level eval iseq
14193           from break/next, and COMPILE_ERROR() breaks only one block.
14194           [ruby-dev:31372]
14196 Thu Dec 20 00:07:36 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
14198         * test/drb/drbtest.rb (test_07_public_private_protected_missing):
14199           followed current Ruby specification.
14201 Wed Dec 19 23:57:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14203         * dir.c (dir_inspect, dir_path, dir_tell): check for frozen and closed
14204           is not needed.  [ruby-dev:32640]
14206 Wed Dec 19 22:59:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14208         * string.c (str_sublen): adjust position if position is not at the
14209           head of a character.
14211         * string.c (rb_str_chomp_bang): check if match start at the head
14212           of a character.
14214         * string.c (rb_str_chomp_bang): wrong adjust condition.
14216         * string.c (rb_str_rindex): comparison length should be based on
14217           bytes, not characters.
14219         * string.c (rb_str_rindex_m): too much adjustment.
14221         * re.c (reg_match_pos): pos adjustment should be based on
14222           characters.
14224         * test/ruby/test_m17n.rb (TestM17N::test_str_insert): test updated
14225           to check negative offset behavior.
14227         * string.c (rb_str_each_line): should consider rslen.
14229         * string.c (rb_str_buf_append): should propagate encoding.
14231         * string.c (rb_str_each_line): ditto.
14233         * test/ruby/test_m17n.rb (TestM17N::test_str_each_line): should
14234           check encoding as well.
14236         * test/ruby/test_m17n.rb (TestM17N::test_str_each_line): empty
14237           array can not propagate encoding;  should not check.
14239 Wed Dec 19 21:42:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14241         * re.c (rb_reg_regsub): should set checked encoding.
14243         * string.c (rb_str_sub_bang): applied r14212 too.
14245 Wed Dec 19 20:40:01 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14247         * bignum.c (bigmul1): C99ism.
14249         * bignum.c (bigdivrem1): need dummy return value.
14251 Wed Dec 19 19:18:06 2007  NARUSE, Yui <naruse@ruby-lang.org>
14253         * ext/nkf/nkf-utf8/nkf.c: Updated.
14255         * ext/nkf/nkf.c (rb_nkf_enc_get): added.
14256           (find encoding or replicate default encoding)
14258         * ext/nkf/nkf.c (NKF::<ENCODING>): redefine encoding constant.
14260         * ext/nkf/lib/kconv.rb (Kconv::<ENCODING>): redefined as Encoding.
14262         * ext/nkf/lib/kconv.rb: refactoring.
14264 Wed Dec 19 19:11:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14266         * bignum.c (rb_big_mul0): blocking check for bigger numbers.
14267           a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32632].
14269         * bignum.c (bigdivrem): ditto.
14271 Wed Dec 19 17:34:50 2007  Koichi Sasada  <ko1@atdot.net>
14273         * compile.c (iseq_compile_each): remove "retry" in block.
14274           ("iter{retry}" cause syntax error)
14275           Currently, "begin; ...; rescue; iter{retry}; end" cause
14276           syntax error too.
14278         * bootstraptest/test_jump.rb: ditto.
14280         * lib/drb/invokemethod.rb: ditto.
14282         * sample/drb/darrayc.rb: ditto.
14284         * sample/test.rb: ditto.
14286         * test/drb/drbtest.rb: ditto.
14288         * test/ruby/test_iterator.rb: ditto.
14290         * sample/test.rb: add a 'test' directory on the SYSTEM test.
14292 Wed Dec 19 17:12:59 2007  Koichi Sasada  <ko1@atdot.net>
14294         * bootstraptest/test_knownbug.rb, test_block.rb:
14295           move fixed bug.
14297         * bootstraptest/test_m17n.rb: added.
14299 Wed Dec 19 16:59:55 2007  Koichi Sasada  <ko1@atdot.net>
14301         * eval.c (errinfo_place): skip if error is Fixnum.  [ruby-dev:32608]
14303         * bootstraptest/test_exception.rb, test_known_bug.rb: move fixed bug.
14305 Wed Dec 19 16:31:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14307         * parse.y (reg_named_capture_assign_iter): remove C99 dependency.
14309         * parse.y (reg_named_capture_assign_iter): get rid of creating
14310           unnecessary ID.
14312         * parse.y (rb_enc_symname2_p): check for non-nul-terminated string.
14314 Wed Dec 19 15:37:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14316         * insnhelper.ci (vm_yield_with_cfunc): call cfunc with
14317            (argv[0], data, argc, argv) to pass all arguments.
14319         * enumerator.c (enumerator_each_i): adapted to new calling
14320           convention.
14322 Wed Dec 19 15:13:20 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14324         * string.c (rb_str_justify): should propagate encoding from pad
14325           string too.
14327 Wed Dec 19 13:57:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14329         * configure.in (TIMEZONE_VOID): check whether timezone requires zero
14330           arguments.  [ruby-dev:32631]
14332 Wed Dec 19 13:22:14 2007  NARUSE, Yui <naruse@ruby-lang.org>
14334         * ext/nkf/nkf.c (NKF::_ENCODING): removed.
14336         * ext/nkf/nkf.c (rb_nkf_kconv): renamed to rb_nkf_convert.
14338         * ext/nkf/nkf.c (rb_nkf_convert): set encoding.
14340         * ext/nkf/nkf.c (rb_nkf_guess1): removed.
14342         * ext/nkf/nkf.c (rb_nkf_guess2): renamed to rb_nkf_guess.
14344         * ext/nkf/nkf.c (rb_nkf_guess):
14345           guess method now returns encoding object.
14347         * ext/nkf/nkf-utf8/nkf.c: Update to nkf 2.0.8 2007-12-19.
14349 Wed Dec 19 10:52:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14351         * bignum.c (rb_cstr_to_inum): an underscore succeeding after octal
14352           prefix is allowed.  [ruby-core:14139]
14354 Wed Dec 19 00:09:19 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14356         * bignum.c (rb_cstr_to_inum): wrong radix check.  a patch from
14357           Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32628].
14359         * bignum.c (big2str_find_n1): ditto.
14361 Tue Dec 18 23:53:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14363         * compile.c (iseq_compile_each): fix for segfault.  [ruby-dev:31372]
14365 Tue Dec 18 23:44:32 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14367         * test/net/http/utils.rb: split TestNetHTTPUtils module from
14368           test/net/http/test_http.rb. and start HTTP server in each test case.
14370 Tue Dec 18 23:27:51 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14372         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
14373           should rescue Errno::EINVAL from TCPServer#accept. this exception
14374           might occur if the server socket is not in ready to listen.
14376         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
14377           don't call TCPServer#close if the :ShutdownSocketWithoutClose is set.
14379         * lib/webrick/config.rb (WEBrick::Config::General): add new parameter
14380           :ShutdownSocketWithoutClose.
14382 Tue Dec 18 22:51:47 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14384         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLServer#shutdown):
14385           new method which calls TCPSocket#shutdown of the underlying socket.
14387 Tue Dec 18 22:11:50 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14389         * lib/rss/parser.rb, lib/rss/atom.rb, lib/rss/rss.rb,
14390           test/rss/rss-assertions.rb, test/rss/test_atom.rb: use
14391           pack/unpack("m") instead of base64 library.
14393         * lib/webrick/httpproxy.rb: use delete("\n") instead of chomp/chop
14394           because the result of pack("m") might be multi-line.
14396 Tue Dec 18 22:12:35 2007  Koichi Sasada  <ko1@atdot.net>
14398         * insnhelper.ci, vm.c: rewrite sp manipulation around method/block
14399           invocation.  [ruby-dev:32547]
14401 Tue Dec 18 22:11:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14403         * ext/dl/win32/lib/win32/sspi.rb: use pack/unpack("m") instead of
14404           base64 library which was already removed.
14406 Tue Dec 18 21:09:23 2007  Koichi Sasada  <ko1@atdot.net>
14408         * vm.c (invoke_block): merge 2 stack overflow checks.
14410 Tue Dec 18 20:58:35 2007  Koichi Sasada  <ko1@atdot.net>
14412         * compile.c, insnhelper.ci, insns.def, object.c, vm.c, vm.h:
14413           optimize !@, != method invocation.
14415         * id.c, id.h: ditto.
14417         * bootstraptest/test_syntax.rb: add tests for above.
14419 Tue Dec 18 18:10:05 2007  Koichi Sasada  <ko1@atdot.net>
14421         * bootstraptest/test_knownbug.rb: add issues.
14423 Tue Dec 18 20:22:44 2007  Tanaka Akira  <akr@fsij.org>
14425         * parse.y (arg tMATCH arg): call reg_named_capture_assign_gen if regexp
14426           literal is used.
14427           (reg_named_capture_assign_gen): assign the result of named capture
14428           into local variables.
14429           [ruby-dev:32588]
14431         * re.c: document the assignment by named captures.
14433 Tue Dec 18 18:09:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14435         * string.c (rb_str_splice): propagate encoding.
14437         * string.c (rb_str_subpat_set): ditto.
14439 Tue Dec 18 17:27:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14441         * object.c (rb_obj_freeze): preserve frozen state of immediate
14442           values in internal hash table, a la generic_ivar.
14444         * object.c (rb_obj_frozen_p): check immediate values too.
14446         * variable.c (generic_ivar_set): add frozen check fro immediate
14447           values.
14449 Tue Dec 18 17:04:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14451         * transcode.c (rb_str_transcode_bang, rb_str_transcode): set new
14452           encoding even if no conversion is done because of 7bit only.
14453           [ruby-dev:32591]
14455 Tue Dec 18 15:43:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14457         * common.mk (encs, ext/ripper/ripper.c): other options must come
14458           before MAKEFLAGS in GNU make.
14460 Tue Dec 18 15:19:55 2007  Eric Hodel  <drbrain@segment7.net>
14462         * lib/rdoc/parsers/parse_rb.rb: Don't call private fail anymore.
14464 Tue Dec 18 15:17:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14466         * common.mk (encs, ext/ripper/ripper.c): pass MAKEFLAGS.
14468 Tue Dec 18 14:45:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14470         * parse.y (op_tbl): remove duplication to avoid symbol aliases.
14472 Tue Dec 18 14:39:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14474         * string.c (str_nth): need not to raise out-of-range exception.
14476         * test/ruby/test_m17n.rb (TestM17N::test_str_aref_len): removed
14477           debug print.
14479 Tue Dec 18 14:05:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14481         * enc/depend: get rid of target expanded as empty for nmake.
14483 Tue Dec 18 07:56:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14485         * proc.c (rb_obj_public_method): Object#public_method to retrieve
14486           public method object.
14488         * proc.c (rb_mod_public_instance_method): Module#public_instance_method
14489           to retrieve public instance method from class / module.
14491         * proc.c (mnew): visibility check added.
14493         * eval_error.ci (rb_print_undef): add rb_ prefix.
14495         * eval_error.ci (rb_print_undef): add visibility in the error
14496           message.
14498 Tue Dec 18 05:54:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14500         * lib/Env.rb, lib/base64.rb, lib/importenv.rb, lib/eregex.rb: removed.
14502         * lib/ping.rb, lib/readbytes.rb: removed
14504 Tue Dec 18 02:30:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14506         * configure.in (BUILTIN_ENCS): removed.
14508         * common.mk (enc.mk): pass BUILTIN_ENCS from command line.
14510         * enc/depend: ditto.
14512         * enc/make_encmake.rb: ditto.
14514 Tue Dec 18 01:46:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14516         * sprintf.c (rb_str_format): need to clear output buffer to avoid
14517           broken encoding compatibility check.
14519 Tue Dec 18 01:40:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14521         * lib/mkmf.rb (depend_rules): inserts ruby to only headers.
14523 Tue Dec 18 01:21:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14525         * parse.y (parser_encode_length): chomp eol style modifiers.
14527         * parse.y (parser_magic_comment): ditto.
14529         * parse.y (set_file_encoding): ditto.
14531 Tue Dec 18 01:15:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14533         * common.mk (encs): added dependencies.
14535         * enc/Makefile.in, enc/depend, enc/make_encmake.rb: moved serb code.
14537         * lib/mkmf.rb (depend_rules): now takes content string, not file name.
14539         * win32/enc-setup.mak: overrides default target.
14541 Tue Dec 18 00:26:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14543         * re.c (rb_reg_initialize): raise error if non-Unicode fixed
14544           encoding option is specified for regexp literals with \u{}
14545           escapes.
14547         * string.c (rb_str_squeeze_bang): should squeeze multibyte
14548           characters as well.
14550 Mon Dec 17 21:41:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14552         * win32/enc-setup.mak: extracts BUILTIN_ENCOBJS.
14554         * tool/compile_prelude.rb: needs srcdir.
14556 Mon Dec 17 21:24:04 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14558         * common.mk (miniprelude.c): add -I$(srcdir).
14560 Mon Dec 17 20:53:27 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14562         * ext/openssl/ossl_ssl.c (ossl_sslctx_set_ssl_version):
14563           new method OpenSSL::SSL::SSLContext#ssl_version to wrap
14564           SSL_CTX_set_ssl_version.
14566         * ext/openssl/ossl_ssl.c (ossl_ssl_get_verify_result):
14567           new method OpenSSL::SSL::SSLSocket#verify_result to wrap
14568           SSL_get_verify_result.
14570         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLContext.build):
14571           new method to build OpenSSL::SSL::SSLContext with Hash parameters.
14572           this method provides safety default parameters than SSLContext.new.
14574         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL.verify_certificate_identity):
14575           new module function: pull out identity verification process
14576           from OpenSSL::SSL::SSLSocket#post_connection_check.
14578 Mon Dec 17 18:42:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14580         * string.c (scan_once): need no encoding compatibility check.
14581           it's done inside of re_reg_search().
14583         * string.c (rb_str_split_m): ditto.
14585         * re.c (rb_reg_regsub): ditto.
14587 Mon Dec 17 17:50:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14589         * string.c (rb_str_index): check if substring is broken.
14591         * string.c (rb_str_rindex): ditto.
14593         * string.c (rb_str_succ): should carry over.
14595 Mon Dec 17 17:47:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14597         * common.mk (encs): new target to compile external encodings.
14599         * enc/Makefile.in: became a serb template.
14601         * enc/make_encmake.rb: creates enc.mk from enc/Makefile.in using serb.
14603         * lib/mkmf.rb (relative_from): moved from ext/extmk.rb.
14605         * lib/mkmf.rb ($extmk): true if under to top source directory, not
14606           only ext.
14608         * lib/mkmf.rb (depend_rules): extracted from create_makefile.
14610         * tool/serb.rb (serb): splitted from tool/compile_prelude.rb.
14612 Mon Dec 17 17:32:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14614         * configure.in (MAKEFILES): removed enc/Makefile.
14616         * configure.in (EXTERNAL_ENCOBJS, ENCSOS): removed.
14618         * enc/Makefile.in (BUILTIN_ENCS): includes .c suffix.
14620         * enc/depend: splitted from Makefile.in.
14622         * {bcc32,win32,wince}/setup.mak (-encs-): extracts BUILTIN_ENCOBJS.
14624 Mon Dec 17 17:07:53 2007  Tanaka Akira  <akr@fsij.org>
14626         * string.c (rb_enc_str_asciionly_p): use rb_enc_str_coderange.
14628 Mon Dec 17 16:39:25 2007  Tanaka Akira  <akr@fsij.org>
14630         * string.c (rb_enc_str_coderange): set ENC_CODERANGE_BROKEN using
14631           rb_enc_precise_mbclen.
14632           (rb_str_valid_encoding_p): just check coderange is
14633           ENC_CODERANGE_BROKEN or not.
14635 Mon Dec 17 16:04:16 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14637         * ext/openssl/lib/openssl/buffering.rb (Buffering#gets): added second
14638           optional argument to specify maximum length limit.
14640 Mon Dec 17 16:02:30 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14642         * lib/webrick/httprequest.rb, lib/webrick/cgi.rb: Request-Line or
14643           header fields should be read with maximum length. [ruby-talk:231745]
14645 Mon Dec 17 14:03:39 2007  Tanaka Akira  <akr@fsij.org>
14647         * include/ruby/encoding.h (ENC_CODERANGE_VALID): rename from
14648           ENC_CODERANGE_8BIT.
14650         * string.c (rb_enc_str_coderange): follow the renaming.
14652 Mon Dec 17 13:56:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14654         * string.c (tr_find): wrong condition fixed.
14656         * sprintf.c (rb_str_format): check encoding based on result, not
14657           the format string.
14659         * string.c (rb_str_upto): add encoding check.
14661 Mon Dec 17 12:21:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14663         * Makefile.in (RUNRUBY): added RUNRUBYOPT.
14665 Mon Dec 17 11:38:59 2007  Tanaka Akira  <akr@fsij.org>
14667         * thread_win32.ci (native_thread_create): initialize
14668           th->machine_stack_maxsize as rb_gc_stack_maxsize.
14670 Sun Dec 16 17:07:35 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
14672         * transcode.c (transcode_loop): removed special case (-1)
14673           for undefined conversions.
14675         * transcode_data_iso_8859.c: Changed from character constants
14676           ('\xC2') to integer constants (0xC2) for shorter files and
14677           better readability; eliminated duplicated tables; changed
14678           from -1 offset to actual UNDEF entry (not yet distinguishing
14679           UNDEF and ILLEGAL correctly).
14681         * test/ruby/test_transcode.rb: added a test for UNDEF conversion.
14683 Sun Dec 16 14:51:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14685         * configure.in (MAKEFILES): should be enc/Makefile, not GNUmakefile.
14686           [ruby-dev:32609]
14688         * configure.in (BUILTIN_ENCS): removed escapes for OpenBSD.
14690 Sat Dec 15 23:58:46 2007  Tanaka Akira  <akr@fsij.org>
14692         * test/openssl/test_pair.rb (SSLPair#ssl_pair): join the thread, even
14693           on an error.
14695 Sat Dec 15 23:50:31 2007  Tanaka Akira  <akr@fsij.org>
14697         * test/xmlrpc/webrick_testing.rb: join webrick server thread.
14699 Sat Dec 15 22:27:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14701         * configure.in (BUILTIN_ENCS): splitted command line instead of
14702           semicolons for Solaris.
14704 Sat Dec 15 21:38:24 2007  Tanaka Akira  <akr@fsij.org>
14706         * lib/timeout.rb: join the background thread to make sure it is dead.
14708 Sat Dec 15 20:20:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14710         * configure.in (enc/Makefile): add external encoding objects list.
14712         * common.mk (BUILTIN_ENCOBJS): renamed from ENCOBJS.
14714         * configure.in (BUILTIN_ENCS): [] needs to be enclosed because of m4.
14716         * Makefile.in (BUILTIN_ENCOBJS): substituted by autoconf.
14718         * enc/Makefile.in: new file to compile external encoding sources.
14720         * encoding.c (rb_enc_find_index): auto-load external encoding objects
14721           as "ext/ENCODING_NAME".  [ruby-dev:32606]
14723 Sat Dec 15 13:04:30 2007  Tanaka Akira  <akr@fsij.org>
14725         * vm_core.h (rb_thread_t): new member machine_stack_maxsize and
14726           machine_register_stack_maxsize.
14728         * gc.c (rb_gc_stack_maxsize): new global variable for the thread size
14729           of the main thread.
14730           (STACK_LEVEL_MAX): use machine_stack_maxsize of current thread.
14731           (ruby_stack_check): check IA64 register stack.
14732           (ruby_set_stack_size): set rb_gc_stack_maxsize.
14733           (Init_stack): set rb_gc_stack_maxsize.
14735         * thread_pthread.ci (native_thread_create): initialize
14736           th->machine_stack_maxsize and th->machine_register_stack_maxsize.
14738         * vm.c (Init_BareVM): initialize th->machine_stack_maxsize and
14739           th->machine_register_stack_maxsize.
14741         * thread_win32.ci (native_thread_create): initialize
14742           th->machine_stack_maxsize.  not tested.  just a guess at all.
14744         [ruby-dev:32604]
14746 Sat Dec 15 12:58:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14748         * encoding.c (rb_enc_register, rb_enc_replicate, rb_enc_alias): check
14749           if already registered.
14751 Sat Dec 15 01:57:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14753         * lib/rdoc/options.rb (Options::parse): do not access $KCODE any
14754           longer.  [ruby-core:14079]
14756         * lib/irb/init.rb (IRB::IRB.parse_opts): ditto.
14758         * lib/cgi.rb (CGI::CGI): ditto.
14760 Fri Dec 14 18:18:31 2007  Tanaka Akira  <akr@fsij.org>
14762         * thread_pthread.ci (native_thread_create): twice the stack size.
14763           512KB is not enough to complete test-all on Debian GNU/Linux on
14764           IA64.
14766 Fri Dec 14 16:10:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14768         * io.c (rb_f_p): RDoc update.  a patch from murphy <murphy AT rubychan.de>.
14769           [ruby-core:14010]
14771 Fri Dec 14 16:06:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14773         * string.c (rb_str_cmp): encoding aware comparison.
14775         * string.c (rb_str_casecmp): ditto.
14777 Fri Dec 14 15:25:30 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
14779         * transcode.c (encoding_equal): new function.
14781         * transcode.c (str_transcode, transcode_dispatch): added two-step
14782           conversion logic via UTF-8.
14784         * transcode.c: some minor formatting fixes
14786         * transcode_data.h, transcode_data_iso_8859.c: Shortened
14787           extremely frequently used macros to shorten file length.
14789         * test/ruby/test_transcode.rb: Fixed name of test class;
14790           added setup method to ensure all necessary encodings exist;
14791           split tests into more test methods; added tests; fixed ordering
14792           of arguments in assert_equal to have expected result first.
14794 Fri Dec 14 13:47:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14796         * common.mk (ruby.imp): fix for circular dependency.  a patch from
14797           Yutaka Kanemoto <kinpoco AT gmail.com> in [ruby-dev:32590].
14799         * regint.h, st.c, ext/json/ext/generator/generator.c: suppress
14800           warnings on AIX.
14802 Fri Dec 14 12:36:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14804         * configure.in (RUBY_CHECK_VARTYPE): check if a variable is defined
14805           and its type.
14807         * configure.in (timezone, altzone): check for recent cygwin.
14809         * missing/strftime.c (strftime): fix for timezone.  [ruby-dev:32536]
14811         * lib/mkmf.rb (try_var): should fail for functions.
14813         * ext/readline/extconf.rb: should use have_func for functions instead
14814           of have_var.
14816 Fri Dec 14 10:25:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14818         * lib/e2mmap.rb (Exception2MessageMapper::E2MM.Raise): $! no
14819           longer modifiable in 1.9.
14821 Fri Dec 14 08:17:24 2007  Tanaka Akira  <akr@fsij.org>
14823         * eval.c (rb_protect): restore root_jmpbuf even if proc exits by
14824           break such as dbm.delete_if { break }.
14826 Fri Dec 14 02:55:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14828         * string.c (str_nth): direct jump if string is 7bit only.  great
14829           performance boost for worst case.
14831         * string.c (str_strlen): direct size if string is 7bit only.
14833 Fri Dec 14 02:29:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14835         * encoding.c (rb_enc_compatible): 1st argument (typically the
14836           receiver) would have higher priority in encoding detection.
14838 Fri Dec 14 02:05:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14840         * io.c (rb_io_synchronized): should check if initialized.
14841           [ruby-dev:32585]
14843 Fri Dec 14 00:54:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14845         * re.c (rb_reg_initialize): embedded string may override encoding
14846           of the regular expression.
14848         * re.c (rb_reg_initialize): fix encoding of regular expression if
14849           embedded string has its own encoding specified.
14851 Thu Dec 13 22:16:46 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14853         * encoding.c (rb_enc_compatible): encoding should never fall back
14854           to ASCII-8BIT unless both encodings are ASCII-8BIT.
14856 Thu Dec 13 20:31:28 2007  Tanaka Akira  <akr@fsij.org>
14858         * string.c (rb_str_shared_replace): make str noembed after free.
14860 Thu Dec 13 20:09:09 2007  Tanaka Akira  <akr@fsij.org>
14862         * eval.c (rb_protect): restore root_jmpbuf to avoid SEGV by
14863           'IO.pipe; [].each.next' with gcc version 3.3.5 (Debian 1:3.3.5-13)
14864           on IA64.
14866 Thu Dec 13 17:51:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14868         * string.c (rb_str_split_m): need not to check encoding if regexp
14869           is empty.
14871         * string.c (rb_str_justify): associate encoding of original to the
14872           result.
14874         * string.c (rb_str_chomp_bang): need to check encoding of record
14875           separator.
14877         * string.c (str_gsub): should copy encoding to the result.
14879         * sprintf.c (rb_str_format): ditto.
14881         * string.c (rb_str_succ): should not enter infinite loop for
14882           non-ASCII, non-alphanumeric character at the bottom.
14884 Thu Dec 13 17:03:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14886         * encoding.c (rb_enc_compatible): should swap encoding indexes too.
14888 Thu Dec 13 16:41:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14890         * encoding.c (rb_enc_compatible): should not judge compatibility
14891           based on rb_enc_asciicompat().
14893 Thu Dec 13 13:09:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14895         * include/ruby/io.h (MakeOpenFile): fptr->enc should be
14896           initialized to zero.  [ruby-dev:32569]
14898 Thu Dec 13 08:56:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14900         * io.c (rb_io_getc): use default external encoding if fptr->enc is
14901           not set.  [ruby-dev:32565]
14903         * lib/rubygems/package.rb (Gem::TarReader::Entry::rewind): typo fixed.
14904           [ruby-dev:32565]
14906 Thu Dec 13 08:24:16 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14908         * io.c (read_all): should associate default external encoding.
14910         * io.c (io_read): should NOT associate default external encoding.
14912 Wed Dec 12 23:22:58 2007  Tanaka Akira  <akr@fsij.org>
14914         * re.c, regerror.c, string.c, parse.y, ruby.c, file.c:
14915           use capital letter for \xHH notation.  [ruby-dev:32511]
14917 Wed Dec 12 22:21:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14919         * io.c (rb_io_mode_enc): allow specifying external encoding in
14920           open mode, e.g. open(path, "r:utf-8").
14922 Wed Dec 12 21:26:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14924         * eval_method.ci (rb_alias): no need to skip aliasing when new
14925           equals to old.  [ruby-core:13990]
14927 Wed Dec 12 16:34:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14929         * io.c (rb_io_check_readable): set default external encoding to
14930           STDIN.
14932         * io.c (io_enc_str): associate encoding to output string.
14934 Wed Dec 12 12:44:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14936         * parse.y (expr): 'not' and '!' should act as conditional
14937           expression.   [ruby-dev:32548]
14939 Wed Dec 12 12:11:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14941         * re.c (rb_reg_regsub): should copy encoding.
14943         * string.c (rb_str_sub_bang, str_gsub): should check and copy encoding
14944           to be replaced.
14946 Tue Dec 11 23:04:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14948         * pack.c (pack_pack): RDoc update.  a patch from Gary Wright
14949           <radar2002 AT gmail.com>.  [ruby-core:13998]
14951         * pack.c (pack_unpack): ditto.
14953 Tue Dec 11 16:37:47 2007  Tanaka Akira  <akr@fsij.org>
14955         * encoding.c (rb_enc_ascget): renamed from rb_enc_get_ascii.
14957         * include/ruby/encoding.h: follow the renaming.
14959         * re.c: ditto.
14961 Tue Dec 11 16:19:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14963         * Makefile.in, */Makefile.sub (CP, MV): added.
14965         * common.mk (.y.c): not discard the old target until successfully
14966           created.
14968 Tue Dec 11 15:20:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14970         * object.c (Init_Object): singleton_method_{added,removed,undefined}
14971           hooks should be defined for BasicObject.  [ruby-dev:32531]
14973         * eval.c (Init_eval): method_missing should be defined for all
14974           objects; moved to BasicObject.
14976 Tue Dec 11 14:27:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14978         * transcode.c (transcode_loop): get rid of SEGV at sequence can not be
14979           converted.
14981         * transcode.c (rb_str_transcode_bang): copy encoding.  [ruby-dev:32532]
14983         * test/ruby/test_transcode.rb: added tests from Martin Duerst <duerst
14984           AT it.aoyama.ac.jp>.  [ruby-dev:32532]
14986 Tue Dec 11 12:05:51 2007  Tanaka Akira  <akr@fsij.org>
14988         * encoding.c (rb_enc_get_ascii): add an argument to provide the
14989           length of the returned character.
14991         * include/ruby/encoding.h (rb_enc_get_ascii): add the argument.
14993         * re.c (rb_reg_expr_str): modify rb_enc_get_ascii call.
14994           (rb_reg_quote): ditto.
14995           (rb_reg_regsub): ditto.
14997 Tue Dec 11 09:40:21 2007  Tanaka Akira  <akr@fsij.org>
14999         * include/ruby/oniguruma.h (ONIGENC_CONSTRUCT_MBCLEN_NEEDMORE):
15000           parenthesize an argument.
15002 Tue Dec 11 02:23:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15004         * eval.c (rb_method_missing): RDoc update patch from Hugh Sasse
15005           <hgs AT dmu.ac.uk>.  [ruby-core:12932]
15007 Tue Dec 11 01:51:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15009         * lib/net/http.rb (Net::HTTP::get): now supports gzip
15010           content-encoding.  a patch from Hugh Sasse <hgs AT dmu.ac.uk>.
15011           [ruby-core:13451]
15013 Tue Dec 11 01:21:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15015         * parse.y (shadowing_lvar_gen): no duplicate error for "_".
15017 Mon Dec 10 22:08:47 2007  Akinori MUSHA  <knu@iDaemons.org>
15019         * array.c (rb_ary_slice_bang): If an invalid range is given, do
15020           not raise an exception but return nil just like slice() does.
15022 Mon Dec 10 21:47:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15024         * transcode.c (str_transcode): allow non-registered encodings.
15025           [ruby-dev:32520]
15027 Mon Dec 10 21:00:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15029         * array.c (rb_ary_slice_bang): should return nil if position out
15030           of range.  a patch from Akinori MUSHA <knu AT iDaemons.org>.
15031           [ruby-dev:32518]
15033 Mon Dec 10 19:02:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15035         * re.c (rb_reg_match): should calculate offset by converted
15036           operand.  [ruby-cvs:21416]
15038 Mon Dec 10 18:28:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15040         * lib/uri/common.rb (URI::REGEXP::PATTERN): typo in REG_NAME
15041           regular expression.  a patch from Ueda Satoshi
15042           <s-ueda AT livedoor.jp>.  [ruby-dev:32514]
15044 Mon Dec 10 17:46:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15046         * string.c (rb_str_tmp_new): creates hidden temporary buffer.
15048         * transcode.c (transcoding): added a pointer to function to flush.
15050         * transcode.c (transcode_loop): do not use string internal.
15051           [ruby-dev:32512]
15053         * transcode.c (str_transcode): allow Encoding objects.
15055         * transcode_data.h (BYTE_LOOKUP): use actual struct name.
15057 Mon Dec 10 16:52:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15059         * string.c (rb_str_insert): should not add length in bytes to index in
15060           chars.
15062 Mon Dec 10 14:33:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15064         * eval.c (rb_f_public_send): rename invoke_method to public_send.
15065           it now invokes public method only no matter how it's called.
15067 Mon Dec 10 14:00:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15069         * transcode.c: new file to provide encoding conversion features.
15070           code contributed by Martin Duerst.
15072 Mon Dec 10 13:50:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15074         * re.c (rb_reg_search): return byte offset.  [ruby-dev:32452]
15076         * re.c (rb_reg_match, rb_reg_match2, rb_reg_match_m): convert byte
15077           offset to char index.
15079         * string.c (rb_str_index): return byte offset.  [ruby-dev:32472]
15081         * string.c (rb_str_split_m): calculate in byte offset.
15083 Mon Dec 10 09:56:29 2007  Koichi Sasada  <ko1@atdot.net>
15085         * benchmark/bm_vm1_neq.rb, bm_vm1_not.rb: added.
15087 Mon Dec 10 07:48:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15089         * parse.y (parser_yylex): wrong token was generated.  [ruby-dev:32498]
15091         * object.c (rb_obj_not_match): wrong test.
15093 Mon Dec 10 06:44:47 2007  Tanaka Akira  <akr@fsij.org>
15095         * re.c (rb_reg_expr_str): use \xHH instead of \OOO.
15097         * regerror.c (to_ascii): ditto.
15098           (onig_snprintf_with_pattern): ditto.
15099           (onig_snprintf_with_pattern): ditto.
15101         * string.c (rb_str_inspect): ditto.
15102           (rb_str_dump): ditto.
15104         * parse.y (parser_yylex): ditto.
15106         * ruby.c (proc_options): ditto.
15108         * file.c (rb_f_test): ditto.
15110         [ruby-dev:32495]
15112 Mon Dec 10 06:41:00 2007  Tanaka Akira  <akr@fsij.org>
15114         * re.c (rb_reg_names): new method Regexp#names.
15115           (rb_reg_named_captures): new method Regexp#named_captures
15116           (match_regexp): new method MatchData#regexp.
15117           (match_names): new method MatchData#names.
15119         * lib/pp.rb (MatchData#pretty_print): show names of named captures.
15121         [ruby-dev:32493]
15123 Mon Dec 10 01:35:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15125         * parse.y (expr): redefinable not (!) operator.
15127         * parse.y (arg): ditto.
15129         * object.c (rb_obj_not): new method "!".
15131         * object.c (rb_obj_not_equal): new method "!=".
15133         * object.c (rb_obj_not_match): new method "!~".
15135 Sun Dec  9 22:31:36 2007  Tanaka Akira  <akr@fsij.org>
15137         * re.c (rb_reg_s_last_match): accept named capture's name.
15139 Sun Dec  9 15:57:53 2007  Tanaka Akira  <akr@fsij.org>
15141         * re.c (match_backref_number): new function for converting a backref
15142           name/number to an integer.
15143           (match_offset): use match_backref_number.
15144           (match_begin): ditto.
15145           (match_end): ditto.
15146           (name_to_backref_number): raise IndexError instead of RuntimeError.
15147           (match_inspect): show capture index.
15149 Sun Dec  9 14:59:15 2007  Koichi Sasada  <ko1@atdot.net>
15151         * eval_intern.h (CHECK_STACK_OVERFLOW): reserve frame size.
15152           [ruby-dev:32485]
15154 Sun Dec  9 14:38:25 2007  Koichi Sasada  <ko1@atdot.net>
15156         * vm.c (rb_thread_mark): use rb_gc_mark_maybe() for
15157           VM stack specified by mark_stack_len.  [ruby-dev:32462]
15159         * insnhelper.ci: clear vm stack extended by opt value.
15161 Sun Dec  9 14:08:47 2007  Tanaka Akira  <akr@fsij.org>
15163         * include/ruby/ruby.h (FilePathStringValue): defined.  similar to
15164           FilePathValue but no taint check.
15166         * file.c (rb_get_path_no_checksafe): implementation of
15167           FilePathStringValue.
15168           (rb_file_s_basename): use FilePathStringValue.
15169           (rb_file_s_dirname): ditto.
15170           (rb_file_s_extname): ditto.
15171           (rb_file_s_split): ditto.
15172           (rb_file_join): ditto.
15174         * dir.c (file_s_fnmatch): ditto.
15176 Sun Dec  9 12:49:34 2007  Tanaka Akira  <akr@fsij.org>
15178         * re.c (append_utf8): check unicode range.
15180 Sun Dec  9 12:39:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15182         * lib/cgi.rb (read_multipart): exclude blanks from header values.
15183           [ruby-list:44327]
15185 Sun Dec  9 12:18:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15187         * file.c (rb_get_path): use the original object if to_path method is
15188           not defined.  [ruby-dev:32473]
15190         * io.c (rb_f_open): call to_open on non-string objects, instead of
15191           to_str.  [ruby-dev:32473]
15193 Sun Dec  9 12:12:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15195         * string.c (tr_find): returns true if no characters to be removed is
15196           specified.
15198 Sun Dec  9 12:03:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15200         * parse.y (parser_magic_comment): delimits with a semicolon.
15202 Sun Dec  9 11:29:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15204         * string.c (tr_trans): get rid of segfaults when has multibytes but
15205           source sets have no multibytes.
15207 Sun Dec  9 04:01:28 2007  Tanaka Akira  <akr@fsij.org>
15209         * encoding.c (rb_enc_mbclen): return 1 if underlying implementation
15210           returns a length longer than e-p.
15211           (rb_enc_precise_mbclen): return needmore if underlying
15212           implementation returns a length longer than e-p.
15214 Sat Dec  8 17:59:40 2007  Tanaka Akira  <akr@fsij.org>
15216         * signal.c (posix_signal): return value.
15218 Sat Dec  8 17:22:16 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
15220         * test/openssl/test_pkcs7.rb: Remove redundant module namespace.
15222 Sat Dec  8 17:07:10 2007  Tanaka Akira  <akr@fsij.org>
15224         * ruby.c (proc_options): make rb_raise format as a string literal to
15225           avoid warning.
15227 Sat Dec  8 16:18:16 2007  Tanaka Akira  <akr@fsij.org>
15229         * re.c (rb_reg_check_preprocess): new function for validating regexp
15230           fragment.
15232         * parse.y (regexp): invoke reg_fragment_check.
15233           (reg_fragment_check): defined.
15234           (reg_fragment_check_gen): defined.
15236 Sat Dec  8 11:06:29 2007  Tanaka Akira  <akr@fsij.org>
15238         * encoding.c (rb_enc_mbclen): make it never fail.
15239           (rb_enc_nth): don't check the return value of rb_enc_mbclen.
15240           (rb_enc_strlen): ditto.
15241           (rb_enc_precise_mbclen): return needmore(1) if e <= p.
15242           (rb_enc_get_ascii): new function for extracting ASCII character.
15244         * include/ruby/encoding.h (rb_enc_get_ascii): declared.
15246         * include/ruby/regex.h (ismbchar): removed.
15248         * re.c (rb_reg_expr_str): use rb_enc_get_ascii.
15249           (unescape_escaped_nonascii): use rb_enc_precise_mbclen to determine
15250           the termination of escaped non-ASCII character.
15251           (unescape_nonascii): use rb_enc_precise_mbclen.
15252           (rb_reg_quote): use rb_enc_get_ascii.
15253           (rb_reg_regsub): use rb_enc_get_ascii.
15255         * string.c (rb_str_reverse) don't check the return value of
15256           rb_enc_mbclen.
15257           (rb_str_split_m): don't call rb_enc_mbclen with e <= p.
15259         * parse.y (is_identchar): use ISASCII.
15260           (parser_ismbchar): removed.
15261           (parser_precise_mbclen): new macro.
15262           (parser_isascii): new macro.
15263           (parser_tokadd_mbchar): use parser_precise_mbclen to check invalid
15264           character precisely.
15265           (parser_tokadd_string): use parser_isascii.
15266           (parser_yylex): ditto.
15267           (is_special_global_name): don't call is_identchar with e <= p.
15268           (rb_enc_symname_p): ditto.
15270           [ruby-dev:32455]
15272         * ext/tk/sample/tkextlib/vu/canvSticker2.rb: remove coding cookie
15273           because the encoding is not UTF-8.  [ruby-dev:32475]
15275 Fri Dec  7 20:21:35 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
15277         * ext/openssl/lib/net/ftptls.rb, ext/openssl/lib/net/telnets.rb:
15278           half-finished libraries are discontinued.
15280 Fri Dec  7 15:44:40 2007  Tanaka Akira  <akr@fsij.org>
15282         * lib/pp.rb: use Hash for recursion check as inspect.
15284 Fri Dec  7 15:04:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15286         * array.c (flatten): some performance improvements, based on a patch
15287           from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-core:13877].
15288           [ruby-core:13851]
15290         * thread.c (rb_exec_recursive): use Hash instead of Array for
15291           performance improvement.  [ruby-core:13898]
15293         * thread.c (recursive_pop): use object ID.
15295 Thu Dec  6 19:52:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15297         * parse.y (arg): typo fixed ("!" -> "|") in the ripper code.
15299 Thu Dec  6 19:48:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15301         * parse.y (arg): tUPLUS no longer works as identity operation any
15302           more.  inspired by [ruby-talk:265532].
15304 Thu Dec  6 18:22:11 2007  Tanaka Akira  <akr@fsij.org>
15306         * encoding.c (rb_enc_precise_mbclen): new function for mbclen with
15307           validation.
15309         * include/ruby/encoding.h (rb_enc_precise_mbclen): declared.
15310           (MBCLEN_CHARFOUND): new macro.
15311           (MBCLEN_INVALID): new macro.
15312           (MBCLEN_NEEDMORE): new macro.
15314         * include/ruby/oniguruma.h (OnigEncodingTypeST): replace mbc_enc_len
15315           by precise_mbc_enc_len.
15316           (ONIGENC_PRECISE_MBC_ENC_LEN): new macro.
15317           (ONIGENC_CONSTRUCT_MBCLEN_CHARFOUND): new macro.
15318           (ONIGENC_CONSTRUCT_MBCLEN_INVALID): new macro.
15319           (ONIGENC_CONSTRUCT_MBCLEN_NEEDMORE): new macro.
15320           (ONIGENC_MBCLEN_CHARFOUND): new macro.
15321           (ONIGENC_MBCLEN_INVALID): new macro.
15322           (ONIGENC_MBCLEN_NEEDMORE): new macro.
15323           (ONIGENC_MBC_ENC_LEN): use ONIGENC_PRECISE_MBC_ENC_LEN.
15325         * enc/euc_jp.c: validation implemented.
15327         * enc/sjis.c: ditto.
15329         * enc/utf8.c: ditto.
15331         * string.c (rb_str_inspect): use rb_enc_precise_mbclen for invalid
15332           encoding.
15333           (rb_str_valid_encoding_p): new method String#valid_encoding?.
15335         * io.c (rb_io_getc): use rb_enc_precise_mbclen.
15337         [ruby-dev:32438]
15339 Thu Dec  6 01:37:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15341         * regparse.c (i_apply_case_fold): fix for negative character class.  a
15342           patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-core:13884].
15344 Thu Dec  6 01:00:38 2007  NARUSE, Yui <naruse@ruby-lang.org>
15346         * ext/iconv/iconv.c (iconv_s_list): support NetBSD/Citrus iconv.
15348 Wed Dec  5 16:18:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15350         * proc.c (rb_proc_s_new): call initialize.  [ruby-core:13824]
15352         * proc.c (rb_proc_location): return file name and line number where
15353           the proc is defined.
15355         * thread.c (thread_s_new): call initialize.  [ruby-core:13835]
15357         * thread.c (thread_initialize): split initialize method.
15359 Wed Dec  5 15:25:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15361         * parse.y (rb_intern3): fix to changing encoding to default, and
15362           uncommented r13835, which is rare but not impossible.
15364 Wed Dec  5 15:15:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15366         * range.c (step_i, range_step): support non-fixnum steps.
15367           [ruby-talk:282100]
15369 Wed Dec  5 14:25:11 2007  Koichi Sasada  <ko1@atdot.net>
15371         * compile.c (iseq_compile_each): fix typo.
15373 Wed Dec  5 13:41:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15375         * parse.y (yycompile): get rid of tracing while parsing.
15376           [ruby-dev:31351]
15378         * thread.c (ruby_suppress_tracing): added a new parameter, which
15379           directs to call func always.
15381 Tue Dec  4 19:56:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15383         * ext/iconv/iconv.c (iconv_convert): should not set encoding unless
15384           the target encoding is supported.  [ruby-dev:32451]
15386 Tue Dec  4 17:34:17 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15388         * ext/nkf/lib/kconv.rb (tojis, tosjis, toeuc, toutf8):
15389           set encoding. [ruby-dev:32447]
15391 Tue Dec  4 17:07:25 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15393         * lib/json.rb, lib/json/*: moved to ext/json/lib.
15395 Tue Dec  4 16:34:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15397         * ext/iconv/iconv.c (iconv_create): achieve target encoding.
15399         * ext/iconv/iconv.c (iconv_convert, iconv_finish, iconv_iconv,
15400           iconv_conv): set result string encoding.  [ruby-dev:32446]
15402         * ext/iconv/iconv.c (iconv_initialize, iconv_s_open): set encoding to
15403           Iconv instance.
15405 Tue Dec  4 14:34:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15407         * ruby.c (process_options): reverted c flag.
15409 Tue Dec  4 11:23:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15411         * bignum.c (rb_cstr_to_inum): trailing spaces may exist at squeezing
15412           preceding 0s.  [ruby-core:13873]
15414 Mon Dec  3 11:51:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15416         * ext/Win32API/*: removed or moved to ext/dl/win32.
15418         * ext/dl/win32/*: new. [ruby-dev:32387]
15420 Sun Dec  2 22:08:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15422         * parse.y (parser_tokadd_mbchar): fix for ASCII chars.  [ruby-dev:32432]
15424         * parse.y (parser_parse_string, parser_here_document): prevent false
15425           error messages.
15427 Sun Dec  2 20:43:22 2007  Tanaka Akira  <akr@fsij.org>
15429         * re.c (unescape_escaped_nonascii): fix mbclen argument.
15431 Sun Dec  2 15:47:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15433         * parse.y (parser_tokadd_mbchar): check insufficient multibyte char.
15434           [ruby-dev:32429]
15436 Sun Dec  2 15:42:16 2007  Kouhei Sutou  <kou@cozmixng.org>
15438         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.1 -> 0.2.2.
15440         * lib/rss/maker/itunes.rb: fixed new_itunes_category.
15441         * lib/rss/maker/taxonomy.rb: new_taxo_topic -> new_topic because
15442           of consistency.
15444         * test/rss/test_maker_itunes.rb, test/rss/test_itunes.rb: removed
15445           needless UTF-8 characters.
15447 Sun Dec  2 15:18:37 2007  Koichi Sasada  <ko1@atdot.net>
15449         * insnhelper.ci (vm_callee_setup_arg): fix error message.
15450           [ruby-dev:32430]
15452 Sun Dec  2 09:12:48 2007  Tanaka Akira  <akr@fsij.org>
15454         * parse.y (regexp): fix /#{}\xa1\xa2/e to be EUC-JP.
15455           (reg_fragment_setenc_gen): extracted from reg_compile_gen.
15457 Sun Dec  2 01:39:51 2007  Tanaka Akira  <akr@fsij.org>
15459         * include/ruby/intern.h (rb_uv_to_utf8): declared.
15461         * re.c (rb_reg_preprocess): new function for dynamic regexp with
15462           \u{} such as Regexp.new("\\u{6666}").
15463           (rb_reg_prepare_re): preprocess regexp for recompiling.
15464           (read_escaped_byte): new function.
15465           (unescape_escaped_nonascii): new function.
15466           (append_utf8): new function.
15467           (unescape_unicode_list): new function.
15468           (unescape_unicode_bmp): new function.
15469           (unescape_nonascii): new function.
15470           (rb_reg_initialize): preprocess regexp.
15472         * pack.c (rb_uv_to_utf8): renamed from uv_to_utf8.
15474         * parse.y (STR_NEW3): take func instead of has8 and hasmb.
15475           (parser_str_new): use default coderange mechanism except for regexp.
15476           (parser_tokadd_utf8): copy regexp source as-is.
15477           (parser_read_escape): UTF-8 stuff removed.
15478           (parser_tokadd_escape): has8bit and hasmb removed.
15479           (parser_tokadd_string): fix 8-bit single byte character with \u.
15480           (parser_parse_string): has8bit and hasmb removed.
15481           (parser_here_document): has8bit and hasmb removed.
15482           (parser_yylex): call parser_tokadd_utf8 instead of read_escape for
15483           UTF-8 character.
15485 Wed Dec  2 01:00:07 2007  James Edward Gray II  <jeg2@ruby-lang.org>
15487         * lib/xmlrpc/server.rb (XMLRPC::Server#server): Improve signal handling so
15488           pressing control-c in the controlling terminal or sending SIGTERM stops
15489           the XML-RPC server.
15491 Sat Dec  1 23:04:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15493         * encoding.c: rename primary_encoding -> default_external (encoding).
15495 Sat Dec  1 19:52:57 2007  Tadayoshi Funaba  <tadf@dotrb.org>
15497         * lib/date.rb (Time#to_datetime): use nsec instead of usec.
15499         * lib/date.rb (DateTime#to_time): second minute as an argument to
15500           Time::utc contains fractional part in rational; hence Time
15501           object may keep resolution at most nanosecond.
15503 Sat Dec  1 14:36:05 2007  Koichi Sasada  <ko1@atdot.net>
15505         * bootstraptest/test_knownbug.rb: move fixed bugs.
15507         * test/ruby/test_sprintf.rb: ditto.
15509         * test/yaml/test_yaml.rb: ditto.
15511 Sat Dec  1 13:24:47 2007  Koichi Sasada  <ko1@atdot.net>
15513         * insnhelper.ci (vm_yield_with_cfunc): fix to passing argc on third
15514           parameter of IFUNC.  [ruby-dev:32329]
15516         * enumerator.c: fix to pass exact number of argument.
15518         * eval.c (rb_yield_values2): added.
15520         * include/ruby/ruby.h: ditto.
15522         * bootstraptest/test_knownbug.rb: move a fixed test.
15524         * bootstraptest/test_block.rb: ditto.
15526 Sat Dec  1 10:45:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15528         * io.c (rb_f_open): use to_open for every non-string object.  path
15529           object may use method_missing.
15531 Sat Dec  1 09:44:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15533         * insns.def (concatarray, splatarray): use to_a instead of
15534           to_splat.
15536         * insnhelper.ci (caller_setup_args): ditto.
15538 Sat Dec  1 03:34:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15540         * parse.y (newline_node): always remove NODE_BEGIN.
15542 Fri Nov 30 23:48:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15544         * signal.c (ruby_signal): use SA_SIGINFO if available.
15545           [ ruby-Patches-6418 ]
15547 Fri Nov 30 22:52:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15549         * signal.c (trap_signm): SIGVTALRM no longer used for green
15550           thread.  [ruby-talk:281318]
15552         * signal.c (ruby_sig_finalize): do not install SIG_DFL handler if
15553           previous handler is sighandler().
15555 Fri Nov 30 21:02:15 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15557         * lib/json.rb, lib/json/add/{core.rb, rails.rb},
15558           test/json/test_json_rails.rb: additional files of JSON 1.1.2.
15559           [ruby-dev:32405]
15561 Fri Nov 30 19:33:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15563         * ext/syck/rubyext.c (rb_syck_mktime): avoid segmentation fault.
15564           [ruby-core:13735]
15566 Fri Nov 30 19:05:55 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15568         * enum.c (enum_count): precise argument number check.
15570         * enum.c (enum_count): return Enumerator if no block given.
15572 Fri Nov 30 16:42:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15574         * enum.c (enum_take_while): returns Enumerator if no block given.
15576         * enum.c (enum_drop_while): ditto.
15578 Thu Nov 29 16:59:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15580         * parse.y (stmt): remove unnecessary NODE_BEGIN.  [ruby-core:13814]
15582 Thu Nov 29 06:45:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15584         * hash.c (rb_hash_eql): recursive comparison should be based on
15585           eql?  [ruby-core:13803]
15587 Wed Nov 28 18:08:00 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15589         * ext/json, lib/json, test/json: Update to JSON 1.1.2.
15590           (RubyForge#15447)
15592         * math.c: fix typo.
15594 Wed Nov 28 16:29:35 2007  Koichi Sasada  <ko1@atdot.net>
15596         * insnhelper.ci (vm_invoke_block): should splat args.
15597           [ruby-dev:32392]
15599         * test/ruby/test_yield.rb: add tests for above.
15601 Wed Nov 28 14:43:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15603         * ext/extmk.rb (extract_makefile): use dldflags instead of DLDFLAGS to
15604           get rid of mixing $LDFLAGS and $ARCH_FLAG.
15606         * lib/mkmf.rb (configuration): ditto.
15608         * lib/mkmf.rb (create_makefile): support for extensions which has no
15609           shared object.
15611 Wed Nov 28 02:42:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15613         * bignum.c (big2str_find_n1): removed extraneous element.
15614           [ruby-dev:32351], [ruby-dev:32365]
15616         * bignum.c (big2str_find_n1): returns necessary digits now.
15618         * sprintf.c (remove_sign_bits): extends sign bit first.
15620 Tue Nov 27 15:53:43 2007  Koichi Sasada  <ko1@atdot.net>
15622         * compile.c (iseq_compile_each): "when *[],1" dumps core.
15623           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32350]
15625         * bootstraptest/test_syntax.rb: add a test for above.
15627 Tue Nov 27 15:40:05 2007  Koichi Sasada  <ko1@atdot.net>
15629         * compile.c (iseq_compile_each): "a[*b] += 1" dumps core.
15630           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32354]
15632         * bootstraptest/test_syntax.rb: add a test for above.
15634 Tue Nov 27 12:47:23 2007  Koichi Sasada  <ko1@atdot.net>
15636         * compile.c, insns.def: change return value of "defined?"
15637           for $&, $1, ... .  If such variables are defined,
15638           return "global-variable".
15640         * test/ruby/test_defined.rb: add tests.
15642         * bootstraptest/test_syntax.rb: fix a test.
15644 Tue Nov 27 11:54:46 2007  Koichi Sasada  <ko1@atdot.net>
15646         * insns.def: fix typo.
15648 Tue Nov 27 11:23:20 2007  Koichi Sasada  <ko1@atdot.net>
15650         * test_beginendblock.rb: add loop to wait signal.
15651           [ruby-dev:32332]
15653 Tue Nov 27 11:14:57 2007  Tanaka Akira  <akr@fsij.org>
15655         * include/ruby/encoding.h, encoding.c, re.c, string.c, parse.y:
15656           rename ENC_CODERANGE_SINGLE to ENC_CODERANGE_7BIT.
15657           rename ENC_CODERANGE_MULTI to ENC_CODERANGE_8BIT.
15658           Because single byte 8bit character, such as Shift_JIS 1byte katakana,
15659           is represented by ENC_CODERANGE_MULTI even if it is not multi byte.
15661 Tue Nov 27 10:45:45 2007  Koichi Sasada  <ko1@atdot.net>
15663         * eval.c (rb_method_missing): fix stack trace.
15665         * bootstraptest/test_knownbug.rb: move solved tests.
15667         * bootstraptest/test_method.rb, test/ruby/test_regexp.rb: ditto.
15669 Tue Nov 27 09:57:42 2007  Koichi Sasada  <ko1@atdot.net>
15671         * insns.def, compile.c: fix to allow dsym for alias/undef.
15672           [ruby-dev:32355]
15674         * bootstraptest/test_method.rb: add tests for above.
15676 Mon Nov 26 23:18:46 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
15678         * lib/drb/extserv.rb (initialize, stop_service): synchronize with
15679           ExtServManager.
15681         * test/drb/test_drb.rb (TestDRbEval): ignored.
15683 Mon Nov 26 17:32:16 2007  Tanaka Akira  <akr@fsij.org>
15685         * re.c (Init_Regexp): new method Regexp#fixed_encoding?
15686           [ruby-dev:32361]
15688 Mon Nov 26 13:28:14 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
15690         * lib/complex.rb: be able to create Complex(0, -0.0). [ruby-list:44268]
15692 Mon Nov 26 11:24:04 2007  Tanaka Akira  <akr@fsij.org>
15694         * re.c (rb_reg_fixed_encoding_p): extracted from rb_reg_prepare_re and
15695           rb_reg_s_union.
15696           (rb_reg_s_union): refactored.
15698 Mon Nov 26 10:44:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15700         * io.c (rb_read_internal, rb_sysopen_internal): remove C99 dependency.
15702 Sun Nov 25 22:21:35 2007  Tanaka Akira  <akr@fsij.org>
15704         * include/ruby/encoding.h (rb_enc_str_asciionly_p): declared.
15705           (rb_enc_str_asciicompat_p): defined.
15707         * re.c (rb_reg_initialize_str): use rb_enc_str_asciionly_p.
15708           (rb_reg_quote): return ascii-8bit string if the argument is
15709           ascii-only to generate encoding generic regexp if possible.
15710           (rb_reg_s_union): fix encoding handling.  [ruby-dev:32094]
15712         * string.c (rb_enc_str_asciionly_p): defined.
15714 Sun Nov 25 12:12:03 2007  Eric Hodel  <drbrain@segment7.net>
15716         * gem_prelude.rb: Import fast-loading gem_prelude.rb from RubyGems.
15718         * lib/rubygems*: Import RubyGems r1516.
15720 Sat Nov 24 23:25:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15722         * test/ruby/test_eval.rb (TestEval::test_instance_eval_cvar):
15723           updated not to modify class variable of Object class.
15725 Fri Nov 23 17:34:24 2007  Koichi Sasada  <ko1@atdot.net>
15727         * io.c: add rb_read_internal() as blocking function.
15729 Fri Nov 23 17:33:39 2007  Koichi Sasada  <ko1@atdot.net>
15731         * vm.c: fix comment.
15733 Fri Nov 23 17:26:11 2007  Koichi Sasada  <ko1@atdot.net>
15735         * bootstraptest/test_knownbug.rb: move solved tests.
15737         * bootstraptest/test_io.rb, test_marshal.rb, test_objectspace.rb:
15738           ditto.
15740         * test/ruby/test_integer.rb, test_regexp.rb: ditto.
15742 Fri Nov 23 15:59:04 2007  Tanaka Akira  <akr@fsij.org>
15744         * struct.c (rb_struct_alloc_noinit): new function.
15745           (rb_struct_define_without_accessor): add allocator to the arguments.
15747         * range.c (range_alloc): re-introduced using rb_struct_alloc_noinit.
15749 Fri Nov 23 15:27:43 2007  Tanaka Akira  <akr@fsij.org>
15751         * re.c (REG_CASESTATE): unused macro removed.
15752           (rb_reg_prepare_re): check encoding difference.
15753           (rb_reg_initialize): check 8bit byte.
15755         * parse.y (parser_tokadd_escape): fix has8bit.
15757           [ruby-dev:32113]
15759 Fri Nov 23 15:16:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15761         * variable.c (rb_f_global_variables): variable names should not
15762           duplicate.  [ruby-dev:32344]
15764 Fri Nov 23 13:34:08 2007  Tanaka Akira  <akr@fsij.org>
15766         * struct.c (rb_struct_define_without_accessor): new function.
15768         * range.c (range_alloc): removed.
15769           (Init_Range): use rb_struct_define_without_accessor.
15771           based on [ruby-dev:32327].
15773 Fri Nov 23 11:01:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15775         * re.c (match_begin): should return offset by character.
15776           [ruby-dev:32331]
15778         * re.c (match_end): ditto.
15780         * re.c (rb_reg_search): ditto.
15782 Fri Nov 23 10:44:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15784         * compile.c (defined_expr): defined(method(x)) dumped core.  a
15785           patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32335]
15787 Wed Nov 21 18:03:49 2007  Koichi Sasada  <ko1@atdot.net>
15789         * vm.c: fix to recycle thread data (VM stack).
15791         * thread.c: ditto.
15793         * benchmark/bm_vm3_thread_create_join.rb: add loop count.
15795 Wed Nov 21 18:02:10 2007  Koichi Sasada  <ko1@atdot.net>
15797         * benchmark/driver.rb: add path to trunk/lib if driver runner is
15798           in build directory.
15800 Wed Nov 21 16:39:21 2007  Tanaka Akira  <akr@fsij.org>
15802         * test/fileutils/fileasserts.rb (assert_equal_timestamp): new assert
15803           to test tv_sec only for filestamp resolution portability.
15804           (assert_same_entry): use assert_same_entry for mtime comparison.
15806 Wed Nov 21 14:55:13 2007  Koichi Sasada  <ko1@atdot.net>
15808         * array.c (rb_ary_permutation): add gc guard codes.
15810 Wed Nov 21 11:16:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15812         * insnhelper.ci (vm_search_normal_superclass): rename function.
15814         * insnhelper.ci (vm_search_superclass): ditto.
15816         * proc.c (struct METHOD): rename rklass -> rclass.
15818 Wed Nov 21 03:12:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15820         * process.c (rb_f_system): returns nil on execution failure.
15821           [ruby-core:13715]
15823 Wed Nov 21 01:04:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15825         * object.c (nil_plus): remove unused function.  [ruby-core:13737]
15827 Tue Nov 20 21:46:46 2007  Tanaka Akira  <akr@fsij.org>
15829         * time.c (time_mload): ignore invalid digits in submicro.
15831 Tue Nov 20 20:33:32 2007  Koichi Sasada  <ko1@atdot.net>
15833         * include/ruby/ruby.h: rename RFloat#double_value -> float_value.
15835         * numeric.c, parse.y: ditto.
15837 Tue Nov 20 19:36:21 2007  Koichi Sasada  <ko1@atdot.net>
15839         * gc.h, vm_core.h: decl of rb_gc_save_machine_context()
15840           should be at vm_core.h.
15842         * include/ruby/ruby.h, intern.h: remove type rb_thread_t.
15844         * include/ruby/intern.h: change rb_unblock_function_t,
15845           rb_unblock_function_t.
15847         * file.c, process.c: apply above changes.
15849         * thread.c, thread_pthread.ci, thread_win32.ci: ditto.
15851         * io.c: support blocking open (2). [ruby-core:13614]
15853 Tue Nov 20 17:10:11 2007  Tanaka Akira  <akr@fsij.org>
15855         * io.c (rb_io_close_on_exec_p): new method IO#close_on_exec?.
15856           (rb_io_set_close_on_exec): new method IO#close_on_exec=.
15857           [ruby-dev:32323]
15859 Tue Nov 20 16:24:31 2007  Tanaka Akira  <akr@fsij.org>
15861         * gc.c (gc_mark_children): obj->as.file.fptr may be 0 for T_FILE.
15863 Tue Nov 20 15:09:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15865         * parse.y (parser_read_escape): has8bit flag may be set with control
15866           escape.  [ruby-core:13722]
15868         * parse.y (parser_prepare): set begging after BOM if exists.
15869           [ruby-core:13718]
15871 Tue Nov 20 14:55:37 2007  Eric Hodel  <drbrain@segment7.net>
15873         * lib/rubygems*: Update to RubyGems 0.9.5.
15875 Tue Nov 20 13:00:44 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15877         * include/ruby/win32.h win32/win32.c (rb_w32_pipe_exec): use dual fd
15878           instead of socketpair when mode is RDWR.
15880         * io.c (pipe_open): pass &write_fd to rb_w32_pipe_exec().
15882         * io.c (popen_redirect): define only when HAVE_FORK.
15884 Tue Nov 20 12:12:04 2007  Tanaka Akira  <akr@fsij.org>
15886         * include/ruby/io.h (rb_io_t): add tied_io_for_writing member.
15888         * io.c: use tied_io_for_writing for duplex popen.
15890         * gc.c: mark tied_io_for_writing.
15892         * common.mk: gc.o depends io.h.
15894           [ruby-dev:32205]
15896 Tue Nov 20 11:59:33 2007  Tanaka Akira  <akr@fsij.org>
15898         * test/drb/test_drb.rb: rename TestRubyYield to TestDRbRubyYield to
15899           avoid name crash with test/ruby/test_yield.rb.
15900           TestRuby18Yield is renamed to TestDRbRuby18Yield too.
15902 Tue Nov 20 03:24:42 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
15904         * lib/drb/extservm.rb: merged from ruby_1_8 branch.
15906         * lib/drb/acl.rb: ditto.
15908         * lib/drb/ssl.rb: ditto.
15910         * lib/drb/unix.rb: ditto.
15912         * lib/drb/drb.rb: ditto.
15914         * lib/drb/observer.rb: ditto.
15916         * lib/drb/invokemethod.rb: ditto.
15918         * test/drb/test_drbssl.rb: ditto.
15920         * test/drb/test_drb.rb: ditto.
15922         * test/drb/drbtest.rb: ditto.
15924         * test/drb/test_drbunix.rb: ditto.
15926 Tue Nov 20 00:52:46 2007  Tanaka Akira  <akr@fsij.org>
15928         * test/fileutils/fileasserts.rb (assert_equal_time): show nsec if
15929           assertion fails but time.to_s equals.
15930           (assert_same_entry): use assert_equal_time.
15932         * test/fileutils/test_fileutils.rb (test_install): use
15933           assert_equal_time.
15935 Mon Nov 19 18:46:49 2007  Tanaka Akira  <akr@fsij.org>
15937         * file.c (utime_internal): fallback utimensat to utimes.
15939 Mon Nov 19 17:51:27 2007  Tanaka Akira  <akr@fsij.org>
15941         * configure.in: check struct timespec, clock_gettime, utimensat,
15942           struct stat.st_atim,
15943           struct stat.st_atimespec,
15944           struct stat.st_atimensec,
15945           struct stat.st_mtim,
15946           struct stat.st_mtimespec,
15947           struct stat.st_mtimensec,
15948           struct stat.st_ctim,
15949           struct stat.st_ctimespec,
15950           struct stat.st_ctimensec.
15952         * include/ruby/missing.h: provide struct timespec if not available.
15954         * time.c: support nanosecond-resolution using struct timespec.
15955           (time_nsec): new method: Time#nsec and Time#tv_nsec.
15957         * include/ruby/intern.h: provide rb_time_nano_new.
15959         * file.c (utime_internal): use utimensat if available.
15960           (rb_file_s_utime): refactored.
15961           (rb_f_test): use stat_atime, stat_mtime, stat_ctime.
15962           (rb_stat_cmp): check tv_nsec.
15963           (stat_atimespec): new function.
15964           (stat_atime): ditto.
15965           (stat_mtimespec): ditto.
15966           (stat_mtime): ditto.
15967           (stat_ctimespec): ditto.
15968           (stat_ctime): ditto.
15969           (rb_stat_atime): use stat_atime.
15970           (rb_file_s_atime): ditto.
15971           (rb_file_atime): ditto.
15972           (rb_stat_mtime): use stat_mtime.
15973           (rb_file_s_mtime): ditto.
15974           (rb_file_mtime): ditto.
15975           (rb_file_ctime): use stat_ctime.
15976           (rb_file_s_ctime): ditto.
15977           (rb_stat_ctime): ditto.
15979         * variable.c (rb_copy_generic_ivar): clear clone's instance variables
15980           if obj has no instance variable.
15982         * marshal.c (w_object): dump instance variables of generated string
15983           for TYPE_USERDEF, even if original object has instance variables.
15985         * lib/time.rb (Time#xmlschema): use nsec instead of usec.
15987         [ruby-dev:32306]
15989 Mon Nov 19 17:48:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15991         * object.c (rb_class_superclass): should not raise exception for
15992           BasicObject.  [ruby-Bugs-15668]
15994 Mon Nov 19 16:04:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15996         * array.c (rb_ary_permutation): gives all permutations of elements
15997           if no argument given.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
15998           [ruby-dev:32309]
16000 Mon Nov 19 02:44:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16002         * compile.c (iseq_compile_each): alias and undef accept dsyms as well
16003           as literals.  [ruby-dev:32308]
16005 Mon Nov 19 02:31:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16007         * eval_method.ci (rb_add_method): no redefinition warning for undef.
16009 Mon Nov 19 01:53:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16011         * parse.y (parser_read_escape): disallow control and meta modifiers
16012           for non-ASCII characters.  [ruby-core:13685]
16014 Sun Nov 18 20:47:41 2007  Tanaka Akira  <akr@fsij.org>
16016         * marshal.c (mark_dump_arg): it may be called after dump_ensure.
16018 Sun Nov 18 18:27:47 2007  Tanaka Akira  <akr@fsij.org>
16020         * time.c (time_minus): fix Time.at(2**60+1) - Time.at(2**60).
16022 Sun Nov 18 17:28:49 2007  Tanaka Akira  <akr@fsij.org>
16024         * time.c (time_arg): show actual year in 2-3 digits year warning.
16025           (time_mdump): show actual year in "year too big to marshal" error.
16027 Sun Nov 18 14:03:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16029         * eval_method.ci (rb_alias): do not call hook functions until
16030           initialization finishes.  [ruby-talk:279538]
16032 Sun Nov 18 09:09:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16034         * lib/mkmf.rb (String#tr_cpp): make preprocessor identifiers.
16036 Sun Nov 18 05:19:46 2007  Tanaka Akira  <akr@fsij.org>
16038         * lib/mkmf.rb (have_struct_member): define HAVE_type_member.
16040 Sat Nov 17 23:51:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
16042         * ext/win32ole/win32ole.c (ole_invoke): bug fix. [ruby-talk:279100]
16044 Sat Nov 17 23:21:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16046         * parse.y (parser_yylex): should clear parser->tokp as well.
16047           [ruby-dev:32250]
16049         * parse.y: remove NEED_ASSOC that break test_parser_events.
16051         * parse.y (parser_yylex): should not decrement line numbers at the
16052           end of file.
16054         * file.c (rb_find_file_ext): search .rb files first through in the
16055           loadpath.
16057 Fri Nov 16 23:31:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16059         * bignum.c (rb_big_odd_p): new method added.  a patch from Tadashi
16060           Saito <shiba AT mail2.accsnet.ne.jp>.  [ruby-dev:32305]
16062         * bignum.c (rb_big_even_p): ditto.
16064 Fri Nov 16 17:41:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16066         * ext/iconv/iconv.c (Document-class): moved the simplest example to
16067           the top.
16069         * ext/iconv/iconv.c (iconv_s_iconv): Document-method: needs class
16070           prefix for class method.  [ruby-core:13542]
16072         * ext/iconv/iconv.c (iconv_iconv): also instance method needs to be
16073           qualified.
16075 Fri Nov 16 16:26:57 2007  Shugo Maeda  <shugo@ruby-lang.org>
16077         * include/ruby/ruby.h: added some declarations for event hooks.
16079         * lib/profile.rb: set VM::InstructionSequence.compile_option.
16081 Fri Nov 16 11:16:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16083         * lib/yaml/rubytypes.rb (String#is_binary_data?): use Integer#fdiv.
16085 Fri Nov 16 03:36:01 2007  why the lucky stiff  <why@ruby-lang.org>
16087         * ext/syck/rubyext.c: Node#value defined twice.
16089         * lib/yaml/: several method redefinitions causing warnings.
16091 Fri Nov 16 03:01:00 2007  why the lucky stiff  <why@ruby-lang.org>
16093         * lib/yaml/types.rb: Likewise, pass self to YAML::quick_emit.
16095 Fri Nov 16 02:51:59 2007  why the lucky stiff  <why@ruby-lang.org>
16097         * lib/yaml.rb (quick_emit): use combination of object_id and hash to
16098           identify repeated object references, since GC will reuse memory of
16099           objects during output of YAML. [ruby-Bugs-8548] [ruby-Bugs-3698]
16101 Thu Nov 15 19:49:03 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16103         * ext/curses/extconf.rb: check macro if cannot find func.
16104           [ruby-list:44224]
16106 Thu Nov 15 18:04:06 2007  Tanaka Akira  <akr@fsij.org>
16108         * tool/compile_prelude.rb: fix TMP_RUBY_PREFIX for relative load path
16109           environment.
16111 Thu Nov 15 17:28:21 2007  Tanaka Akira  <akr@fsij.org>
16113         * tool/compile_prelude.rb: absolute path may not start with a slash.
16114           pointed by usa.
16116 Thu Nov 15 17:07:54 2007  Tanaka Akira  <akr@fsij.org>
16118         * tool/compile_prelude.rb: fix first substitution.
16119           use constant for prefix.
16120           pointed by Richard Kilmer.
16122 Thu Nov 15 14:29:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16124         * common.mk (prereq): added auto generated sources.  [ruby-dev:32280]
16126 Thu Nov 15 12:31:13 2007  Tanaka Akira  <akr@fsij.org>
16128         * tool/compile_prelude.rb: use constant for prefix.
16130 Thu Nov 15 12:24:39 2007  Tanaka Akira  <akr@fsij.org>
16132         * tool/compile_prelude.rb: use simple template system for source
16133           code generation.
16135 Thu Nov 15 12:19:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16137         * lib/cgi/session.rb (CGI::Session::FileStore::restore): use
16138           lockfile for exclusive locks.  a patch from <tommy AT tmtm.org>.
16139           [ruby-dev:32296]
16141 Thu Nov 15 12:14:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16143         * tool/compile_prelude.rb (c_esc): need to escape closing brace.
16145 Thu Nov 15 11:52:16 2007  Tanaka Akira  <akr@fsij.org>
16147         * tool/compile_prelude.rb: adjust RbConfig::CONFIG paths relative
16148           to the installation path.
16150 Thu Nov 15 11:25:20 2007  Tanaka Akira  <akr@fsij.org>
16152         * ruby.c (usage): fix typo on --disable-gems option.
16153           pointed by Richard Kilmer.
16155 Wed Nov 14 16:16:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16157         * test/net/http/test_https_proxy.rb
16158           (HTTPSProxyTest::test_https_proxy_authentication): initialize
16159           local variable 't' first.  [ruby-dev:32253]
16161 Wed Nov 14 15:39:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16163         * test/socket/test_socket.rb: update not to use 1.8 assignment to
16164           external local variable in the block parameters.  [ruby-dev:32251]
16166         * test/strscan/test_stringscanner.rb: avoid $KCODE, and use
16167           String#force_encoding().  [ruby-dev:32251]
16169 Wed Nov 14 14:04:42 2007  Tanaka Akira  <akr@fsij.org>
16171         * common.mk, Makefile.in: rename prelude.c to miniprelude.c.
16172           rename ext_prelude.c to prelude.c
16174         * win32/Makefile.sub: ditto.
16176         * bcc32/Makefile.sub: ditto.
16178 Wed Nov 14 07:09:48 2007  Koichi Sasada  <ko1@atdot.net>
16180         * blockinlining.c, compile.c, compile.h, debug.c, debug.h,
16181           id.c, insnhelper.h, insns.def, thread.c, thread_pthread.ci,
16182           thread_pthread.h, thread_win32.ci, thread_win32.h, vm.h,
16183           vm_dump.c, vm_evalbody.ci, vm_opts.h: fix comments and
16184           copyright year.
16186 Wed Nov 14 07:07:51 2007  Koichi Sasada  <ko1@atdot.net>
16188         * tool/makedocs.rb, template/insnstbl.html: removed.
16190 Wed Nov 14 02:50:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16192         * common.mk (parse.c): dependency also needs vpath.
16194         * common.mk (node_name.inc, prelude.c): VPATH in nmake does not
16195           work for targets of explicit rules.
16197 Wed Nov 14 02:11:38 2007  Tanaka Akira  <akr@fsij.org>
16199         * missing/isinf.c (isinf): don't define if the macro is defined.
16201         * configure.in: no need to set ac_cv_func_isinf=yes on non-gcc
16202           solaris.
16204 Wed Nov 14 01:34:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16206         * numeric.c (round): fallback definition.
16208         * numeric.c (flo_divmod, flo_round): use round() always.
16209           [ruby-dev:32269]
16211 Wed Nov 14 00:33:49 2007  Koichi Sasada  <ko1@atdot.net>
16213         * include/ruby/ruby.h: introduce 2 macros:
16214           RFLOAT_VALUE(v), DOUBLE2NUM(dbl).
16215           Rename RFloat#value -> RFloat#double_value.
16216           Do not touch RFloat#double_value directly.
16218         * bignum.c, insns.def, marshal.c, math.c, numeric.c, object.c,
16219           pack.c, parse.y, process.c, random.c, sprintf.c, string.c,
16220           time.c: apply above changes.
16222         * ext/dl/mkcallback.rb, ext/json/ext/generator/generator.c:
16223           ditto.
16225 Wed Nov 14 00:15:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16227         * tool/ytab.sed: get rid of GNU sed feature.  a patch from Laurent
16228           Sansonetti <laurent.sansonetti AT gmail.com> in [ruby-core:13470].
16230 Tue Nov 13 21:41:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16232         * common.mk (parse.c), ext/ripper/depend (ripper.c): process after
16233           bison with sed.  [ruby-dev:32204]
16235         * ruby.c (proc_options): use yydebug in cmdline_options.
16237         * ruby.c (process_options): set yydebug flag of parser.
16239         * parse.y (yydebug): moved into struct parser_params.
16241         * parse.y (rb_parser_get_yydebug, rb_parser_set_yydebug): parser
16242           generic methods.
16244         * */Makefile.sub (parse.c): moved to common.mk.
16246         * tool/ytab.sed: comment out yydebug definition, and substitute
16247           yyerror with parser_yyerror.
16249 Tue Nov 13 16:33:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16251         * numeric.c (flodivmod): work around for infinity.
16253         * numeric.c (flo_divmod): work around for platforms have no round().
16254           [ruby-dev:32247]
16256 Tue Nov 13 15:26:33 2007  Tanaka Akira  <akr@fsij.org>
16258         * lex.c.blt: moved from lex.c.
16260         * lex.c.src: copied from keywords.  This is the source of lex.c.blt.
16262         * Makefile.in (lex.c): use lex.c.blt if keywords is same as lex.c.src.
16264         * win32/Makefile.sub (lex.c): re-introduce copy rule.
16266         * bcc32/Makefile.sub (lex.c): ditto.
16268         * wince/Makefile.sub (lex.c): ditto.
16270 Tue Nov 13 15:21:52 2007  Koichi Sasada  <ko1@atdot.net>
16272         * compile.c (iseq_specialized_instruction): check argc.
16274 Tue Nov 13 14:44:32 2007  why the lucky stiff  <why@ruby-lang.org>
16276         * test/yaml/test_yaml.rb: fixed the failing YAML Struct test
16277           at ko1's request.
16279 Tue Nov 13 02:57:04 2007  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
16281         * numeric.c (flo_divmod): round to the nearest integer.
16282           [ ruby-Bugs-14540 ]
16284 Tue Nov 13 00:36:16 2007  Shugo Maeda  <shugo@ruby-lang.org>
16286         * test/ruby/test_settracefunc.rb: fixed tests for set_trace_func.
16288 Mon Nov 12 19:47:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16290         * thread.c (call_trace_proc): should return value.
16292 Mon Nov 12 19:45:18 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16294         * {bcc,win}32/Makefile.sub (miniruby): use $(COMMONOBJS) and $(DMYEXT)
16295           instead of $(LIBRUBY_A).
16297 Mon Nov 12 18:32:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16299         * {bcc,win}32/Makefile.sub (MINIOBJS): added prelude.$(OBJEXT).
16301 Mon Nov 12 17:13:23 2007  Tanaka Akira  <akr@fsij.org>
16303         * Makefile.in, common.mk: add prelude.o to MINIOBJS.
16305 Mon Nov 12 16:52:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16307         * lib/mkmf.rb (create_makefile): rdoc about srcprefix.  a patch from
16308           Daniel Berger <djberg96 AT gmail.com> in [ruby-core:13378].
16310 Mon Nov 12 16:48:09 2007  Tanaka Akira  <akr@fsij.org>
16312         * Makefile.in, common.mk: add ext_prelude.o to OBJS.
16314 Mon Nov 12 13:57:39 2007  Tanaka Akira  <akr@fsij.org>
16316         * configure.in (MINIDLNOBJS): removed.
16317           (MINIOBJS): set to dln.o if dmydln.o is not used.
16319         * Makefile.in (miniruby): use MINIOBJS instead of MINIDLNOBJS.
16321 Mon Nov 12 13:53:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16323         * misc/ruby-mode.el (ruby-parse-partial): handle stringified
16324           symbols properly using ruby-forward-string.
16326 Mon Nov 12 12:17:59 2007  Tanaka Akira  <akr@fsij.org>
16328         * configure.in (MINIDLNOBJS): defined.
16330         * Makefile.in (miniruby): use MINIDLNOBJS and COMMONOBJS instead of
16331           MINIOBJS and OBJS to avoid linking both dmydln.o and dln.o.
16333 Sun Nov 11 20:32:45 2007  Tanaka Akira  <akr@fsij.org>
16335         * {win32,wince,bcc32}/Makefile.sub: delete lex.c rule.
16337 Sun Nov 11 19:40:52 2007  Tanaka Akira  <akr@fsij.org>
16339         * Makefile.in (lex.c): simplified.
16341 Sun Nov 11 18:31:48 2007  Tanaka Akira  <akr@fsij.org>
16343         * Makefile.in (lex.c): touch lex.c if gperf failed but lex.c exists.
16344           Although this may cause non-updated lex.c,
16345           svn co may generate keywords newer than lex.c especially on
16346           a file system which can record fractional mtime such as XFS.
16348 Sun Nov 11 17:32:46 2007  Shugo Maeda  <shugo@ruby-lang.org>
16350         * insnhelper.ci (vm_call_method): pass mn->nd_clss to
16351           vm_call_cfunc() instead of klass.
16353         * vm.c (rb_thread_method_id_and_klass): traverse parent_iseq.
16355         * thread.c (call_trace_proc): use rb_thread_method_id_and_klass().
16357 Sun Nov 11 16:54:25 2007  Tanaka Akira  <akr@fsij.org>
16359         * lex.c: renamed from lex.c.blt.
16361         * Makefile.in (lex.c): use find command to check mtime.
16363 Sun Nov 11 05:34:13 2007  Eric Hodel  <drbrain@segment7.net>
16365         * bin/gem: Add forgotten gem command.
16367 Sat Nov 10 23:50:31 2007  Tanaka Akira  <akr@fsij.org>
16369         * string.c (tr_trans): cast to unsigned char after dereference
16370           a pointer to a char to avoid SEGV with "\377".tr("a", "b").
16371           on FreeBSD/amd64.
16373 Sat Nov 10 23:08:53 2007  Tanaka Akira  <akr@fsij.org>
16375         * configure.in, common.mk, Makefile.in: don't generate
16376           libminiruby-static.a.
16378 Sat Nov 10 19:46:54 2007  Tanaka Akira  <akr@fsij.org>
16380         * configure.in, common.mk, Makefile.in: generate libminiruby-static.a
16381           which contains prelude.o for miniruby.
16383 Sat Nov 10 18:10:07 2007  Tanaka Akira  <akr@fsij.org>
16385         * gem_prelude.rb: new file for gem libraries.  currently empty.
16387         * common.mk: generate ext_prelude.c by prelude.rb and gem_prelude.rb.
16388           ruby (not miniruby) is linked with ext_prelude.o instead of
16389           prelude.o.
16391         * inits.c (rb_call_inits): don't call Init_prelude.
16393         * ruby.c: support --disable-gems option.
16394           (ruby_init_gems): new function to define Gem::Enable and
16395           invoke Init_prelude.
16396           (process_options): call ruby_init_gems just after
16397           ruby_init_loadpath.
16399         * tool/compile_prelude.rb: support multiple files.
16401 Sat Nov 10 17:27:55 2007  Shugo Maeda  <shugo@ruby-lang.org>
16403         * thread.c (call_trace_proc): don't call ID2SYM() for ID_ALLOCATOR
16404           to avoid SEGV.
16406 Sat Nov 10 16:37:07 2007  Eric Hodel  <drbrain@segment7.net>
16408         * lib/rubygems: Import RubyGems revision 1493.
16410         * lib/rubygems.rb: ditto.
16412         * lib/ubygems.rb: ditto.
16414         * lib/rbconfig/datadir.rb: ditto.
16416         * test/rubygems: ditto.
16418 Sat Nov 10 16:34:21 2007  Eric Hodel  <drbrain@segment7.net>
16420         * lib/soap/property.rb: Don't override Enumerable#inject for 1.9.
16422 Sat Nov 10 14:43:30 2007  David Flanagan  <davidflanagan@ruby-lang.org>
16424         * parse.y: use ASCII encoding for string literals that are
16425           7-bit clean, fixing regression from my previous patch
16427 Sat Nov 10 13:18:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16429         * {bcc32,win32}/Makefile.sub: vendor_ruby support.
16431 Fri Nov  9 23:33:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16433         * parse.y (parser_nextc): added single line read forward buffer.
16435         * parse.y (parser_yylex): adjust line number for fluent interface.
16437 Fri Nov  9 22:04:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16439         * vm.h (FRAME_MAGIC_MASK_BITS): bits of FRAME_MAGIC_MASK.
16441         * insnhelper.ci (vm_call_cfunc, vm_cfunc_flags): use shift operations.
16443 Fri Nov  9 21:46:28 2007  Koichi Sasada  <ko1@atdot.net>
16445         * eval.c (eval): should be volatile value for GC.
16447 Fri Nov  9 17:48:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16449         * ruby.c (locale_encoding): guesstimate encoding from environment
16450           variables.  [ruby-core:13315]
16452         * ruby.c (process_options): set primary encoding from environment.
16454 Fri Nov  9 16:51:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16456         * io.c (rb_io_each_byte): should update rbuf_off and rbuf_len for
16457           each iteration.  [ruby-dev:31659][ruby-dev:32192]
16459         * variable.c (rb_cvar_set): cvar assignment obey same rule to cvar
16460           reference.  [ruby-dev:32192]
16462 Fri Nov  9 15:52:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16464         * encoding.c (enc_check_encoding, rb_set_primary_encoding): ENCODING
16465           is no longer in FL_USERS flags.
16467 Fri Nov  9 15:20:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16469         * string.c (rb_str_squeeze_bang): initialize squeezing table if no
16470           arguments given.
16472 Fri Nov  9 13:57:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16474         * enum.c (each_with_index_i): use rb_yield_values() for
16475           compatibility with Enumerator#with_index().  a patch from Yusuke
16476           ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32195]
16478 Fri Nov  9 13:45:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16480         * test/ruby/test_iterator.rb (TestIterator::IterTest::each):
16481           #each_pair is now alias to #each.  [ruby-dev:32192]
16483         * test/ruby/test_iterator.rb (TestIterator::test_assoc_yield):
16484           ditto
16486 Fri Nov  9 12:56:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16488         * eval_load.c (loaded_feature_path): check with type of given feature.
16490 Fri Nov  9 12:43:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16492         * test/ruby/test_basicinstructions.rb: updated for new class
16493           behavior.  [ruby-dev:32192]
16495         * encoding.c (enc_name): Encoding should not rely on ENCODING in
16496           the FL_USERS flags.
16498         * encoding.c (rb_enc_from_encoding): do not call rb_enc_associate
16499           for encoding itself.
16501         * encoding.c (enc_register_at): ditto.
16503         * marshal.c (r_ivar): do not set real instance variable for
16504           encoding data associated.
16506 Fri Nov  9 10:43:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16508         * eval.c (send_internal): use self in the previous frame to check for
16509           protected methods.  [ruby-core:13254]
16511         * insnhelper.ci (vm_call_method): send! method has gone.
16513 Fri Nov  9 10:38:13 2007  Koichi Sasada  <ko1@atdot.net>
16515         * marshal.c (w_object): should be SPECIAL_CONST_P() instead of
16516           IMMEDIATE_P().
16518 Fri Nov  9 10:29:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16520         * eval.c (rb_invoke_method): check if invoked in function style.
16521           [ruby-core:13245]
16523         * insnhelper.ci (vm_call_cfunc, vm_cfunc_flags): stores and returns VM
16524           calling flags.
16526         * vm.c (rb_vm_cfunc_funcall_p): returns if the current method is
16527           invoked in function style.
16529 Fri Nov  9 10:10:21 2007  Koichi Sasada  <ko1@atdot.net>
16531         * cont.c: add rb_context_t#type.
16533 Fri Nov  9 10:05:54 2007  Koichi Sasada  <ko1@atdot.net>
16535         * ruby.c (set_arg0): fix breaking environ bugs.
16537 Fri Nov  9 07:26:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16539         * random.c: update MT URL.[ruby-core:13305].
16541 Thu Nov  8 17:09:55 2007  David Flanagan  <davidflanagan@ruby-lang.org>
16543         * object.c: improve docs for Object.tap
16545         * ChangeLog: fix bogus dates on my previous entries
16547 Thu Nov  8 15:13:56 2007 David Flanagan <davidflanagan@ruby-lang.org>
16549         * parse.y: fix segfault with \x escapes in regexps
16550           delete unused #if 0 code regions from previous patch
16552 Thu Nov  8 12:12:10 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16554         * parse.y (parser_read_escape): remove C99/gcc-ism.
16556 Thu Nov  8 07:54:22 2007 David Flanagan <davidflanagan@ruby-lang.org>
16558         * parse.y: patch, based on Nobu's, work to support \u escapes
16559                    also modifications for better coderange detection
16561         * test/ruby/test_unicode_escapes.rb: test cases
16563         * test/ruby/test_mixed_unicode_escapes.rb: mixed encoding test cases
16565 Thu Nov  8 07:14:37 2007 David Flanagan <davidflanagan@ruby-lang.org>
16567         * parse.y (rb_intern3): commented out broken code that prevented
16568           correct interning of multi-byte symbols.  Without this patch
16569           :x==:x is false when x is a multi-byte character.
16571 Thu Nov  8 07:04:31 2007 David Flanagan <davidflanagan@ruby-lang.org>
16573         * string.c (tr_setup_table, tr_trans): fix test failures
16574           in test/ruby/test_string.rb
16576 Wed Nov  7 15:07:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16578         * enum.c (enum_each_with_index): make different arrays at each
16579           iteration.  [ruby-dev:32181]
16581 Wed Nov  7 05:17:24 2007  David Flanagan <davidflanagan@ruby-lang.org>
16583         * eval.c: fix typo in invoke_method documentation
16585 Wed Nov  7 03:52:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16587         * array.c (rb_ary_product): core dumped with non array arguments.
16588           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32180]
16590 Wed Nov  7 03:32:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16592         * lib/rexml/encodings/SHIFT-JIS.rb (REXML::Encoding): place -x for
16593           nkf conversion.  a patch from <moonwolf AT moonwolf.com>.
16594           [ruby-dev:32183]
16596 Wed Nov  7 02:59:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16598         * array.c (rb_ary_each_index): should return meaningful value.
16600 Tue Nov  6 16:37:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16602         * eval_load.c (loaded_feature_path): need to expand relative paths.
16604         * eval_load.c (rb_feature_p): check if the feature is loading with
16605           load path.  [ruby-dev:31932]
16607         * eval_load.c (load_lock): check the result of barrier waiting.
16609         * thread.c (rb_barrier_wait): check if owned by the current thread.
16611         * thread.c (rb_barrier_release): ditto.
16613 Mon Nov  5 08:01:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16615         * eval.c (Init_eval): move #send to Kernel module from BasicObject.
16617 Mon Nov  5 05:17:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16619         * lib/optparse.rb (OptionParser::Switch::summarize): fix for long form
16620           option with very long argument.  a patch from Kobayashi Noritada
16621           <nori1 AT dolphin.c.u-tokyo.ac.jp> in [ruby-list:44179].
16623 Mon Nov  5 01:20:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16625         * parse.y (call_args): remove "parenthesize argument(s) for future
16626           version" warning.  when I added this warning, I had a plan to
16627           reimplement the parser that is simpler than the current one.
16628           since we abandoned the plan, warning no longer required.
16630 Mon Nov  5 01:02:56 2007  Minero Aoki  <aamine@loveruby.net>
16632         * lib/net/http.rb (HTTPHeader#initialize): provide default
16633           User-Agent to fix 500 error on some corrupted HTTP servers.
16634           [ruby-core:13135]
16636 Mon Nov  5 00:32:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16638         * eval.c (rb_f_send): allow send/__send__ to call methods of all
16639           visibility again.  we no longer provide __send, __send!.
16641         * eval.c (rb_invoke_method): new method to honor private
16642           visibility.  if it's invoked in a function call style, it calls
16643           private methods as well (previous 1.9 send behavior).
16645 Mon Nov  5 00:24:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16647         * win32/Makefile.sub: vendor_ruby support.
16649         * configure.in (RUBY_LIB): duplicated.
16651 Mon Nov  5 00:01:33 2007  Tanaka Akira  <akr@fsij.org>
16653         * re.c (rb_reg_quote): quote \v as well.
16655 Sun Nov  4 23:51:59 2007  Tanaka Akira  <akr@fsij.org>
16657         * re.c (rb_reg_initialize_m): use StringValuePtr instead of
16658           StringValueCStr because \0 exists when Regexp.new("\0").
16660 Sun Nov  4 08:11:19 2007  Tanaka Akira  <akr@fsij.org>
16662         * gc.c (count_objects): count TOTAL.
16664 Sun Nov  4 03:58:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16666         * string.c (tr_setup_table): use C array for characters that fit
16667           in a byte to gain performance.
16669         * string.c (rb_str_delete_bang): ditto.
16671         * string.c (rb_str_squeeze_bang): ditto.
16673         * string.c (rb_str_count): ditto.
16675         * string.c (tr_trans): ditto.
16677 Sun Nov  4 00:06:40 2007  Tanaka Akira  <akr@fsij.org>
16679         * gc.c (count_objects): ObjectSpace.count_objects implemented.
16680           [ruby-core:12301]
16682 Sat Nov  3 22:49:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16684         * hash.c (rb_hash_each_pair): make Hash#each to be alias to
16685           Hash#each_pair for compatibility and clarity.
16687         * hash.c (env_each_pair): ditto.
16689 Sat Nov  3 22:41:05 2007  Tanaka Akira  <akr@fsij.org>
16691         * configure.in: --with-vendor-hdrdir implemented.
16693         * lib/mkmf.rb: check --vendor argument.
16695         * README.EXT: explain --vendor option for extconf.rb
16697         * README.EXT.ja: ditto.
16699 Sat Nov  3 20:30:48 2007  Tanaka Akira  <akr@fsij.org>
16701         * configure.in: --with-vendordir implemented.
16703         * mkconfig.rb: add config to vendorlibdir and vendorarchdir.
16705         * instruby.rb: make vendor library directories.
16707         * ruby.c: insert vendor library directories into load path.
16709 Fri Nov  2 20:55:49 2007  Kouhei Sutou  <kou@cozmixng.org>
16711         * lib/rss/content.rb, lib/rss/content/, lib/rss/maker/content.rb,
16712           test/rss/test_content.rb, test/rss/test_maker_content.rb,
16713           test/rss/rss-testcase.rb (RSS::TestCase): supported
16714           content:encoded with RSS 2.0.
16715           Suggested by Sam Lown. Thanks.
16717 Fri Nov  2 20:47:04 2007  Kouhei Sutou  <kou@cozmixng.org>
16719         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.0 -> 0.2.1.
16721 Thu Nov  1 21:56:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16723         * error.c (Init_Exception): make NameError to be subclass of
16724           StandardError again.
16726         * error.c (Init_Exception): make SecurityError to be subclass of
16727           Exception, since it's too important to be handled implicitly.
16729 Thu Nov  1 14:51:39 2007 David Flanagan <davidflanagan@ruby-lang.org>
16730         * enum.c (take_while_i, drop_while_i) add RTEST to handle nil return
16732 Thu Nov  1 02:12:50 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16734         * common.mk (prereq): update the path of prelude.c.
16736         * common.mk (prelude.c): rollback a part of r13675, because it is not
16737           documented and causes build error.
16739 Thu Nov  1 01:52:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16741         * enum.c (enum_drop): fix typo.
16743 Thu Nov  1 01:51:01 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16745         * vm_core.h (ruby_current_thread): RUBY_EXTERN'ed for probeprofiler.
16747 Thu Nov  1 00:46:30 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16749         * win32/configure.bat, setup.mak: now can recognize OS even if
16750           the ``--target'' option of configure is omitted.
16752         * win32/README.win32: update the descriptions about compiler.
16754 Wed Oct 31 03:13:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16756         * enum.c (enum_take_while): separate with-block form.
16758         * enum.c (drop_while_i): ditto.
16760         * enum.c (enum_butfirst): abandon butfirst method.  reverted.
16762 Tue Oct 30 10:03:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16764         * enum.c (enum_butfirst): add a new method to iterates over
16765           elements but first n.  RDoc need to be updated.
16767         * enumerator.c (Init_Enumerator): remove unnecessary symbol
16768           initialization.
16770 Mon Oct 29 18:42:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16772         * parse.y (bvar): block-local variable can shadow outer variable.
16773           [ruby-core:13036]
16775 Mon Oct 29 17:58:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16777         * string.c (rb_str_substr): performance improvement.  [ruby-dev:31806]
16779 Mon Oct 29 17:20:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16781         * encoding.c (rb_enc_replicate): new function to replicate encoding.
16783         * encoding.c (enc_based_encoding): Encoding#base_encoding returns
16784           based encoding of replica.
16786 Mon Oct 29 17:18:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16788         * encoding.c (rb_enc_compatible): ASCII encoding is compatible with
16789           ASCII-compatible encoding, even for non-string objects.
16791 Sun Oct 28 21:50:02 2007  Tanaka Akira  <akr@fsij.org>
16793         * lib/open-uri.rb: :redirect option implemented to disable redirects.
16794           (OpenURI::HTTPRedirect): new exception class for redirection.
16796 Fri Oct 26 17:38:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16798         * numeric.c (int_chr): take an optional encoding parameter.
16799           [ruby-core:12816]
16801 Fri Oct 26 17:14:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16803         * numeric.c (fix_pow): returns 1.0 for 0**0.0.
16805         * numeric.c (fix_pow): returns infinity for 0**-1.  [ruby-dev:32084]
16807 Fri Oct 26 15:00:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16809         * misc/ruby-style.el (ruby-style-{case,label}-indent): adjust for
16810           labels inside switch block.
16812 Fri Oct 26 05:48:57 2007  David Flanagan <davidflanagan@ruby-lang.org>
16813         * array.c: raise IndexError for negative length in rb_ary_fill
16815 Wed Oct 25 07:12:03 2007  James Edward Gray II  <jeg2@ruby-lang.org>
16817         * lib/net/telnet.rb (Net::Telnet#login): Allowing "passphrase" in
16818           addition to "password" for Telnet login prompts. [ruby-Bugs-10746]
16820 Wed Oct 25 06:34:11 2007  James Edward Gray II  <jeg2@ruby-lang.org>
16822         * lib/net/telnet.rb (Net::Telnet#login): Making the password prompt
16823           pattern case insensitive. [ruby-Bugs-10746]
16825 Fri Oct 26 04:21:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16827         * lib/net/pop.rb (Net::POP3::do_start): type fixed.  a patch from
16828           Dan Zwell <dzwell AT zwell.net> in [ruby-core:12941].
16830 Fri Oct 26 01:48:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16832         * array.c (rb_ary_assoc): check and convert inner arrays (assocs)
16833           using #to_ary.
16835         * hash.c (rb_hash_s_create): check and convert argument hash
16836           using #to_hash.
16838         * hash.c (rb_hash_s_create): Hash#[] now takes assocs as source of
16839           hash conversion.
16841 Thu Oct 25 16:46:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16843         * parse.y (parser_yylex): dot at the head of the line denote line
16844           continuation from previous one to support fluent interface.
16845           [experimental]
16847         * misc/ruby-mode.el (ruby-calculate-indent): support fluent dot.
16849 Thu Oct 25 14:19:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16851         * io.c (rb_io_tell, rb_io_seek): check errno too.  [ruby-dev:32093]
16853 Thu Oct 25 13:59:53 2007 David Flanagan <davidflanagan@ruby-lang.org>
16855         * parse.y (parser_tokspace): increment tokidx
16856           fixes test failure at [test/ruby/test_stringchar.rb:72]
16858 Thu Oct 25 09:49:49 2007  akira yamada  <akira@ruby-lang.org>
16860         * lib/uri.rb, lib/uri/ldaps.rb: added LDAPS
16861           scheme. [ruby-dev:31896]
16863 Wed Oct 25 06:23:14 2007  James Edward Gray II  <jeg2@ruby-lang.org>
16865         * lib/xmlrpc/parser.rb (XMLRPC::Convert::dateTime): Fixing a bug that
16866           caused time zone conversion to fail for some ISO 8601 date formats.
16867           [ruby-Bugs-12677]
16869 Wed Oct 25 04:59:28 2007  James Edward Gray II  <jeg2@ruby-lang.org>
16871         * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): Explicitly start
16872           the HTTP connection to support keepalive requests. [ruby-Bugs-9353]
16874 Wed Oct 25 04:46:53 2007  James Edward Gray II  <jeg2@ruby-lang.org>
16876         * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): Improving the error
16877           message for Content-Type check failures. [ruby-core:12163]
16879 Wed Oct 25 03:45:08 2007  James Edward Gray II  <jeg2@ruby-lang.org>
16881         * lib/xmlrpc/utils.rb (XMLRPC::ParseContentType#parse_content_type):
16882           Making Content-Type checks case insensitive. [ruby-Bugs-3367]
16884 Wed Oct 24 17:09:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16886         * parse.y (parser_tokspace): make space in token buffer.
16888         * parse.y (parser_yylex): fix encoding of single character literal.
16890 Tue Oct 23 13:44:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16892         * parse.y (call_args2): nd_head of NODE_BLOCK_PASS should be a list.
16893           [ruby-core:12850]
16895 Tue Oct 23 10:42:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16897         * ruby.c (process_options): encoding set by command line option takes
16898           priority over the encoding in the source, as the primary encoding.
16900 Mon Oct 22 19:24:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16902         * ruby.c (proc_options): allow space after -E (encoding) option.
16904 Mon Oct 22 11:03:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16906         * encoding.c (enc_check_encoding): returns index now.
16908         * encoding.c (rb_enc_compatible): check if two objects have compatible
16909           encodings.
16911         * encoding.c (enc_compatible_p): added Encoding.compatible?.
16913         * include/ruby/encoding.h (rb_enc_compatible): prototype.
16915 Sun Oct 21 18:29:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16917         * encoding.c (rb_enc_default, rb_enc_primary): return pointers to
16918           rb_encoding of default and primary respectively.  [ruby-core:12795]
16920         * encoding.c (set_primary_encoding): removed primary_encoding setter.
16922 Sat Oct 20 13:17:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16924         * enum.c (enum_cycle): hide temporary array from ObjectSpace.
16925           [ruby-core:12762]
16927 Sat Oct 20 11:49:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16929         * file.c (rb_get_path): returns frozen string.
16931         * file.c (rb_file_s_chown, rb_file_s_lchown): use uid_t and gid_t.
16933 Fri Oct 19 20:08:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16935         * encoding.c (rb_id_encoding): returns ID "encoding".
16937         * marshal.c (w_encoding): dump encoding name.
16939         * marshal.c (r_ivar): load encoding.
16941 Fri Oct 19 16:41:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16943         * parse.y (parser_regx_options, reg_compile_gen): relaxened encoding
16944           matching rule.
16946         * re.c (rb_reg_initialize): always set encoding of Regexp.
16948         * re.c (rb_reg_initialize_str): fix encoding for non 7bit-clean
16949           strings.
16951         * re.c (rb_reg_initialize_m): use ascii encoding for 'n' option.
16953 Fri Oct 19 11:09:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16955         * ruby.c (process_options): set primary encoding from the parser
16956           always.  [ruby-core:12758]
16958         * ruby.c (load_file): should not discard the parser parameter.
16960 Fri Oct 19 10:55:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16962         * range.c (range_last): removed unused variables.
16964 Thu Oct 18 17:08:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16966         * enum.c (enum_find_index): update RDoc.  a patch from David Flanagan
16967           <david AT davidflanagan.com> in [ruby-core:12710].
16969         * enum.c (enum_take, enum_drop): ditto.
16971         * enum.c (enum_cycle): should not cause infinite loop for empty
16972           arrays.  [ruby-core:12710]
16974         * range.c (Init_Range): typo fixed.
16976 Thu Oct 18 16:39:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16978         * lib/rexml/source.rb (REXML::SourceFactory::SourceFactory): more
16979           duck typed.  better performance on JRuby.
16980           http://headius.blogspot.com/2007/10/another-performance-discovery-rexml.html
16982 Thu Oct 18 09:33:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16984         * range.c (range_first): takes first n element if argument is
16985           given.  [ruby-core:12697]
16987         * range.c (range_last): returns last n elements if argument is
16988           given.
16990         * array.c (rb_ary_subseq, rb_ary_last): export.
16992 Wed Oct 17 17:39:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16994         * ruby.c (proc_options): fixed reversed condition.  [ruby-core:12722]
16996 Wed Oct 17 13:54:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16998         * re.c (rb_reg_s_union): the last check was not complete.
17000 Wed Oct 17 11:30:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17002         * encoding.c (rb_enc_from_encoding, rb_enc_register): associate index
17003           to self.
17005         * encoding.c (enc_capable): Encoding objects are encoding capable.
17007         * re.c (rb_reg_s_union): check if encoding matching by exact encoding
17008           objects.
17010 Wed Oct 17 06:18:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17012         * encoding.c (rb_enc_alias, rb_enc_find_index): changed
17013           enc_table_alias to a name-to-index hash.
17015         * encoding.c (rb_enc_init): use upper case names for aliases to use as
17016           constant names.
17018         * encoding.c (enc_find): allow symbols.
17020         * encoding.c (Init_Encoding): define encoding constants.
17022         * st.c (strcasehash): fix wrong code range condition.
17024 Wed Oct 17 05:07:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17026         * encoding.c (rb_primary_encoding): added Encoding.primary_encoding.
17028         * parse.y (rb_parser_encoding): added.
17030         * ruby.c (proc_options): added -E and --encoding options.
17032         * ruby.c (process_options): set primary encoding from command line
17033           option if set, or source encoding.
17035         * include/ruby/encoding.h (rb_enc_from_encoding,
17036           rb_get_primary_encoding, rb_set_primary_encoding): prototypes.
17038         * include/ruby/node.h (rb_parser_encoding): prototype.
17040 Wed Oct 17 03:37:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17042         * re.c (rb_reg_desc): set encoding.
17044         * re.c (rb_reg_s_union): check encodings.
17046         * enc/utf8.c (utf8_code_to_mbclen): 0xfe and 0xff are valid Unicode to
17047           be encoded to 2bytes in UTF-8.  [ruby-core:12700]
17049 Wed Oct 17 02:50:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17051         * string.c (rb_str_ord): use encoding.
17053 Wed Oct 17 01:57:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17055         * re.c (rb_reg_initialize_m): allow binary encoding option.
17056           [ruby-dev:32083]
17058 Tue Oct 16 19:48:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17060         * re.c (rb_reg_s_union): check for encoding of original object.
17062 Tue Oct 16 18:28:51 2007  Tanaka Akira  <akr@fsij.org>
17064         * debug.c: use enum for constants for gdb if possible.
17066 Tue Oct 16 18:20:10 2007  Tanaka Akira  <akr@fsij.org>
17068         * ruby.c, debug.c: move debug enum and constants to debug.c.
17070 Tue Oct 16 18:16:15 2007  Tanaka Akira  <akr@fsij.org>
17072         * ruby.c (RUBY_ENCODING_SHIFT): added as enum.
17074         * .gdbinit (rp): show encoding and coderange for strings.
17076 Tue Oct 16 14:48:38 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17078         * parse.y (parser_regx_options): check if regexp encoding option
17079           matches to current encoding.
17081         * re.c (char_to_option, rb_char_to_option_kcode): 'n' is not kcode
17082           option now.
17084         * re.c (rb_reg_to_s, rb_reg_error_desc): copy encoding rather than
17085           append as an option.
17087         * re.c (make_regexp, rb_reg_prepare_re): use encoding of Regexp and
17088           String instead of kcode.
17090         * re.c (rb_reg_initialize): set fixed option if none is set.
17092         * re.c (rb_reg_regcomp): ditto.
17094         * re.c (rb_reg_equal): check if encodings are equal.
17096         * re.c (rb_reg_initialize_m): encoding option is obsolete.
17098         * re.c (rb_kcode, rb_get_kcode, rb_set_kcode): removed.
17100         * re.c (Init_Regexp): removed Regexp#kcode method.
17102         * ruby.c (proc_options): allow long encoding name.
17104 Tue Oct 16 14:03:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17106         * re.c (rb_reg_s_union): encoding of all regexp objects should
17107           match.  [ruby-dev:32076]
17109 Tue Oct 16 13:49:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17111         * encoding.c (enc_to_s): rename function.
17113 Tue Oct 16 13:25:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17115         * string.c (rb_str_new4): should copy encoding.  a patch from NARUSE,
17116           Yui <naruse AT airemix.com>.  [ruby-dev:32076]
17118 Tue Oct 16 01:31:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17120         * enum.c (enum_inject): RDoc update.  a patch from David Flanagan
17121           <david AT davidflanagan.com> in [ruby-core:12710].
17123 Tue Oct 16 01:25:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17125         * encoding.c (Init_Encoding): define #to_s to show encoding name
17126           in to_s representation as well as #inspect.
17128 Mon Oct 15 13:24:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17130         * numeric.c (flo_round): should be number but not rounding factor.
17131           [ruby-dev:32060]
17133 Mon Oct 15 11:45:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17135         * marshal.c (r_bytes0): refined length check.  [ruby-dev:32059]
17137 Mon Oct 15 10:24:19 2007  Tanaka Akira  <akr@fsij.org>
17139         * process.c (pst_to_s): returns a string such as "pid 10220 exit 1"
17140           instead of "256".  [ruby-dev:32053]
17141           (pst_inspect): change format
17142           "#<Process::Status: pid=10220,exited(1)>" to
17143           "#<Process::Status: pid 10220 exit 1>".
17145 Mon Oct 15 09:58:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17147         * marshal.c (r_bytes0): check if source has enough data.
17148           [ruby-dev:32054]
17150 Mon Oct 15 01:15:09 2007  Tanaka Akira  <akr@fsij.org>
17152         * ext/socket/socket.c (s_accept_nonblock): make accepted fd
17153           nonblocking.  [ruby-talk:274079]
17155 Sun Oct 14 17:31:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17157         * encoding.c (rb_obj_encoding): rdoc update.  a patch from David
17158           Flanagan <david AT davidflanagan.com>.  [ruby-core:12664]
17160         * encoding.c (enc_dump, enc_load): marshaling feature.  a patch from
17161           David Flanagan.  [ruby-core:12665]
17163         * encoding.c (Init_Encoding): undefine allocator of Encoding.
17164           [ruby-core:12665], [ruby-core:12666]
17166         * test/ruby/test_encoding.rb: tests for Encoding from David Flanagan
17167           [ruby-core:12665]
17169 Sun Oct 14 11:09:09 2007  Tanaka Akira  <akr@fsij.org>
17171         * lib/pp.rb (PP::PPMethods#pp_hash): don't sort keys because hash is
17172           ordered.
17173           (ENV.pretty_print): call pp_hash with sorted hash.
17175 Sun Oct 14 04:08:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17177         * configure.in (AC_SYS_LARGEFILE): keep results also in command
17178           options, to vail out of mismatch.  [ruby-list:44114]
17180         * mkconfig.rb, lib/mkmf.rb (configuration): add DEFS.
17182 Sun Oct 14 03:55:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17184         * win32/mkexports.rb: deal with __fastcall name decorations.
17185           [ruby-list:44111]
17187 Sun Oct 14 02:20:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17189         * encoding.c (rb_cEncoding): new Encoding class.
17191         * encoding.c (rb_to_encoding, rb_to_encoding_index): helper functions.
17193         * encoding.c (rb_obj_encoding): return Encoding object now.
17195         * gc.c (garbage_collect): mark Encoding objects.
17197         * inits.c (rb_call_inits): call Init_Encoding.
17199         * string.c (rb_str_force_encoding): accept Encoding object as well as
17200           encoding name.
17202         * include/ruby/encoding.h (rb_to_encoding_index, rb_to_encoding):
17203           prototypes.
17205 Sun Oct 14 01:03:30 2007  Tanaka Akira  <akr@fsij.org>
17207         * lib/open-uri.rb (OpenURI.open_http): fix :ssl_ca_cert option.
17209 Sat Oct 13 21:23:21 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17211         * ext/win32ole/win32ole.c (foletype_s_ole_classes,
17212           foletype_s_typelibs): refactoring.
17214         * test/win32ole/test_win32ole_type.rb: add some test.
17216         * ext/win32ole/win32ole.c (Init_win32ole): change method name
17217           WIN32OLE_TYPELIB.ole_types from WIN32OLE_TYPELIB.ole_classes.
17219         * test/win32ole/test_win32ole_typelib.rb: ditto.
17221         * test/win32ole/test_folderitem2_invokeverb.rb: check create
17222           shortcut string more strictly (This test is invoked in Japanese
17223           Windows environment).
17225 Sat Oct 13 09:11:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17227         * parse.y (set_file_encoding): case-insensitive search, a patch from
17228           David Flanagan <david AT davidflanagan.com> [ruby-core:12629]
17230 Sat Oct 13 09:02:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17232         * {bcc,win}32/mkexports.rb: explicit data.  [ruby-list:44108]
17234 Sat Oct 13 00:17:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17236         * lib/rexml/document.rb (REXML::Document::write): leaky
17237           modification trans -> transitive.  [ruby-dev:32040]
17239 Sat Oct 13 00:00:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17241         * parse.y: encoding specifier should work if the line matches
17242           /coding[:=] ?/, a la Python PEP-263, so that VIM comments like
17243           "# vim: set fileencoding=<encoding name>" should be recognized.
17245 Fri Oct 12 15:04:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17247         * parse.y (magic_comments): add "encoding" as same as "coding".
17249         * parse.y (set_file_encoding): special file encoding handling.
17251         * parse.y (parser_yylex): ditto.
17253 Fri Oct 12 12:44:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17255         * array.c (rb_ary_combination): fixed memory corruption due to too
17256           small memory allocation
17258         * array.c (rb_ary_product): accessing out of memory bounds.
17259           condition fixed.
17261 Fri Oct 12 11:22:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17263         * re.c (match_values_at): make #select to be alias to #values_at
17264           to adapt RDoc description.  [ruby-core:12588]
17266 Thu Oct 11 21:10:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17268         * include/ruby/node.h (NOEX_LOCAL): remove unused local visibility.
17270         * class.c (ins_methods_push): ditto.
17272         * class.c (rb_class_local_methods): method removed.
17274 Thu Oct 11 14:29:31 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17276         * */Makefile.sub (COMMON_MACROS): workaround for old SDK's bug.
17277           [ruby-core:12584]
17279 Thu Oct 11 06:35:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17281         * Makefile.in, */Makefile.sub (VPATH): add enc directory.
17283         * common.mk (ENCOBJS): encoding objects.
17285         * enc: directory for encodings.
17287 Thu Oct 11 00:04:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17289         * include/ruby/oniguruma.h (OnigEncodingTypeST): add OnigEncoding
17290           parameter to every function members.
17292         * include/ruby/oniguruma.h (OnigEncodingTypeST): add auxiliary
17293           data member to provide user defined data for an encoding.
17295 Wed Oct 10 23:32:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17297         * re.c (rb_reg_s_quote): no longer takes optional second argument
17298           that has never been documented.
17300 Wed Oct 10 15:39:04 2007  Tanaka Akira  <akr@fsij.org>
17302         * encoding.c (rb_enc_init): don't alias iso-8859-1 to ascii.
17304         * ascii.c (OnigEncodingASCII): change the name US-ASCII to ASCII-8BIT.
17306 Wed Oct 10 14:31:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17308         * string.c (rb_enc_str_coderange): fixed check for non-ascii.
17310 Tue Oct  9 21:35:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17312         * array.c (rb_ary_permutation, rb_ary_combination): missing type
17313           names.
17315         * array.c (rb_ary_permutation): used buffer should be t1.
17317         * array.c (rb_ary_permutation): use frozen shared hidden array.
17318           [ruby-dev:31985]
17320 Tue Oct  9 16:58:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17322         * array.c: remove to_a completely.
17324         * array.c (tmpbuf): keep DRY to clear klass of temporary objects.
17326 Tue Oct  9 16:33:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17328         * array.c (rb_ary_permutation, rb_ary_combination, rb_ary_product):
17329           hide internal buffer objects.  [ruby-dev:31982]
17331 Tue Oct  9 16:00:32 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17333         * parse.y (parser_read_escape, parser_tokadd_escape): check code range.
17334           [ruby-dev:31980]
17336 Tue Oct  9 15:40:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17338         * parse.y (STR_NEW3): check for if single byte sequence.
17340 Mon Oct  8 20:06:29 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
17342         * lib/net/imap.rb, lib/net/smtp.rb, lib/net/pop.rb: hostname should
17343           be verified against server's identity as presented in the server's
17344           certificate. [ruby-dev:31960]
17346         * ext/openssl/lib/net/telnets.rb, ext/openssl/lib/net/ftptls.rb: ditto.
17348 Sun Oct  7 22:37:47 2007  Kouhei Sutou  <kou@cozmixng.org>
17350         * test/rss/test_taxonomy.rb, test/rss/test_parser_1.0.rb,
17351           test/rss/test_image.rb, test/rss/rss-testcase.rb: ensured
17352           declaring XML namespaces.
17354 Sun Oct  7 22:00:01 2007  Tanaka Akira  <akr@fsij.org>
17356         * include/ruby/node.h: make node flags as VALUE type.
17357           enum ruby_node_flags removed.
17359         * ruby.c: define RUBY_NODE_* as const for gdb.
17361 Sun Oct  7 18:57:12 2007  Tanaka Akira  <akr@fsij.org>
17363         * include/ruby/ruby.h: enum ruby_value_flags removed.  [ruby-dev:31959]
17365         * ruby.c: define RUBY_FL_* as const VALUE for gdb.
17367 Sun Oct  7 17:50:14 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
17369         * lib/net/http.rb: remove enable_post_connection_check flag.
17371         * lib/open-uri.rb: ditto.
17373 Sun Oct  7 15:48:40 2007  Koichi Sasada  <ko1@atdot.net>
17375         * insns.def (opt_eq): fix to use rb_str_equal().
17377 Sat Oct  6 23:14:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17379         * string.c (rb_str_to_i): update RDoc since base can be any value
17380           between 2 and 36.  [ruby-talk:272879]
17382 Sat Oct  6 16:24:02 2007  Koichi Sasada  <ko1@atdot.net>
17384         * cont.c (cont_free): check Fiber or Continuation.
17386         * bootstraptest/test_knownbug.rb: remove a fixed test.
17388 Sat Oct  6 14:56:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17390         * encoding.c (rb_enc_register): returns new index or -1 if failed.
17392         * encoding.c (rb_enc_alias): check if original name is registered.
17394         * encoding.c (rb_enc_init): register in same order as kcode options in
17395           re.c.  added new aliases.
17397         * string.c (rb_str_force_encoding): check if valid encoding name.
17399 Sat Oct  6 14:32:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17401         * insns.def (opt_eq): get rid of gcc bug.
17403 Sat Oct  6 02:34:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17405         * include/ruby/defines.h: no longer provide DEFAULT_KCODE.
17407 Fri Oct  5 21:24:59 2007  Tanaka Akira  <akr@fsij.org>
17409         * re.c (rb_reg_s_union_m): Regexp.union accepts single argument which
17410           is an array of patterns.  [ruby-list:44084]
17412 Fri Oct  5 16:42:27 2007  Tanaka Akira  <akr@fsij.org>
17414         * bootstraptest/runner.rb (assert_not_match): new method.
17416 Fri Oct  5 16:15:52 2007  Akinori MUSHA  <knu@iDaemons.org>
17418         * configure.in: Turn on --enable-pthread by default for FreeBSD
17419           5.2.1-RELEASE and later, and remove pthread support for older
17420           versions which has never worked perfectly.
17422 Fri Oct  5 16:11:50 2007  Akinori MUSHA  <knu@iDaemons.org>
17424         * time.c (time_to_s): Fix documentation.  Time format changed.
17426 Fri Oct  5 04:02:39 2007  Akinori MUSHA  <knu@iDaemons.org>
17428         * lib/ipaddr.rb (in_addr, in6_addr, addr_mask): Make some minor
17429           code optimization.
17431 Fri Oct  5 03:25:51 2007  Akinori MUSHA  <knu@iDaemons.org>
17433         * lib/ipaddr.rb (<=>): Implement IPAddr#<=> and make IPAddr
17434           comparable.
17436         * lib/ipaddr.rb (succ): Implement IPAddr#succ.  You can now create
17437           a range between two IPAddr's, which (Range) object is
17438           enumerable.
17440         * lib/ipaddr.rb (to_range): A new method to create a Range object
17441           for the (network) address.
17443 Fri Oct  5 03:14:45 2007  Akinori MUSHA  <knu@iDaemons.org>
17445         * lib/ipaddr.rb (coerce_other): Support type coercion and make &,
17446           |, == and include? accept a string or an integer instead of an
17447           IPAddr object as the argument.
17449         * lib/ipaddr.rb (initialize): Give better error messages.
17451         * lib/ipaddr.rb: Improve documentation.
17453 Thu Oct  4 20:45:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17455         * process.c (Init_process): win32 has our own WNOHANG definition, so
17456           remove unnecessary #ifdef guard.
17458 Thu Oct  4 20:17:19 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17460         * array.c (rb_ary_permutation, rb_ary_product): support non C99
17461           compilers.
17463 Thu Oct  4 17:33:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17465         * re.c (kcode_setter): Perl-ish global variable `$=' no longer
17466           effective.
17468         * io.c (Init_IO): remove obsolete variables: $defout, $deferr.
17470         * re.c (Init_Regexp): remove obsolete const alias: MatchingData.
17472         * time.c (Init_Time): remove obsolete Time::times.
17474         * re.c (ignorecase_setter): change warning message.
17476         * re.c (ignorecase_getter): now gives warning.
17478         * string.c (rb_str_cmp_m): update RDoc document.
17480         * re.c (kcode_setter): restore erroneously removed setter.
17482 Thu Oct  4 16:28:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17484         * encoding.c (rb_obj_encoding): returns encoding of the given object.
17486         * parse.y (reg_compile_gen): copy encoding from source string if
17487           non-empty.
17489         * re.c (Init_Regexp): new method Regexp#encoding.
17491         * string.c (str_encoding): moved to encoding.c
17493 Thu Oct  4 15:49:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17495         * array.c (rb_ary_permutation): remove C99 dependency.
17496           [ruby-dev:31934]
17498         * array.c (rb_ary_product): ditto.
17500 Wed Oct  3 23:37:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17502         * ext/nkf/nkf.c, bin/ri, bin/irb: fixed typos in doc and comments.
17503           a patch from Eugene Ossintsev  <eugoss AT gmail.com>.
17504           [ruby-core:12375]
17506 Wed Oct  3 17:56:22 2007  Koichi Sasada  <ko1@atdot.net>
17508         * benchmark/driver.rb: enable specify label to executable.
17509           (-e "ruby1::/path/to/ruby1; ruby2::/path/to/ruby2; ...")
17511 Wed Oct  3 16:58:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17513         * parse.y (parser_str_new, parser_yylex, rb_intern3): set code-range
17514           bits.
17516         * parse.y (parser_tokadd_string): check code-range.
17518         * parse.y (parser_parse_string, parser_here_document): ditto.
17520         * parse.y (parser_set_encode): check if valid encoding.
17522 Wed Oct  3 15:43:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17524         * variable.c (rb_cvar_set): check whether class variable is
17525           defined in superclasses.  root classes have higher priority.
17526           removes lower class variable entry from IV_TBL (if it's defined
17527           in classes, not modules).
17529         * variable.c (rb_cvar_get): ditto.
17531 Wed Oct  3 10:06:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17533         * ruby.c (ruby_process_options): push frame with program name.
17534           [ruby-core:12351]
17536 Tue Oct  2 20:16:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17538         * win32/win32.c (init_env): refactoring. remove unused code.
17540 Tue Oct  2 12:30:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17542         * array.c (rb_ary_product): generalized product, now takes
17543           arbitrary number of arrays.  a patch from David Flanagan
17544           <david AT davidflanagan.com>.  [ruby-core:12346]
17546 Tue Oct  2 08:25:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17548         * array.c (rb_ary_permutation): implementation contributed from
17549           David Flanagan.  [ruby-core:12344]
17551         * array.c (rb_ary_combination): RDoc update to clarify.  a patch
17552           from David Flanagan.  [ruby-core:12344]
17554         * array.c (rb_ary_permutation): small dirty hack by Matz to avoid
17555           arrays on stack.
17557 Tue Oct  2 07:01:05 2007  Koichi Sasada  <ko1@atdot.net>
17559         * proc.c (proc_dup): proc->block.proc should be self.
17561         * bootstraptest/test_knownbug.rb, test_method.rb:
17562           move a fixed test.
17564 Mon Oct  1 16:17:44 2007  Tanaka Akira  <akr@fsij.org>
17566         * bootstraptest/test_method.rb: use assert_normal_exit to test
17567           [ruby-dev:31818].
17569 Mon Oct  1 15:57:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17571         * gc.c (id2ref): skip ICLASS.
17573 Mon Oct  1 15:29:35 2007  Tanaka Akira  <akr@fsij.org>
17575         * bootstraptest/runner.rb (assert_normal_exit): use `` instead of
17576           system.
17578 Mon Oct  1 15:17:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17580         * gc.c (id2ref): T_VALUES is less than T_BLOCK.  [ruby-dev:31911]
17582 Mon Oct  1 10:58:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17584         * ruby.c (require_libraries): use require method instead of calling
17585           rb_require directly.  [ruby-dev:31322]
17587 Mon Oct  1 10:52:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17589         * eval.c (ruby_options), ruby.c (proc_options, process_options): not
17590           call exit(2) directly.  [ruby-dev:31912]
17592         * eval.c (ruby_run_node): deal with direct exit code.
17594 Sun Sep 30 17:12:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17596         * string.c (rb_str_append): always set encoding, and coderange
17597           cache bits.
17599         * include/ruby/encoding.h (ENC_CODERANGE_SET): fixed a bug not to
17600           set cache bits.
17602 Sun Sep 30 11:52:11 2007  Tanaka Akira  <akr@fsij.org>
17604         * bootstraptest/runner.rb (pretty): don't show beginning empty line.
17606 Sun Sep 30 11:32:34 2007  Tanaka Akira  <akr@fsij.org>
17608         * numeric.c: use #ifdef for test LONG_LONG_VALUE.
17610 Sun Sep 30 04:30:55 2007  Tanaka Akira  <akr@fsij.org>
17612         * bignum.c: use SIZEOF_LONG instead of SIZEOF_ULONG which is not
17613           defined.
17615 Sun Sep 30 04:03:43 2007  Tanaka Akira  <akr@fsij.org>
17617         * re.c (Init_Regexp): test DEFAULT_KCODE in C code because
17618           KCODE_EUC, etc. are enum.
17620 Sun Sep 30 00:55:40 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17622         * variable.c (obj_ivar_each): get rid of warning.
17624 Sat Sep 29 17:45:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17626         * main.c (main): use platform-independent per-process initialization.
17627           [ruby-dev:31900]
17629         * ruby.c (ruby_sysinit): new function for per-process initialization.
17631         * include/ruby/ruby.h (RUBY_GLOBAL_SETUP): toplevel setup declaration.
17633         * include/ruby/win32.h, win32/mkexports.rb: alias NtInitialize
17634           ruby_sysinit.
17636         * win32/win32.c (rb_w32_sysinit): renamed from NtInitialize.
17638 Sat Sep 29 17:31:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17640         * array.c (rb_ary_combination): new method to give all combination
17641           of elements from an array.  [ruby-list:42671]
17643         * array.c (rb_ary_product): a new method to get all combinations
17644           of elements from two arrays.  can be extended to combinations of
17645           n-arrays, e.g. a.product(b,c,d).  anyone volunteer?
17647         * array.c (rb_ary_permutation): empty function body to calculate
17648           permutations of array elements.  need volunteer.
17650 Sat Sep 29 17:14:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17652         * marshal.c (r_leave): move proc invocation from r_entry() to
17653           avoid potential crash.
17655 Sat Sep 29 12:28:08 2007  Tanaka Akira  <akr@fsij.org>
17657         * bootstraptest/runner.rb (assert_normal_exit): new method.
17659         * bootstraptest/test_knownbug.rb: add test for Marshal.load.
17661 Sat Sep 29 10:12:20 2007  Tanaka Akira  <akr@fsij.org>
17663         * variable.c (rb_ivar_set): fix class instance variable.
17665         * object.c (rb_class_real): cl argument may be 0.
17667 Sat Sep 29 09:12:02 2007  Tanaka Akira  <akr@fsij.org>
17669         * object.c (rb_class_real): use BUILTIN_TYPE instead of TYPE.
17670           access flags directly instead of FL_TEST.
17671           they are enough because cl argument is a class.
17673 Sat Sep 29 08:57:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17675         * include/ruby/win32.h (strcasecmp): needed for type_strcasehash.
17677 Sat Sep 29 06:47:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17679         * ruby.c (struct cmdline_options): static variables packed.
17681 Sat Sep 29 05:29:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17683         * io.c (rb_io_fdopen): create IO object from fd.
17685         * parse.y (yycompile): use encoding of the source as default.
17687         * ruby.c (proc_options, load_file): ditto.
17689 Sat Sep 29 04:27:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17691         * encoding.c (rb_enc_alias): allow encodings multiple aliases.
17693         * encoding.c (rb_enc_find_index): search the encoding which has the
17694           given name and return its index if found, or -1.
17696         * st.c (type_strcasehash): case-insensitive string hash type.
17698         * string.c (rb_str_force_encoding): force encoding of self.  this name
17699           comes from [ruby-dev:31894] by Martin Duerst.  [ruby-dev:31744]
17701         * include/ruby/encoding.h (rb_enc_find_index, rb_enc_associate_index):
17702           prototyped.
17704         * include/ruby/encoding.h (rb_enc_isctype): direct interface to ctype.
17706         * include/ruby/st.h (st_init_strcasetable): prototyped.
17708 Sat Sep 29 03:53:26 2007  Koichi Sasada  <ko1@atdot.net>
17710         * cont.c: Thread local storage should be fiber local.
17712         * bootstraptest/test_knownbug.rb, test/ruby/test_fiber.rb:
17713           move a fixed test.
17715 Fri Sep 28 23:15:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17717         * insnhelper.ci (vm_call_method): allow send! to call protected
17718           methods as well.  [ruby-core:12280]
17720 Fri Sep 28 22:33:47 2007  Koichi Sasada  <ko1@atdot.net>
17722         * benchmark/bm_so_fasta.rb: added.
17724         * benchmark/bm_so_k_nucleotide.rb: added.
17726         * benchmark/bm_so_reverse_complement.rb: added.
17728         * benchmark/make_fasta_output.rb: added.
17730         * benchmark/prepare_so_k_nucleotide.rb: added.
17732         * benchmark/prepare_so_reverse_complement.rb: added.
17734 Fri Sep 28 19:14:51 2007  Koichi Sasada  <ko1@atdot.net>
17736         * benchmark/driver.rb: fix notations.
17738         * benchmark/bm_loop_whileloop.rb: ditto.
17740         * benchmark/bm_loop_whileloop2.rb: ditto.
17742         * benchmark/bm_app_uri.rb: added.
17744         * benchmark/bm_vm1_ivar_set.rb: ditto.
17746         * benchmark/bm_so_binary_trees.rb: added from Computer Language
17747           Benchmarks Game (http://shootout.alioth.debian.org/).
17749         * benchmark/bm_so_fannkuch.rb: ditto.
17751         * benchmark/bm_so_mandelbrot.rb: ditto.
17753         * benchmark/bm_so_meteor_contest.rb: ditto.
17755         * benchmark/bm_so_nbody.rb: ditto.
17757         * benchmark/bm_so_nsieve.rb: ditto.
17759         * benchmark/bm_so_nsieve_bits.rb: ditto.
17761         * benchmark/bm_so_partial_sums.rb: ditto.
17763         * benchmark/bm_so_pidigits.rb: ditto.
17765         * benchmark/bm_so_spectralnorm.rb: ditto.
17767 Fri Sep 28 16:22:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17769         * vm_core.h (rb_vm_struct): fix typo: bufferd -> buffered.
17771 Fri Sep 28 15:47:48 2007  Koichi Sasada  <ko1@atdot.net>
17773         * benchmark/driver.rb: fix to output benchmark results
17774           to file "bmlog-#{Time.now.strftime('%Y%m%d-%H%M%S')}.#{$$}".
17776         * benchmark/bm_io_file_create.rb: remove useless codes.
17778         * benchmark/bm_vm2_eval.rb: added.
17780 Fri Sep 28 15:05:24 2007  Tanaka Akira  <akr@fsij.org>
17782         * include/ruby/intern.h: export rb_ivar_foreach.
17784         * include/ruby/ruby.h: modify struct RObject and RClass for optimizing
17785           T_OBJECT space.  [ruby-dev:31853]
17786           (ROBJECT_LEN, ROBJECT_PTR)
17787           (RCLASS_IV_TBL, RCLASS_M_TBL, RCLASS_SUPER, RCLASS_IV_INDEX_TBL)
17788           (RMODULE_IV_TBL, RMODULE_M_TBL, RMODULE_SUPER): abstract accessor
17789           defined.
17791         * variable.c: support the modified RObject and RClass.
17793         * object.c: ditto.
17795         * class.c: ditto.
17797         * gc.c: ditto.
17799         * marshal.c: ditto.
17801         * eval_method.ci: use the abstract accessor.
17803         * insns.def: ditto.
17805         * proc.c: ditto.
17807         * struct.c: ditto.
17809         * eval.c: ditto.
17811         * error.c: ditto.
17813         * vm.c: ditto.
17815         * insnhelper.ci: ditto.
17817         * ext/digest/digest.c: ditto.
17819 Fri Sep 28 13:20:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17821         * io.c (rb_io_getline_fast, rb_io_getline_1): set encoding to the
17822           result string, as well as getc.
17824 Fri Sep 28 12:51:42 2007  Koichi Sasada  <ko1@atdot.net>
17826         * benchmark/bm_app_erb.rb: added.
17828         * benchmark/bm_io_file_(create|read|write).rb: added.
17830 Fri Sep 28 12:49:05 2007  Koichi Sasada  <ko1@atdot.net>
17832         * benchmark/driver.rb: fix file selection algorithm.
17834 Fri Sep 28 02:05:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17836         * string.c (rb_str_comparable): need not to check asciicompat here.
17838         * encoding.c (rb_enc_check): ditto.
17840         * string.c (rb_enc_str_coderange): tuned a bit; no broken check.
17842         * encoding.c (rb_enc_check): new encoding comparison criteria.
17844 Thu Sep 27 17:36:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17846         * win32/REAMDE.win32: follow recent changes.
17848 Thu Sep 27 16:01:53 2007  Koichi Sasada  <ko1@atdot.net>
17850         * benchmark/driver.rb: fix to output some helpful messages.
17852 Thu Sep 27 15:44:51 2007  Koichi Sasada  <ko1@atdot.net>
17854         * benchmark/driver.rb: added.
17856         * common.mk: fix to use above driver.
17858         * benchmark/prepare_so_count_words.rb: added.
17860         * benchmark/bm_so_count_words.rb: fix benchmark process.
17862 Thu Sep 27 15:42:34 2007  Koichi Sasada  <ko1@atdot.net>
17864         * ext/fiber/fiber.c: modify prototype declaration.
17865           [ruby-core:12247]
17867 Thu Sep 27 09:42:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17869         * parse.y (strings, xstring, regexp, dsym): empty strings have
17870           US-ASCII encoding.
17872 Thu Sep 27 07:39:13 2007  Tanaka Akira  <akr@fsij.org>
17874         * bootstraptest/runner.rb (assert_finish): new method.
17876         * bootstraptest/test_knownbug.rb: add test for [ruby-dev:31866] using
17877           assert_finish.
17879 Thu Sep 27 04:46:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17881         * encoding.c (rb_enc_associate_index): deal with ASCII compatible
17882           flags.
17884         * encoding.c (rb_enc_check): allow ASCII compatible strings.
17886         * parse.y (rb_intern_str): use ASCII encoding for ASCII string.
17888         * string.c (rb_enc_str_coderange): check for code-range.
17890         * string.c (rb_str_modify): clear code-range flags.
17892         * string.c (rb_str_hash, rb_str_eql): ASCII compatible strings are
17893           comparable.
17895         * include/ruby/encoding.h: added code-range flags.
17897 Thu Sep 27 04:40:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17899         * gc.c (rb_mark_set): new function to mark keys.
17901         * marshal.c (struct dump_arg, struct load_arg): added wrappers to mark
17902           data and compat_tbl entries.  [ruby-dev:31870]
17904 Thu Sep 27 03:17:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17906         * process.c (rb_waitpid): no needs to poll.  [ruby-dev:31871]
17908 Wed Sep 26 20:11:46 2007  Koichi Sasada  <ko1@atdot.net>
17910         * bootstraptest/test_knownbug.rb: remove a fixed test.
17912 Wed Sep 26 20:00:12 2007  Koichi Sasada  <ko1@atdot.net>
17914         * bootstraptest/test_knownbug.rb: move fixed tests.
17916         * bootstraptest/test_method.rb: ditto.
17918         * test/ruby/test_io.rb: ditto.
17920 Wed Sep 26 19:36:26 2007  Koichi Sasada  <ko1@atdot.net>
17922         * eval.c (eval): fix to check stack overflow.
17923           [ruby-dev:31850]
17925         * eval_intern.h, vm.h: move CHECK_STACK_OVERFLOW() macro.
17927 Wed Sep 26 19:27:11 2007  Koichi Sasada  <ko1@atdot.net>
17929         * insnhelper.ci (vm_throw): fix to move increment point.
17930           [ruby-dev:31840]
17932 Wed Sep 26 19:23:56 2007  Koichi Sasada  <ko1@atdot.net>
17934         * cont.c: Fiber as SemiCoroutine on default. [ruby-core:12146]
17936         * ext/fiber/fiber.c: enable Fiber#transfer.
17938 Wed Sep 26 18:38:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17940         * encoding.c (rb_enc_check): check for ASCII-compatibilities.
17942         * parse.y (parser_tokadd_string, parser_parse_string,
17943           parser_here_document, parser_yylex): set encoding to US-ASCII.
17945         * parse.y (rb_enc_symname_p): check if valid with encoding.
17947         * parse.y (rb_intern3): let symbols have encoding.
17949         * string.c (rb_str_hash): add encoding index.
17951         * string.c (rb_str_comparable, rb_str_equal, rb_str_eql): check if
17952           compatible encoding.
17954         * string.c (sym_inspect): made encoding aware.
17956         * insns.def (opt_eq): compare with encoding.
17958         * include/ruby/encoding.h (rb_enc_asciicompat): check if ASCII
17959           compatible.
17961         * include/ruby/encoding.h (rb_enc_get_index): added prototype.
17963         * include/ruby/intern.h (rb_str_comparable, rb_str_equal): ditto.
17965 Wed Sep 26 15:01:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17967         * eval_method.ci (rb_get_alloc_func): cast to suppress a warning.
17969         * eval_method.ci (remove_method): local variable to be initialized.
17971 Wed Sep 26 08:36:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17973         * Makefile.in (ext/extinit.o): use $(OUTFLAG) as well as other
17974           objects.  [ruby-Bugs-14228]
17976 Wed Sep 26 05:12:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17978         * parse.y (parser_yyerror): limit error message length.
17979           [ruby-dev:31848]
17981 Tue Sep 25 15:11:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17983         * io.c (io_ungetc): reallocate internal buffer if pushing data
17984           excess capacity.  [ruby-dev:31650]
17986 Tue Sep 25 13:43:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17988         * eval_method.ci (remove_method): should not remove undef place
17989           holder.  [ruby-dev:31816], [ruby-dev:31817]
17991 Tue Sep 25 09:51:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17993         * eval.c (rb_longjmp): source file information may be NULL.
17994           [ruby-dev:31849]
17996         * eval.c (ruby_finalize_0): clear trace_func before finalization.
17998 Mon Sep 24 22:36:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18000         * array.c (rb_ary_equal): should handle recursive array.
18002         * hash.c (hash_equal): should handle recursive hash.
18004 Mon Sep 24 22:14:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18006         * lib/weakref.rb (WeakRef): remove debug print.  [ruby-dev:31799]
18008         * hash.c (hash_i): avoid too frequent hash conflict where key and
18009           value are same.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
18010           [ruby-dev:31802]
18012 Mon Sep 24 17:56:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18014         * ext/strscan/strscan.c (strscan_initialize, strscan_getch): use the
18015           encoding of the target string instead of setting to StringScanner
18016           instance.  [ruby-dev:31831]
18018 Mon Sep 24 16:52:11 2007  Urabe Shyouhei  <shyouhei@ruby-lang.org>
18020         * lib/net/http.rb: fix typo.
18022 Mon Sep 24 06:49:15 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
18024         * lib/net/http.rb: an SSL verification (the server hostname should
18025           be matched with its certificate's commonName) is added.
18026           this verification can be skipped by
18027           "Net::HTTP#enable_post_connection_check=(false)".
18028           suggested by Chris Clark <cclark at isecpartners.com>
18030         * lib/net/open-uri.rb: use Net::HTTP#enable_post_connection_check to
18031           perform SSL post connection check.
18033         * ext/openssl/lib/openssl/ssl.c
18034           (OpenSSL::SSL::SSLSocket#post_connection_check): refine error message.
18036 Sun Sep 23 09:05:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18038         * gc.c (os_obj_of, os_each_obj): hide objects to be finalized.
18039           [ruby-dev:31810]
18041 Sun Sep 23 08:58:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18043         * eval_method.ci (rb_attr): should not use alloca for unknown size
18044           input.  [ruby-dev:31818]
18046         * parse.y (rb_intern_str): prevent str from optimization.
18048 Sun Sep 23 06:16:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18050         * eval_method.ci (remove_method): check for undefined method.
18051           [ruby-dev:31816]
18053 Sun Sep 23 05:42:35 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
18055         * lib/rdoc/options.rb (Options::check_diagram): dot -V output
18056           changed. [ ruby-Bugs-11978 ], Thanks Florian Frank.
18058 Sat Sep 22 06:02:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18060         * lib/optparse.rb (OptionParser::List::summarize): use each_line if
18061           defined rather than each.  [ruby-Patches-14096]
18063 Sat Sep 22 05:19:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18065         * ext/stringio/stringio.c (strio_init): separate from strio_initialize
18066           to share with strio_reopen properly.  [ruby-Bugs-13919]
18068 Fri Sep 21 14:51:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18070         * gc.c (gc_mark_rest): copy just used part.
18072         * gc.c (gc_mark_children): mark u1 and u2 of NODE_ARGSCAT.
18074         * gc.c (os_obj_of): hide T_VALUES too.  [ruby-dev:31804]
18076         * gc.c (run_final): freeze temporary argument array.
18078 Fri Sep 21 04:58:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18080         * misc/ruby-style.el (ruby-style-label-indent): fix for function top
18081           level labels.
18083 Fri Sep 21 02:11:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18085         * re.c (rb_reg_match_m): evaluate a block if match.  it would make
18086           condition statement much shorter, if no else clause is needed.
18088         * string.c (rb_str_match_m): ditto.
18090 Fri Sep 21 02:02:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18092         * hash.c (hash_equal): should call rb_eql when argument eql is set.
18094 Thu Sep 20 17:28:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18096         * io.c (popen_exec), process.c (rb_spawn): stop other threads before
18097           exec.  [ruby-core:08262]
18099 Tue Sep 18 22:08:42 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
18101         * lib/matrix.rb: fix a coerce bug of Vector. [ruby-core: 12190]
18103 Mon Sep 17 21:06:03 2007  Minero Aoki  <aamine@loveruby.net>
18105         * lib/net/http.rb (HTTP::GenericRequest#initialize): check path is
18106           not nil. [ruby-dev:31149]
18108 Mon Sep 17 21:00:51 2007  Minero Aoki  <aamine@loveruby.net>
18110         * parse.y (ripper): rename event: arglist_* -> args_*.
18112         * parse.y (ripper): rename event: restparam -> rest_param.
18114         * parse.y (ripper): rename event: constpath_* -> const_path_*.
18116         * parse.y (ripper): rename event: topconst_* -> top_const_*.
18118         * parse.y (ripper): rename event: iter_block -> method_add_block.
18120         * parse.y (ripper): support block local parameter declaration.
18122         * parse.y (ripper): introduce new macro params_new.
18124         * ext/ripper/lib/ripper/sexp.rb: should not dispose event
18125           arguments whose name ends with "_new" but arity != 0.
18127 Sat Sep 15 23:36:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18129         * parse.y (struct parser_params): common members in the parser and
18130           ripper must be placed at each same location.
18132 Sat Sep 15 18:25:15 2007  Kouhei Sutou  <kou@cozmixng.org>
18134         * string.c (rb_str_rstrip_bang): fixed too much rstrip. [ruby-dev:31786]
18136 Sat Sep 15 17:32:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18138         * parse.y (parser_initialize): set default encoding.  [ruby-dev:31787]
18140         * ruby.c (load_file): make new parse instance after processing shebang
18141           line options.
18143 Sat Sep 15 17:04:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18145         * encoding.c (rb_enc_associate_index, rb_enc_get_index): check if
18146           object is encoding capable.  [ruby-dev:31780]
18148         * string.c (rb_str_subpat_set): check for if the argument is a String.
18150 Sat Sep 15 13:31:21 2007  Kouhei Sutou  <kou@cozmixng.org>
18152         * lib/rss.rb, lib/rss/, test/rss/:
18153           - 0.1.9 -> 0.2.0.
18154           - supported Slash module.
18156 Fri Sep 14 22:20:01 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18158         * ext/win32ole/win32ole.c (fev_unadvise): no needs to reset
18159           event handlers.
18161 Fri Sep 14 17:28:32 2007  Koichi Sasada  <ko1@atdot.net>
18163         * test/ruby/test_io.rb: tests which cause SEGV should not be
18164           added.
18166         * bootstraptest/test_knownbug.rb: add above test to known bug.
18168 Fri Sep 14 16:24:04 2007  Koichi Sasada  <ko1@atdot.net>
18170         * insnhelper.ci (vm_expandarray): assignment should be placed
18171           after creating new array.
18173 Fri Sep 14 16:17:30 2007  Koichi Sasada  <ko1@atdot.net>
18175         * bootstraptest/runner.rb: add a stress test (-s).
18177 Fri Sep 14 16:14:28 2007  Koichi Sasada  <ko1@atdot.net>
18179         * vm.h, eval_intern.h: move some macros to eval_intern.h.
18181         * eval_jump.ci (rb_f_throw): fix to use NEW_THROW_OBJECT().
18183         * eval.c (rb_f_loop): remove additional macro.
18185 Fri Sep 14 16:12:10 2007  Koichi Sasada  <ko1@atdot.net>
18187         * insnhelper.ci (vm_expandarray): should be volatile value for GC.
18189 Thu Sep 13 15:42:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18191         * compile.c (iseq_compile_each): inline cache entries are overwritten
18192           in iseq_build_body().
18194 Thu Sep 13 14:00:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18196         * parse.y (brace_block): should use compstmt.  patch submitted by
18197           Kirill A. Shutemov <k.shutemov AT gmail.com>  [ruby-core:12154].
18199 Thu Sep 13 13:47:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18201         * parse.y (rb_id2str): fixed typo.
18203 Wed Sep 12 23:12:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18205         * ruby.c (proc_options): -W should be allowed in RUBYOPT
18206           environment variable.  [ruby-core:12118]
18208 Wed Sep 12 15:19:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18210         * io.c (rb_io_s_sysopen): should not use alloca for unknown size
18211           input.  [ruby-dev:31775]
18213         * parse.y (rb_id2str): ditto.
18215         * marshal.c (w_float): use snprintf instead of sprintf.
18217 Tue Sep 11 17:28:00 2007  Akinori MUSHA  <knu@iDaemons.org>
18219         * lib/tempfile.rb (Tempfile::make_tmpname): Allow to specify a
18220           suffix for a temporary file name.
18222         * lib/tempfile.rb (Tempfile::make_tmpname): Make temporary file
18223           names less predictable by including a random string.
18224           [inspired by: akr]
18226 Tue Sep 11 17:25:59 2007  Akinori MUSHA  <knu@iDaemons.org>
18228         * lib/shellwords.rb: Add shellescape() and shelljoin().
18230         * lib/shellwords.rb: Rename shellwords() to shellsplit() and make
18231           the former an alias to the latter.
18233         * lib/shellwords.rb: Add escape(), split(), join() as class
18234           methods, which are aliases to their respective long names
18235           prefixed with `shell'.
18237         * lib/shellwords.rb: Add String#shellescape(), String#shellsplit()
18238           and Array#shelljoin() for convenience.
18240 Mon Sep 10 15:48:31 2007  Tanaka Akira  <akr@fsij.org>
18242         * range.c: represent initialized state using EXCL instead of FL_USER3.
18244         * range.c (range_dumper): make uninitialized range dumpable.
18245           (range_loader): make uninitialized range loadable.
18247 Mon Sep 10 13:44:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18249         * array.c (rb_ary_cycle): avoid infinite loop for empty array.
18250           based on a patch from David Flanagan.  [ruby-core:12085]
18252 Mon Sep 10 01:21:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18254         * marshal.c (r_object0): struct allocation first to check if a
18255           class is a struct.  compatibility check should come next.
18257 Mon Sep 10 01:05:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18259         * range.c (range_step): fixed integer overflow.  [ruby-dev:31763]
18261 Sun Sep  9 08:57:27 2007  Tadayoshi Funaba  <tadf@dotrb.org>
18263         * lib/date/format.rb (_strptime): now also attaches an element
18264           which denotes leftover substring if exists.
18266 Sun Sep  9 01:59:08 2007  Tanaka Akira  <akr@fsij.org>
18268         * marshal.c (r_object0): check T_STRUCT type for structs.
18270 Sun Sep  9 01:17:05 2007  Tanaka Akira  <akr@fsij.org>
18272         * marshal.c (r_object0): don't call user-defined initialize for
18273           T_STRUCT objects.
18275         * include/ruby/intern.h (rb_struct_initialize): declared.
18277         * struct.c (rb_struct_initialize): export.
18279 Sat Sep  8 23:55:56 2007  Tanaka Akira  <akr@fsij.org>
18281         * eval_method.ci (rb_get_alloc_func): new function to get allocation
18282           function.
18284         * include/ruby/intern.h (rb_alloc_func_t): declared.
18285           (rb_define_alloc_func): declared.
18286           (rb_marshal_define_compat): declared.
18288         * range.c: use T_STRUCT for Range.
18290         * inits.c: move Init_marshal() prior to Init_Range() because
18291           Init_Range calls rb_marshal_define_compat which needs
18292           marshal's compat_allocator_tbl initialized.
18294         * marshal.c: support marshal format compatibility layer designed for
18295           marshaling T_STRUCT Range using T_OBJECT format.
18296           (rb_marshal_define_compat): defined.
18298         [ruby-dev:31710]
18300 Sat Sep  8 10:05:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18302         * struct.c (rb_struct_s_members): check if __members__ is an
18303           array to prevent segmentation fault.  [ruby-dev:31759]
18305 Sat Sep  8 09:33:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
18307         * lib/date/format.rb (str[fp]time): now check specifications more
18308           strictly.
18310 Sat Sep  8 02:56:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18312         * test/ruby/test_fiber.rb (TestFiber::test_throw): uncaught throw
18313           now raise ArgumentError exception.
18315 Sat Sep  8 02:45:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18317         * struct.c (rb_struct_s_members): should raise TypeError instead
18318           of call rb_bug().  [ruby-dev:31709]
18320         * marshal.c (r_object0): no nil check require any more.
18322 Sat Sep  8 01:46:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
18324         * regenc.c, regenc.h (onigenc_single_byte_mbc_enc_len): should take
18325           two arguments. [ruby-dev:31754]
18327 Fri Sep  7 00:58:16 2007  Koichi Sasada  <ko1@atdot.net>
18329         * common.mk: fix typo.
18331 Fri Sep  7 00:28:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18333         * io.c (rb_io_getc): forgot to commit rb_enc_mbclen() fix.
18335         * ext/stringio/stringio.c (strio_getc): rb_enc_mbclen() fix.
18337         * ext/stringio/stringio.c (strio_ungetc): ditto.
18339 Thu Sep  6 22:57:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18341         * lib/fileutils.rb (FileUtils::Entry_::copy): prevent self copy of
18342           directories.
18344         * lib/fileutils.rb (FileUtils::fu_each_src_dest0): use try_convert.
18346         * lib/fileutils.rb (FileUtils::fu_update_option): ditto.
18348 Thu Sep  6 21:36:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18350         * include/ruby/oniguruma.h (OnigEncodingTypeST): add end parameter
18351           to mbc_enc_len.
18353         * euc_jp.c (mbc_enc_len), sjis.c (mbc_enc_len),
18354           utf8.c (utf8_mbc_enc_len): ditto.
18356         * encoding.c (rb_enc_mbclen): add end parameter.
18358 Thu Sep  6 21:31:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18360         * array.c (rb_ary_cycle): typo in rdoc.  a patch from Yugui
18361           <yugui@yugui.sakura.ne.jp>.  [ruby-dev:31748]
18363 Thu Sep  6 12:42:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18365         * string.c (rb_str_succ, rb_str_chop_bang, rb_str_chop): m17n support.
18366           [ruby-dev:31734]
18368 Wed Sep  5 22:02:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18370         * array.c (rb_ary_subseq): need integer overflow check.
18371           [ruby-dev:31736]
18373         * array.c (rb_ary_splice): ditto.  [ruby-dev:31737]
18375         * array.c (rb_ary_fill): ditto.  [ruby-dev:31738]
18377         * string.c (rb_str_splice): integer overflow for length.
18378           [ruby-dev:31739]
18380 Tue Sep  4 20:43:44 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18382         * ext/win32ole/win32ole.c: add WIN32OLE_EVENT#unadvise.
18384         * test/win32ole/test_win32ole_event.rb: ditto.
18386 Mon Sep  3 15:37:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18388         * common.mk (vm.o): depends on st.h too.
18390 Sun Sep  2 23:38:29 2007  Tanaka Akira  <akr@fsij.org>
18392         * include/ruby/st.h (struct st_table): make num_entries bitfield
18393           instead of num_bins for speed.  num_entries has less access.
18395 Sun Sep  2 00:37:57 2007  Tadayoshi Funaba  <tadf@dotrb.org>
18397         * lib/date/format.rb (_parse): improved parsing of ordinal dates.
18399         * lib/date/format.rb (_parse): use named character classes in some
18400           regular expressions.
18402 Sat Sep  1 23:44:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18404         * eval_jump.ci (rb_f_throw): wrap tag and TAG_THROW in a NODE_MEMO
18405           node to make throw instruction to work well.
18407 Sat Sep  1 20:56:07 2007  Tanaka Akira  <akr@fsij.org>
18409         * include/ruby/ruby.h (struct RBignum): embed digits in RBignum for
18410           small bignums.
18412         * bignum.c: RBignum embedded digits implemented.
18414         * include/ruby/intern.h: declare rb_big_resize.
18416         * gc.c: don't free embedded digits.
18418         * numeric.c: replace direct bignum field accessor by abstract field
18419           accessor such as RBIGNUM(val)->sign to RBIGNUM_SIGN(val).
18421         * sprintf.c: ditto.
18423         * compar.c: ditto.
18425         * marshal.c: ditto.
18427         * random.c: ditto.
18429         * .gdbinit: support embedded small bignums.
18431         [ruby-dev:31689]
18433 Sat Sep  1 19:59:43 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18435         * ext/win32ole/win32ole.c (ole_event_free): IConnectionPoint should be
18436           released.
18438         * ext/win32ole/win32ole.c (EVENTSINK_Destructor): ITypeInfo should be
18439           released.
18441         * ext/win32ole/win32ole.c (fev_initialize): refactoring.
18443 Sat Sep  1 16:26:09 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
18445         * test/socket/test_tcp.rb (test_recvfrom): same as mswin32 on mswin64.
18447 Sat Sep  1 14:24:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18449         * st.c (st_numcmp, st_numhash): use st_data_t instead of long, because
18450           the former may be larger than the latter.
18452         * include/ruby/st.h (CHAR_BIT): get rid of magic number.
18454         * include/ruby/st.h (rb_index_t): use st_data_t for the platforms it
18455           is larger than int.
18457 Sat Sep  1 10:43:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18459         * eval_jump.ci (rb_f_catch): generate new tag object if no argument is
18460           given.  backported from MatzRuby.  [ruby-dev:31609]
18462         * eval_jump.ci (rb_catch): call #catch without arguments if tag
18463           string is NULL.
18465         * eval_jump.ci (rb_f_throw): allow throwing non-symbol object.
18467         * eval_jump.ci (rb_catch_obj): new function to wait throw with arbitrary
18468           object.
18470         * eval_jump.ci (rb_throw_obj): new function to throw arbitrary object.
18472         * variable.c (check_autoload_table): prevent multiple calls from
18473           RSTRING_PTR().
18475 Fri Aug 31 07:12:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
18477         * numeric.c (SQRT_LONG_MAX): use SIZEOF_LONG instead of SIZEOF_VALUE
18478           because SIZEOF_VALUE > SIZEOF_LONG on some platforms.
18480 Fri Aug 31 04:18:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18482         * parse.y (f_norm_arg, f_arg_item): not croak already erred names.
18483           [ruby-dev:31687]
18485         * parse.y (assignable_gen): ignore already erred names.
18487         * parse.y (shadowing_lvar_gen): always make new block local variable
18488           when shadowing outer local variable.  [ruby-dev:31507]
18490 Thu Aug 30 19:40:33 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
18492         * regenc.h: check RUBY_EXTERN before including config.h and defines.h
18494         * common.mk: update header dependency.
18496 Thu Aug 30 14:06:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18498         * proc.c (rb_obj_define_method): reverted.  [ruby-talk:266637]
18500 Thu Aug 30 13:49:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18502         * lib/mkmf.rb: initialize $top_srcdir always.  [ruby-dev:31682]
18504         * lib/mkmf.rb (try_const, have_const): check for a const is defined.
18505           [ruby-core:04422]
18507 Thu Aug 30 08:00:12 2007  Tanaka Akira  <akr@fsij.org>
18509         * include/ruby/intern.h: declare rb_hash_tbl.
18511         * include/ruby/ruby.h (RHash): delay st_table allocation.
18512           rename tbl field to ntbl to detect direct reference to the st_table
18513           as a compile error.
18514           (RHASH_TBL): abstract accessor defined.
18515           (RHASH_ITER_LEV): ditto.
18516           (RHASH_IFNONE): ditto.
18517           (RHASH_SIZE): ditto.
18518           (RHASH_EMPTY_P): ditto.
18519           (hash_alloc0, hash_alloc): unified because hash_alloc doesn't
18520           allocate st_table now.
18522         * hash.c: delay st_table allocation.
18524         * gc.c: replace tbl by ntbl.
18526         * array.c: replace direct field accessor by abstract field accessor
18527           such as RHASH(hash)->tbl to RHASH_TBL(hash).
18529         * marshal.c: ditto.
18531         * insns.def: ditto.
18533         * ext/iconv/iconv.c: ditto.
18535         * ext/json/ext/generator/generator.c: ditto.
18537         * ext/json/ext/parser/parser.c: ditto.
18539         * ext/json/ext/parser/parser.rl: ditto.
18541         * ext/syck/rubyext.c: ditto.
18543         * ext/tk/tkutil/tkutil.c: ditto.
18545         [ruby-dev:31678]
18547 Wed Aug 29 18:36:06 2007  Tanaka Akira  <akr@fsij.org>
18549         * lib/open-uri.rb: add :ftp_active_mode option.  [ruby-dev:31677]
18551 Wed Aug 29 14:55:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18553         * string.c (str_gsub): should not use mbclen2() which has broken API.
18555         * re.c: remove rb_reg_mbclen2().
18557 Wed Aug 29 12:48:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18559         * parse.y (aref_args): args may not be a list.  [ruby-dev:31592]
18561 Wed Aug 29 11:30:10 2007  Tanaka Akira  <akr@fsij.org>
18563         * include/ruby/st.h (struct st_table): add entries_packed 1-bit
18564           bitfield.  decrease num_bins 1-bit.
18566         * st.c: pack numhash which have 5 or less entries in bins.
18567           (st_init_table_with_size): setup entries_packed flag.
18568           (st_clear): support packed mode.
18569           (st_lookup): ditto.
18570           (st_insert): ditto.
18571           (st_add_direct): ditto.
18572           (st_copy): ditto.
18573           (st_delete): ditto.
18574           (st_foreach): ditto.
18575           (st_reverse_foreach): ditto.
18576           (unpack_entries): new function for converting to unpacked mode.
18578         [ruby-list:43954]
18580 Wed Aug 29 10:46:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18582         * include/ruby/defines.h (flush_register_windows): call "ta 0x03"
18583           even on Linux/Sparc.  [ruby-dev:31674]
18585 Tue Aug 28 19:16:00 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18587         * ext/win32ole/win32ole.c (ole_type_progid): progid getted by
18588           ProgIDFromCLSID should be freed by CoTaskMemFree. Thanks, arton.
18590         * test/win32ole/test_win32ole.rb (test_raise_message): set negative
18591           compareMode value to raise WIN32OLERuntimeError.
18593         * test/win32ole/test_win32ole_type.rb (test_implemented_ole_types):
18594           support some environment which returns IShellDispatch5 instead
18595           of IShellDispatch.
18597 Tue Aug 28 15:42:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18599         * string.c (rb_str_subseq): retrieve substring based on byte offset.
18601         * string.c (rb_str_rindex_m): was confusing character offset and
18602           byte offset.
18604 Tue Aug 28 14:23:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18606         * string.c (rb_str_splice_0): should check to modify.  [ruby-dev:31665]
18608 Tue Aug 28 14:21:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18610         * parse.y (parser_prepare): set parser encode too when BOM exists.
18612 Tue Aug 28 00:51:22 2007  Koichi Sasada  <ko1@atdot.net>
18614         * thread.c: fix Mutex to be interruptable lock.
18616         * thread_win32.ci, thread_win32.h, thread_pthread.ci, thread_pthread.h:
18617           prepare native_cond_*() which are based on pthread_cond_*() spec.
18619         * prelude.rb: fix Mutex#synchronize method.
18621         * vm_core.h, include/ruby/intern.h: change unblock function interface
18622           (to pass some user data).
18624         * file.c, process.c: ditto.
18626         * benchmark/bm_vm2_mutex.rb: add a benchmark for mutex.
18628         * benchmark/bm_vm3_thread_mutex.rb: add a benchmark for mutex
18629           with contention.
18631         * benchmark/run.rb: fix to remove ENV['RUBYLIB'] for matzruby.
18633         * test/ruby/test_thread.rb: add a test.
18635         * common.mk: fix benchmark options.
18637 Mon Aug 27 23:14:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18639         * string.c (rb_str_rstrip_bang): wrong strip point.  [ruby-dev:31652]
18641         * string.c (rb_str_each_line): should swallow sequence of newlines
18642           if rs (optional argument) is an empty string.  [ruby-dev:31652]
18644 Mon Aug 27 22:39:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18646         * encoding.c (rb_enc_codelen): raises invalid sequence exception
18647           if ONIGENC_CODE_TO_MBCLEN() returns zero.  [ruby-dev:31661]
18649         * encoding.c (rb_enc_mbclen): check invalid sequence.
18651 Mon Aug 27 20:27:59 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18653         * ext/win32ole/win32ole.c (ole_type_progid): fix the bug.
18654           [ruby-dev:31576]
18656         * test/win32ole/test_win32ole_type.rb (test_initialize):
18657           remove duplicate assertions.
18659 Mon Aug 27 19:10:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18661         * ext/etc/etc.c (etc_getlogin): update documentation to note
18662           security issue.  [ruby-Bugs-11821]
18664 Mon Aug 27 15:56:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18666         * string.c (sym_encoding): return the encoding of a Symbol.
18668 Mon Aug 27 15:33:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18670         * util.c (IEEE_BIG_ENDIAN): use configured value.  [ruby-dev:31623]
18672         * util.c (Llong): set to LONG_LONG if available.
18674 Mon Aug 27 13:11:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18676         * string.c (tr_trans): wrong condition for mbmaxlen==1 strings.
18677           [ruby-dev:31652]
18679 Mon Aug 27 00:41:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18681         * io.c (rb_io_each_byte): caused infinite loop.  [ruby-dev:31652]
18683         * io.c (rb_io_getc): should return nil at EOF, not EOFError.
18685         * lib/delegate.rb (SimpleDelegator::__setobj__): use raise
18686           argument to specify backtrace.
18688         * test/ruby/test_fnmatch.rb (TestFnmatch::bracket_test):
18689           String#include? no longer works for Fixnum.  use #chr.
18690           [ruby-dev:31652]
18692 Sun Aug 26 12:27:14 2007  Koichi Sasada  <ko1@atdot.net>
18694         * cont.c: fix to remove Fiber.new until fiber.so is not loaded.
18696         * test/ruby/test_continuation.rb: fix to use resume.
18698 Sun Aug 26 06:51:46 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18700         * ext/win32ole/win32ole.c (ole_wc2mb, reg_enum_key): allocate
18701           buffer should be NULL terminated.
18703 Sun Aug 26 06:04:13 2007  Koichi Sasada  <ko1@atdot.net>
18705         * insnhelper.ci (vm_setup_method): reorder code for branch prediction.
18707 Sun Aug 26 05:54:49 2007  Koichi Sasada  <ko1@atdot.net>
18709         * insnhelper.ci (vm_call_method): fix to relaxant safe level check
18710           ($SAFE > 2).  [ruby-core:11998]
18712         * bootstraptest/test_method.rb: add tests for above.
18714 Sun Aug 26 05:52:08 2007  Koichi Sasada  <ko1@atdot.net>
18716         * test/ruby/test_fiber.rb: fix to require 'continuation'.
18718 Sat Aug 25 23:52:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18720         * enumerator.c (enumerator_next): message changed.
18722 Sat Aug 25 23:22:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18724         * include/ruby/encoding.h: remove unused rb_enc_ismbchar().
18726 Sat Aug 25 22:50:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18728         * ext/win32ole/win32ole.c (ole_event_free, EVENTSINK_Destructor,
18729           fev_initialize): remove the connection ole_event_free and
18730           EVENTSINK_Destructor.
18732 Sat Aug 25 17:52:06 2007  Koichi Sasada  <ko1@atdot.net>
18734         * string.c, include/ruby/intern.h: export rb_str_length().
18736         * insns.def: use rb_str_length() in opt_length.
18738 Sat Aug 25 17:48:51 2007  Koichi Sasada  <ko1@atdot.net>
18740         * cont.c: rename FIBER_STACK_SIZE to FIBER_VM_STACK_SIZE.
18742 Sat Aug 25 17:05:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18744         * io.c (swallow): removed condition using an unset variable.
18746         * parse.y, re.c: re-applied revision 13092.
18748         * string.c (rb_str_splice): return from void function.
18750         * include/ruby/encoding.h (rb_enc_str_new): prototype added.
18752 Sat Aug 25 11:45:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18754         * encoding.c: provide basic features for M17N.
18756         * parse.y: encoding aware parsing.
18758         * parse.y (pragma_encoding): encoding specification pragma.
18760         * parse.y (rb_intern3): encoding specified symbols.
18762         * string.c (rb_str_length): length based on characters.
18763           for older behavior, bytesize method added.
18765         * string.c (rb_str_index_m): index based on characters.  rindex as
18766           well.
18768         * string.c (succ_char): encoding aware succeeding string.
18770         * string.c (rb_str_reverse): reverse based on characters.
18772         * string.c (rb_str_inspect): encoding aware string description.
18774         * string.c (rb_str_upcase_bang): encoding aware case conversion.
18775           downcase, capitalize, swapcase as well.
18777         * string.c (rb_str_tr_bang): tr based on characters.  delete,
18778           squeeze, tr_s, count as well.
18780         * string.c (rb_str_split_m): split based on characters.
18782         * string.c (rb_str_each_line): encoding aware each_line.
18784         * string.c (rb_str_each_char): added.  iteration based on
18785           characters.
18787         * string.c (rb_str_strip_bang): encoding aware whitespace
18788           stripping.  lstrip, rstrip as well.
18790         * string.c (rb_str_justify): encoding aware justifying (ljust,
18791           rjust, center).
18793         * string.c (str_encoding): get encoding attribute from a string.
18795         * re.c (rb_reg_initialize): encoding aware regular expression
18797         * sprintf.c (rb_str_format): formatting (i.e. length count) based
18798           on characters.
18800         * io.c (rb_io_getc): getc to return one-character string.
18801           for older behavior, getbyte method added.
18803         * ext/stringio/stringio.c (strio_getc): ditto.
18805         * io.c (rb_io_ungetc): allow pushing arbitrary string at the
18806           current reading point.
18808         * ext/stringio/stringio.c (strio_ungetc): ditto.
18810         * ext/strscan/strscan.c: encoding support.
18812 Sat Aug 25 10:59:19 2007  Koichi Sasada  <ko1@atdot.net>
18814         * cont.c: separate Continuation and Fiber from core.
18816         * ext/continuation/*, ext/fiber/*: ditto.
18818         * include/ruby/ruby.h: remove rb_cFiber.
18820         * include/ruby/intern.h: add the rb_fiber_new() declaration.
18822         * enumerator.c (next_init): fix to use rb_fiber_new().
18824         * test/ruby/test_enumerator.rb: remove next? tests.
18826         * test/ruby/test_continuation.rb: add a require 'continuation'.
18828         * test/ruby/test_fiber.rb: add a require 'fiber'.
18830 Sat Aug 25 10:20:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18832         * common.mk (prelude.o): depends on vm_core.h now.
18834         * common.mk (prelude.c): depends on tool/compile_prelude.rb too.
18836         * common.mk (prereq): updates all auto-generated sources.
18838         * tool/compile_prelude.rb: separated dynamic and static portions.
18840 Sat Aug 25 10:05:17 2007  Koichi Sasada  <ko1@atdot.net>
18842         * prelude.rb: add Thread.exclusive.  This class method
18843           is different from 1.8's.  Thread.exclusive only does
18844           synchronize with VM global mutex.
18846 Sat Aug 25 09:39:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18848         * array.c (rb_ary_s_try_convert): more document description.
18850         * re.c (rb_reg_s_try_convert): typo fixed.
18852 Sat Aug 25 08:54:12 2007  Koichi Sasada  <ko1@atdot.net>
18854         * id.h, id.c: remove idFuncall.
18856         * compile.c (iseq_specialized_instruction): ditto.
18858 Sat Aug 25 08:47:28 2007  Koichi Sasada  <ko1@atdot.net>
18860         * tool/compile_prelude.rb: fix to include "vm_core.h".
18862 Sat Aug 25 03:49:14 2007  Tanaka Akira  <akr@fsij.org>
18864         * test/ruby/sentence.rb (Sentence): include Enumerable.
18865           (Sentence#each): defined.
18867         * test/ruby/test_assignment.rb: use Sentence#expand.
18869 Sat Aug 25 03:08:57 2007  Koichi Sasada  <ko1@atdot.net>
18871         * prelude.rb: fix Mutex#synchronize definition.
18873 Sat Aug 25 02:08:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18875         * array.c (rb_ary_s_try_convert): a new class method to convert
18876           object or nil if it's not target-type.  this mechanism is used
18877           to convert types in the C implemented methods.
18879         * hash.c (rb_hash_s_try_convert): ditto.
18881         * io.c (rb_io_s_try_convert): ditto.
18883         * re.c (rb_reg_s_try_convert): ditto.
18885         * string.c (rb_str_s_try_convert): ditto.
18887 Sat Aug 25 00:49:44 2007  Koichi Sasada  <ko1@atdot.net>
18889         * benchmark/bm_loop_generator.rb: added.
18891 Sat Aug 25 00:22:31 2007  Koichi Sasada  <ko1@atdot.net>
18893         * prelude.rb: added.  run this script on startup.
18895         * tool/compile_prelude.rb: compile prelude.rb to C string.
18896           (prelude.rb -> prelude.c)
18898         * common.mk: fix to build with prelude.c.
18900         * inits.c (rb_call_inits): ditto.
18902         * thread.c (Init_Thread): move definition of Mutex#synchronize
18903           to prelude.rb.
18905 Sat Aug 25 00:08:43 2007  Koichi Sasada  <ko1@atdot.net>
18907         * compile.c (compile_massign_opt): fix to skip massign optimization
18908           with global variables.
18910         * bootstraptest/test_massign.rb: add some tests for above.
18912 Fri Aug 24 18:42:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18914         * test/ruby/test_dir.rb (TestDir::setup): ?c now makes a string.
18916         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::initialize):
18917           initialize @workdir to stop warning.
18919 Fri Aug 24 18:30:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18921         * lib/drb/drb.rb (DRb::DRbServer::InvokeMethod::perform_without_block):
18922           replace funcall by send!.  other files in the distribution as well.
18924 Fri Aug 24 17:06:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18926         * eval.c (rb_f_send_bang): abandon the name funcall for private
18927           aware method call.
18929 Fri Aug 24 15:27:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18931         * enumerator.c (enumerator_next): stop pre-fetching.
18933         * enumerator.c (Init_Enumerator): remove next? method.
18935 Fri Aug 24 15:14:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18937         * eval.c (rb_f_loop): now handles StopIteration exception.
18939 Thu Aug 23 20:31:31 2007  Koichi Sasada  <ko1@atdot.net>
18941         * compile.c: optimize simple massign.
18943 Thu Aug 23 20:02:25 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18945         * ext/win32ole/win32ole.c (reg_get_value): use RegQueryValueEx instead
18946           of RegQueryValueEx.
18948         * ext/win32ole/win32ole.c (typelib_file_from_clsid): fix the bug
18949           that the function always returns Qnil.
18951         * test/win32ole/test_win32ole_type.rb (test_initialize): add some test.
18953 Thu Aug 23 17:25:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18955         * configure.in (group_member): check if presents.
18957         * configure.in (XCFLAGS): add _GNU_SOURCE on linux.
18959         * file.c (group_member): use system routine if available.
18961         * process.c: moved _GNU_SOURCE macro to Makefile.
18963 Thu Aug 23 16:59:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18965         * compile.c (compile_massign), insnhelper.ci (vm_throw): not use C99
18966           comment.
18968         * cont.c (rb_cont_call, fiber_switch, rb_fiber_resume, rb_fiber_yield):
18969           suppress warnings.
18971         * cont.c (rb_fiber_start): change on non-volatile variable between
18972           setjmp and longjmp may not has an effect.
18974         * enumerator.c (sym_call): initialize first.
18976         * enumerator.c (enum_iter): typedefed.
18978         * enumerator.c (next_i): suppress a warning.
18980 Thu Aug 23 16:04:11 2007  Koichi Sasada  <ko1@atdot.net>
18982         * compile.c, insns.def, parse.y: fix massign order.  This change
18983           causes performance problem.  Try vm1_swap benchmark.
18984           [ruby-dev:31522]
18986         * insns.def, insnhelper.ci: move process body of expandarray insn to
18987           vm_expandarray().
18989         * bootstraptest/test_knownbug.rb, bootstraptest/test_massign.rb:
18990           move a solved test.
18992 Thu Aug 23 15:51:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18994         * parse.y (f_norm_arg): ripper has no shadowing check.
18996         * parse.y (f_block_arg): dispatch blkarg_mark.
18998 Thu Aug 23 15:48:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19000         * compile.c (make_masgn_lhs, iseq_compile_each): fixed indent.
19002         * compile.c (iseq_translate_threaded_code),
19003           vm_evalbody.ci (get_insns_address_table),
19004           template/vmtc.inc.tmpl (insns_address_table): constified.
19006         * vm_evalbody.ci (vm_eval),
19007           template/insns_info.inc.tmpl (insn_stack_increase, insn_ret_num):
19008           suppress warnings.
19010 Thu Aug 23 13:19:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19012         * parse.y (f_norm_arg): check also nested arguments.  [ruby-dev:31502]
19014 Thu Aug 23 00:06:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19016         * util.c: updated for ANSI C only.  applied a patch from
19017           <snakagawa AT infoteria.co.jp>.  [ruby-dev:31591]
19019 Thu Aug 23 00:04:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19021         * missing/strtod.c: removed.  [ruby-dev:31588]
19023         * LEGAL: updated.
19025 Wed Aug 22 15:59:44 2007  Koichi Sasada  <ko1@atdot.net>
19027         * bootstraptest/test_knownbug.rb:
19028           fix typo of filename (test_knwonbug.rb).
19030 Wed Aug 22 14:04:53 2007  Koichi Sasada  <ko1@atdot.net>
19032         * bootstraptest/test_knwonbug.rb: added.  This file will contain
19033           test cases which point out known bug.  If bug is fixed, tests
19034           should move to the suitable place.
19036         * bootstraptest/test_massign.rb: move a test which show known bug
19037           to test_knownbug.rb.
19039 Wed Aug 22 13:02:26 2007  Tanaka Akira  <akr@fsij.org>
19041         * bootstraptest/runner.rb (in_temporary_working_directory):
19042           don't remove the directory specified by --dir.
19044 Wed Aug 22 05:51:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19046         * util.c (ruby_strtod): replaced by the implementation by David
19047           M. Gay inspired by William D. Clinger's paper "How to Read Floating
19048           Point Numbers Accurately" [Proc. ACM SIGPLAN '90, pp. 92-101].
19049           a patch from Satoshi Nakagawa <snakagawa AT infoteria.co.jp>.
19050           [ruby-dev:31582]
19052         * test/ruby/test_float.rb (TestFloat::test_float): add test for
19053           precision.
19055 Wed Aug 22 03:51:07 2007  Koichi Sasada  <ko1@atdot.net>
19057         * cont.c: add Fiber#resume and Fiber.yield.
19058           and Fiber::Core class to realize Coroutine.
19060         * include/ruby/intern.h: declare rb_fiber_yield(), rb_fiber_resume().
19062         * enumerator.c: use above api.
19064         * test/ruby/test_fiber.rb: fix and add tests for above changes.
19066 Tue Aug 21 21:09:48 2007  Tanaka Akira  <akr@fsij.org>
19068         * lib/tmpdir.rb (Dir.mktmpdir): make directory suffix specifiable.
19069           suggested by knu.  [ruby-dev:31568]
19071 Tue Aug 21 15:00:23 2007  Koichi Sasada  <ko1@atdot.net>
19073         * st.c (st_clear): reset num_entries too.
19075 Tue Aug 21 13:57:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19077         * hash.c (st_foreach_func, rb_foreach_func): typedefed.
19079         * hash.c (rb_hash_clear): use st_clear() unless iterating.
19081         * st.c (struct st_table_entry): add new members, fore and back, to
19082           iterate in inserted order.
19084         * include/ruby/st.h (struct st_table): ditto.
19086 Tue Aug 21 04:09:06 2007  Koichi Sasada  <ko1@atdot.net>
19088         * benchmark/bm_vm2_case.rb: add a new benchmark.
19089           YARV optimize case/when syntax.  If every conditions
19090           are literal (such as Symbol, Fixnum, String), dispatch
19091           calc order will be O(1).
19093 Tue Aug 21 04:08:07 2007  Koichi Sasada  <ko1@atdot.net>
19095         * test/ruby/test_enumerator.rb: fix last commit.
19097 Tue Aug 21 03:59:32 2007  Koichi Sasada  <ko1@atdot.net>
19099         * test_enumerator.rb (enum_test): fix to return sorted
19100           array (for Hash test).
19102 Tue Aug 21 03:55:20 2007  Koichi Sasada  <ko1@atdot.net>
19104         * enumerator.c (next_i): fix to return with Fiber#yield at
19105           the end of each block.  [ruby-dev:31470]
19107         * enumerator.c (enumerator_next_p): call init_next if not
19108           initialized.  [ruby-dev:31514]
19110         * test/ruby/test_enumerator.rb: add tests for Enumerator.
19112 Mon Aug 20 23:28:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19114         * string.c (Init_String): remove Symbol.intern and Symbol#dump.
19115           [ruby-dev:31525]
19117         * dir.c (dir_foreach): return Enumerator if no block given.
19118           [ruby-dev:31525]
19120         * io.c (rb_io_s_foreach): argument count check before making
19121           Enumerator.  [ruby-dev:31525]
19123 Mon Aug 20 23:17:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19125         * vm_core.h (struct rb_thread_struct): removed first_func_arg and
19126           reuse first_args instead.
19128 Sun Aug 19 13:31:40 2007  Tanaka Akira  <akr@fsij.org>
19130         * gc.c: use VALGRIND_MAKE_MEM_UNDEFINED to detect use of collected
19131           objects if valgrind is available.  It cannot detect first 2 words
19132           because they are used as the free list.
19134 Sun Aug 19 13:13:52 2007  Koichi Sasada  <ko1@atdot.net>
19136         * compile.c (iseq_compile_each/NODE_RESBODY): fix to add
19137           additional nop to prevent tailcall optimization.
19139         * vm_opts.h: clean up comments.
19141 Sun Aug 19 12:58:39 2007  Koichi Sasada  <ko1@atdot.net>
19143         * insnhelper.ci (vm_call_bmethod): fix to propagate information
19144           that this proc is "from Method".  [ruby-dev:31490]
19146         * proc.c (method_proc, rb_mod_define_method): ditto.
19148         * vm.c (vm_invoke_proc_core): removed.
19150         * vm_core.h: ditto.
19152 Sun Aug 19 12:36:11 2007  Tanaka Akira  <akr@fsij.org>
19154         * test/ruby/sentence.rb: new method Sentence().
19156 Sun Aug 19 12:32:39 2007  Koichi Sasada  <ko1@atdot.net>
19158         * insnhelper.ci (vm_callee_setup_arg): fix to mark enough VM stack.
19159           [ruby-dev:31492]
19161 Sat Aug 18 19:02:34 2007  Tanaka Akira  <akr@fsij.org>
19163         * test/ruby/test_yield.rb (TestYieldGen): relax array size check
19164           in nested parameters.
19165           [ruby-dev:31485]
19167 Sat Aug 18 17:44:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19169         * ext/tk/tcltklib.c (Init_tcltklib): use rb_set_end_proc().
19171 Sat Aug 18 17:40:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19173         * thread.c (is_ruby_native_thread): check properly.  [ruby-dev:31166]
19175 Sat Aug 18 16:44:15 2007  Koichi Sasada  <ko1@atdot.net>
19177         * insnhelper.ci (vm_call_bmethod),
19178           vm.c (vm_invoke_proc_core): fix to do not restore
19179           $SAFE when proc invoked by bmethod.
19181         * vm_core.h: ditto.
19183 Sat Aug 18 16:44:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19185         * eval_error.ci (ruby_error_print): call error_print.
19187         * eval_jump.ci, process.c (rb_exit, rb_f_exit, rb_f_abort): moved.
19189 Sat Aug 18 15:59:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19191         * process.c (detach_process_watcher): should not pass the pointer
19192           to an auto variable to the thread to be created.  pointed and
19193           fix by KUBO Takehiro <kubo at jiubao.org>  [ruby-dev:30618]
19195 Sat Aug 18 15:52:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19197         * insnhelper.ci (vm_send_optimize): use MEMMOVE to shift values inside
19198           an array.
19200 Sat Aug 18 15:45:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19202         * insnhelper.ci (vm_yield_setup_args): rsize and psize should not be
19203           negative.
19205 Sat Aug 18 14:35:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19207         * insnhelper.ci (vm_callee_setup_arg, vm_send_optimize,
19208           vm_yield_setup_args): bulk copy for arguments.
19210 Sat Aug 18 13:55:58 2007  Koichi Sasada  <ko1@atdot.net>
19212         * compile.c (iseq_compile_each): fix to allow self.x=
19213           if x= is private.
19215         * bootstraptest/test_method.rb: add a test for above.
19217 Sat Aug 18 14:05:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19219         * parse.y (reg_compile_gen): obtain error info from errinfo.
19221         * re.c (rb_reg_error_desc): make RegexpError for initialization error.
19223         * re.c (rb_reg_compile): return nil and set errinfo if error.
19225 Sat Aug 18 13:23:01 2007  Koichi Sasada  <ko1@atdot.net>
19227         * eval.c: $! should not be writable.
19229         * eval.c (rb_rubylevel_errinfo): added.  rb_errinfo() returns
19230           rb_thread_t#errinfo.  rb_rubylevel_errinfo() returns $! value.
19232 Sat Aug 18 13:14:40 2007  Koichi Sasada  <ko1@atdot.net>
19234         * insnhelper.ci (vm_callee_setup_arg): fix to check arguments
19235           correctly. [ruby-dev:31472]
19237 Sat Aug 18 13:13:06 2007  Koichi Sasada  <ko1@atdot.net>
19239         * bootstraptest/test_exception.rb: add escape character ("\") for
19240           editors.
19242 Sat Aug 18 12:42:50 2007  Tanaka Akira  <akr@fsij.org>
19244         * test/ruby/test_yield.rb (TestYieldGen): add test for yielding to
19245           lambda using lambda parameter passing emulator.
19247 Sat Aug 18 12:24:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19249         * sample/test.rb, test/ruby/test_system.rb(valid_syntax?): keep
19250           comment lines first.
19252 Sat Aug 18 11:44:59 2007  Koichi Sasada  <ko1@atdot.net>
19254         * compile.c (iseq_set_arguments), insnhelper.ci
19255           (vm_callee_setup_arg, vm_yield_setup_args):
19256           fix to cause raise on "lambda{|a|}.call(1, 2)".
19257           [ruby-dev:31464]
19259         * bootstraptest/test_block.rb: add tests for above.
19261 Sat Aug 18 01:12:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19263         * eval.c (frame_func_id): return proper method ID.
19265 Fri Aug 17 22:43:11 2007  Koichi Sasada  <ko1@atdot.net>
19267         * compile.c (iseq_compile_each): massign should return rvalue(s).
19269 Fri Aug 17 22:10:19 2007  Koichi Sasada  <ko1@atdot.net>
19271         * test/ruby/test_basicinstructions.rb: fix old tests.
19272           class variables should be inherited.
19274 Fri Aug 17 21:20:44 2007  Koichi Sasada  <ko1@atdot.net>
19276         * eval.c (rb_call), eval_method.ci (rb_add_method, rb_alias),
19277           insnhelper.ci (vm_call_method): fix to save safelevel for
19278           method node.
19280         * include/ruby/node.h: ditto.
19282         * bootstraptest/test_method.rb: add a test for above.
19284 Fri Aug 17 16:02:50 2007  Koichi Sasada  <ko1@atdot.net>
19286         * thread.c (rb_thread_terminate_all): fix to ignore
19287           exceptions.
19289         * thread.c (thread_start_func_2): fix
19290           abort_on_exception process.  [ruby-dev:31394]
19292 Fri Aug 17 14:38:36 2007  Tanaka Akira  <akr@fsij.org>
19294         * bootstraptest/runner.rb (in_temporary_working_directory): use
19295           Dir.mktmpdir to create and remove temporary directory.
19296           (Dir.mktmpdir): define if not available.
19297           [ruby-dev:31431]
19299 Fri Aug 17 03:07:37 2007  Koichi Sasada  <ko1@atdot.net>
19301         * compile.c (iseq_compile_each): fix throw insn option of next.
19303 Fri Aug 17 01:25:23 2007  Koichi Sasada  <ko1@atdot.net>
19305         * compile.c (iseq_set_arguments), insnhelper.ci
19306           (vm_callee_setup_arg, vm_yield_setup_args): fix
19307           block parameter problems. [ruby-dev:31437], [ruby-dev:31440]
19309         * bootstraptest/test_block.rb: add a test of [ruby-dev:31440].
19311 Fri Aug 17 01:24:12 2007  Koichi Sasada  <ko1@atdot.net>
19313         * iseq.c (ruby_iseq_disasm): fix to show arg_simple value.
19315 Fri Aug 17 01:21:29 2007  Koichi Sasada  <ko1@atdot.net>
19317         * insns.def (throw): insert a RUBY_VM_CHECK_INTS(). [ruby-dev:31361]
19319 Thu Aug 16 20:40:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19321         * bignum.c (bigtrunc): RBIGNUM(x)->len may be zero.  out of bound
19322           access.  [ruby-dev:31404]
19324         * sprintf.c (rb_str_format): small float should not call
19325           rb_dbl2big().
19327 Thu Aug 16 22:10:06 2007  Koichi Sasada  <ko1@atdot.net>
19329         * compile.c (iseq_compile_each): fix next/redo stack consistency.
19330           [ruby-dev:31373]
19332         * bootstraptest/test_syntax.rb: add tests for above.
19334         * sample/test.rb: fix to use __FILE__ instead of $0 to know basedir.
19336 Thu Aug 16 21:14:06 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
19338         * configure.in (BASERUBY): need AC_SUBST.  [ruby-dev:31438]
19340 Thu Aug 16 19:18:26 2007  Tanaka Akira  <akr@fsij.org>
19342         * test/ruby/sentence.rb: Sentence class implemented
19343           based on sentgen.rb
19345         * test/ruby/sentgen.rb: removed.
19347         * test/ruby/test_assignment.rb: use sentence.rb.
19349         * test/ruby/test_yield.rb: block parameter passing emulator
19350           implemented.
19352 Thu Aug 16 16:48:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19354         * configure.in (BASERUBY): check if base ruby is runnable first.
19355           [ruby-core:11900]
19357 Thu Aug 16 16:46:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19359         * configure.in (aix): enable shared by default.
19361         * configure.in (aix): for 64bit-mode AIX.  [ruby-dev:31401]
19362           + use CC for LDSHARED if non-gcc,
19363           + moved -G option from *LDFLAGS to LDSHARED,
19364           + set -brtl only in XLDFLAGS.
19366 Thu Aug 16 13:06:08 2007  Tanaka Akira  <akr@fsij.org>
19368         * bignum.c (big_lshift): make shift offset long type.
19369           (big_rshift): ditto.
19370           (rb_big_lshift): ditto.
19371           (big_rshift): ditto.
19372           [ruby-dev:31434]
19374 Thu Aug 16 06:29:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19376         * io.c (argf_readpartial): argf_forward needs argc and argv.
19378 Thu Aug 16 02:47:39 2007  Koichi Sasada  <ko1@atdot.net>
19380         * cont.c (rb_fiber_m_yield): added.  use this function
19381           for Fiber#yield instead of rb_fiber_yield.
19383 Thu Aug 16 00:36:52 2007  Tanaka Akira  <akr@fsij.org>
19385         * lib/tmpdir.rb (Dir.mktmpdir): new method.  [ruby-dev:31416]
19387 Wed Aug 15 18:57:30 2007  Koichi Sasada  <ko1@atdot.net>
19389         * gc.c (os_live_obj): fix to skip T_VALUES.
19391         * sample/test.rb: add an ObjectSpace test.
19393 Wed Aug 15 16:49:04 2007  Koichi Sasada  <ko1@atdot.net>
19395         * inits.c (rb_call_inits): change initializing order.
19396           [ruby-dev:31420]
19398 Wed Aug 15 16:44:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19400         * io.c (ARGF_FORWARD): wrongly compares with current_file with
19401           rb_stdout.  should be rb_stdin.  [ruby-cvs:20177]
19403 Wed Aug 15 14:59:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19405         * io.c (rb_io_initialize, argf_each_line, argf_each_byte): suppress
19406           warnings.
19408 Wed Aug 15 14:22:05 2007  Koichi Sasada  <ko1@atdot.net>
19410         * parse.y: remove "//" type comment.
19412 Wed Aug 15 13:42:15 2007  Koichi Sasada  <ko1@atdot.net>
19414         * parse.y: fix rules around f_margs.  "make test" passes all tests.
19416         * bootstraptest/test_block.rb: add some tests for above.
19418 Wed Aug 15 13:50:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19420         * hash.c (rb_hash_delete_key): delete the entry without calling block.
19422         * hash.c (rb_hash_shift): should consider iter_lev too.
19424         * hash.c (delete_if_i): use rb_hash_delete_key() so that the block
19425           isn't called twice.  [ruby-core:11556]
19427 Wed Aug 15 13:39:25 2007  Koichi Sasada  <ko1@atdot.net>
19429         * process.c (proc_geteuid): fix strange conversion.  [ruby-dev:31417]
19431 Wed Aug 15 01:05:55 2007  Tanaka Akira  <akr@fsij.org>
19433         * bootstraptest/runner.rb (assert_check): don't call newtest.
19434           (assert_equal): call newtest.
19435           (assert_match): ditto.
19437 Tue Aug 14 21:43:39 2007  Tanaka Akira  <akr@fsij.org>
19439         * bootstraptest/runner.rb (assert_check): new method.
19440           (assert_match): new method.
19441           (assert_equal): use assert_check.
19442           (pretty): give failure description as an argument.
19444         * bootstraptest/test_exception.rb: use assert_match to describe the
19445           test for [ruby-dev:31407].  [ruby-dev:31412]
19447 Tue Aug 14 19:53:15 2007  Koichi Sasada  <ko1@atdot.net>
19449         * proc.c (Init_Proc), eval.c (Init_eval), eval_intern.h: move
19450           init place of exception_error.
19452         * inits.c: ditto.
19454         * eval.c (Init_eval): set exception_error#throwed_state as TAG_FATAL.
19455           [ruby-dev:31407]
19457         * bootstraptest/test_exception.rb: add a test for above.
19459 Tue Aug 14 19:51:20 2007  Koichi Sasada  <ko1@atdot.net>
19461         * common.mk: change test order (test -> btest).
19463 Tue Aug 14 00:04:27 2007  Kouhei Sutou  <kou@cozmixng.org>
19465         * lib/rss/rss.rb: 0.1.8 -> 0.1.9.
19467         * test/rss/test_version.rb: followed the above change.
19469         * lib/rss/parser.rb: fixed a bug that handles unintended elements.
19470           Thanks to Takuo Yonezawa. [ruby-list:43841]
19472 Mon Aug 13 17:23:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19474         * eval.c (rb_clear_trace_func, rb_thread_stop_timer_thread):
19475           declarations for forward references.
19477         * eval.c (rb_longjmp, eval): use local variable.
19479         * eval.c (rb_longjmp): string object not to be optimized.
19481 Mon Aug 13 13:21:58 2007  Tanaka Akira  <akr@fsij.org>
19483         * lib/open-uri.rb: make ftp passive mode to avoid NAT problem.
19484           [ruby-dev:31377]
19486 Mon Aug 13 09:18:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19488         * ext/stringio/stringio.c (strio_getc): should returns
19489           one-character string.
19491         * ext/stringio/stringio.c: remove unnecessary prototypes.
19493         * ext/stringio/stringio.c (strio_getbyte): new method.
19495         * ext/stringio/stringio.c (strio_readbyte): new method.
19497         * ext/stringio/stringio.c (strio_ungetc): should take a string as
19498           an input.
19500 Mon Aug 13 08:19:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19502         * io.c (argf_close): always close via method.
19504         * io.c (Init_IO): remove obsolete Kernel#getc.
19506 Mon Aug 13 05:03:53 2007  Koichi Sasada  <ko1@atdot.net>
19508         * thread.c (rb_thread_raise): check if target thread is
19509           thrown by another thread or not.  [ruby-dev:31371]
19511         * bootstraptest/test_thread.rb: add a test for above.
19513 Mon Aug 13 04:35:30 2007  Koichi Sasada  <ko1@atdot.net>
19515         * compile.c (iseq_peephole_optimize): fix peephole optimization
19516           bug. [ruby-dev:31360]
19518         * bootstraptest/test_syntax.rb: add a test for above.
19520 Mon Aug 13 04:02:29 2007  Koichi Sasada  <ko1@atdot.net>
19522         * vm_dump.c (debug_print_pre): fix to show control frame count.
19524         * insns.def (opt_call_c_function): fix operand type.
19526         * lib/vm/instruction.rb: ditto.
19528         * insnhelper.ci (vm_push_frame, vm_pop_frame): fix to show
19529           control stack status on if VMDEBUG == 2.
19531         * vm.h: add a comment about VMDEBUG.
19533         * iseq.c (find_prev_line_no): fix to skip bug report if
19534           line is not found.
19536         * lib/vm/instruction.rb: fix to use build_string() on
19537           source code generators.
19539 Mon Aug 13 03:57:32 2007  Koichi Sasada  <ko1@atdot.net>
19541         * template/yasmdata.rb.tmpl: fix type and name.
19543 Sat Aug 11 23:27:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19545         * io.c (argf_each_line): should use #each_line, not #each.
19547         * io.c (argf_each_line): simplified.
19549         * io.c (argf_getline): should handle non T_FILE object in ARGV.
19551         * io.c (argf_each_byte): each_byte should yield bytes not
19552           one-character strings.  [ruby-dev:31374]
19554 Sat Aug 11 07:24:55 2007  Tadayoshi Funaba  <tadf@dotrb.org>
19556         * lib/date/format.rb: reverted some wrongly erased "o" options
19557           (pointed out by nobu).
19559 Sat Aug 11 00:01:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19561         * thread.c (thread_start_func_2): not re-raise to main thread if it is
19562           joining the current thread.
19564 Fri Aug 10 23:54:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19566         * thread.c (thread_create_core): inherit the priority of creating
19567           thread.  submitted at [ruby-core:11873] by David Flanagan <david AT
19568           davidflanagan.com>.  [ruby-core:11876]
19570 Fri Aug 10 05:12:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19572         * thread.c (thread_start_func_2): let abort_on_exception work.
19573           [ruby-core:11873]
19575 Fri Aug 10 04:47:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19577         * parse.y (internal_id_gen): internal ID must be bigger than
19578           tLAST_TOKEN.
19580 Thu Aug  9 16:04:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19582         * parse.y (stmt): check if rhs has value before assignment instead
19583           inside node_assign_gen().  [ruby-dev:31293]
19585         * parse.y (call_bin_op_gen, call_uni_op_gen): split call_op_gen.
19587 Thu Aug  9 14:01:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19589         * parse.y (f_marg_list): renamed from f_marg_head.
19591         * parse.y (f_margs): allow multiple mandatory arguments after a splat.
19592           [ruby-dev:31153]
19594 Thu Aug  9 02:02:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19596         * enum.c (enum_cycle): typo fixed.  a patch from Kazuhiro
19597           NISHIYAMA <zn AT mbf.nifty.com>.  [ruby-dev:31362]
19599 Wed Aug  8 19:17:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19601         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): no longer check
19602           HAVE_RB_IO_STDIO_FILE.
19604 Wed Aug  8 15:52:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19606         * enumerator.c (enumerator_next_p): should check correctly even when
19607           e.next has not been called before.
19609         * enumerator.c (enumerator_next): raise StopIteration (name taken
19610           from Python) instead of IndexError.
19612         * enum.c (enum_zip): catch StopIteration exception.
19614         * enumerator.c (enumerator_with_index): return Enumerator if no
19615           block is given.
19617         * test/ruby/test_iterator.rb (TestIterator::test_enumerator): add
19618           test for enumerators.
19620 Wed Aug  8 11:48:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19622         * bignum.c (rb_big2str0): should not use RTEST for non-VALUE.
19624 Wed Aug  8 11:25:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19626         * bignum.c (rb_big2str0): should preserve sign mark.
19628 Wed Aug  8 11:02:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19630         * common.mk (btest-miniruby, test-sample): split the test target
19631           so that -k option works.
19633 Tue Aug  7 14:58:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19635         * ext/pty/pty.c (establishShell): handshaking before close slave
19636           device.  [ruby-talk:263410]
19638         * ext/pty/pty.c (MasterDevice, SlaveDevice, deviceNo): constified.
19640         * ext/pty/pty.c (SlaveName): removed static buffer.
19642         * ext/pty/expect_sample.rb: support for autologin.
19644 Tue Aug  7 13:58:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19646         * include/ruby/ruby.h (ruby_special_consts): added RUBY_SPECIAL_SHIFT.
19648         * .gdbinit: some improvements.
19650 Tue Aug  7 13:28:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19652         * common.mk (node_name.inc): use $? instead of $< for nmake.
19653           [ruby-dev:31356]
19655 Tue Aug  7 12:45:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19657         * configure.in (ac_cv_func_isinf): set yes also on OpenSolaris.
19658           [ruby-Bugs-12859]
19660 Tue Aug  7 12:31:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19662         * io.c (pipe_open): fix for win32 platforms.
19664 Tue Aug  7 02:58:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19666         * bignum.c (rb_big2str0): make Bignum#to_s even faster.  a patch
19667           from Kenta Murata <muraken AT gmail.com>.  [ruby-dev:31354]
19669 Tue Aug  7 01:42:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19671         * enum.c (enum_zip): zip no longer converts arguments into
19672           arrays, uses enumerators.
19674 Tue Aug  7 01:27:47 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19676         * cont.c (rb_fiber_yield): change argument ordering.  export.
19678         * cont.c (rb_fiber_current): export
19680         * include/ruby/intern.h: export several functions from cont.c.
19682         * enumerator.c (enumerator_next): new method to implement external
19683           iterator (generator) using fiber.
19685         * enumerator.c (enumerator_next_p): new method to check whether
19686           any element is left in the generator sequence.
19688         * enumerator.c (enumerator_rewind): a new method to rewind the
19689           generator sequence.
19691 Tue Aug  7 01:15:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19693         * enum.c (enum_cycle): new method to cycle enumerable forever.
19695 Tue Aug  7 00:05:38 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
19697         * irb/ruby-lex.rb: support for '\c'. [ruby-talk:263508]
19699 Mon Aug  6 20:29:22 2007  Koichi Sasada  <ko1@atdot.net>
19701         * insnhelper.ci, insns.def: move some statements to functions.
19703         * vm.c, vm.h, vm_evalbody.ci: fix include/typedef places.
19705 Mon Aug  6 18:41:12 2007  Koichi Sasada  <ko1@atdot.net>
19707         * lib/vm/instruction.rb (make_header_analysys): fix last commit.
19709 Mon Aug  6 18:33:22 2007  Koichi Sasada  <ko1@atdot.net>
19711         * lib/vm/instruction.rb (make_header_analysys): add to separate
19712           header addition process.
19714 Mon Aug  6 17:36:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19716         * lib/rexml/encodings/{ISO-8859-15,CP-1252}.rb: fixed invalid syntax.
19718 Mon Aug  6 16:57:08 2007  Koichi Sasada  <ko1@atdot.net>
19720         * sample/test.rb: fix to output file name if it contains
19721           invalid syntax.
19723 Mon Aug  6 16:41:22 2007  Koichi Sasada  <ko1@atdot.net>
19725         * parse.y (value_expr_gen): fix to cause "void value expression"
19726           when jump expression such as "next" are shown on value_expr().
19727           [ruby-dev:31119]
19729         * bootstraptest/test_syntax.rb: fix to above change.
19731 Mon Aug  6 14:36:30 2007  Koichi Sasada  <ko1@atdot.net>
19733         * parse.y: fix a f_marg rule. [ruby-dev:31160]
19735 Mon Aug  6 14:29:30 2007  Koichi Sasada  <ko1@atdot.net>
19737         * bootstraptest/runner.rb (assert_equal): add additional
19738           message parameter.
19740 Mon Aug  6 13:34:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19742         * common.mk (INSNS): not chdir to srcdir.
19744         * common.mk (node_name.inc): auto-generate node name list.
19746         * iseq.c (ruby_node_name): ditto.
19748         * iseq.c (iseq_s_compile_option_get, Init_ISeq): added a new
19749           method VM::InstructionSequence::compile_option.
19751         * lib/vm/instruction.rb (RubyVM::SourceCodeGenerator): --destdir
19752           option.
19754         * tool/node_name.rb: to auto-generate node name list.
19756 Sun Aug  5 11:51:39 2007  Kouhei Sutou  <kou@cozmixng.org>
19758         * lib/rss, sample/rss, test/rss:
19759         - 0.1.7 -> 0.1.8.
19760         - supported <itunes:XXX>.
19761         - reverted backward incompatibility API changes introduced 0.1.7.
19763 Sun Aug  5 04:56:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19765         * io.c (pipe_open_v, pipe_open_s): separate array and string
19766           cases.  [ruby-dev:31344]
19768 Fri Aug  3 11:05:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19770         * ext/extmk.rb (extmake): save all CONFIG values.
19772         * ext/extmk.rb (extmake): remove mkmf.log at clean, and extconf.h at
19773           distclean, respectively.
19775         * ext/extmk.rb: remove rdoc at clean, and installed list file at
19776           distclean, respectively.
19778 Fri Aug  3 07:09:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19780         * lib/mkmf.rb: more verbose message.  [ruby-Bugs-12766]
19782         * lib/mkmf.rb (have_type): suppress a warning with -Wall.
19784         * lib/mkmf.rb (find_type): new method.
19786 Fri Aug  3 00:00:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19788         * bignum.c (big2str_table): base cannot be 0 or 1.
19790 Thu Aug  2 23:42:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19792         * parse.y (reg_compile_gen): set error if failed to compile regexp
19793           literal.  [ruby-dev:31336]
19795         * re.c (option_to_str, arg_kcode, opt_kcode): options conversion
19796           between int and string.
19798         * re.c (rb_reg_compile): should not use regexp which could not get
19799           initialized.  [ruby-dev:31333]
19800           return error message to let the parser know it.
19802         * re.c (rb_reg_compile): append regexp options to error message.
19803           [ruby-dev:31334]
19805 Thu Aug  2 22:05:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19807         * bignum.c (rb_big2str0): faster Bignum#to_s using Karatsuba
19808           algorithm.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
19809           in [ruby-dev:31312], slightly modified by Kenta Murata
19810           <muraken AT gmail.com> in [ruby-dev:31339].
19812 Thu Aug  2 13:46:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19814         * sprintf.c (rb_f_sprintf): should not check positional number as
19815           width.  [ruby-core:11838]
19817 Wed Aug  1 12:40:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19819         * generic.rb (URI::Generic::merge_path): behave as RFC 3986.
19820           [ruby-talk:252052]
19822 Tue Jul 31 23:38:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
19824         * lib/date/format.rb (_parse): now interprets slashed numerical
19825           dates as a big endian (except dd/mm/yyyy). [experimental]
19827 Mon Jul 30 11:16:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19829         * bignum.c (rb_big_aref): check for Bignum index range.
19830           [ruby-dev:31271]
19832 Sat Jul 28 09:35:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19834         * ext/digest/lib/digest.rb (Digest::self.const_missing): avoid
19835           infinite recursive const_missing call.  [ruby-talk:262193]
19837 Thu Jul 26 20:40:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19839         * range.c (range_eqq): call_super() in === does not work well
19840           since Enumerable#=== has different behavior.  [ruby-dev:31296]
19842 Thu Jul 26 13:57:45 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19844         * dln.c (load_1, dln_find_1): constified.
19846         * dln.c (conv_to_posix_path): removed.
19848         * ruby.c (usage): constified.
19850         * ruby.c (rubylib_mangled_path, rubylib_mangled_path2): return
19851           VALUE instead of a pointer to static buffer.
19853         * ruby.c (push_include_cygwin): fixed buffer overflow.
19854           [ruby-dev:31297]
19856         * ruby.c (ruby_init_loadpath): not convert built-in paths.
19858 Tue Jul 24 10:37:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19860         * io.c (rb_f_p): return nil if no argument.  [ruby-dev:31285]
19862 Tue Jul 24 01:05:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19864         * regint.h (USE_MATCH_RANGE_IS_COMPLETE_RANGE): undef to achieve old
19865           rindex behavior.  [ruby-dev:31265]
19867 Mon Jul 23 18:37:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19869         * include/ruby/oniguruma.h: upgrade to Oniguruma 5.9.0.  fixes
19870           some memory violation.  [ruby-dev:31070]
19872 Sun Jul 22 20:09:49 2007  Tadayoshi Funaba  <tadf@dotrb.org>
19874         * lib/date/format.rb (Date._parse): now accepts some new
19875           hints. [experimental]
19877         * lib/parsedate.rb: followed the changes on
19878           lib/date/format.rb. [experimental]
19880 Sun Jul 22 16:06:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19882         * thread.c (is_ruby_native_thread): made an int function as
19883           well as version 1.8.
19885         * include/ruby/ruby.h (is_ruby_native_thread): moved prototype
19886           from intern.h as well as version 1.8.
19888 Sun Jul 22 14:33:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19890         * file.c (rb_file_s_rename): deleted code to get rid of a bug of
19891           old Cygwin.
19893         * file.c (rb_file_truncate): added prototype of GetLastError()
19894           on cygwin.  [ruby-dev:31239]
19896         * include/ruby/intern.h (is_ruby_native_thread): prototype.
19898         * missing/strftime.c (strftime): fix printf format and actual
19899           arguments.
19901         * ext/Win32API/Win32API.c (Win32API_initialize): ditto.
19903         * ext/tk/tcltklib.c (ip_finalize): ditto.
19905         * ext/win32ole/win32ole.c (lcid_installed): ditto.
19907         * ext/socket/getnameinfo.c: include stdio.h always.
19909 Sat Jul 21 21:39:12 2007  Tadayoshi Funaba  <tadf@dotrb.org>
19911         * lib/date.rb, lib/date/format.rb (Date._parse): now can take some
19912           hints (its aim must be mainly determination of endianness of
19913           date). [experimental]
19915         * lib/date.rb, lib/date/format.rb (Date._parse): now completes
19916           truncated year as default action. [experimental]
19918         * lib/date.rb, lib/date/format.rb: added ::iso8601, ::rfc3339,
19919           ::xmlschema, ::rfc2822, ::httpdate, ::jisx0301, #xmlschema,
19920           #httpdate. [experimental]
19922 Sat Jul 21 17:48:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19924         * common.mk: inverted rules order.
19926         * thread_win32.ci (w32_create_thread): bcc does not have
19927           _beginthreadex().
19929         * lib/mkmf.rb (create_makefile): make OBJS depend on RUBY_EXTCONF_H
19930           only if extconf.h is created.
19932         * bcc32/Makefile.sub: headers have moved.
19934         * bcc32/{Makefile.sub,configure.bat,setup.mak: configure_args
19935           support.
19937         * bcc32/setup.mak: check runtime version.
19939         * win32/win32.c (rb_w32_open_osfhandle): prototype has changed
19940           in bcc 5.82.
19942         * {win32,wince,bcc32}/setup.mak (-version-): no RUBY_EXTERN magic.
19944         * win32/resource.rb: include patchlevel number.
19946 Sat Jul 21 12:06:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19948         * lib/mkmf.rb (init_mkmf): should remove mkmf.log too.
19950 Sat Jul 21 01:45:03 2007  Tadayoshi Funaba  <tadf@dotrb.org>
19952         * lib/date/format.rb (Date._parse): completes calendar week based year.
19954         * lib/date/format.rb (Date._parse): detects year of ordinal date in
19955           extended format.
19957 Fri Jul 20 16:30:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19959         * compile.c (iseq_set_sequence): raise SyntaxError instead of rb_bug
19960           since this function can be called from VM::InstructionSequence.load.
19962         * compile.c (insn_set_sc_state, iseq_set_sequence_stackcaching): ditto.
19964 Fri Jul 20 16:11:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19966         * compile.c, compile.h (DECL_ANCHOR, INIT_ANCHOR): split not to
19967           initialize aggregations with dynamic values.  [ruby-talk:259306]
19969         * eval.c (rb_protect): not to initialize aggregations with dynamic
19970           values.  [ruby-talk:259306]
19972         * gc.c (mark_current_machine_context): ditto.
19974         * thread.c (thgroup_list, call_trace_func): ditto.
19976         * vm.c (vm_init_redefined_flag): ditto.
19978 Fri Jul 20 15:22:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19980         * ext/openssl/ossl_config.c (ossl_config_set_section): do not
19981           initialize aggregations with dynamic values.  [ruby-talk:259306]
19983 Fri Jul 20 10:39:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19985         * parse.y (stmt, mlhs_node, lhs, arg, var_ref): return dummy
19986           NODE_BEGIN after errors.  [ruby-dev:31100], [ruby-dev:31118]
19988         * parse.y (remove_begin): keep empty NODE_BEGIN, instead of null.
19989           [ruby-dev:31252], [ruby-dev:31263]
19991 Fri Jul 20 09:50:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19993         * bootstraptest/runner.rb (get_result_string): check $?.coredump?
19994           first.
19996         * bootstraptest/runner.rb (cleanup_coredump, check_coredump): see
19997           stackdump file too.
19999 Thu Jul 19 20:39:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20001         * parse.y (value_expr_gen): warn for empty expression ().
20002           [ruby-dev:31252]
20004 Thu Jul 19 19:24:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20006         * eval_error.ci (get_backtrace): check the result more.
20007           [ruby-dev:31261] [ruby-bugs-12398]
20009 Thu Jul 19 14:38:45 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20011         * bignum.c (rb_big_lshift, rb_big_rshift): separated functions
20012           to get rid of infinite recursion.  fixed calculation in edge
20013           cases.  [ruby-dev:31244]
20015         * numeric.c (rb_fix_lshift, rb_fix_rshift): ditto.
20017 Wed Jul 18 16:57:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20019         * bignum.c (rb_big_pow): refine overflow check.  [ruby-dev:31242]
20021 Wed Jul 18 09:19:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20023         * parse.y (rb_parser_append_print, rb_parser_while_loop): moved check
20024           for node to the head.
20026         * ruby.c (proc_options): do nothing for -p/-n options if tree is null.
20027           submitted by Yusuke ENDOH <mame AT tsg.ne.jp> at [ruby-dev:31243].
20029 Wed Jul 18 08:47:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20031         * time.c (time_succ): Time#succ should return a time object in the
20032           same timezone mode to the original.  [ruby-talk:260256]
20034 Mon Jul 16 23:07:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20036         * lib/base64.rb (Base64::b64encode): should not specify /o option
20037           for regular expression.  [ruby-dev:31221]
20039 Mon Jul 16 22:57:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20041         * sprintf.c (rb_str_format): make %u behave like %d for negative
20042           values, since decimal format does not work with preceding dots.
20043           [ruby-core:11575]
20045 Mon Jul 16 18:29:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20047         * string.c (rb_str_rindex_m): accept string-like object convertible
20048           with #to_str method, as well as rb_str_index_m.  [ruby-core:11692]
20050 Mon Jul 16 07:17:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20052         * insns.def (getspecial): lfp_svar_get() requires int for special
20053           global variables.
20055 Mon Jul 16 05:45:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20057         * sprintf.c (rb_f_sprintf): more checks for format argument.
20058           [ruby-core:11569], [ruby-core:11570], [ruby-core:11571],
20059           [ruby-core:11573]
20061 Mon Jul 16 00:26:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20063         * bignum.c (rb_big_pow): removed invariant variable.  [ruby-dev:31236]
20065 Sun Jul 15 22:24:37 2007  pegacorn  <subscriber.jp AT gmail.com>
20067         * ext/dl/cfunc.c (rb_dlcfunc_call): adjust format.  [ruby-dev:31222]
20069         * ext/digest/digest.c (rb_digest_instance_update,
20070           rb_digest_instance_finish, rb_digest_instance_reset,
20071           rb_digest_instance_block_length): %s in rb_raise() expects char*.
20072           [ruby-dev:31222]
20074         * ext/openssl/ossl.h: include ossl_pkcs5.h.  [ruby-dev:31231]
20076         * ext/openssl/ossl_pkcs5.h: new file for PKCS5.  [ruby-dev:31231]
20078         * ext/openssl/ossl_x509name.c (ossl_x509name_to_s): use ossl_raise()
20079           instead of rb_raise().  [ruby-dev:31222]
20081         * ext/sdbm/_sdbm.c: DOSISH platforms need io.h.  [ruby-dev:31232]
20083         * ext/syck/syck.h: include stdlib.h for malloc() and free().
20084           [ruby-dev:31232]
20086         * ext/syck/syck.h (syck_parser_set_input_type): prototype added.
20087           [ruby-dev:31231]
20089         * win32/win32.c: include mbstring.h for _mbspbrk().  [ruby-dev:31232]
20091         * include/ruby/win32.h (rb_w32_getcwd): prototype added.
20092           [ruby-dev:31232]
20094 Sun Jul 15 21:07:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20096         * bignum.c (bigtrunc): do not empty Bignum.  [ruby-dev:31229]
20098 Sun Jul 15 19:05:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20100         * bignum.c (rb_cstr_to_inum): check leading non-digits.
20101           [ruby-core:11691]
20103 Sun Jul 15 04:42:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20105         * bignum.c (get2comp): do nothing for empty Bignum.  [ruby-dev:31225]
20107 Sat Jul 14 22:49:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20109         * numeric.c (fix_pow): integer power calculation: 0**n => 0,
20110           1**n => 1, -1**n => 1 (n: even) / -1 (n: odd).
20112         * test/ruby/test_fixnum.rb (TestFixnum::test_pow): update test
20113           suite.  pow(-3, 2^64) gives NaN when pow(3, 2^64) gives Inf.
20115 Sat Jul 14 18:46:35 2007  Tanaka Akira  <akr@fsij.org>
20117         * configure.in: add --with-valgrind.
20119         * gc.h (SET_MACHINE_STACK_END): new macro to replace
20120           rb_gc_set_stack_end.  it find out accurate stack boundary by
20121           asm using gcc on x86.
20123         * thread.c (rb_gc_set_stack_end): don't define if asm-version
20124           SET_MACHINE_STACK_END is available.
20126         * gc.c (mark_current_machine_context): extracted from garbage_collect.
20127           it use SET_MACHINE_STACK_END to not scan out of stack area.
20128           it notify conservative GC information to valgrind if
20129           --with-valgrind.
20131 Sat Jul 14 14:04:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20133         * enum.c (sort_by_cmp): check if reentered.  [ruby-dev:24291]
20135 Sat Jul 14 11:08:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20137         * ext/json/ext/generator/generator.c (check_max_nesting): wrong
20138           format specifier.  a patch from pegacorn <subscriber.jp AT gmail.com>.
20139           [ruby-dev:31217]
20141 Sat Jul 14 02:27:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20143         * numeric.c (int_pow): overflow detection using FIT_SQRT_LONG().
20144           [ruby-dev:31215]
20146 Sat Jul 14 02:05:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20148         * insns.def (opt_div): LONG2FIX() may not work for corner cases,
20149           use LONG2NUM() instead.  [ruby-dev:31210]
20151 Sat Jul 14 00:34:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20153         * numeric.c (int_round): should not return false, but self.
20154           [ruby-dev:31212]
20156 Fri Jul 13 18:31:27 2007  Koichi Sasada  <ko1@atdot.net>
20158         * include/ruby/intern.h: remove unused function declarations.
20160         * include/ruby/ruby.h: ditto.
20162 Fri Jul 13 17:32:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20164         * vm.c (vm_free): clear free'ed living_threads field.
20165           [ruby-dev:31163]
20167         * insns.def (opt_succ): use cast to shut a warning up.
20169 Fri Jul 13 16:10:00 2007  Tanaka Akira  <akr@fsij.org>
20171         * lib/open-uri.rb (URI::Generic#find_proxy): use ENV.to_hash to access
20172           http_proxy environment variable to avoid case insensitive
20173           environment search.
20175 Fri Jul 13 15:02:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20177         * win32/win32.c (CreateChild): enclose command line except for
20178           command.com which can not handle quotes.  [ruby-talk:258939]
20180 Fri Jul 13 11:33:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20182         * range.c (range_max, range_min): return nil for empty set as well as
20183           1.8 and Enumerable.  [ruby-dev:31198]
20185 Fri Jul 13 11:28:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20187         * parse.y (bvar): semicolon was lost for ripper description.
20188           [ruby-dev:31140]
20190 Fri Jul 13 11:25:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20192         * parse.y (program, stmt, primary): reduced duplicated code.
20194         * parse.y (dsym): convert also literals containing NUL to
20195           symbol.
20197         * parse.y (debug_lines): use rb_hash_lookup() to get rid of
20198           call of Hash#default.
20200         * parse.y (ripper_warningS): unused in ripper right now.
20202 Fri Jul 13 10:33:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20204         * array.c (rb_ary_flatten_bang): check argument if valid
20205           integer.  [ruby-dev:31197]
20207 Fri Jul 13 10:10:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20209         * lib/mkmf.rb (link_command, cc_command, cpp_command): do not expand
20210           ::CONFIG which is an alias of MAKEFILE_CONFIG.
20212 Thu Jul 12 21:38:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20214         * insns.def (opt_succ): use LONG_MAX as maximum Fixnum VALUE.
20215           [ruby-dev:31199]
20217 Thu Jul 12 18:42:18 2007  Tanaka Akira  <akr@fsij.org>
20219         * range.c (range_max): use FIX2LONG instead of FIX2INT to avoid
20220           RangeError by ((-0x80000001)...(-0x80000001)).max on LP64.
20222         * insns.def (opt_plus): use FIX2LONG instead of FIX2INT to avoid
20223           RangeError by 0x3fffffffffffffff+1 on LP64.
20225         * insns.def (opt_succ): don't use 0x80000000 which assumes 32bit VALUE.
20226           use FIX2LONG instead of FIX2INT.
20227           [ruby-dev:31190]
20229 Thu Jul 12 17:03:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20231         * struct.c (rb_struct_init_copy): disallow changing the size.
20232           [ruby-dev:31168]
20234 Thu Jul 12 12:58:21 2007  Koichi Sasada  <ko1@atdot.net>
20236         * blockinlining.c: remove "yarv" prefix.
20238         * array.c, numeric.c: ditto.
20240         * insnhelper.ci, insns.def, vm_evalbody.ci: ditto.
20242         * yarvcore.c: removed.
20244         * yarvcore.h: renamed to core.h.
20246         * cont.c, debug.c, error.c, process.c, signal.c : ditto.
20248         * ext/probeprofiler/probeprofiler.c: ditto.
20250         * id.c, id.h: added.
20252         * inits.c: ditto.
20254         * compile.c: rename internal functions.
20256         * compile.h: fix debug flag.
20258         * eval.c, object.c, vm.c: remove ruby_top_self.
20259           use rb_vm_top_self() instead.
20261         * eval_intern.h, eval_load: ditto.
20263         * gc.c: rename yarv_machine_stack_mark() to
20264           rb_gc_mark_machine_stack().
20266         * insnhelper.h: remove unused macros.
20268         * iseq.c: add iseq_compile() to create iseq object
20269           from source string.
20271         * proc.c: rename a internal function.
20273         * template/insns.inc.tmpl: remove YARV prefix.
20275         * thread.c: use rb_iseq_eval() and rb_str_new2().
20277         * vm.c (rb_iseq_eval): added.
20279         * vm.c: move some functions from yarvcore.c.
20281         * vm_dump.c: fix to remove compiler warning.
20283 Thu Jul 12 12:24:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20285         * insns.def (opt_succ): fixed typo.  [ruby-dev:31189]
20287 Thu Jul 12 10:30:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20289         * thread.c (thread_start_func_2): moved prototye from thread_*.ci.
20291         * thread_pthread.ci (thread_start_func_2): not use a directive
20292           inside a macro argument.  [ruby-talk:258763]
20294         * thread.c (thread_join): pthread_t may not be pointer.
20296         * thread_pthread.ci (ubf_select_each): ditto.
20298 Thu Jul 12 05:32:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20300         * include/ruby/ruby.h (FIX2ULONG): drop sign bit for LLP64 platform.
20302 Tue Jul 10 19:34:45 2007  Koichi Sasada  <ko1@atdot.net>
20304         * hash.c (rb_hash_lookup): added.  this function is similar to
20305           rb_hash_aref(), but doesn't call Hash#default when no entry
20306           exists.
20308         * include/ruby/intern.h: ditto.
20310         * insnhelper.ci (lfp_svar_get): use rb_hash_lookup().
20312 Tue Jul 10 19:16:28 2007  Koichi Sasada  <ko1@atdot.net>
20314         * eval.c, insnhelper.ci, vm.c: change cref index (-1 -> 2).
20316 Tue Jul 10 18:49:56 2007  Koichi Sasada  <ko1@atdot.net>
20318         * eval.c (exec_under): add proper casts.
20320 Tue Jul 10 16:58:16 2007  Koichi Sasada  <ko1@atdot.net>
20322         * vm.c, insnhelper.ci: fix svar interface.
20324         * compile.c (iseq_compile_each), yarvcore.h: fix to use new
20325           svar interface for flip flop.
20327         * eval.c: ditto.
20329         * insns.def: ditto.
20331         * include/ruby/intern.h: remove "rb_svar()" declaration.
20333 Tue Jul 10 16:52:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20335         * compile.c (rb_iseq_compile): formatted if/else to switch statement.
20337 Tue Jul 10 15:57:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20339         * bootstraptest/test_flip.rb: new test for flip-flop operator.
20341 Tue Jul 10 14:50:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20343         * bcc32/{Makefile.sub,setup.mak}: remove surplus slash from srcdir.
20345 Mon Jul  9 02:17:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20347         * cont.c (cont_restore_1): workaround for x64-mswin64's SEH.
20349 Sun Jul  8 02:08:53 2007  NARUSE, Yui  <naruse@ruby-lang.org>
20351         * lib/json.rb, lib/json/, ext/json/: import JSON 1.1.1
20353 Sat Jul  7 21:59:29 2007  Tanaka Akira  <akr@fsij.org>
20355         * lib/pp.rb (PP::PPMethods#pp_hash): sort condition changed:
20356           all keys have a same class which is kind of Comparable.
20358 Sat Jul  7 17:12:37 2007  Koichi Sasada  <ko1@atdot.net>
20360         * compile.c: use rb_bug() instead of rb_compile_error().
20362 Sat Jul  7 16:12:48 2007  Koichi Sasada  <ko1@atdot.net>
20364         * parse.y: fix node construction (around f_margs).
20365           [ruby-dev:31143]
20367         * bootstraptest/test_block.rb: add a test for above.
20369         * insnhelper.ci: fix indent.
20371 Sat Jul  7 15:36:50 2007  Tanaka Akira  <akr@fsij.org>
20373         * lib/pp.rb (PP::PPMethods#pp_hash): sort if
20374           all keys are strings, symbols or integers.
20376 Sat Jul  7 15:30:05 2007  Koichi Sasada  <ko1@atdot.net>
20378         * insnhelper.ci (vm_yield_setup_args), vm.c, insns.def:
20379           fix to pass nil as block parameter to yielded block.
20380           [ruby-dev:31147]
20382         * bootstraptest/test_block.rb: add a test for above.
20384 Fri Jul  6 19:55:10 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
20386         * lib/irb.rb: typo. Thanks, Giles Bowkett.
20388         * lib/irb/completion.rb: support Ruby1.9 changing return value
20389           String to Symbol for Object#methods, etc. [ruby-dev:31148].
20391 Fri Jul  6 18:20:50 2007  Koichi Sasada  <ko1@atdot.net>
20393         * bootstraptest/runner.rb: fix load path.
20395         * common.mk: fix "test" rule to run with "btest".
20397         * rubytest.rb, sample/test.rb: fix to show tests progress.
20399 Fri Jul  6 15:37:48 2007  Koichi Sasada  <ko1@atdot.net>
20401         * test/ruby/test_iterator.rb: fix test to 1.9 spec.
20403 Fri Jul  6 15:21:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20405         * eval.c (rb_interrupt): suppress a gcc's officious warning.
20407 Fri Jul  6 14:57:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20409         * parse.y (keyword_to_name): constified.
20411         * ext/ripper/eventids2.c (token_to_eventid): ditto.
20413 Fri Jul  6 14:50:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20415         * bootstraptest/runner.rb: added --quiet option.
20417 Fri Jul  6 14:35:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20419         * parse.y (f_marg): wrap f_norm_arg assignment node with NODE_LIST.
20420           [ruby-dev:31141]
20422 Fri Jul  6 12:15:01 2007  Tanaka Akira  <akr@fsij.org>
20424         * test/ruby/sentgen.rb: new file.
20426         * test/ruby/test_assignment.rb: tests implemented using assignment
20427           generator and emulator.
20429 Fri Jul  6 03:06:58 2007  Koichi Sasada  <ko1@atdot.net>
20431         * insns.def: remove unused code.
20433         * compile.c (compile_massign): fix to invoke to_splat on
20434           splat rhs (example: *a = *nil). [ruby-dev:31136]
20436         * bootstraptest/test_massign.rb: add tests for above.
20438         * compile.c (iseq_compile_each): disable excess optimization.
20439           [ruby-dev:31126]
20441 Fri Jul  6 02:08:25 2007  Koichi Sasada  <ko1@atdot.net>
20443         * insns.def: fix to invoke nil.to_splat on NODE_ARGSCAT.
20444           [ruby-dev:31138].
20446         * bootstraptest/test_literal.rb: add tests for above.
20448 Thu Jul  5 19:45:55 2007  Koichi Sasada  <ko1@atdot.net>
20450         * yarvcore.h: rename rb_control_frame_t#magic to flag.
20452         * vm.h: add VM_FRAME_TYPE() and VM_FRAME_FLAG().
20454         * cont.c, insnhelper.ci, insns.def, vm.c, vm_dump.c,
20455           vm_evalbody.ci, yarvcore.c: apply above changes.
20457 Thu Jul  5 19:16:14 2007  Koichi Sasada  <ko1@atdot.net>
20459         * test/ruby/test_basicinstructions.rb: remove an assertion using
20460           unsupported hash literal (such as {1, 2}).
20462         * test/ruby/test_hash.rb: ditto.
20464 Thu Jul  5 19:12:22 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20466         * ruby.c: Qfalse is VALUE, not pointer.
20468 Thu Jul  5 18:42:01 2007  Koichi Sasada  <ko1@atdot.net>
20470         * compile.c (iseq_compile_each): add break catch point.
20472         * insns.def (throw): support correct "break" and "return".
20473           this commit achieve that "make test" passes all tests.
20475         * vm.c: ditto.
20477 Thu Jul  5 18:44:12 2007  Tanaka Akira  <akr@fsij.org>
20479         * parse.y (mlhs_basic): use mlhs_post after tSTAR.
20480           [ruby-dev:31109]
20482 Thu Jul  5 18:27:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20484         * include/ruby/{intern,ruby}.h, compile.[ch], error.c, eval.c,
20485           eval_load.c, gc.c, iseq.c, main.c, parse.y, re.c, ruby.c,
20486           yarvcore.[ch] (ruby_eval_tree, ruby_sourcefile, ruby_sourceline,
20487           ruby_nerrs): purge global variables.
20489         * ruby.c (proc_options): moved do_print and do_loop options
20490           handling from ruby_process_options().
20492 Thu Jul  5 16:37:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20494         * numeric.c (int_pow): fix previous nubu's commit.
20496         * test/ruby/test_fixnum.rb: new test.
20498 Thu Jul  5 15:56:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20500         * numeric.c (int_pow): even number multiplication never be negative.
20502 Thu Jul  5 10:42:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20504         * include/ruby/{node,ruby}.h, ruby.c: added enum constants for gdb
20505           support.  [ruby-dev:31066]
20507         * .gdbinit: some improvements.
20509 Thu Jul  5 10:13:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20511         * parse.y (global_symbols.last_id): reduce unused ID numbers.
20513         * include/ruby/st.h, st.c (st_init_table, st_init_table_with_size):
20514           constified.
20516 Wed Jul  4 23:36:27 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
20518         * lib/webrick/httpauth/authenticator.rb
20519           (WEBrick::HTTPAuth::Authenticator#check_scheme): auth-scheme must be
20520           treated as a case-insensitive token according to RFC 2617 section 1.2.
20522 Wed Jul  4 18:30:04 2007  Tanaka Akira  <akr@fsij.org>
20524         * parse.y (mlhs_inner): new rule.  [ruby-dev:31132]
20526 Wed Jul  4 05:11:57 2007  Koichi Sasada  <ko1@atdot.net>
20528         * iseq.c (set_relation): added.
20530 Wed Jul  4 04:58:30 2007  Koichi Sasada  <ko1@atdot.net>
20532         * insnhelper.ci (caller_setup_args): fix to show correct class
20533           on an error message (ex: m(&1)). [ruby-dev:31101]
20535 Wed Jul  4 04:30:32 2007  Koichi Sasada  <ko1@atdot.net>
20537         * compile.c (compile_array, iseq_compile_each): fix about array
20538           generation in void context. [ruby-dev:31102]
20540         * bootstraptest/test_literal.rb: add a test for above.
20542 Wed Jul  4 04:07:00 2007  Koichi Sasada  <ko1@atdot.net>
20544         * compile.c (compile_array): ignore NODE_ZARRAY.
20545           [ruby-dev:31110]
20547         * bootstraptest/test_method.rb: add a test for above.
20549 Wed Jul  4 04:04:02 2007  Koichi Sasada  <ko1@atdot.net>
20551         * compile.h: fix debug print level.
20553 Wed Jul  4 03:52:55 2007  Koichi Sasada  <ko1@atdot.net>
20555         * compile.c (iseq_compile_each): support v[&b]= type method call.
20556           [ruby-dev:31094]
20558         * bootstraptest/test_method.rb: add a test for above.
20560 Wed Jul  4 03:43:29 2007  Koichi Sasada  <ko1@atdot.net>
20562         * compile.c (compile_massign): fix massign compilation
20563           (example: a, *v, (*x) = ...).  [ruby-dev:31107]
20565         * bootstraptest/test_massign.rb: add tests for above.
20567 Tue Jul  3 23:12:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20569         * include/ruby/onigiruma.h (ONIG_EXTERN): use RUBY_EXTERN if defined.
20571         * regenc.h: include ruby/defines.h.
20573         * regint.h: x64-mswin64 support.
20575 Tue Jul  3 13:47:44 2007  Koichi Sasada  <ko1@atdot.net>
20577         * cont.c (cont_save_machine_stack): clear saved_thread.machine_stack*.
20579 Mon Jul  2 21:45:53 2007  Koichi Sasada  <ko1@atdot.net>
20581         * compile.c: rename iseq_translate_direct_threaded_code()
20582           to iseq_translate_threaded_code().
20584         * eval_intern.h, yarvcore.h: mv EXEC_EVENT_HOOK() and
20585           exec_event_hooks() to yarvcore.h.
20587         * insnhelper.ci, vm.c: mv yarv_finish_insn_seq to vm.c.
20589         * insns.def (opt_call_c_function): fix to use RESTORE_REGS().
20591         * iseq.c (rb_iseq_build_for_ruby2cext): fix to allocate iseq.
20593 Mon Jul  2 11:59:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20595         * insns.def (defineclass): suppress a warning.
20597         * insns.def (opt_call_c_function): should raise the thrown exception
20598           instead of returning it.
20600 Mon Jul  2 08:53:47 2007  Koichi Sasada  <ko1@atdot.net>
20602         * eval_intern.h, yarvcore.h: move declaration of sysstack_error
20603           to yarvcore.h.
20605         * iseq.c: fix symbol name (:toplevel -> :top).
20607         * lib/vm/instruction.rb, template/vm.inc.tmpl: replaceable
20608           current file name.
20610 Mon Jul  2 05:29:07 2007  Koichi Sasada  <ko1@atdot.net>
20612         * compile.c, iseq.c: fix iseq some of load/store process.
20614 Mon Jul  2 03:09:36 2007  Koichi Sasada  <ko1@atdot.net>
20616         * yarvcore.h, compile.c, insnhelper.ci, iseq.c, vm.c:
20617           rename structure names and field names.
20619         * insnhelper.h, insns.def: add GET_CONST_INLINE_CACHE().
20621         * iseq.c: add rb_iseq_build_for_ruby2cext().
20623         * yarvcore.h, vm.h: move declaration of rb_insn_func_t
20624           to yarvcore.h.
20626 Sun Jul  1 03:25:53 2007  Koichi Sasada  <ko1@atdot.net>
20628         * insnhelper.h, vm.h: some refactoring.
20629           remove useless comments, etc.
20631 Sun Jul  1 03:02:29 2007  Koichi Sasada  <ko1@atdot.net>
20633         * yarvcore.h: some refactoring on rb_iseq_t.
20634           rename some variable names, add comments, etc.
20636         * compile.c, iseq.c, proc.c, vm.c: ditto.
20638 Sun Jul  1 02:57:57 2007  Koichi Sasada  <ko1@atdot.net>
20640         * vm.h: rename insn_func_type to rb_insn_func_type.
20642         * vm_evalbody.ci: ditto.
20644         * insns.def: add opt_call_native_compiled instruction
20645           instead of opt_call_native_compiled.
20647 Sat Jun 30 00:17:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20649         * parse.y (parser_yylex): return non-valid token for an invalid
20650           instance/class variable name.  a patch from Yusuke ENDOH
20651           <mame AT tsg.ne.jp>.  [ruby-dev:31095]
20653 Fri Jun 29 23:38:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20655         * parse.y (stmts): fix for ripper.
20657 Fri Jun 29 21:55:48 2007  Koichi Sasada  <ko1@atdot.net>
20659         * parse.y: fix to show line number of blank block.
20660           [ruby-dev:31093]
20662 Fri Jun 29 20:51:04 2007  Tanaka Akira  <akr@fsij.org>
20664         * lib/cgi/session.rb (create_new_id): don't cut off md5.hexdigest to
20665           follow Ruby 1.8.
20667 Fri Jun 29 17:10:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20669         * debug.h: constified.
20671         * debug.c (ruby_set_debug_option): separated from main.c.
20673         * gc.c (ruby_gc_stress), signal.c (ruby_enable_coredump): prefixed.
20675 Fri Jun 29 16:39:06 2007  Koichi Sasada  <ko1@atdot.net>
20677         * proc.c (proc_new): fix to return a proc object
20678           which block is contained ([ruby-dev:31056]).
20680 Fri Jun 29 15:43:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20682         * numeric.c (fix_pow): get rid of division by zero.  reported by
20683           Yusuke ENDOH <mame AT tsg.ne.jp> [ruby-dev:31040]
20685         * numeric.c (int_round): do nothing when rounding by zeroth digit.
20686           check underflow.  [ruby-dev:31043]
20688 Fri Jun 29 15:32:00 2007  Koichi Sasada  <ko1@atdot.net>
20690         * configure.in: add fastcall attribute check.
20692 Fri Jun 29 14:51:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20694         * parse.y (assoc_list): remove expanded hash literal (no splat).
20696         * lib/webrick/httpstatus.rb (WEBrick::HTTPStatus::EOFError): adapt
20697           to new syntax.
20699 Fri Jun 29 14:48:18 2007  Koichi Sasada  <ko1@atdot.net>
20701         * tool/insns2vm.rb, lib/vm/instruction.rb: move process body
20702           to lib/vm/instruction.rb.
20704         * common.mk: fix aotc rule.
20705           experimental. bin/ruby2cext is not added yet.
20707 Fri Jun 29 11:23:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20709         * parse.y (dsym): return non-null NODE even if yyerror().  based on a
20710           patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:31085]
20712 Thu Jun 28 23:29:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20714         * parse.y (assoc_list): odd number check only for NODE_ARRAY.
20715           [ruby-dev:31082]
20717 Thu Jun 28 22:24:33 2007  Koichi Sasada  <ko1@atdot.net>
20719         * win32/Makefile.sub: define FUNC_FASTCALL macro.
20721         * vm.h: fix to use FUNC_FASTCALL macro.
20722           TODO: add FUNC_FASTCALL macro by configure.
20724 Thu Jun 28 19:38:53 2007  Koichi Sasada  <ko1@atdot.net>
20726         * compile.c: fix to remove -Wall warnings on gcc.
20728         * compile.c (make_name_with_str): removed. use rb_sprintf() instead.
20730 Thu Jun 28 18:53:01 2007  Tanaka Akira  <akr@fsij.org>
20732         * bignum.c (rb_big_hash): fix hash area.
20734 Thu Jun 28 15:00:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20736         * ext/stringio/stringio.c (strio_getline): local variable to be
20737           initialized.  [ruby-dev:31077]
20739 Thu Jun 28 11:30:39 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20741         * gc.c (rb_obj_id): use SIGNED_VALUE instead of long.
20743 Thu Jun 28 05:01:56 2007  Koichi Sasada  <ko1@atdot.net>
20745         * common.mk (run.gdb): fix to load $(srcdir)/.gdbinit
20747         * vm.c (rb_vm_set_finish_env): add a cast.
20749         * vm.h: support __fastcall for MSVC.
20751 Thu Jun 28 02:12:08 2007  Koichi Sasada  <ko1@atdot.net>
20753         * bootstraptest/runner.rb: fix to untouch $:.
20755 Thu Jun 28 02:03:07 2007  Koichi Sasada  <ko1@atdot.net>
20757         * compile.c (setup_args): change parameter type.
20759 Thu Jun 28 02:03:39 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20761         * parse.y (rb_intern2): unconstify cast.
20763 Thu Jun 28 01:44:31 2007  Tanaka Akira  <akr@fsij.org>
20765         * parse.y (rb_intern2): don't allocate a string object at first.
20766           [ruby-dev:31064]
20768 Thu Jun 28 01:24:02 2007  Koichi Sasada  <ko1@atdot.net>
20770         * bootstraptest/runner.rb: fix to show file name.
20772         * bootstraptest/test_*.rb: add bootstrap tests.
20774 Thu Jun 28 01:22:15 2007  Koichi Sasada  <ko1@atdot.net>
20776         * include/ruby/node.h, parse.y, gc.c, iseq.c: remove NODE_CREF.
20778 Thu Jun 28 01:19:43 2007  Koichi Sasada  <ko1@atdot.net>
20780         * compile.c (iseq_compile_each): fix popped backref and others.
20781           ([ruby-dev:31068]).
20783         * compile.c (iseq_compile_each): remove needless statements.
20785 Wed Jun 27 23:51:33 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20787         * win32/win32.c: remove unused functions.
20789 Wed Jun 27 20:46:05 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20791         * include/ruby/win32.h, win32/Makefile.sub, win32/configure.bat,
20792           win32/mkexports.rb, win32/setup.mak, win32/win32.c: import
20793           x64-mswin64 port.
20795 Wed Jun 27 20:31:07 2007  Koichi Sasada  <ko1@atdot.net>
20797         * compile.c (iseq_translate_direct_threaded_code): fix prototype
20798           function name.
20800         * vm.h: add correct cast.
20802 Wed Jun 27 17:08:42 2007  Koichi Sasada  <ko1@atdot.net>
20804         * vm_evalbody.ci: support OPT_CALL_THREADED_CODE.
20806         * insns.def, vm.c, vm.h: ditto.
20808         * vm.h: add VM_CFP_CNT() and VM_SP_CNT().
20810 Wed Jun 27 04:23:47 2007  Koichi Sasada  <ko1@atdot.net>
20812         * compile.c (iseq_compile_each): fix type error.
20814 Wed Jun 27 03:26:15 2007  Koichi Sasada  <ko1@atdot.net>
20816         * compile.c (compile_massign), insns.def (expandarray): support
20817           postarg with massign (a, *b, c = ...).
20819         * bootstraptest/test_massign.rb: add tests for above.
20821         * compile.h: fix debug macro names.
20823 Wed Jun 27 00:18:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20825         * string.c (rb_str_clear): need to check STR_EMBED_P() before
20826           free()ing memory.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
20827           [ruby-dev:31062]
20829 Tue Jun 26 16:39:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20831         * process.c (proc_getgroups): use GIDT2NUM for rb_gid_t.
20833 Tue Jun 26 16:28:24 2007  Koichi Sasada  <ko1@atdot.net>
20835         * thread.c (rb_thread_wait_fd_rw): terminate fdset.
20837 Tue Jun 26 16:26:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20839         * regint.h: IL32LLP64 support.
20841 Tue Jun 26 16:22:45 2007  Koichi Sasada  <ko1@atdot.net>
20843         * iseq.c (ruby_node_name): update node names.
20845 Tue Jun 26 15:21:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20847         * include/ruby/ruby.h: IL32LLP64 support.
20849         * bignum.c (bigfixize, rb_cstr_to_inum): ditto.
20851         * insns.def (opt_plus, opt_minus, opt_mult): ditto.
20853 Tue Jun 26 15:04:06 2007  Koichi Sasada  <ko1@atdot.net>
20855         * cont.c (rb_fiber_s_new): revert initializing VM stack.
20857         * yarvcore.c (th_init2): ditto.
20859         * vm.c, vm.h: fix to stop using Qundef on VM stack.  According to
20860           this change, VM stack should not include Qundef value.
20862         * insns.def (putundef): removed.
20864         * compile.c (iseq_compile_each): ditto.
20866         * eval.c (eval): fix spacing.
20868 Tue Jun 26 04:03:50 2007  Koichi Sasada  <ko1@atdot.net>
20870         * insnhelper.ci (vm_yield_with_cfunc), proc.c: fix Method#to_proc
20871           to return lambda Proc ([ruby-dev:31021], [ruby-dev:31037]).
20873 Tue Jun 26 03:46:08 2007  Koichi Sasada  <ko1@atdot.net>
20875         * cont.c (rb_fiber_s_new): fix to clear rb_thread_t#tag.
20876           [ruby-dev:30995]
20878 Tue Jun 26 03:38:31 2007  Koichi Sasada  <ko1@atdot.net>
20880         * cont.c (rb_fiber_s_new), yarvcore.c (th_init2): fix to clear
20881           VM stack ([ruby-dev:31046]).
20883 Tue Jun 26 03:15:27 2007  Koichi Sasada  <ko1@atdot.net>
20885         * compile.c: rename setup_arg() to setup_args().
20886           fix to use setup_args() at processing NODE_YIELD.
20888 Tue Jun 26 02:50:24 2007  Koichi Sasada  <ko1@atdot.net>
20890         * compile.c (setup_arg): support kind of "m(*ary, x)" method call.
20891           ([ruby-dev:31048]).
20893 Tue Jun 26 00:28:44 2007  Koichi Sasada  <ko1@atdot.net>
20895         * insnhelper.ci, vm.c: complete block parameter support.
20896           post arguments, optional arguments, block argument.
20898         * compile.c, parse.y: fix {|a|} parameter.
20900         * insnshelper.ci, insns.def: revert caller_setup_args() option
20901           (need_block_check) parameter.
20903 Mon Jun 25 20:18:44 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20905         * gc.c (RVALUE): in RVALUE and RBasic, flags must be the same type.
20907 Mon Jun 25 18:02:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20909         * ext/pty/extconf.rb: skip wince and win64.
20911 Mon Jun 25 17:59:32 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20913         * include/ruby/node.h (NODE_LMASK, nd_line): shouldn't use int and/or
20914           long carelessly.
20916 Mon Jun 25 11:36:35 2007  Koichi Sasada  <ko1@atdot.net>
20918         * gc.h: add RUBY_ prefix to debug macros.
20920         * cont.c, proc.c, yarvcore.c,
20922         * gc.c: define ruby_gc_debug_indent variable to debug mark/free.
20924         * vm.c, insnhelper.ci: rename some functions to vm_* or rb_vm_*.
20925           move some functions, definitions, declarations to suitable files.
20927         * eval.c, yarvcore.h, eval_error.ci, insnhelper.ci: ditto.
20929 Mon Jun 25 09:45:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20931         * eval_error.ci, eval_jump.ci, eval_method.ci, eval_safe.ci: c-mode.
20933 Mon Jun 25 05:27:54 2007  Koichi Sasada  <ko1@atdot.net>
20935         * eval.c: remove ruby_current_node and change eval() prototype.
20936           fix to use rb_sourcefile/line() instead of ruby_sourcefile/line.
20938         * error.c, eval_error.ci, eval_load.c, eval_safe.ci, gc.c,
20939           include/ruby/intern.h, parse.y, process.c, ruby.c: ditto.
20941         * vm.c: fix spaces.
20943 Mon Jun 25 04:20:14 2007  Koichi Sasada  <ko1@atdot.net>
20945         * eval_*.h: rename to eval_*.ci.
20947         * common.mk: ditto.
20949         * eval_error.ci: remove ruby_set_current_source().
20951         * error.c, eval.c, ruby.c: ditto.
20953         * eval_safe.c, proc.c: remove unused macros.
20955 Mon Jun 25 03:37:20 2007  Koichi Sasada  <ko1@atdot.net>
20957         * insnhelper.ci (caller_setup_args): add need_block_check option.
20959         * insns.def: ditto.
20961         * yarvcore.h: add GetCoreDataFromValue().
20963 Mon Jun 25 02:14:30 2007  Koichi Sasada  <ko1@atdot.net>
20965         * call_cfunc.ci: removed.
20967         * insnhelper.ci: added. this function includes all functions that
20968           vm insns need.
20970         * common.mk: ditto.
20972         * insnhelper.h, vm.h, vm.c: move some declaration.
20974         * gc.h: remove GC_CHECK() macro because GC.stress is more useful.
20976         * compile.c, iseq.c, vm_dump: ditto.
20978         * gc.h, thread.c: move a prototype declaration.
20980         * debug.c, debug.h: rename some functions.
20982         * compile.h: ditto.
20984 Mon Jun 25 00:45:02 2007  Koichi Sasada  <ko1@atdot.net>
20986         * insns.def (invokesuper): fix error message.
20988 Mon Jun 25 00:14:13 2007  Koichi Sasada  <ko1@atdot.net>
20990         * vm.c: some refactoring.
20991           * rename th_* to vm_*.
20992           * remove unused variables functions.
20993           * add prototypes.
20995         * blockinlining.c, compile.c, cont.c, eval.c, eval_intern.h,
20996           eval_jump.h, eval_load.c, inits.c, insns.def, iseq.c, parse.y,
20997           proc.c, process.c, signal.c, thread.c, vm.c, vm_dump.c,
20998           vm_evalbody.ci, yarvcore.c, yarvcore.h: ditto.
21000 Sun Jun 24 22:32:00 2007  Koichi Sasada  <ko1@atdot.net>
21002         * eval_method.h (rb_add_method): fix to check 0.
21004 Sun Jun 24 22:00:17 2007  Koichi Sasada  <ko1@atdot.net>
21006         * insn_send.ci: removed.
21008         * common.mk: ditto.
21010         * vm.c (vm_call_bmethod), isnsn.def: added.  fix to use this
21011           function instead of using goto.
21013         * vm.c (vm_call_bmethod): renamed from th_invoke_bmethod().
21015         * vm.c (vm_method_missing): renamed from eval_method_missing().
21017         * vm_evalbody.ci: remove tmp_* variables.
21019         * insnhelper.h: add some macros.
21021         * insns.def: forbid zsuper from method defined by define_method().
21023         * test/ruby/test_super.rb: ditto.
21025 Sun Jun 24 20:01:08 2007  Koichi Sasada  <ko1@atdot.net>
21027         * vm_macro.def: removed.
21029         * insn_send.ci: added.  this file includes send instruction body.
21031         * common.mk: ditto.
21033         * insns.def: ditto.
21035         * tool/insns2vm.rb: ditto.
21037         * vm.c: ditto.
21039 Sun Jun 24 19:30:37 2007  Koichi Sasada  <ko1@atdot.net>
21041         * insnhelper.h (RESTORE_REGS): add do/while(0) around macro.
21043         * vm.c, vm_macro.def: remove macro_eval_invoke_func() and
21044           add vm_setup_method().  use it instead.
21046 Sun Jun 24 19:02:33 2007  Koichi Sasada  <ko1@atdot.net>
21048         * vm.c, vm_macro.def : remove macro_eval_invoke_cfunc() and
21049           add vm_call_cfunc().
21051 Sun Jun 24 17:54:13 2007  Koichi Sasada  <ko1@atdot.net>
21053         * insns.def, vm.c: add/fix stack overflow check.
21055 Sun Jun 24 17:28:52 2007  Koichi Sasada  <ko1@atdot.net>
21057         * insnhelper.h: change CHECK_STACK_OVERFLOW() to throw exception.
21059         * vm.c (caller_setup_arg), vm_macro.def: remove
21060           macro_eval_setup_send_arguments and add caller_setup_arg().
21062         * insns.def: ditto.
21064         * bootstraptest/test_method.rb: add splat arg tests.
21066 Sun Jun 24 16:35:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21068         * proc.c (proc_to_s): used a variable before initialized.
21070 Sun Jun 24 16:05:45 2007  Koichi Sasada  <ko1@atdot.net>
21072         * vm.c (callee_setup_arg): added.  support correct post arg.
21074         * vm_macro.def (macro_eval_invoke_func): fix to use
21075           callee_setup_arg.
21077         * compile.c (set_arguments): adjust for above changes.
21079         * compile.c (iseq_compile_each): ditto.
21081         * iseq.c (ruby_iseq_disasm): ditto.
21083         * yarvcore.h: add rb_iseq_t#post_arg_start and arg_size.
21085         * bootstraptest/test_method.rb: add post arg tests.
21087 Sun Jun 24 16:10:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21089         * proc.c (proc_to_s): suppress warning, and reduced duplicated code.
21091 Sun Jun 24 15:33:47 2007  Koichi Sasada  <ko1@atdot.net>
21093         * bootstraptest/runner.rb: set default directory to
21094           '/tmp/bootstraptest.tmpwd' and add --dir option.
21095           fix to output driver and target information.
21097         * common.mk: fix to run btest on BASERUBY and
21098           add OPTS to pass option ("make btest OPTS=...").
21100 Sun Jun 24 03:05:00 2007  Tanaka Akira  <akr@fsij.org>
21102         * enum.c (enum_minmax): fix SEGV by [].minmax.
21104 Sat Jun 23 17:18:19 2007  Tanaka Akira  <akr@fsij.org>
21106         * re.c (match_inspect): MatchData#inspect implemented.
21108 Sat Jun 23 15:00:16 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21110         * enum.c (enum_minmax): new method to get the minimum and maximum
21111           values from the enumerable at once.
21113         * enum.c (enum_minmax_by): ditto.
21115 Sat Jun 23 01:25:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21117         * hash.c (rb_hash_assoc): new method.
21119         * hash.c (rb_hash_rassoc): ditto.
21121         * hash.c (rb_hash_flatten): ditto.
21123 Fri Jun 22 23:55:59 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21125         * string.c (rb_str_upto): add optional argument to specify
21126           exclusiveness.
21128         * range.c (range_step): use String#upto with optional argument.
21130         * range.c (range_each): ditto.
21132 Fri Jun 22 19:55:51 2007  Tanaka Akira  <akr@fsij.org>
21134         * proc.c (proc_to_s): revert the change from %p to %lx at YARV
21135           merge time.
21137 Fri Jun 22 19:33:49 2007  Tanaka Akira  <akr@fsij.org>
21139         * proc.c (proc_to_s): show is_lambda.
21141 Thu Jun 21 20:36:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21143         * hash.c (rb_hash_sort): remove hash specific implementation.
21145 Thu Jun 21 20:28:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21147         * hash.c (rb_hash_select): returns new hash, not assoc array.
21148           [ruby-core:11504]
21150         * hash.c (env_select): ditto.
21152 Thu Jun 21 23:08:19 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21154         * parse.y (rb_intern2): ID_JUNK test based on len, not by NUL.
21156 Thu Jun 21 19:42:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21158         * yarvcore.c (rb_thread_mark): mark also thrown_errinfo.
21160 Thu Jun 21 17:13:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21162         * parse.y (rb_intern2): name may not be NUL-terminated.
21164 Wed Jun 20 08:27:57 2007  Tanaka Akira  <akr@fsij.org>
21166         * eval_error.h (error_print): show full stacktrace on
21167           non-SystemStackError.
21169 Wed Jun 20 04:45:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21171         * parse.y (rb_intern2): use rb_intern2 to intern without trailing
21172           equal sign.
21174         * parse.y (rb_intern2, ripper_id2sym): fixed indent.
21176 Tue Jun 19 10:55:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21178         * eval_load.c (load_ext, rb_require_safe): pass VALUE instead of
21179           pointer.  [ruby-Bugs-11659]
21181 Mon Jun 18 08:47:54 2007  Technorama Ltd.  <oss-ruby@technorama.net>
21183         * ext/openssl/{extconf.rb,ossl_ssl_session.c}:
21184           Fix ruby-Bugs-11513.
21186         * ext/openssl/ossl_pkey_ec.c
21187           New methods EC::Point.[eql,make_affine!,invert!,on_curve?,infinity?]
21188           By default output the same key form as the openssl command.
21190         * ext/openssl/ossl_rand.c
21191           New method Random.status?
21193         * test/openssl/test_ec.rb
21194           New tests.
21196 Mon Jun 18 17:04:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21198         * eval_load.c (rb_require_safe, ruby_init_ext): load with ruby level
21199           cfp.  [ruby-core:10779]
21201         * eval_intern.h, vm.c (rb_vm_call_cfunc): new function to call a
21202           function with ruby level cfp.
21204 Mon Jun 18 16:57:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21206         * parse.y (yycompile): disable trace while creating ruby_debug_lines.
21207           [ruby-talk:253586]
21209         * thread.c (ruby_suppress_tracing): new function to call a function
21210           with suppressing trace.
21212         * lib/debug.rb, lib/tracer.rb: for YARV.
21214 Mon Jun 18 13:54:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21216         * eval.c (ruby_cleanup): return EXIT_FAILURE if any exceptions occurred
21217           in at_exit blocks.  [ruby-core:11263]
21219 Mon Jun 18 02:49:16 2007  Koichi Sasada  <ko1@atdot.net>
21221         * vm.c (env_mark): fix to mark block.proc.
21223         * vm.c (th_make_proc_from_block): set created proc to block->proc.
21225 Mon Jun 18 02:48:12 2007  Koichi Sasada  <ko1@atdot.net>
21227         * vm_dump.c (vm_stack_dump_raw): hide VM stack trace.
21229 Mon Jun 18 02:43:53 2007  Koichi Sasada  <ko1@atdot.net>
21231         * signal.c (sigsegv): clear gc_stress flag on SEGV.
21233 Mon Jun 18 01:14:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21235         * variable.c (rb_path2class): get rid of dangling pointer caused by
21236           optimized out value.
21238         * variable.c (rb_global_entry, rb_f_untrace_var, rb_alias_variable,
21239           rb_generic_ivar_table, generic_ivar_get, generic_ivar_set,
21240           generic_ivar_defined, generic_ivar_remove, rb_mark_generic_ivar,
21241           rb_free_generic_ivar, rb_copy_generic_ivar,
21242           rb_obj_instance_variables): suppress warnings.
21244 Sun Jun 17 11:11:07 2007  Tanaka Akira  <akr@fsij.org>
21246         * eval.c (rb_method_missing): avoid a warning "too many arguments
21247           for format string" on "./ruby -ve 'def m() super end; m'".
21249 Sat Jun 16 22:24:17 2007  Tanaka Akira  <akr@fsij.org>
21251         * gc.c (garbage_collect): re-introduce ruby_current_node marking code.
21252           [ruby-dev:31005]
21254 Sat Jun 16 21:37:43 2007  Tanaka Akira  <akr@fsij.org>
21256         * gc.c (gc_sweep): re-introduce heap extension strategy change.
21257           [ruby-dev:31005]
21259 Fri Jun 15 22:59:37 2007  Tanaka Akira  <akr@fsij.org>
21261         * .gdbinit: new file to ease debugging using gdb.
21263 Fri Jun 15 22:33:55 2007  Tanaka Akira  <akr@fsij.org>
21265         * signal.c (default_handler): func argument removed.
21266           (trap_handler): support SYSTEM_DEFAULT.  call default_handler
21267           internally.
21268           (sig_trap): don't call default_handler.
21269           [ruby-dev:30999]
21271 Fri Jun 15 22:33:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21273         * common.mk (realclean): separate local and ext.
21275         * ext/extmk.rb: not remove unrelated directories.
21277 Fri Jun 15 20:50:02 2007  Tanaka Akira  <akr@fsij.org>
21279         * keywords: enclose C code in declaration section by %{ and %} to
21280           avoid extra semicolon after #ifdef RIPPER.
21281           pointed by eban.
21283 Fri Jun 15 18:56:52 2007  Tanaka Akira  <akr@fsij.org>
21285         * signal.c (trap_handler): trap("SIGSEGV", "DEFAULT") may cause wrong
21286           trap error because SIG_DFL may be zero.
21288 Fri Jun 15 15:55:55 2007  Koichi Sasada  <ko1@atdot.net>
21290         * insns.def (setconstant, toregexp): fix to mark object correctly.
21292 Fri Jun 15 13:24:18 2007  Koichi Sasada  <ko1@atdot.net>
21294         * hash.c: exchange semantics of Hash#each and Hash#each_pair.
21295           pointed out by [ruby-dev:30997].
21297         * test/ruby/test_iterator.rb: ditto.
21299         * test/ruby/test_yield.rb: ditto.
21301 Fri Jun 15 12:38:29 2007  Koichi Sasada  <ko1@atdot.net>
21303         * test/ruby/test_iterator.rb: remove debug code (GC.stress=true).
21305 Fri Jun 15 12:25:33 2007  Koichi Sasada  <ko1@atdot.net>
21307         * vm.c (th_yield_setup_args): |v| should work as |v,|.
21308           ex) def m;yield 1, 2; end; m{|v| p v} #=> 1
21310         * parse.y: apply above change for "for" statement.
21312         * test/ruby/test_assignment.rb: ditto
21314         * test/ruby/test_basicinstructions.rb: ditto.
21316         * test/ruby/test_iterator.rb: ditto.
21318         * test/ruby/test_yield.rb: ditto.
21320         * compile.c (iseq_compile_each): fix debug.
21322 Fri Jun 15 12:22:10 2007  Koichi Sasada  <ko1@atdot.net>
21324         * eval.c (ruby_finalize_1): rb_thread_t#errinfo should be clear with
21325           Qnil.
21327 Fri Jun 15 12:20:11 2007  Koichi Sasada  <ko1@atdot.net>
21329         * cont.c (rb_cont_call): forbid cross fiber continuation call.
21331         * test/ruby/test_fiber.rb: ditto.
21333 Fri Jun 15 12:14:07 2007  Koichi Sasada  <ko1@atdot.net>
21335         * sample/test.rb: fix to show line information whether test succeeds.
21337 Thu Jun 14 17:16:05 2007  Tanaka Akira  <akr@fsij.org>
21339         * eval_load.c (Init_load): delay allocating an array for rb_load_path
21340           to avoid GC problem in very early stage.
21341           (RUBY_GC_STRESS causes GC in such stage.)
21343         * variable.c (rb_gc_mark_global_tbl): rb_global_tbl may be 0 in
21344           very early stage.
21346         * thread.c (thread_cleanup_func) [IA64]: clear register stack position.
21347           (thread_start_func_2) [IA64]: record the beginning of register
21348           stack using extra argument.
21349           (rb_gc_save_machine_context) [IA64]: record the end of register
21350           stack.
21352         * gc.c [IA64] (SET_STACK_END): record the end of register stack.
21353           (garbage_collect) [IA64]: use recorded register stack area for
21354           GC marking.
21355           (yarv_machine_stack_mark) [IA64]: GC mark from the register stack
21356           area.
21358         * yarvcore.c [IA64] (rb_gc_register_stack_start): defined.
21359           (Init_VM): store th->self on stack to fix GC problem.
21360           (Init_yarv) [IA64]: initialize the beginning of register stack.
21362         * yarvcore.h (struct rb_thread_struct) [IA64]: new members for
21363           register stack area.
21365         * thread_pthread.ci (thread_start_func_1) [IA64]: call
21366           thread_start_func_2 with the end of register stack.
21368         * cont.c (struct rb_context_struct) [IA64]: new members for register
21369           stack area.
21370           (cont_mark) [IA64]: GC mark from register stack area.
21371           (cont_free) [IA64]: free saved register stack.
21372           (cont_save_machine_stack) [IA64]: record the position and contents
21373           of the register stack.
21374           (cont_capture): store cont->self on stack to fix GC problem.
21375           (cont_restore_1) [IA64]: restore the register stack.
21376           [IA64] (register_stack_extend): new function.
21377           (cont_restore_0) [IA64]: call register_stack_extend instead of
21378           cont_restore_1.
21380         [ruby-dev:30982]
21382 Thu Jun 14 17:09:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21384         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser): handle more
21385           extensions.  [ruby-dev:30972]
21387 Thu Jun 14 14:40:42 2007  Tanaka Akira  <akr@fsij.org>
21389         * lib/securerandom.rb: document updated.
21390           suggested by NaHi.  [ruby-dev:30966]
21392 Wed Jun 13 22:42:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21394         * gc.c (garbage_collect): update IA64 register stack code.
21395           [ruby-dev:30971]
21397 Wed Jun 13 06:05:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21399         * configure.in (darwin): prohibit loading extension libraries to
21400           miniruby.
21402 Tue Jun 12 21:50:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21404         * parse.y (call_args): no allow splat after assocs.  takes
21405           consistency over compatibility.
21407         * parse.y (call_args2): ditto
21409 Tue Jun 12 14:53:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21411         * lib/mkmf.rb (Logging.quiet, Logging.message): added quiet flag and
21412           use it.  [ruby-core:10909]
21414         * lib/mkmf.rb (find_header): use header names in the message.
21416 Sun Jun 10 18:37:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21418         * ext/probeprofiler/probeprofiler.c: clean warnings.
21420 Sun Jun 10 18:32:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21422         * missing/isinf.c, missing/dup2.c, missing/strtod.c, missing/x68.c,
21423           missing/alloca.c: use "ruby/config.h".
21425 Sun Jun 10 17:49:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21427         * instruby.rb (install_recursive): should check parent directories of
21428           the destination.  [ruby-dev:30947]
21430 Sun Jun 10 16:59:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21432         * parse.y (do_block, brace_block): fix line numbers.  [ruby-dev:30831]
21434 Sun Jun 10 16:57:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21436         * instruby.rb (install_recursive): add :glob option rather than
21437           using FNM_DOTMACH.
21439         * instruby.rb (ext-comm): make header directory first.
21441 Sun Jun 10 16:10:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21443         * test/ruby/test_beginendblock.rb: typo.
21445 Sun Jun 10 16:07:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21447         * instruby.rb (install_recursive): skip .svn directories.
21449 Sun Jun 10 15:44:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21451         * win32/Makefile.sub (config.status): rubyhdrdir was missing.
21453 Sun Jun 10 15:26:36 2007  Tanaka Akira  <akr@fsij.org>
21455         * Makefile.in: use --output-file for gperf to not leave lex.c.tmp.
21457 Sun Jun 10 15:11:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21459         * Makefile.in, win32/Makefile.sub (XCFLAGS): -I. is needed for *.inc.
21461         * ext/extmk.rb: prepend also topdir to mflags at last.
21463 Sun Jun 10 13:47:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21465         * test/ruby/test_beginendblock.rb (test_should_propagate_signaled):
21466           get rid of invoking shell.  [ruby-dev:30942]
21468 Sun Jun 10 12:56:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21470         * include/ruby: moved public headers.
21472         * instruby.rb (install_recursive): skip backup files.
21474         * instruby.rb (ext-comm): install only current platform headers.
21476 Sun Jun 10 10:42:04 2007  Tanaka Akira  <akr@fsij.org>
21478         * lib/securerandom.rb: renamed from lib/secrand.rb.
21479           suggested by NaHi.  [ruby-dev:30934]
21481 Sat Jun  9 06:40:05 2007  Tanaka Akira  <akr@fsij.org>
21483         * lib/secrand.rb: rename SecRand() to SecRand.random_number.
21484           suggested by NaHi.  [ruby-dev:30934]
21486 Fri Jun  8 16:34:20 2007  Tanaka Akira  <akr@fsij.org>
21488         * ext/zlib/zlib.c (gzfile_s_open): use FilePathValue to support
21489           to_path.
21491 Fri Jun  8 16:11:00 2007  Koichi Sasada  <ko1@atdot.net>
21493         * eval_jump.h: th->errinfo should clear with nil.
21495 Fri Jun  8 14:53:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21497         * parse.y (call_args): allow splat argument after unpacked
21498           assocs like 1.8 does.
21500         * parse.y (call_args): ditto.
21502 Fri Jun  8 14:26:18 2007  Tanaka Akira  <akr@fsij.org>
21504         * lib/secrand.rb: new file for secure random interface.
21506         * lib/cgi/session.rb: use secrand for generating cookies.
21508 Fri Jun  8 12:44:37 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21510         * {win32,wince}/Makefile.sub: add lex.c rule.
21512 Fri Jun  8 11:54:18 2007  Tanaka Akira  <akr@fsij.org>
21514         * lex.c.blt: moved from lex.c.
21516         * Makefile.in: use lex.c.blt if gperf is not available.
21517           [ruby-list:8212], [ruby-list:8214], [ruby-list:24667],
21518           [ruby-talk:120857], [ruby-dev:28102]
21520 Thu Jun  7 21:38:39 2007  Koichi Sasada  <ko1@atdot.net>
21522         * thread.c (rb_thread_execute_interrupts): invoke ensure when
21523           main thread exits.
21525 Thu Jun  7 19:02:48 2007  Tanaka Akira  <akr@fsij.org>
21527         * lib/pp.rb: call original "method" method instead of redefined one.
21529 Thu Jun  7 17:20:57 2007  Koichi Sasada  <ko1@atdot.net>
21531         * iseq.c (prepare_iseq_build): freeze filename and name string.
21533         * variable.c: freeze class name string.
21535 Thu Jun  7 12:48:33 2007  Koichi Sasada  <ko1@atdot.net>
21537         * cont.c (cont_restore_1): fix to check root fiber [ruby-dev:30911].
21539         * test/ruby/test_fiber.rb: add a test.
21541 Thu Jun  7 07:24:36 2007  NARUSE, Yui  <naruse@ruby-lang.org>
21543         * lib/json/common.rb: Ponder offering parse! method.
21545         * lib/json/editor.rb: be a bit more robust while loading data.
21547         * ext/json/ext/{generator,parser}/extconf.rb:
21548           add a have_header directive for st.h
21550         * test/json: fix some tests.
21552 Thu Jun  7 03:29:18 2007  Koichi Sasada  <ko1@atdot.net>
21554         * test_fiber.rb: add a test (Continuation and Fiber).
21556 Thu Jun  7 03:17:24 2007  Koichi Sasada  <ko1@atdot.net>
21558         * cont.c (cont_new): add debug message.
21560         * cont.c (cont_restore_1): copy stack information from fiber.
21562         * cont.c (rb_fiber_s_new): fix to mark created fiber.
21564         * test/ruby/test_fiber.rb: add some tests around Thread and Fiber.
21566         * yarvcore.c (thread_free): fix to skip freeing stack if root fiber
21567           is available.
21569 Thu Jun  7 01:03:20 2007  Koichi Sasada  <ko1@atdot.net>
21571         * eval_intern.h, eval.c (ruby_init): remove POP_TAG_INIT().
21573         * cont.c (rb_fiber_start): remove zero-clearing tag.
21575 Wed Jun  6 20:23:46 2007  Koichi Sasada  <ko1@atdot.net>
21577         * insns.def (invokeblock): fix of splat argument.
21578           (splat same as normal method dispatch)
21580 Wed Jun  6 16:27:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21582         * insns.def: fixed indentation.
21584 Wed Jun  6 10:58:23 2007  Koichi Sasada  <ko1@atdot.net>
21586         * eval.c (rb_yield): fix to check Qundef.
21588 Wed Jun  6 10:57:45 2007  Koichi Sasada  <ko1@atdot.net>
21590         * test/ruby/test_continuation.rb: add a test for last commit.
21592 Wed Jun  6 10:55:42 2007  Koichi Sasada  <ko1@atdot.net>
21594         * cont.c (rb_cont_call): forbid calling dead fiber with
21595           Continuation#call.
21597 Wed Jun  6 10:50:01 2007  Koichi Sasada  <ko1@atdot.net>
21599         * compile.c (iseq_compile_each): fix around yield arguments
21600           (with NODE_ARGSCAT).
21602 Wed Jun  6 02:50:53 2007  Koichi Sasada  <ko1@atdot.net>
21604         * cont.c (rb_fiber_start): clear th->tag and check error to fix
21605           [ruby-dev:30888] and [ruby-dev:30889].
21607         * eval_intern.h: fix rb_fiber_start() prototype.
21609         * test/ruby/test_fiber.rb: add tests for above.
21611 Wed Jun  6 02:40:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21613         * insnhelper.h, insns.def (DEC_SP): shouldn't use unary minus operator
21614           in pointer operation. some compilers (such as VC++8 x64) cannot deal
21615           it with expected way.
21617 Wed Jun  6 02:19:48 2007  Koichi Sasada  <ko1@atdot.net>
21619         * parse.y (new_yield), compile.c (iseq_compile_each): fix
21620           passing parameter.
21622         * eval.c, eval_jump.h: simplify rb_yield*.
21624         * proc.c (proc_mark): fix to mark proc->block.proc.
21626         * proc.c (Init_Proc): add Proc#lambda?
21628         * test/ruby/test_lambda.rb: add some tests.
21630         * vm.c (invoke_block): fix to check lambda block or not.
21632         * vm.c (th_yield_setup_args): fix to check arguments size
21633           when lambda block.
21635 Tue Jun  5 16:30:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21637         * io.c (rb_f_p): returns arguments to intervene.  [ruby-dev:29736]
21639 Tue Jun  5 14:07:55 2007  Koichi Sasada  <ko1@atdot.net>
21641         * insns.def (invokeblock): check block is created by lambda
21642           or Proc.new.
21644         * vm.c (block_proc_is_lambda): added.
21646 Tue Jun  5 14:47:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21648         * lib/pp.rb (PP::PPMethods::seplist): revert last change to work
21649           around wrapper bug.  [ruby-dev:30840]
21651 Tue Jun  5 14:11:15 2007  NARUSE, Yui  <naruse@ruby-lang.org>
21653         * ext/nkf/nkf-utf8/nkf.c (kanji_convert): Fix guess fallback.
21655 Tue Jun  5 13:32:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21657         * compile.c, dir.c, eval.c, eval_jump.h, eval_method.h, numeric.c,
21658           pack.c, parse.y, re.c, thread.c, vm.c, vm_dump.c, call_cfunc.ci,
21659           thread_pthread.ci, thread_win32.ci: fixed indentation.
21661         * call_cfunc.ci: protoized.
21663         * thread_win32.ci: fixed typo.
21665 Tue Jun  5 13:17:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21667         * call_cfunc.ci, compile.c, dir.c, eval.c, eval_jump.h, numeric.c,
21668           pack.c, re.c, thread.c, thread_win32.ci, vm.c, vm_dump.c: fixed
21669           indentation.
21671 Mon Jun  4 21:15:45 2007  NARUSE, Yui  <naruse@ruby-lang.org>
21673         * lib/json.rb, lib/json, ext/json, test/json:
21674           import JSON library.
21676         * ext/nkf: import nkf.c rev:1.124
21677           Support CP10001.
21679 Mon Jun  4 20:52:58 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21681         * numeric.c (int_round): should not just truncate.
21683 Sat Jun  2 16:48:55 2007  Koichi Sasada  <ko1@atdot.net>
21685         * cont.c (Fiber#pass): rename to Fiber#yield.  Block parameter
21686           of fiber body receive first yield values.
21687           e.g.: Fiber.new{|x| p x}.yield(:ok) #=> :ok
21689         * cont.c: rename rb_context_t#retval to rb_context_t#value.
21691         * test/ruby/test_fiber.rb: ditto.
21693 Sat Jun  2 16:45:21 2007  Koichi Sasada  <ko1@atdot.net>
21695         * proc.c (Init_Proc): remove a line break.
21697 Sat Jun  2 01:27:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21699         * numeric.c (int_round): small optimization to handle bignums.
21701 Fri Jun  1 13:02:35 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21703         * insnhelper.h (INC_SP): shouldn't cast ``x'' to unsigned type because
21704           it might be a negative value.
21706         * insnhelper.h, insns.def: shouldn't use unary minus operator in index
21707           operator. some compilers (such as VC++8 x64) cannot deal it with
21708           expected way.
21710 Fri Jun  1 11:33:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21712         * numeric.c (num_round): should convert self to Float.
21713           [ruby-dev:30860]
21715 Fri Jun  1 02:01:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21717         * numeric.c (flo_round): now takes optional argument to specify
21718           number of digits, like round() in Python/PHP.
21720         * numeric.c (num_round): ditto.
21722 Fri Jun  1 01:58:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21724         * enum.c (each_with_index_i): should work well with continuation.
21725           a patch from sheepman <sheepman AT sheepman.sakura.ne.jp>.
21726           [ruby-dev:30846]
21728 Thu May 31 17:27:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21730         * lib/benchmark.rb (Benchmark::Job::item): avoid modifying the
21731           argument unintentionally.  [ruby-talk:253676]
21733 Wed May 30 14:43:00 2007  Koichi Sasada  <ko1@atdot.net>
21735         * cont.c (cont_capture): store all local variables in heap
21736           ([ruby-dev:30832]).
21738         * vm.c (th_stack_to_heap): added.
21740         * test/ruby/test_continuation.rb: add a test for above.
21742         * eval_intern.h (th_get_ruby_level_cfp): fix to clean code.
21744 Wed May 30 13:32:34 2007  Shugo Maeda  <shugo@ruby-lang.org>
21746         * lib/net/imap.rb (ResponseParser#next_token): fixed
21747           error message.
21749         * lib/net/imap.rb (ResponseParser#parse_error): fixed
21750           the condition not to refer @token.symbol unexpectedly.
21751           Thanks, Dick Monahan.
21753 Wed May 30 13:24:33 2007  Shugo Maeda  <shugo@ruby-lang.org>
21755         * lib/net/ftp.rb (Net::FTP#transfercmd): skip 2XX
21756           responses for some FTP servers.
21758 Wed May 30 04:18:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21760         * eval.c (rb_eval_cmd): just return if no exceptions.
21761           [ruby-dev:30820]
21763 Wed May 30 02:14:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21765         * signal.c (interrupt_init): needs to pass nil for Interrupt.
21766           [ruby-core:11038]
21768         * signal.c (trap): fixed segfaults.  [ruby-dev:30830]
21770 Wed May 30 00:50:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21772         * gc.c (rb_source_filename, obj_free): suppress warnings.
21774         * gc.c (garbage_collect, yarv_machine_stack_mark): fixed typo.
21775           http://bugs.debian.org/426267
21777 Wed May 30 00:24:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21779         * parse.y (open_args, arg_ambiguous, parser_warning): should not use
21780           rb_warning in the parser.
21782 Tue May 29 12:31:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21784         * win32/win32.c (rb_w32_opendir): removed duplicated code.
21786 Tue May 29 10:55:24 2007  Koichi Sasada  <ko1@atdot.net>
21788         * cont.c: fix bug around Continuation and Fiber.
21790         * test/ruby/test_continuation.rb: add tests for Continuation.
21792 Tue May 29 10:54:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21794         * win32/win32.c (rb_w32_opendir, rb_w32_readdir): eliminate magic
21795           numbers.
21797 Mon May 28 10:27:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21799         * cont.c: fixed a function name.
21801 Mon May 28 03:56:44 2007  Koichi Sasada  <ko1@atdot.net>
21803         * cont.c: support Fiber.  Check test/ruby/test_fiber.rb for detail.
21804           Fiber is known as "Micro Thread", "Coroutine", and other terms.
21805           At this time, only Fiber#pass is supported to change context.
21806           I want to know more suitable method name/API for Fiber (... do you
21807           know more suitable class name instead of Fiber?) as "suspend/resume",
21808           "call", "yield", "start/kick/stop/restart", ....
21810         * eval.c, eval_intern.h, thread.c, yarvcore.c, yarvcore.h: ditto.
21812 Sat May 26 00:38:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21814         * eval.c (ruby_exec_internal): do nothing if no code.
21816         * compile.c (rb_iseq_compile): check node if NULL before check
21817           nd_type.  [ruby-talk:252956]
21819 Sat May 26 00:05:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21821         * test/ruby/test_beginendblock.rb (test_should_propagate_signaled):
21822           skip tests for exitstatus and termsig on the platforms where
21823           signals not supported.
21825 Fri May 25 16:04:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21827         * yarvcore.c (Init_VM): wrap already initialized structs to use
21828           it directly.
21830 Fri May 25 11:09:47 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21832         * regint.h (include): on some platform, defines.h redefines
21833           SIZE_OF_LONG_LONG so shouldn't re-include config.h after included
21834           defines.h.
21836         * regint.h (vsnprintf): ruby on windows already have vsnprintf macro.
21838 Thu May 24 12:07:27 2007  Koichi Sasada  <ko1@atdot.net>
21840         * cont.c: check across trap violation.
21842         * eval.c, yarvcore.h: ditto.
21844 Thu May 24 11:46:55 2007  Koichi Sasada  <ko1@atdot.net>
21846         * gc.c, yarvcore.c: fix to mark VM structure on startup.
21848         * yarvcore.h: disable USE_CACHED_VALUE.
21850 Thu May 24 01:54:53 2007  Koichi Sasada  <ko1@atdot.net>
21852         * cont.c: support callcc which everyone love.
21853           incomplete. please give me bug reports.
21855         * common.mk, inits.c, thread.c: ditto.
21857         * yarvcore.c: export thread_mark().
21859         * yarvcore.h: disable value cache option.
21861         * eval_intern.h: set th_get_ruby_level_cfp to inline.
21863 Wed May 23 15:39:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21865         * common.mk: add a rule for regsyntax.c.
21867 Wed May 23 10:31:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21869         * oniguruma.h: updated to Oniguruma 5.7.0.
21871         * regsyntax.c, unicode.c: new files along with Oniguruma 5.x.
21873 Wed May 23 06:51:46 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
21875         * lib/cgi.rb (CGI#[]): get rid of exceptions being raised.
21876           [ruby-dev:30740], Thanks Kentaro KAWAMOTO.
21878 Wed May 23 05:49:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21880         * ext/extmk.rb, ext/purelib.rb, lib/mkmf.rb, runruby.rb: clear default
21881           load path to get rid of load pre-installed extensions/libraries.
21882           [ruby-core:11017]
21884 Tue May 22 16:37:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21886         * ruby.c (set_arg0): support RSTRING_LEN on HP-UX.  a patch from
21887           WATANABE Tetsuya <Tetsuya.WATANABE AT nifty.com>.  [ruby-dev:30806]
21889 Mon May 21 13:40:00 2007  Koichi Sasada  <ko1@atdot.net>
21891         * compile.c, vm_macro.def: support tail call optimization
21892           (on default, this feature is not enabled).
21894         * iseq.c, compile.c, vm_opts.h: add "tailcall_optimization"
21895           option.
21897         * sample/test.rb (test_ok): fix to adjust tailcall stack layout.
21899         * insns.def, vm.c, compile.c, yarvcore.c, yarvcore.h:
21900           add opt_gt, opt_le instructions.
21902 Mon May 21 03:34:06 2007  Minero Aoki  <aamine@loveruby.net>
21904         * lib/net/smtp.rb: CRAM-MD5 authentication did not work.
21905           [ruby-dev:30770]
21907 Sat May 19 10:26:01 2007  Tadayoshi Funaba  <tadf@dotrb.org>
21909         * lib/date/format.rb (Date._parse): detects some OFX dates
21910           (Of course not fully).
21912 Sat May 19 03:08:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21914         * enum.c (enum_inject): minor improvement.  [ruby-dev:30792]
21916         * enum.c (one_i): no needs to iterate once the result became false.
21918         * enum.c (enum_one): fix for an example.
21920         * enum.c (one_iter_i, none_iter_i): DRY.;
21922 Sat May 19 01:07:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21924         * enum.c (enum_inject): it is now can work without block.  you
21925           have to specify two argument method name as the first argument.
21927         * enum.c (Init_Enumerable): reduce is new alias to inject.
21929 Sat May 19 01:05:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21931         * file.c (Init_File): method definition mismatch.
21933 Fri May 18 16:44:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21935         * file.c (Init_File): add to_path method to File objects.
21937 Fri May 18 11:12:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21939         * ruby.c (DllMain, ruby_init_loadpath): use DLL instance handle given
21940           to DllMain instead of VirtualQuery so that loadpath becomes relative
21941           from the DLL on WinCE too.
21943 Thu May 17 17:03:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21945         * misc/ruby-style.el (ruby-style-label-indent): for yacc rules.
21947 Thu May 17 13:30:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21949         * parse.y (f_arg): remove typo from ripper description.
21951 Thu May 17 13:23:38 2007  Koichi Sasada  <ko1@atdot.net>
21953         * parse.y, compile.c (set_arguments): fix to support in-paren
21954           parameter (ex: def foo((a, b))).
21956 Thu May 17 13:01:52 2007  Koichi Sasada  <ko1@atdot.net>
21958         * iseq.c (ruby_iseq_disasm): fix to show post arg info.
21960 Thu May 17 12:56:52 2007  Koichi Sasada  <ko1@atdot.net>
21962         * debug.c (ruby_debug_node): fix to show node line.
21964 Wed May 16 21:48:44 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
21966         * lib/logger.rb (Logger::Application): remove meaningless logdev
21967           attribute and added logger attribute instead.  [ruby-core:11143]
21968           also added Logger#formatter rdoc comment.
21970 Tue May 15 16:40:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21972         * test/ruby/test_beginendblock.rb (test_endblockwarn): now parser
21973           warnings emit source names and line numbers.
21975 Tue May 15 15:01:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21977         * win32/win32.c (init_stdhandle): stderr should be without buffering,
21978           but mswin32 use buffering when stderr is not connected to tty.
21980 Mon May 14 02:12:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21982         * array.c (rb_ary_zip): a.zip(b,c) should return an array, not
21983           enumerator.
21985         * array.c (rb_ary_zip): a.zip(b,c) should return array with size
21986           truncated to the size of its shortest argument array.
21987           [incompatible]
21989 Mon May 14 01:54:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21991         * array.c (rb_ary_choice): should return nil when the array is
21992           empty.
21994 Sat May 12 18:26:36 2007  Minero Aoki  <aamine@loveruby.net>
21996         * lib/net/http.rb (tokens): forgot to add strip. [ruby-core:11120]
21998         * test/net/http/test_http.rb: test Net::HTTP.post_form.
22000 Fri May 11 15:27:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22002         * iseq.c (iseq_data_to_ary): internal IDs must not be exposed.
22003           [ruby-core:11073]
22005         * parse.y (internal_id_gen): now returns scope local ID instead of
22006           global one.
22008 Thu May 10 15:15:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22010         * test/ruby/test_super.rb: add tests.
22012 Thu May 10 15:14:05 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22014         * ext/iconv/iconv.c (iconv_s_conv): rdoc fix.
22016 Thu May 10 15:09:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22018         * parse.y (POINTER_P): pointer may be larger than long.
22020         * parse.y (vtable_size, vtable_included, vtable_tblcpy,
22021           vtable_to_tbl): constified.
22023 Thu May 10 10:13:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22025         * thread.c (rb_thread_priority): rdoc fix; the initial value is
22026           inherited from the creating thread.  [ruby-core:10607]
22028 Wed May  9 12:28:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22030         * bignum.c (Init_Bignum), numeric.c (Init_Numeric): added fdiv as
22031           aliases of quo.  [ruby-dev:30771]
22033 Tue May  8 23:39:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
22035         * lib/date/format.rb (Date._parse): revised treatment of
22036           hyphened/separatorless dates.
22038         * lib/date/format.rb: some trivial adjustments.
22040 Tue May  8 20:23:07 2007  Tadayoshi Funaba  <tadf@dotrb.org>
22042         * lib/date/format.rb: reverted.
22044 Tue May  8 19:32:18 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
22046         * lib/rational.rb: fix high-precision Rationals cannot be
22047           converted to Floats. [ruby-Bugs:10502], [ruby-core:11069],
22048           [ruby-dev:30743]
22050 Mon May  7 10:59:55 2007  Kouhei Sutou  <kou@cozmixng.org>
22052         * lib/rss/image.rb, test/rss/test_image.rb: fixed Image module
22053           namespace URI. reported by Dmitry Borodaenko. Thanks.
22055 Sun May  6 18:44:11 2007  Minero Aoki  <aamine@loveruby.net>
22057         * lib/net/http.rb (Net::HTTP.post_form): allow an Array of String
22058           for pairs argument. [ruby-Bugs:10340]
22060         * lib/net/http.rb (Net::HTTP#set_form_data): ditto.
22062 Sun May  6 17:54:36 2007  Minero Aoki  <aamine@loveruby.net>
22064         * lib/net/http.rb: Connection header field might include both of
22065           "keep-alive" token and "close" token. [ruby-core:10818]
22067 Sat May  5 16:26:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22069         * lib/date/format.rb (Format::Bag#method_missing): get rid of
22070           modifying original argument.  [ruby-core:11090]
22072 Thu May  3 22:20:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22074         * configure.in, defines.h, eval_load.c (rb_feature_p, rb_provided,
22075           search_required, rb_require_safe), ext/extmk.rb: Fix
22076           a bug where a statically linked extension cannot be autoloaded.
22077           [ruby-dev:30023] / [ruby-dev:30239]
22079         * thread.c: added an internal class, Barrier.
22081         * thread.c: copied rdocs from fastthread.
22083         * yarvcore.h (struct rb_vm_struct): moved loading_table from global.
22085 Thu May  3 18:10:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22087         * vm_evalbody.ci, insns.def, vm.c, tool/insns2vm.rb (rb_num_t):
22088           renamed to get rid of name clash.  [ruby-dev:30504]
22090         * yarvcore.c (ruby_thread_init): ditto.
22092 Wed May  2 18:52:58 2007  Koichi Sasada  <ko1@atdot.net>
22094         * vm.c, yarvcore.h, yarvcore.c, insns.def: fix to mark VM stack
22095           in correct range.
22097 Wed May  2 17:13:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22099         * bignum.c (rb_big_quo): now calculate in integer.  [ruby-dev:30753]
22101 Wed May  2 15:14:56 2007  Koichi Sasada  <ko1@atdot.net>
22103         * eval_method.h: add redefine checks ([ruby-dev:30751]).
22105 Wed May  2 11:22:52 2007  Koichi Sasada  <ko1@atdot.net>
22107         * compile.c: use Qtrue instead of 2.
22109         * vm.c, insns.def: support "lambda" calling convention.
22111 Wed May  2 06:46:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22113         * error.c, parse.y, ruby.h (rb_compile_warn, rb_compile_warning): warn
22114           for compilation.  the parser should no longer use rb_warn() and
22115           rb_warning().  [ruby-dev:30121]
22117 Wed May  2 05:45:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22119         * parse.y (assoc): result of assoc_new needs to be an assoc.
22121 Wed May  2 05:40:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22123         * bignum.c (rb_big_pow): improvement by calculating from MSB and using
22124           factorization.  <http://yowaken.dip.jp/tdiary/20070426.html#p01>
22126 Tue May  1 18:45:45 2007  Koichi Sasada  <ko1@atdot.net>
22128         * sample/test.rb: import matzruby's sample/test.rb.
22130 Tue May  1 17:46:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22132         * array.c (rb_ary_choice): a new method to choose an element
22133           randomly from an array.
22135         * array.c (rb_ary_choice): fixed mistake from RDoc.
22137 Tue May  1 13:59:18 2007  Koichi Sasada  <ko1@atdot.net>
22139         * proc.c (proc_arity): fix an arity bug ([ruby-core:11060]).
22141 Tue May  1 13:12:49 2007  Koichi Sasada  <ko1@atdot.net>
22143         * yarvcore.h, compile.c (set_arguments): support post arguments.
22145         * test/ruby/test_method.rb: add tests for above.
22147         * test/ruby/test_proc.rb: ditto.
22149         * proc.c: fix an arity bug ([ruby-core:11029]).
22151         * vm.c, vm.h, insns.def, vm_dump.h: fix bmethod process.
22153         * vm.c: support block argument on block parameter.
22155 Fri Apr 27 17:05:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22157         * numeric.c (int_pow): bugfix of overflow detection.
22159         * numeric.c (int_pow): rb_big_pow() may return other than Bignum.
22161 Fri Apr 27 01:51:50 2007  Koichi Sasada  <ko1@atdot.net>
22163         * compile.c: support multiple splat (e.g, [a, *b, *c, e, *f]).
22165 Fri Apr 27 00:03:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22167         * bignum.c (rb_big_pow): truncate all zero BDIGITs. [ruby-dev:30733]
22169 Thu Apr 26 17:31:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22171         * bignum.c (rb_big_pow): reduce multiplying for even number.
22173         * numeric.c (int_pow): calculate power in Fixnum as possible.
22174           [ruby-dev:30726]
22176 Thu Apr 26 17:18:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22178         * parse.y: fixes for ripper.
22180         * parse.y (primary): reduced duplicated code.
22182         * parse.y (f_arg_item): should not override by meaningless value.
22184         * parse.y (f_arg, assocs): should not use $$ before assigned.
22186         * parse.y (assoc_list): dispatch assoclist_from_args for assocs as
22187           well as args.
22189         * parse.y (assoc): return assoc if dispatched result is $1.
22191 Thu Apr 26 13:54:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22193         * misc/ruby-style.el: new file.  C/C++ style for ruby source code.
22195 Wed Apr 25 19:49:16 2007  Tanaka Akira  <akr@fsij.org>
22197         * ext/socket/socket.c (unix_send_io, unix_recv_io): use CMSG_DATA to
22198           align file descriptor appropriately.
22200 Wed Apr 25 15:23:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22202         * win32/win32.c (NtInitialize, exit_handler): add initializing and
22203           cleanup of critical section object for select.
22205         * win32/win32.c (do_select): block reentrance.
22207         * win32/win32.c (rb_w32_select): 0 sec polling of socket. this is
22208           workaround because winsock cannot do select at same socket at the
22209           same time by two or more threads.
22211 Wed Apr 25 14:10:47 2007  Koichi Sasada  <ko1@atdot.net>
22213         * ext/probeprofiler/probeprofiler.c: fix function name and
22214           return value.
22216 Wed Apr 25 12:42:40 2007  Koichi Sasada  <ko1@atdot.net>
22218         * yarvcore.h: remove rb_control_frame_t#callee_id.
22220         * vm_macro.def: ditto.
22222         * eval_intern.h (exec_event_hooks): fix to check event flags
22224         * eval_intern.h (EXEC_EVENT_HOOK): fix to re-check event flags.
22226         * ext/probeprofiler : added.  this profiler is sampling based
22227           profiler.
22229         * vm.c: add rb_thread_current_status() API for probeprofiler.
22231         * thread.c (rb_thread_execute_interrupts): add comments.
22233 Wed Apr 25 10:36:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22235         * eval_intern.h (PUSH_TAG): no argument now.
22237         * eval.c, eval_error.h, eval_jump.h, eval_load.c, proc.c, thread.c:
22238           ditto.
22240         * thread.c (alloc_event_hook, rb_thread_remove_event_hook): should
22241           return value.
22243 Tue Apr 24 09:33:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22245         * dir.c (do_stat, do_lstat, do_opendir): should not warn ENOTDIR.
22246           [ruby-talk:248288]
22248 Mon Apr 23 22:14:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22250         * ext/extmk.rb ($ruby): add extout directory to include path.
22251           [ruby-core:11003]
22253         * lib/mkmf.rb (libpathflag): not to append RPATHFLAG to current
22254           directory.
22256         * lib/mkmf.rb (init_mkmf): add current directory to default
22257           library path with highest priority.  [ruby-core:10960]
22259         * lib/mkmf.rb (LINK_SO): LIBPATH to be placed before DLDFLAGS.
22261 Fri Apr 20 16:05:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22263         * configure.in (LIBPATHFLAG, RPATHFLAG): no needs to be quoted,
22264           it is done by libpathflag in mkmf.rb.
22266 Fri Apr 20 12:27:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22268         * lib/optparse.rb: fix to override conv proc.
22270 Fri Apr 20 12:21:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22272         * eval.c (ruby_cleanup): fixed access to out of bound, and inverted
22273           the order of errinfos.
22275 Fri Apr 20 10:33:23 2007  Koichi Sasada  <ko1@atdot.net>
22277         * eval_intern.h: add prototypes of rb_sourceline() and
22278           rb_sourcefile().
22280 Fri Apr 20 02:37:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22282         * eval.c (ruby_cleanup): re-send signal.  [ruby-dev:30516]
22284         * eval_error.h (error_handle): no message when exiting by signal.
22286         * intern.h (rb_thread_signal_raise, ruby_default_signal): prototypes.
22288         * signal.c (esignal_init): takes a signal number and an optional
22289           signal name.
22291         * signal.c (interrupt_init): pass SIGINT always.
22293         * signal.c (ruby_default_signal): invoke system default signal
22294           handler.
22296         * signal.c (rb_f_kill): use NUM2PIDT instead of NUM2INT.
22298         * signal.c (rb_signal_exec, trap): handle SIGTERM.  [ruby-dev:30505]
22300         * thread.c (rb_thread_signal_raise): now takes signal number instead
22301           of signal name.
22303         * thread.c (rb_thread_signal_exit): since rb_make_exception() calls
22304           #exception method, rb_class_new_instance() is not needed here.
22306         * yarvcore.h (struct rb_vm_struct), eval_jump.h (terminate_process):
22307           exit_code is no longer stored in VM.
22309 Thu Apr 19 18:37:49 2007  Koichi Sasada  <ko1@atdot.net>
22311         * eval.c, node.h, thread.c, yarvcore.[ch], eval_intern.h:
22312           support set_trace_func (incomplete.  id and klass
22313           don't be passed).  And support Thread#set_trace_func
22314           which hook only specified thread and Thread#add_trace_func
22315           which add new trace func instead of replace old one.
22316           C level API was modified.  See thread.c (logic) and
22317           yarvcore.h (data structures).
22319         * vm.c, vm_macro.def: add hook points.
22321         * compile.c, insns.def: fix "trace" instruction.
22323         * iseq.c, vm_macro.h: add compile option "trace_instruction".
22325         * test/ruby/test_settracefunc.rb: hook "c-return" of set_trace_func.
22327 Thu Apr 19 20:57:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22329         * parse.y (symbol): symbols should be followed by EXPR_ENDARG.
22331         * parse.y (dsym): ditto.
22333         * parse.y (parser_yylex): strings should be followed by
22334           EXPR_ENDARG.
22336         * parse.y (parser_yylex): ditto for numbers.
22338         * parse.y (parser_yylex): EXPR_ENDARG after ']' and '}'.
22340 Thu Apr 19 17:46:36 2007  Koichi Sasada  <ko1@atdot.net>
22342         * lib/optparse.rb: fix to override conv proc.
22344 Wed Apr 18 10:41:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22346         * util.c (ruby_strtod): exponent is radix 10.  [ruby-talk:248272]
22348 Wed Apr 18 02:50:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22350         * yarvcore.c (th_init2): push initial blockptr value for
22351           rb_block_given_p() outside ruby_exec().  [ruby-core:10923]
22353 Wed Apr 18 02:30:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22355         * configure.in (LDFLAGS): prepend -L. instead appending it to
22356           XLDFLAGS.  [ruby-core:10933]
22358         * configure.in (Makefile): remove $U for automake from MISSING.
22359           [ruby-talk:248171]
22361 Mon Apr 16 22:56:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22363         * ext/pty/expect_sample.rb: avoid symbolic link representation for
22364           expect.  a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>.
22365           [ruby-dev:30714]
22367 Mon Apr 16 22:51:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22369         * sample: replace TRUE, FALSE with true, false respectively.
22370           a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>.
22371           [ruby-dev:30713]
22373 Mon Apr 16 17:08:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22375         * lib/optparse.rb (make_switch): do not clobber converter if pattern
22376           has no convert method.  reported by sheepman in [ruby-dev:30709].
22378 Mon Apr 16 16:49:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22380         * ext/stringio/stringio.c (strio_seek): consistent behavior with
22381           IO#seek.  patch by sheepman in [ruby-dev:30710].
22383 Mon Apr 16 16:34:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22385         * parse.y (parser_yylex): should set command_start after block
22386           starting "do"s and braces.  [ruby-core:10916]
22388 Mon Apr 16 10:51:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22390         * enum.c (enum_each_with_index): each_with_index to forward
22391           arguments to each.  [ruby-core:10921]
22393 Mon Apr 16 10:43:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22395         * time.c (time_arg): should allow to specify 24:00.
22396           [ruby-core:10915]
22398 Sun Apr 15 09:12:54 2007  Tadayoshi Funaba  <tadf@dotrb.org>
22400         * lib/date/format.rb: added some zone names.
22402         * lib/date/format.rb (_parse): now interprets doted numerical
22403           dates as a big endian (except dd.mm.yyyy).
22405 Thu Apr 12 17:13:22 2007  Koichi Sasada  <ko1@atdot.net>
22407         * thread.c (mutex_try_lock): check and set owner thread.
22409         * thread_pthread.ci: fix to show error code in error message.
22411 Thu Apr 12 17:11:54 2007  Koichi Sasada  <ko1@atdot.net>
22413         * eval.c (rb_rescue2): restore cfp ([ruby-dev:30582]).
22415 Thu Apr 12 16:06:48 2007  Koichi Sasada  <ko1@atdot.net>
22417         * eval.c (rb_protect): restore cfp ([ruby-dev:30671]).
22419 Thu Apr 12 16:04:31 2007  Koichi Sasada  <ko1@atdot.net>
22421         * compile.c (iseq_compile_each): check node->nd_state == 1, not !0.
22423 Wed Apr 11 16:35:16 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22425         * win32/win32.[ch] (rb_w32_enter_critical, rb_w32_leave_critical): no
22426           need to reject reentrance. removed.
22428         * rubysig.h (RUBY_CRITICAL): follow above changes.
22430         * rubysig.h (TRAP_BEG, TRAP_END): no need to save errno.
22432 Tue Apr 10 17:02:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22434         * win32/win32.c (rb_w32_fclose, rb_w32_close): need to save errno
22435           before calling original fclose()/close().
22437 Tue Apr 10 16:14:22 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22439         * thread_win32.ci (w32_wait_events): check whether interrupt_event is
22440           valid handle or not.
22442         * thread_win32.ci (native_thread_destroy): clear interrupt_event when
22443           close it.
22445 Tue Apr 10 15:53:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22447         * thread_pthread.ci (native_thread_create): initialize sleep_cond.
22448           fixed: [ruby-dev:30675]
22450 Mon Apr  9 18:48:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22452         * thread.c (do_select): ubf_select() is not necessary. interrupt is
22453           checked in the loop.
22455 Mon Apr  9 18:27:26 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22457         * thread.c (do_select): use ubf_select() as UBF on windows.
22459         * win32/win32.c (do_select): shouldn't call catch_interrupt() here.
22460           fixed: [ruby-dev:30674], reported by wanabe.
22462 Mon Apr  9 09:24:32 2007  Shugo Maeda  <shugo@ruby-lang.org>
22464         * lib/net/imap.rb (disconnect): call shutdown for
22465           SSLSocket. Thanks, Technorama Ltd.
22467 Sun Apr  8 13:28:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22469         * compile.c (defined_expr): test arguments of NODE_CALL and so
22470           on as well as NODE_ATTRASGN.  [ruby-core:10886]
22472 Fri Apr  6 10:56:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22474         * ext/openssl/ossl_pkey_ec.c (ossl_ec_key_get_group): get rid of
22475           warning. we are aware of it.
22477 Fri Apr  6 04:00:24 2007  Technorama Ltd.  <oss-ruby@technorama.net>
22479         * ext/openssl/ossl_{bn,x509{attr,cert,name,store}}.c:
22480           Add documentation.
22482 Thu Apr  5 17:59:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22484         * compile.c (defined_expr): support for assignment.
22485           [ruby-core:10867]
22487         * compile.h (ADD_CATCH_ENTRY): removed temporary variable.
22489 Thu Apr  5 15:13:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22491         * ext/openssl/ossl_ssl_session.c (ossl_ssl_session_alloc): should
22492           return value.
22494 Thu Apr  5 14:58:49 2007  Technorama Ltd. <oss-ruby@technorama.net>
22496         * ext/openssl/ossl_pkcs5.c: New module.
22498         * ext/openssl/ossl_{cipher,digest,pkcs7,pkcs12}.c:
22499           Remove redundant module namespace.
22501         * ext/openssl/lib/openssl/{cipher,digest}.rb
22502           Add backwards compatible classes for rearranged classes.
22504         * ext/openssl/ossl_{pkcs7,pkcs12}.c: Add documentation.
22506 Thu Apr  5 00:42:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22508         * error.c (rb_notimplement), io.c (pipe_open): removed definite
22509           articles and UNIX manual section from messages.  [ruby-dev:30690]
22511 Wed Apr  4 17:09:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22513         * io.c (pipe_open): refined the message of NotImplementedError.
22514           [ruby-dev:30685]
22516 Wed Apr  4 12:29:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22518         * error.c (rb_notimplement): should show the name of this func,
22519           not callee.
22521 Wed Apr  4 10:18:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22523         * io.c (popen_exec): should not close close-on-exec FDs.
22524           [ruby-dev:30679]
22526         * io.c (pipe_open): raise NotImplementedError for command "-" on
22527           platforms where fork(2) is not available.  [ruby-dev:30681]
22529 Tue Apr  4 04:17:18 2007  Technorama Ltd. <oss-ruby@technorama.net>
22531         * ext/openssl/ossl_ssl.c: Add documentation.
22533 Tue Apr  3 16:22:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22535         * ext/openssl/extconf.rb: check for functions added in 1.9.
22537         * ext/openssl/ruby_missing.h: check per features instead by
22538           checking version code.  [ruby-core:10845]
22540 Tue Apr  3 16:02:44 2007  Technorama Ltd. <oss-ruby@technorama.net>
22542         * ext/openssl/ossl_bn.c: More documentation.
22544         * ext/openssl/lib/ossl_{pkey,pkey_ec}.[ch]: Add elliptic curves.
22546 Tue Apr  3 15:50:41 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22548         * ext/socket/socket.c (s_recv, s_recvfrom): some systems (such as
22549           windows) doesn't set fromlen if the socket is connection-oriented.
22550           reported by Bram Whillock in [ruby-core:10512] [ruby-Bugs#9061]
22552 Tue Apr  3 09:36:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22554         * ext/openssl/ruby_missing.h: need to include version.h to check
22555           RUBY_VERSION_CODE.
22557 Mon Apr  3 07:10:12 2007  Technorama Ltd. <oss-ruby@technorama.net>
22559         * ext/openssl/ossl_{ssl.[ch],ssl_session.c},
22560           ext/openssl/lib/openssl/lib/openssl/ssl.rb:
22561           New SSL::Session class.  Add session cb's, getter/setters,
22562           config, and statistics methods.
22564 Mon Apr  3 04:00:23 2007  Technorama Ltd. <oss-ruby@technorama.net>
22566         * ext/openssl/{ossl.[ch],ossl_pkey.c} Add documentation.
22568         * ext/openssl/ossl_hmac.c Add reset method.
22570         * ext/openssl/ossl_cipher.c (Cipher#update) Take additional
22571           buffer argument.
22573         * ext/openssl/{ossl_bio.c,ossl_ssl.c,ruby_missing.h}
22574           compatibility with 1.8.
22576 Mon Apr  2 21:55:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22578         * insns.def (throw), thread.c, yarvcore.h (throwed_errinfo): fixed
22579           typo.
22581 Fri Mar 30 11:46:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22583         * win32/win32.c (rb_w32_cmdvector): fixed buffer size. reported by
22584           wanabe [ruby-dev:30672]
22586         * win32/win32.c (init_env, insert, rb_w32_get_environ): use strdup
22587           instead of malloc + strlcpy. suggested by nobu [ruby-dev:30673]
22589 Fri Mar 30 02:29:04 2007  Technorama  <oss-ruby@technorama.net>
22591         * ext/openssl/ossl_{bn,cipher,digest,hmac,rand,pkey_{dh,dsa,rsa}}.c:
22592           Add Documentation for various methods.
22594         * ext/openssl/lib/openssl/cipher.rb: Ditto
22596         * ext/openssl/ossl_bn.c: add lshift! and rshift! methods.
22598         * ext/openssl/ossl_digest.c: GetDigestPtr() also accept a string.
22600 Fri Mar 23 11:28:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22602         * win32/win32.c (init_env, insert, cmdglob, rb_w32_cmdvector,
22603           rb_w32_opendir, rb_w32_readdir, rb_w32_strerror, rb_w32_stati64,
22604           rb_w32_get_environ): use strlcpy() and strlcat().
22606         * win32/win32.c (rb_w32_opendir): use realloc() instead of xrealloc().
22608         * win32/win32.c (rb_w32_closedir): check NULL before free pointers.
22610 Fri Mar 23 00:24:52 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
22612         * lib/shell: commit miss(support for ruby 1.9(YARV) thread model).
22614 Thu Mar 22 13:32:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22616         * win32/Makefile.sub (LIBS): remove an unnecessary library.
22618 Thu Mar 22 10:27:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22620         * test/ruby/test_bignum.rb (test_to_s): add tests for Bignum#to_s.
22622 Wed Mar 21 20:38:06 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22624         * marshal.c (w_short, w_long, w_object): get rid of VC++ warnings.
22626 Wed Mar 21 20:05:07 2007  Koichi Sasada  <ko1@atdot.net>
22628         * compile.c, parse.y, eval.c, intern.h, iseq.c, lex.c, node.h,
22629           proc.c, vm.c, vm_macro.def, vm_macro.def, yarvcore.c, yarvcore.h,
22630           debug.c, debug.h: merge half-baked-1.9 changes.  The biggest change
22631           is to change node structure around NODE_SCOPE, NODE_ARGS.  Every
22632           scope (method/class/block) has own NODE_SCOPE node and NODE_ARGS
22633           represents more details of arguments information.  I'll write a
22634           document about detail of node structure.
22636 Wed Mar 21 17:04:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22638         * bignum.c (rb_big2str0): round up for the most significant digit.
22639           [ruby-core:10686]
22641 Tue Mar 21 08:20:00 2007  Nathaniel Talbott  <ntalbott@ruby-lang.org>
22643         * test/testunit/collector/test_dir.rb: Fixed test/unit tests that
22644           were breaking due to Module#public_instance_methods now
22645           returning a Symbol instead of a String.
22647         * test/testunit/collector/test_objectspace.rb: Ditto.
22649 Tue Mar 20 22:54:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22651         * marshal.c (w_extended): erroneous check condition when dump
22652           method is defined.  [ruby-core:10646]
22654 Tue Mar 20 21:36:47 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
22656         * lib/shell.rb, lib/shell: support for ruby 1.9(YARV) thread model.
22658 Tue Mar 20 16:36:08 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
22660         * distruby.rb: Add zip generation.
22662 Tue Mar 20 16:20:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22664         * eval.c (rb_f_callee_name): add __method__ and __callee__ again.
22665           __callee__ need to rework to adopt YARV.  [ruby-core:10671]
22667 Tue Mar 20 11:09:00 2007  Akinori MUSHA  <knu@iDaemons.org>
22669         * lib/set.rb: Revise rdoc.
22671         * lib/set.rb (Set#freeze, Set#taint, Set#untaint): Implement
22672           Set#freeze, Set#taint, and Set#untaint; requested by: Dan
22673           Hutchings <dan AT moltoagitato.com> in [ruby-bugs:PR#9359].
22675 Tue Mar 20 09:13:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22677         * process.c (rb_fork): flush stdouts always before fork(2).
22678           fixed: [ruby-dev:30612]
22680 Tue Mar 20 01:38:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22682         * thread.c (thread_start_func_2): store the result of first_func
22683           as well as first_proc.
22685         * thread.c (thread_create_core): block is not used if first_func
22686           is given.
22688 Mon Mar 19 16:58:52 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22690         * missing/{strlcat,strlcpy}.c, missing.h: new functions.
22692         * LEGAL: add copyright notice about above files.
22694         * configure.in: check whether strlcat and strlcpy are exist or not.
22696         * {bcc32,win32,wince}/Makefile.sub: use above files.
22698 Mon Mar 19 14:12:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22700         * lib/matrix.rb (Matrix::inverse_from): adding partial pivoting to
22701           the Gauss-Jordan algorithm, making it stable.  a patch from
22702           Peter Vanbroekhoven.  [ruby-core:10641]
22704 Mon Mar 19 12:13:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22706         * regparse.c, etc.: K&R to ANSI code cleanup patch from Stefan
22707           Huehner <stefan at huehner.org>.  [ruby-core:10543]
22709 Mon Mar 19 11:27:13 2007  Minero Aoki  <aamine@loveruby.net>
22711         * lib/net/protocol.rb (rbuf_read): extend buffer size for speed.
22713 Sun Mar 18 08:31:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22715         * win32/dir.h, win32/win32.c (rb_w32_opendir, rb_w32_readdir,
22716           rb_w32_closedir): get rid of possible buffer-overflows.
22718 Sat Mar 17 19:10:39 2007  Kouhei Sutou  <kou@cozmixng.org>
22720         * lib/rss, test/rss:
22721         - supported Atom.
22722         - bumped version 0.1.6 to 0.1.7.
22723         * sample/rss/convert.rb: added new sample.
22725 Fri Mar 16 22:32:20 2007  Minero Aoki  <aamine@loveruby.net>
22727         * lib/net/pop.rb: change default verification mode from
22728           VERIFY_PEER to VERIFY_NONE because most POPS server does not have
22729           true certification.
22731 Fri Mar 16 22:19:24 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22733         * ext/win32ole/win32ole.c: add WIN32OLE#ole_activex_initialize,
22734           a little bit supporting ActiveX control. [ruby-talk:241188]
22736 Fri Mar 16 22:16:58 2007  Minero Aoki  <aamine@loveruby.net>
22738         * lib/net/http.rb: merge Ruby-SSPI patch contributed by Justin
22739           Bailey.
22741         * ext/Win32API/lib/win32/sspi.rb: new file.
22743 Wed Mar 14 12:30:00 2007  Shigeo Kobayashi  <shigeo@tinyforest.jp>
22745         * ext/bigdecimal/bigdecimal.c: BigDecimal("-.31") is now
22746           treated as ("-0.31") not as ("0.31").
22748 Tue Mar 13 19:04:30 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
22750         * lib/sync.rb: support for ruby 1.9(YARV) thread model.
22752 Tue Mar 13 09:25:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22754         * common.mk (clear-installed-list): separated from install-prereq.
22756 Tue Mar 13 07:23:20 2007  Shugo Maeda  <shugo@ruby-lang.org>
22758         * lib/monitor.rb (mon_try_enter): call @mon_muetx.try_lock.
22759           Thanks, Keiju ISHITSUKA. [ruby-dev:30507]
22761 Tue Mar 13 02:42:58 2007  Akinori MUSHA  <knu@iDaemons.org>
22763         * lib/cgi.rb (CGI::header): IIS >= 5.0 does not need the nph
22764           assumption any more; submitted by MIYASAKA Masaru <alkaid AT
22765           coral.ocn.ne.jp> in [ruby-dev:30537].
22767 Mon Mar 12 10:53:28 2007  Akinori MUSHA  <knu@iDaemons.org>
22769         * ext/openssl/ossl_asn1.c (Init_ossl_asn1): Let rdoc know about
22770           externally defined modules; submitted by Technorama
22771           Ltd. <oss-ruby AT technorama.net> in [ruby-bugs:PR#4704].
22773         * ext/openssl/ossl_bn.c (Init_ossl_bn): Ditto.
22775         * ext/openssl/ossl_cipher.c (Init_ossl_cipher): Ditto.
22777         * ext/openssl/ossl_digest.c (Init_ossl_digest): Ditto.
22779         * ext/openssl/ossl_hmac.c (Init_ossl_hmac): Ditto.
22781         * ext/openssl/ossl_pkey.c (Init_ossl_pkey): Ditto.
22783         * ext/openssl/ossl_pkey_dh.c (Init_ossl_dh): Ditto.
22785         * ext/openssl/ossl_pkey_dsa.c (Init_ossl_dsa): Ditto.
22787         * ext/openssl/ossl_pkey_rsa.c (Init_ossl_rsa): Ditto.
22789         * ext/openssl/ossl_rand.c (Init_ossl_rand): Ditto.
22791         * ext/openssl/ossl_ssl.c (Init_ossl_ssl): Ditto.
22793 Sun Mar 11 18:42:01 2007  Akinori MUSHA  <knu@iDaemons.org>
22795         * misc/ruby-mode.el (ruby-block-end-re): Support for the
22796           experimental ';;' terminator had been dropped.
22798 Sun Mar 11 05:45:46 2007  Akinori MUSHA  <knu@iDaemons.org>
22800         * misc/README, misc/rdebug.el: Add rdebug.el, Emacs ruby-debug
22801           interface based on rubydb3x.el; submitted by Martin Nordholts
22802           <enselic AT gmail.com> in [ruby-bugs:PR#9023].
22804 Sat Mar 10 07:20:28 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22806         * ext/win32ole/win32ole.c: add WIN32OLE_TYPELIB#library_name,
22807           WIN32OLE_TYPELIB#visible?.
22809         * test/win32ole/test_win32ole_typelib.rb: ditto.
22811 Thu Mar  8 09:17:59 2007  Minero Aoki  <aamine@loveruby.net>
22813         * compile.c: iseq_compile -> rb_iseq_compile.
22815         * iseq.c: ditto.
22817         * intern.h: provide function prototype of Init_jump.
22819         * eval_jump.h (Init_jump): declare function type.
22821         * thread.c: platform-dependent functions should be surrounded by #ifdef.
22823         * iseq.c (iseq_data_to_ary): remove unused variable.
22825         * compile.c (set_arguments): ditto.
22827         * thread.c (set_unblock_function): ditto.
22829         * thread_pthread.ci: reduce printf warning.
22831         * vm_dump.c: ditto.
22833 Tue Mar  6 16:35:04 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
22835         * lib/shell/process-controller.rb: fix thread synchronization problem for [ruby-dev:30477].
22837 Tue Mar  6 11:53:25 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
22839         * ext/tk/sample/irbtkw.rbw: fails to exit process.
22841 Tue Mar  6 10:23:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22843         * runruby.rb: added --pure (turned on by default) and --debugger
22844           options.
22846 Mon Mar  5 09:19:33 2007  Minero Aoki  <aamine@loveruby.net>
22848         * lib/timeout.rb (Timeout.timeout): should return the block value
22849           always.
22851         * lib/timeout.rb (Timeout.timeout): should yield sec argument
22852           always.
22854         * lib/timeout.rb (Timeout.timeout): fix document.
22856 Mon Mar  5 09:16:40 2007  Minero Aoki  <aamine@loveruby.net>
22858         * lib/net/smtp.rb: support automatic STARTTLS.
22860         * lib/net/smtp.rb: check server advertisement.
22862         * lib/net/smtp.rb: introduce new class SMTP::Response.
22864         * lib/net/smtp.rb (getok): should not use sprintf.
22866         * lib/net/smtp.rb (get_response): ditto.
22868         * lib/net/protocol.rb: reduce syntax warning on 1.9.
22870 Mon Mar  5 07:13:28 2007  Minero Aoki  <aamine@loveruby.net>
22872         * lib/net/smtp.rb: reconstruct SMTPS/STARTTLS interface.  New
22873           interface is incompatible from current 1.9 interface at all.
22875         * lib/net/smtp.rb: All SSL-related class methods are removed; use
22876           instance methods instead.
22878         * lib/net/smtp.rb: rename methods: *ssl -> *tls (with alias
22879           "ssl").
22881         * lib/net/smtp.rb: rename methods: *tls -> *starttls.
22883 Mon Mar  5 01:36:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22885         * parse.y (parser_yylex), win32/win32.c (rb_w32_utime): fixed
22886           indentation broken at YARV merger.
22888 Sun Mar  4 23:41:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22890         * file.c (rb_stat_uid, rb_stat_gid, eaccess): use rb_uid_t and
22891           rb_gid_t instead of int.
22893         * file.c (rb_stat_s_utime): fixed a commit miss for the platforms
22894           where utimes() does not exist.
22896         * lib/fileutils.rb (touch): ditto.
22898 Sun Mar  4 14:46:56 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
22900         * util.c (push_element): should return a int value.
22902 Sun Mar  4 01:01:25 2007  Akinori MUSHA  <knu@iDaemons.org>
22904         * lib/set.rb (Set#^, Set#&): Correct documentation.  Those methods
22905           return sets, not arrays; noted by Oliver Frank Wittich <nietz AT
22906           mangabrain.de>.
22908 Sat Mar  3 22:54:33 2007  Minero Aoki  <aamine@loveruby.net>
22910         * lib/fileutils.rb (touch): last #touch change causes error when
22911           :mtime option was not given.
22913 Sat Mar  3 22:51:29 2007  Minero Aoki  <aamine@loveruby.net>
22915         * lib/fileutils.rb (mv): could not move directory between
22916           different file systems. [ruby-dev:30411]
22918 Sat Mar  3 22:37:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22920         * file.c (rb_file_s_utime): allow nil to set the current time.
22922         * lib/fileutils.rb (touch): ditto, and added :mtime and :nocreate
22923           options.  fixed: [ruby-talk:219037]
22925 Sat Mar  3 15:52:26 2007  Akinori MUSHA  <knu@iDaemons.org>
22927         * object.c (instance_variable_get): Restore rdoc markups lost in
22928           the last commit.
22930 Fri Mar  2 21:17:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22932         * ext/win32ole/win32ole.c (get_ptr_of_variant, ole_set_safe_array,
22933           ole_val2ptr_variant, ole_val2olevariantdata, ole_variant2val,
22934           ): fix some bugs of WIN32OLE_VARIANT.new when variant type is
22935           VT_ARRAY|VT_BSTR or VT_BYREF.
22937         * ext/win32ole/win32ole.c (folevariant_s_array, folevariant_initialize):
22938           WIN32OLE_VARIANT#[], WIN32OLE_VARIANT#[]=, WIN32OLE_VARIANT#value=
22939           is defined as instance method of WIN32OLE_VARIANT.
22941         * test/win32ole/test_win32ole_variant.rb: add some test for
22942           VT_ARRAY, VT_BYREF variant type.
22944 Fri Mar  2 07:58:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22946         * object.c (rb_obj_ivar_set): RDoc updated according to a
22947           suggestion from Brian Candler <B.Candler AT pobox.com>.
22948           [ruby-core:10469]
22950 Thu Mar  1 21:38:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22952         * parse.y (stmt, arg): should not omit lhs of OP_ASGN1 even if
22953           empty.  [ruby-dev:30455]
22955 Thu Mar  1 02:55:25 2007  Akinori MUSHA  <knu@iDaemons.org>
22957         * ext/digest/digest.c (get_digest_base_metadata): Allow inheriting
22958           Digest::Base subclasses, which was unintentionally made
22959           impossible while restructuring Digest classes.
22961 Thu Mar  1 02:05:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22963         * mkconfig.rb (patchlevel): read from version.h.
22965 Wed Feb 28 21:15:00 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
22967         * configure.in (ac_cv_func_fcntl): fcntl support for MinGW.
22969         * missing/flock.c: workaround for MinGW.
22971 Wed Feb 28 20:51:32 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
22973         * pack.c (pack_unpack): properly ignore non-base64 octets such as
22974           UTF-8 encoded BOMs; submitted by SOUMA Yutaka <holon@radastery.jp>
22975           to fix [ruby-core:10437]
22977 Wed Feb 28 18:31:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22979         * ext/openssl/extconf.rb: no need to check unistd.h and sys/time.h.
22980           they are already checked at configure.
22981           reported by KOBAYASHI Yasuhiro [ruby-list:43225]
22983 Wed Feb 28 18:23:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22985         * lib/mkmf.rb ($DEFLIBPATH): default library paths ($(topdir), etc)
22986           should be the first elements of library paths list.
22987           reported by KOBAYASHI Yasuhiro [ruby-list:43225]
22989 Wed Feb 28 10:33:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22991         * Makefile.in, configure.in, */Makefile.sub (THREAD_MODEL): system
22992           specific thread model.
22994         * compile.h, regint.h, vm.h, array.c: removed unnecessary #include.
22996 Wed Feb 28 04:03:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22998         * enum.c (take_i): small cosmetic / documentation patch from
22999           Tadashi Saito <shiba AT mail2.accsnet.ne.jp>. [ruby-dev:30446]
23001 Wed Feb 28 01:20:18 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23003         * test/{dbm,gdbm}/test_{dbm,gdbm}.rb: shouldn't use host_os. use
23004           target_os instead. reported by KOBAYASHI Yasuhiro [ruby-list:43225]
23006 Wed Feb 28 00:08:11 2007  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
23008         * mkconfig.rb (RbConfig): add CONFIG['PATCHLEVEL']
23010         * common.mk: new target dist
23012         * distruby.rb: new file
23014 Tue Feb 27 22:18:45 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
23016         * configure.in (--enable-auto-image-base): avoid the necessity to
23017           rebase the shared libs as much as possible;
23018           submitted by Corinna Vinschen <spam at vinschen.de> in
23019           [ruby-talk:240964].
23021 Tue Feb 27 21:36:47 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
23023         * util.c (__crt0_glob_function): use ruby_glob() instead of rb_globi().
23025 Tue Feb 27 21:33:04 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
23027         * configure.in (ac_cv_func_setrlimit): workaround for djgpp.
23029 Tue Feb 27 20:35:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23031         * common.mk (error.c, process.c): depend on yarvcore.h and rubysig.h.
23033 Tue Feb 27 19:26:31 2007  Akinori MUSHA  <knu@iDaemons.org>
23035         * ext/nkf/nkf.c (rb_str_resize, rb_nkf_kconv, rb_nkf_guess1,
23036           rb_nkf_guess2): Silence warnings regarding char * vs. unsigned
23037           char * mismatch; submitted by Lyle Johnson
23038           <lyle.johnson@gmail.com> in [ruby-core:10416].
23040 Tue Feb 27 19:15:01 2007  Akinori MUSHA  <knu@iDaemons.org>
23042         * lib/base64.rb (Base64::b64encode): Fix documentation; submitted
23043           by David Symonds <dsymonds@gmail.com> in [ruby-core:10432].
23045 Tue Feb 27 18:59:42 2007  Akinori MUSHA  <knu@iDaemons.org>
23047         * ext/bigdecimal/bigdecimal.c (BigDecimal_load): Silence warnings
23048           regarding char * vs. unsigned char * mismatch; submitted by Lyle
23049           Johnson <lyle.johnson@gmail.com> in [ruby-core:10416].
23051         * ext/digest/sha1/sha1ossl.c (SHA1_Finish): Ditto.
23053         * ext/digest/rmd160/rmd160ossl.c (RMD160_Finish): Ditto.
23055         * ext/digest/digest.c (rb_digest_base_finish,
23056           rb_digest_base_update): Ditto.
23058 Tue Feb 27 18:12:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23060         * enum.c (enum_take): new method.  [ruby-dev:30407]
23062         * enum.c (enum_drop): ditto.
23064 Tue Feb 27 07:47:24 2007  Koichi Sasada  <ko1@atdot.net>
23066         * yarvcore.h, vm.h: rename th_invoke_yield() to th_yield().
23068         * blockinlining.c: ditto.
23070         * eval.c: ditto.
23072         * vm.c, insns.def: rename th_invoke_yield_cfunc()
23073           to th_yield_with_cfunc().
23075         * yarvcore.h, yarvcore.c: rename theYarvVM to ruby_current_vm and
23076           yarvCurrentThread to ruby_current_thread.  remove yarvVMArray.
23078 Tue Feb 27 00:45:23 2007  Minero Aoki  <aamine@loveruby.net>
23080         * test/ruby/test_optimization.rb: restore method before calling
23081           assert_equal.
23083 Mon Feb 26 00:58:39 2007  Koichi Sasada  <ko1@atdot.net>
23085         * yarvcore.h: add rb_thread_t#top_wrapper, top_self.
23087         * eval_load.c (rb_load): support eval in wrapper module
23088           (load(file, true)).
23090         * eval.c: ditto.
23092         * eval_jump.h: ditto.
23094         * iseq.c: ditto.
23096         * vm.c: ditto.
23098         * yarvcore.c: ditto.
23100         * insns.def: add a empty line.
23102 Mon Feb 26 00:54:36 2007  Koichi Sasada  <ko1@atdot.net>
23104         * common.mk: change "gdb" rule.  You can debug miniruby with
23105           $(srcdir)/test.rb on gdb by this rule (type "make gdb").
23106           If you write break points to "breakpoints.gdb" on $srcdir,
23107           gdb runs with this file.
23109 Sun Feb 25 11:46:58 2007  Koichi Sasada  <ko1@atdot.net>
23111         * win32/Makefile.sub: enable -Zi (debug) option.
23113 Sun Feb 25 11:38:40 2007  Koichi Sasada  <ko1@atdot.net>
23115         * ruby.h: define RUBY_VM macro and remove NATIVETHREAD* macros.
23117         * intern.h: ditto.
23119         * signal.c (posix_signal): remove unused function
23120           posix_nativethread_signal().
23122 Sun Feb 25 11:31:13 2007  Koichi Sasada  <ko1@atdot.net>
23124         * thread.c (rb_thread_run): fix to ANSI style.
23126 Sun Feb 25 11:09:16 2007  Minero Aoki  <aamine@loveruby.net>
23128         * bootstraptest/runner.rb: show source code in error message.
23130 Sun Feb 25 09:39:50 2007  Koichi Sasada  <ko1@atdot.net>
23132         * yarvcore.h:
23133           rename:
23134             rb_iseq_t#file_name -> filename
23135             rb_iseq_t#local_tbl -> local_table
23136           add:
23137             rb_iseq_t#local_table_size
23139         * compile.c: separate local_table_size and local_size
23140           (local variable size)
23142         * blockinlining.c: apply above rename.
23144         * compile.h: ditto.
23146         * eval.c: ditto.
23148         * iseq.c: ditto.
23150         * proc.c: ditto.
23152         * vm.c: ditto.
23154         * vm_dump.c: ditto.
23156 Sun Feb 25 10:27:17 2007  Minero Aoki  <aamine@loveruby.net>
23158         * bootstraptest/runner.rb: add lib/ to load path.
23160 Sat Feb 25 10:16:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23162         * rubyio.h (HAVE_RB_IO_T): macro to tell if rb_io_t is defined.
23164 Sat Feb 24 19:39:16 2007  Minero Aoki  <aamine@loveruby.net>
23166         * common.mk: new target "btest", to run bootstraptests.
23168 Sat Feb 24 19:30:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23170         * file.c, gc.c, io.c, ruby.h, rubyio.h, win32/win32.h (rb_io_t):
23171           renamed from OpenFile.
23173         * ext/dl/cptr.c, ext/io/wait/wait.c, ext/openssl/ossl.h,
23174           ext/openssl/ossl_bio.c, ext/openssl/ossl_ssl.c, ext/pty/pty.c,
23175           ext/readline/readline.c, ext/socket/socket.c: ditto.
23177 Sat Feb 24 19:28:23 2007  Minero Aoki  <aamine@loveruby.net>
23179         * bootstraptest/runner.rb: new option -v,--verbose.
23181 Sat Feb 24 18:55:50 2007  Minero Aoki  <aamine@loveruby.net>
23183         * yarvtest/test_method.rb: removed (merged to bootstraptest).
23185         * yarvtest/test_class.rb: ditto.
23187 Sat Feb 24 18:44:39 2007  Minero Aoki  <aamine@loveruby.net>
23189         * bootstraptest/test_class.rb: new file.
23191         * bootstraptest/test_method.rb: add tests.
23193 Sat Feb 24 18:44:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23195         * intern.h (rb_thread_blocking_region): add prototype.
23197         * file.c (rb_thread_flock, rb_file_flock): use UBF feature.
23199         * process.c (rb_waitpid_blocking, rb_waitpid): use UBF feature.
23201         * thread.c (rb_thread_debug): added runtime debugging flag.
23203         * thread.c (BLOCKING_REGION): restore previous UBF.
23205         * thread.c (rb_thread_blocking_region): default UBF to interrupt
23206           in system dependent way by RB_UBF_DFL.
23207           + ubf_select() on posix system
23208           + ubf_handle() on Win32
23209           + none on cygwin
23211         * thread_win32.ci (rb_w32_wait_events_blocking): blocking version.
23213         * win32/win32.c (waitpid): use rb_w32_wait_events_blocking().
23215 Sat Feb 24 17:45:48 2007  Minero Aoki  <aamine@loveruby.net>
23217         * parse.y (f_arg, opt_f_block_arg): ripper should export VALUE.
23219 Sat Feb 24 16:52:55 2007  Minero Aoki  <aamine@loveruby.net>
23221         * bootstraptest/runner.rb: fix syntax error.
23223 Sat Feb 24 16:51:09 2007  Minero Aoki  <aamine@loveruby.net>
23225         * bootstraptest/runner.rb: new option --help.
23227 Sat Feb 24 16:47:33 2007  Minero Aoki  <aamine@loveruby.net>
23229         * bootstraptest: new test suite.
23231         * bootstraptest/runner.rb: new file.
23233         * bootstraptest/test_literal.rb: new file.
23235         * bootstraptest/test_method.rb: new file.
23237 Sat Feb 24 16:29:15 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23239         * win32/win32.c (StartSocket): remove unnecessary code.
23241 Sat Feb 24 16:04:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23243         * parse.y (struct local_vars): remove unused nofree member from
23244           struct.
23246         * parse.y (parser_free): ditto.
23248 Sat Feb 24 15:57:19 2007  Shugo Maeda  <shugo@ruby-lang.org>
23250         * lib/thread.rb (ConditionVariable#broadcast): use Mutex
23251           instead of Thread.exclusive.
23253         * lib/monitor.rb (MonitorMixin#mon_exit): unset @mon_owner
23254           before calling Mutex#unlock.
23256 Sat Feb 24 15:51:45 2007  Minero Aoki  <aamine@loveruby.net>
23258         * parse.y (program): remove useless assignment to reduce warning.
23260 Sat Feb 24 15:41:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23262         * parse.y (lambda): remove unused clause from the rule to stop
23263           warning.
23265 Sat Feb 24 15:41:22 2007  Shugo Maeda  <shugo@ruby-lang.org>
23267         * lib/thread.rb: do not redefine Mutex#synchronize.
23269 Sat Feb 24 15:14:02 2007  Shugo Maeda  <shugo@ruby-lang.org>
23271         * lib/monitor.rb: rewritten using Mutex/ConditionVariable.
23273 Sat Feb 24 13:25:32 2007  Koichi Sasada  <ko1@atdot.net>
23275         * lib/soap/mapping/factory.rb: catch up with spec changes (return
23276           Symbols instead of Strings).
23278         * lib/soap/mapping/mapping.rb: ditto.
23280 Sat Feb 24 10:49:55 2007  Koichi Sasada  <ko1@atdot.net>
23282         * parse.y, node.h, compile.c: change node tree structure.  a purpose
23283           of this change is to unify argument structure of method and block.
23284           this change prohibits duplicate block parameter name.
23285           new argument information:
23286             NODE_ARGS     [m: int, o: NODE_OPT_ARG, ->]
23287             NODE_ARGS_AUX [r: ID, b: ID, ->]
23288             NODE_ARGS_AUX [Pst: id, Plen: int, init: NODE*]
23289           optarg information:
23290             NODE_OPT_ARGS [idx, expr, ->]
23292         * vm_macro.def: ditto.
23294         * gc.c: ditto.
23296         * iseq.c: ditto.
23298         * compile.h: fix debug function name.
23300         * test/ripper/test_scanner_events.rb: |_,_,foo| -> |_1,_2,foo|
23302         * test/ruby/test_lambda.rb: disable test temporarily.
23304 Sat Feb 24 10:46:28 2007  Koichi Sasada  <ko1@atdot.net>
23306         * test/testunit/test_testcase.rb: catch up with current instance
23307           variable spec.
23309 Sat Feb 24 10:32:59 2007  Koichi Sasada  <ko1@atdot.net>
23311         * common.mk: change vm_macro.def rule.
23313 Sat Feb 24 10:38:05 2007  Minero Aoki  <aamine@loveruby.net>
23315         * ext/racc/cparse/cparse.c (cparse_params_mark): remove useless
23316           rb_gc_mark.  Thanks Tomoyuki Chikanaga. [ruby-dev:30405]
23318 Sat Feb 24 07:31:35 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23320         * ext/win32ole/win32ole.c: add WIN32OLE_VARIANT.array,
23321           WIN32OLE_VARIANT#value=, refactoring.
23323         * test/win32ole/test_win32ole_variant.rb: add some test for
23324           WIN32OLE_VARIANT.array, WIN32OLE_VARIANT#value=.
23326 Fri Feb 23 18:37:55 2007  Minero Aoki  <aamine@loveruby.net>
23328         * test/ruby/test_yield.rb: new test.
23330         * yarvtest/test_yield.rb: removed (moved to test_yield.rb).
23332 Fri Feb 23 18:27:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23334         * thread.c (rb_thread_polling): check interrupts here.
23336         * thread_win32.ci (w32_wait_events): rename from w32_wait_event(), and
23337           now receive multiple event handles.
23339         * win32/win32.c (wait_events, rb_w32_main_context): removed.
23341         * thread_win32.ci (rb_w32_wait_events): new function.
23343         * thread_win32.ci, win32/win32.c (rb_w32_sleep, rb_w32_Sleep): move
23344           from win32/win32.c to thread_win32.ci, and use w32_wait_events().
23346 Fri Feb 23 18:13:22 2007  Minero Aoki  <aamine@loveruby.net>
23348         * test/ruby/test_optimization.rb: new test (merges test_opts.rb).
23350         * yarvtest/test_opts.rb: removed.
23352 Fri Feb 23 16:59:39 2007  Minero Aoki  <aamine@loveruby.net>
23354         * test/ruby/test_assignment.rb: merge yarvtest/test_massign.
23356         * yarvtest/test_massign.rb: removed (merged to
23357           test_assignment.rb).
23359 Fri Feb 23 15:58:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23361         * signal.c (sighandler): need to re-install sighandler on some
23362           platforms.
23364 Fri Feb 23 15:05:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23366         * win32/win32.c (set_pioinfo_extra): simplified.
23368 Fri Feb 23 14:23:20 2007  Minero Aoki  <aamine@loveruby.net>
23370         * test/ruby/test_literal.rb: new test.
23372 Fri Feb 23 12:40:12 2007  James Edward Gray II  <james@grayproductions.net>
23374         * lib/xmlrpc/client.rb (XMLRPC::Client::do_rpc): Make the
23375           Content-Length parameter optional for responses in
23376           xmlrpc/client.rb; suggested by Daniel Berger
23377           <Daniel.Berger@qwest.com> and approved by the maintainer.
23379         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): Add DateTime
23380           support to xmlrpc; approved by the maintainer.
23382 Fri Feb 23 12:24:46 2007  Minero Aoki  <aamine@loveruby.net>
23384         * parse.y (lambda): add ripper event.  This fixes bus error on
23385           "make test-all".
23387         * ext/ripper/extconf.rb: do not stop build.
23389 Fri Feb 23 12:16:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23391         * parse.y: remove dyna_check_gen() prototype.
23393 Fri Feb 23 11:41:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23395         * parse.y, compile.c, gc.c, insns.def, intern.h, iseq.c, node.h,
23396           object.c, string.c, variable.c, vm_macro.def: revert private
23397           instance variable feature, which is postponed until next major
23398           release.
23400         * marshal.c: TYPE_SYMBOL2 removed; MARSHAL_MINOR reverted back to
23401           8th version.
23403 Fri Feb 23 10:53:21 2007  Shugo Maeda  <shugo@ruby-lang.org>
23405         * thread_pthread.ci (native_mutex_lock): do not call
23406           pthread_mutex_trylock().
23408 Fri Feb 23 10:31:16 2007  Minero Aoki  <aamine@loveruby.net>
23410         * dln.c: use dlopen on Mac OS X 10.3 or later.
23412 Fri Feb 23 10:03:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23414         * string.c (rb_str_ord): need not to check string length;  ord
23415           returns a codepoint for the first character in the string.
23417 Wed Feb 21 22:29:45 2007  Akinori MUSHA  <knu@iDaemons.org>
23419         * numeric.c (fix_equal): A bit more optimization.
23421 Wed Feb 21 17:40:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23423         * numeric.c (fix_equal): remove FIX2LONG() to optimize.  suggested
23424           in http://t-a-w.blogspot.com/2007/02/making-ruby-faster.html.
23425           [ruby-talk:240223]
23427         * numeric.c (fix_cmp): ditto.
23429 Wed Feb 21 09:14:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23431         * eval_load.c (rb_require_safe): should restore safe level.
23433 Tue Feb 20 21:19:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23435         * ext/win32ole/win32ole.c (installed_code_page_proc,
23436           ole_variant2val): small refactoring.
23438 Tue Feb 20 15:11:42 2007  Koichi Sasada  <ko1@atdot.net>
23440         * eval.c, vm.c, yarvcore.h: move definition of rb_call_super() to
23441           vm.c from eval.c.  change th_call_super() to static function.
23443 Tue Feb 20 15:08:25 2007  Koichi Sasada  <ko1@atdot.net>
23445         * test/io/nonblock/test_flush.rb: YARV doesn't raise any errors if
23446           another thread close IO object which current thread is blocking with.
23448 Tue Feb 20 15:03:29 2007  Koichi Sasada  <ko1@atdot.net>
23450         * thread.c (do_select, rb_thread_wait_fd_rw): raise sys error if
23451           errno is not 0 and EBADF.
23453 Mon Feb 19 22:15:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23455         * configure.in (RUBY_REPLACE_TYPE): cache convertible type info.
23457         * intern.h (rb_detach_process): use rb_pid_t instead of pid_t.
23459         * ruby.h (PIDT2NUM, NUM2PIDT, UIDT2NUM, NUM2UIDT, GIDT2NUM, NUM2GIDT):
23460           defaulted to conversion using long.
23462 Mon Feb 19 17:14:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23464         * ext/socket/socket.c (unix_peeraddr): wrong syscall name in error
23465           message for #peeraddr. a patch from Sam Roberts
23466           <sroberts at uniserve.com>.  [ruby-core:10366]
23468 Sun Feb 18 22:56:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23470         * ext/etc/etc.c (etc_getgrgid): missed to replace a macro.
23472 Sun Feb 18 19:33:00 2007  Tadayoshi Funaba  <tadf@dotrb.org>
23474         * lib/date/format.rb: updated based on date2 4.0.3.
23476 Sun Feb 18 13:11:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23478         * configure.in (pid_t, uid_t, gid_t): check if defined.
23480         * intern.h, process.c, rubyio.h, ext/etc/etc.c, ext/pty/pty.c: use
23481           rb_{pid,uid,gid}_t instead of plain int.  [ruby-dev:30376]
23483         * ext/etc/extconf.rb (PIDT2NUM, NUM2PIDT, UIDT2NUM, NUM2UIDT, GIDT2NUM,
23484           NUM2GIDT): moved to configure.in.
23486 Fri Feb 16 21:34:33 2007  Koichi Sasada  <ko1@atdot.net>
23488         * object.c (rb_obj_ivar_set/get/defined): fix to check :@_v/C id.
23490         * test/testunit/test_testcase.rb: fix to use instance_variable_get()
23491           to access @_result.
23493 Fri Feb 16 20:59:10 2007  Koichi Sasada  <ko1@atdot.net>
23495         * intern.h: add a prototype of rb_sym_to_s().
23497 Fri Feb 16 19:24:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23499         * math.c (math_log): update document to mention second optional
23500           argument for logarithm base.
23502 Fri Feb 16 19:19:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23504         * parse.y (mrhs): need to append by arg_append().
23505           [ruby-talk:239385]
23507 Fri Feb 16 11:18:21 2007  Eric Hodel  <drbrain@segment7.net>
23509         * lib/.document: Apply patch for irb, e2mmap and README by Hugh Sasse
23510           <hgs at dmu.ac.uk> from [ruby-core:10135]
23512         * lib/prettyprint.rb: Suppress RDoc for PrettyPrint test suite.
23514 Thu Feb 15 20:48:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23516         * win32/win32.c (set_pioinfo_extra): new function for VC++8 SP1
23517           workaround. [ruby-core:10259]
23519         * win32/win32.c (NtInitialize): call above function.
23521 Thu Feb 15 16:25:54 2007  Akinori MUSHA  <knu@iDaemons.org>
23523         * lib/uri/generic.rb (URI::Generic::userinfo): Considering how
23524           `scheme://user:@...', `scheme://:password@...' and
23525           `scheme://:@...' are parsed, an empty user name or password
23526           should be allowed and represented as it is.
23528 Thu Feb 15 01:52:53 2007  Koichi Sasada  <ko1@atdot.net>
23530         * vm.(c|h), yarvcore.(c|h) (yarvGlobalStateVersion): rename to
23531           ruby_vm_global_state_version.
23533 Thu Feb 15 01:50:26 2007  Koichi Sasada  <ko1@atdot.net>
23535         * test/fileutils/test_fileutils.rb (check_singleton): fix to use
23536           symbol instead of string.
23538         * test/io/nonblock/test_flush.rb: enable tests.
23540         * test/xmlrpc/test_webrick_server.rb: ditto.
23542 Thu Feb 15 01:43:45 2007  Koichi Sasada  <ko1@atdot.net>
23544         * lib/delegate.rb: catch up with class local variable (@_v) spec.
23546         * lib/singleton.rb: ditto.
23548 Wed Feb 14 22:52:43 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23550         * ext/win32ole/win32ole.c (ole_variant2val): VC++6 does not
23551           support VT_I8, VT_UI8.
23553 Wed Feb 14 22:10:21 2007  Koichi Sasada  <ko1@atdot.net>
23555         * configure.in: change stack limit to 2MB from 32MB.
23557         * win32/Makefile.sub: ditto.
23559 Wed Feb 14 21:39:36 2007  Akinori MUSHA  <knu@iDaemons.org>
23561         * ext/digest/lib/digest.rb (Digest::self.const_missing): Drop
23562           autoloads for sha2 classes in favor of handling in
23563           const_missing(), to work around a problem exposed on OS X.
23565 Wed Feb 14 21:19:47 2007  Koichi Sasada  <ko1@atdot.net>
23567         * thread_pthread.ci (native_thread_create): adjust 4KB (page size)
23568           alignment.
23570 Wed Feb 14 21:12:36 2007  Koichi Sasada  <ko1@atdot.net>
23572         * thread_pthread.ci (CHECK_ERR): call rb_bug()
23573           instead of printf() and exit().
23575 Wed Feb 14 16:48:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23577         * lib/date/format.rb (Date::Format::Bag::method_missing): need not
23578           to use instance variables corresponding each method; use Hash
23579           instead.
23581 Wed Feb 14 13:12:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23583         * re.c (reg_operand): allow symbols to be operands for regular
23584           expression matches.
23586         * string.c (Init_String): allow Symbol#===.
23588         * lib/date/format.rb (Date::Format::Bag::to_hash): string
23589           added prefixes.
23591 Wed Feb 14 12:58:38 2007  Koichi Sasada  <ko1@atdot.net>
23593         * thread.c (do_select): fix to iterate select().
23594           on cygwin/mswin32, iterate in unblocking region.
23596         * thread.c (rb_thread_select): don't iterate on this function.
23597           (iterate in do_select).
23599 Wed Feb 14 11:39:18 2007  Koichi Sasada  <ko1@atdot.net>
23601         * thread.c (set_unblock_function): fix function interface.
23603 Wed Feb 14 11:12:02 2007  Koichi Sasada  <ko1@atdot.net>
23605         * eval_load.c, yarvcore.h: use rb_vm_t#loaded_features instead of
23606           rb_features (global variable).
23608         * yarvcore.c: mark rb_vm_t#loaded_features.
23610 Wed Feb 14 08:46:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23612         * compile.c (defined_expr): no longer distinguish ordinary local
23613           variables and in-block local variables in defined? value.
23615 Wed Feb 14 03:14:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23617         * lib/uri/generic.rb (URI::Generic::userinfo): should support
23618           empty password.  [ruby-core:10290]
23620         * lib/uri/generic.rb (URI::Generic::set_password): password can be
23621           cleared by nil.  [ruby-core:10290]
23623 Wed Feb 14 03:10:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23625         * parse.y (struct local_vars): no need to warn out-of-scope
23626           variables; remove dnames member from struct.
23628 Wed Feb 14 03:04:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23630         * parse.y: RVarmap no longer used as yytype; removed.
23632         * parse.y (dyna_push_gen): no longer need return value.
23634         * parse.y (dyna_pop_gen): no longer need argument.
23636         * parse.y (local_push_gen): initialize nofree.
23638 Wed Feb 14 00:30:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23640         * ext/socket/socket.c (init_unixsock): path may contain NUL for
23641           abstract unix sockets.  [ruby-core:10288]
23643 Tue Feb 13 02:21:12 2007  Sam Roberts  <sroberts@uniserve.com>
23645         * io.c (rb_f_syscall): Fix buffer overflow with syscall
23646           arguments.  [ruby-bugs:PR#8541]
23648 Mon Feb 12 13:57:30 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23650         * ext/win32ole/win32ole.c (ole_variant2val): support VT_I8, VT_UI8.
23652 Mon Feb 12 11:48:52 2007  Kouhei Sutou  <kou@cozmixng.org>
23654         * lib/rss/dublincore.rb, lib/rss/maker/dublincore.rb: dc_rightses
23655           -> dc_rights_list. dc_rightses still exists for backward
23656           compatibility. [ruby-core:8350]
23658         * test/rss/test_maker_dc.rb: added tests for dc_rights_list.
23660 Sun Feb 11 22:40:17 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23662         * ext/win32ole/win32ole.c (ole_ptrtype2val): ole_type, ole_type_detail
23663           should not return "VARIANT,VARIANT".
23665 Sun Feb 11 22:11:05 2007  Kouhei Sutou  <kou@cozmixng.org>
23667         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#initialize):
23668           kept backward compatibility.
23670 Sun Feb 11 22:10:08 2007  Kouhei Sutou  <kou@cozmixng.org>
23672         * lib/rss/parser.rb (RSS::ListenerMixin#start_else_element): used
23673           const_defined? instead of constants.include?.
23675 Sun Feb 11 18:47:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23677         * ext/win32ole/win32ole.c (ole_val2olevariantdata):
23678           WIN32OLE_VARIANT#new accepts nil when variant type is VT_ARRAY.
23680         * test/win32ole/test_win32ole_variant.rb: ditto.
23682         * ext/win32ole/win32ole.c: small refactoring.
23684 Sun Feb 11 07:42:25 2007  Akinori MUSHA  <knu@iDaemons.org>
23686         * lib/cgi.rb (CGI::QueryExtension::read_multipart): Properly parse
23687           a quoted-string in a Content-Disposition value.
23689 Sat Feb 10 20:21:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23691         * ext/win32ole/win32ole.c: add WIN32OLE#ole_query_interface.
23692           thanks to Mikael Pahmp.
23694         * test/win32ole/test_win32ole.rb: ditto.
23696 Sat Feb 10 17:46:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23698         * common.mk: targets which depend on yarvcore.h now depend on
23699           rubysig.h too.
23701         * yarvcore.h (rb_vm_t): use rb_atomic_t instead of int.
23703 Sat Feb 10 00:13:11 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
23705         * ext/tk/lib/tk.rb: fix typo (TkConfigMethod::__confinfo_cmd,
23706           __conv_keyonly_opts).
23708 Fri Feb  9 12:33:40 2007  Koichi Sasada  <ko1@atdot.net>
23710         * thread_win32.ci (w32_show_error_message): renamed to w32_error.
23711           this function do rb_bug().
23713         * thread_win32.ci (w32_set_event, w32_reset_event, w32_close_handle,
23714           w32_resume_thread): added. fix to use these functions instead calling
23715           win32api directly.
23717         * thread_win32.ci (w32_create_thread): create suspend thread
23718           (caller must call w32_resume_thread()).
23720 Fri Feb  9 11:03:40 2007  Koichi Sasada  <ko1@atdot.net>
23722         * test/ruby/test_readpartial.rb: tests are working on mswin32/cygwin.
23724 Fri Feb  9 05:08:17 2007  Koichi Sasada  <ko1@atdot.net>
23726         * thread.c, thread_pthread.ci, thread_win32.ci (thread_start_func_1):
23727           move cleanup function to thread_start_func_2().
23729         * thread.c, thread_pthread.ci, thread_win32.ci:
23730           add more destruct functions.
23731           (native_thread_destroy() and native_mutex_destroy())
23733         * thread_pthread.ci, thread_pthread.h: make native_mutex_* functions
23734           (check error, etc), it's not macro any more.
23736         * thread_win32.ci (thread_start_func_1): store some values before
23737           running thread (to release these after running thread).
23739         * thread_win32.ci (native_thread_create): fix spaces.
23741 Thu Feb  8 22:44:04 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23743         * ext/win32ole/win32ole.c (ole_set_safe_array, ole_variant2val,
23744           ole_val_ary2variant_ary): fix WIN32OLE_VARIANT.new bug when
23745           1st argument is empty array, and when 2nd argument is
23746           VT_ARRAY|VT_BYREF.
23748         * test/win32ole/test_win32ole_variant.rb: ditto.
23750 Thu Feb  8 22:39:09 2007  Koichi Sasada  <ko1@atdot.net>
23752         * yarvtest/yarvtest.rb: check target command names.
23754 Thu Feb  8 22:31:45 2007  Koichi Sasada  <ko1@atdot.net>
23756         * test/ruby/test_clone.rb: fix to current spec
23757           (Module should not be occur many times in ancestors).
23759 Thu Feb  8 22:26:14 2007  Koichi Sasada  <ko1@atdot.net>
23761         * test/ruby/test_string.rb: ("foo" == :foo) and ("foo" === :foo)
23762           should be false.
23764         * ChangeLog: fix last messages.
23766 Thu Feb  8 22:24:06 2007  Koichi Sasada  <ko1@atdot.net>
23768         * test/ruby/test_module.rb: fix to use Symbol instead of String.
23770         * test/ruby/test_module.rb: remove space before argument parentheses.
23772 Thu Feb  8 22:02:14 2007  Koichi Sasada  <ko1@atdot.net>
23774         * test/ruby/marshaltestlib.rb: eval(sym) -> eval(sym.to_s)
23776 Thu Feb  8 21:35:16 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23778         * test/win32ole/test_propertyputref.rb (setup): fix typo.
23780         * test/win32ole/test_win32ole_event.rb: should not use
23781           InternetExplorer.gohome to test.
23783 Thu Feb  8 21:02:07 2007  Koichi Sasada  <ko1@atdot.net>
23785         * thread.c (GVL_UNLOCK_RANGE): rename to BLOCKING_REGION().
23787         * thread.c (rb_thread_run_parallel): rename to
23788           rb_thread_blocking_region().
23790 Thu Feb  8 15:48:44 2007  Koichi Sasada  <ko1@atdot.net>
23792         * yarvcore.h, thread.c: fix to use pthread on cygwin.
23794         * yarvcore.h, thread.c: move GVL_UNLOCK_BEGIN() and GVL_UNLOCK_END()
23795           from yarvcore.h to thread.c.
23797         * thread.c: change GVL_UNLOCK_RANGE() arguments
23798           (adding ubf as 2nd argument).
23800         * thread.c: fix to use polling in select on cygwin and mswin32.
23802         * thread.c, thread_pthread.ci, thread_win32.ci, yarvcore.h:
23803           rename:
23804           * rb_thread_t#interrupt_function -> unblock_function
23805           * rb_interrupt_function_t -> rb_unblock_function
23806           * some interrupt function name -> ubf_*
23807           * yarv_* -> *
23809 Thu Feb  8 16:08:02 2007  Koichi Sasada  <ko1@atdot.net>
23811         * common.mk: fix to use RUNRUBY instead of BASERUBY if possible.
23813         * common.mk ($(INSNS) rule): remove $(PROGRAM) first.
23815 Thu Feb  8 15:43:05 2007  Koichi Sasada  <ko1@atdot.net>
23817         * process.c: fix to use rb_status_line_set/get/clear().
23819         * eval_intern.h: fix line break.
23821 Thu Feb  8 15:00:14 2007  Koichi Sasada  <ko1@atdot.net>
23823         * blockinlining.c, error.c, eval.c, eval_error.h, eval_intern.h,
23824           eval_jump.h, eval_load.c, eval_safe.h, gc.c, proc.c, signal.c,
23825           thread.c, thread_pthread.ci, thread_win32.ci, vm.c, vm.h,
23826           vm_dump.c, vm_evalbody.ci, yarvcore.c, yarvcore.h:
23827           fix typo (rb_thead_t -> rb_thread_t).
23829         * eval_intern.h: remove unused definitions.
23831         * common.mk: fix around vm_opts.h path
23832           and remove harmful argument passed to insns2vm.rb.
23834 Thu Feb  8 03:11:47 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23836         * lib/cgi.rb (CGI::unescapeHTML): invalid decoding for single
23837           unescaped ampersand.  a patch from Tietew
23838           <tietew+ruby-dev at tietew.net> in [ruby-dev:30292].
23839           fixed: [ruby-dev:30289]
23841 Wed Feb  7 23:25:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23843         * eval.c (specific_eval): suppress warning.
23845         * thread_win32.h: undefine _WIN32 on cygwin.  [ruby-dev:30303]
23847 Wed Feb  7 22:41:34 2007  Koichi Sasada  <ko1@atdot.net>
23849         * eval_intern.h: remove UNSUPPORTED() macro.
23851         * thread.c: fix to define Continuation methods
23852           (they only do rb_notimplement()).
23854 Wed Feb  7 22:33:58 2007  Koichi Sasada  <ko1@atdot.net>
23856         * eval_intern.h, yarvcore.h: remove unused macro definition.
23858 Wed Feb  7 22:30:28 2007  Koichi Sasada  <ko1@atdot.net>
23860         * eval.c: fixed to use ANSI function style.
23862 Wed Feb  7 09:35:32 2007  Koichi Sasada  <ko1@atdot.net>
23864         * this commit is a result of refactoring. only renaming functions,
23865           moving definitions place, add/remove prototypes, deleting
23866           unused variables and removing yarv.h.
23867           This commit doesn't change any behavior of ruby/vm.
23869         * yarv.h, common.mk: remove yarv.h (contents are moved to yarvcore.h).
23871         * error.c, eval_intern.h: include yarvcore.h instead yarv.h
23873         * rename some functions:
23874           * debug.[ch]: debug_*() -> ruby_debug_*()
23875           * iseq.c: iseq_*() -> rb_iseq_*(), ruby_iseq_disasm()
23876           * iseq.c: node_name() -> ruby_node_name()
23877           * vm.c: yarv_check_redefinition_opt_method() ->
23878                   rb_vm_check_redefinition_opt_method()
23880         * some refactoring with checking -Wall.
23882         * array.c: remove rb_ary_ptr() (unused) and remove unused
23883           local variables.
23885         * object.c: add a prototype of rb_mod_module_exec().
23887         * eval_intern.h (ruby_cref): set it inline.
23889         * eval_load.c (rb_load), yarvcore.c: yarv_load() -> rb_load_internal().
23891         * parse.y: add a prototype of rb_parse_in_eval() (in eval.c).
23893         * process.c: add a prototype of rb_thread_stop_timer_thread() (in thread.c).
23895         * thread.c: remove raw_gets() function (unused) and fix some format
23896           mismatch (format mismatches have remained yet. this is todo).
23898         * thread.c (rb_thread_wait_fd_rw): fix typo on label name.
23900         * thread_pthread.ci: comment out codes with USE_THREAD_CACHE.
23902         * vm.c (rb_svar, rb_backref_get, rb_backref_get,
23903           rb_lastline_get, rb_lastline_set) : moved from yarvcore.c.
23905         * vm.c (yarv_init_redefined_flag): add a prototype and rename
23906           yarv_opt_method_table to vm_opt_method_table.
23908         * vm.c (rb_thread_eval): moved from yarvcore.c.
23910         * yarvcore.c: remove unused global variables and fix to use nsdr().
23912 Wed Feb  7 03:39:32 2007  Koichi Sasada  <ko1@atdot.net>
23914         * blockinlining.c, compile.c, compile.h, error.c, eval.c,
23915           eval_intern.h, eval_jump.h, eval_load.c, eval_method.h,
23916           eval_safe.h, gc.c, insnhelper.h, insns.def, iseq.c, proc.c,
23917           process.c, signal.c, thread.c, thread_pthread.ci, thread_win32.ci,
23918           vm.c, vm.h, vm_dump.c, vm_evalbody.ci, vm_macro.def,
23919           yarv.h, yarvcore.h, yarvcore.c: change type and macro names:
23920           * yarv_*_t -> rb_*_t
23921           * yarv_*_struct -> rb_*_struct
23922           * yarv_tag -> rb_vm_tag
23923           * YARV_* -> RUBY_VM_*
23925         * proc.c, vm.c: move functions about env object creation
23926           from proc.c to vm.c.
23928         * proc.c, yarvcore.c: fix rb_cVM initialization place.
23930         * inits.c: change Init_ISeq() order (after Init_VM).
23932         * ruby.h, proc.c: change declaration place of rb_cEnv
23933           from proc.c to ruby.c.
23935 Tue Feb  6 22:06:45 2007  NARUSE, Yui  <naruse@ruby-lang.org>
23937         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c}:
23938           imported nkf 2007-01-28.
23939           * Fixed: can't decode MIME encode JIS string.
23940           * Fixed: Fullwidth-halfwidth conversion.
23941           * Support DoCoMo's and Softbank's EMOJI
23942           * Support CP932, CP5022x, eucJP-ms UDC
23943           * Support UTF-32 encoding
23944           * Support beyond BMP
23945           [ruby-dev:29700] [ruby-dev:29922] [ruby-dev:30144]
23947 Tue Feb  6 20:36:19 2007  Kouhei Sutou  <kou@cozmixng.org>
23949         * lib/rss/rss.rb, lib/rss/parser.rb: followed current Ruby
23950           specification. [ruby-dev:30274]
23952 Tue Feb  6 20:29:44 2007  Kouhei Sutou  <kou@cozmixng.org>
23954         * lib/rss/rss.rb, lib/rss/parser.rb: removed needless code for
23955           backward compatibility.
23957 Tue Feb  6 18:43:17 2007  Shugo Maeda  <shugo@ruby-lang.org>
23959         * lib/net/ftp.rb: moved fixes for EPIPE to the correct
23960           place. [ruby-core:10204]
23962 Tue Feb  6 16:38:08 2007  Koichi Sasada  <ko1@atdot.net>
23964         * vm_opts.h: set properties:
23965           svn:keywords:  Author Date Id Revision
23966           svn:eol-style: native
23968 Tue Feb  6 15:55:46 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23970         * variable.c (ivar_i): need to support class local instance
23971           variables.
23973 Tue Feb  6 15:44:11 2007  Koichi Sasada  <ko1@atdot.net>
23975         * compile.c (iseq_compile_each): fix setting is_local flag.
23977         * yarvtest/test_class.rb: add a test for class local instance variable.
23979 Tue Feb  6 14:15:34 2007  Koichi Sasada  <ko1@atdot.net>
23981         * compile.c, insns.def: remove (get|set)instancevariable2 and add a
23982           operand is_local to (get|set)instancevariable.
23984         * yarvtest/test_class.rb: add a test for class local instance variable.
23986         * parse.y (rb_decompose_ivar2): remove unused variable oid.
23988         * tool/insns2vm.rb: remove needless require.
23990 Tue Feb  6 11:18:41 2007  Shugo Maeda  <shugo@ruby-lang.org>
23992         * lib/net/ftp.rb: check the control connection on EPIPE.
23993           Thanks, Simon Williams. [ruby-core:9547]
23995 Tue Feb  6 11:03:27 2007  Koichi Sasada  <ko1@atdot.net>
23997         * complement last commit.
23999         * common.mk (*.inc): use VPATH.
24001         * vm_opts.h: renamed from vm_opts.h.base.
24003 Tue Feb  6 10:02:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24005         * tool/insns2vm.rb: use vm_opts.h in VPATH.
24007 Tue Feb  6 03:47:58 2007  Koichi Sasada  <ko1@atdot.net>
24009         * proc.c: support Binding#eval.
24011         * yarvtest/test_eval.rb: add a test for above change.
24013 Tue Feb  6 03:13:33 2007  Koichi Sasada  <ko1@atdot.net>
24015         * proc.c: refactoring (remove K&R style, move Binding stuffs from
24016           Init_Proc() to Init_Binding()).
24018 Tue Feb  6 01:07:14 2007  Koichi Sasada  <ko1@atdot.net>
24020         * intern.h: prepare rb_last_status_get() and rb_last_status_set().
24021           Use these functions instead of rb_last_status ([ruby-dev:30264]).
24023         * process.c: define above functions.
24025         * ext/pty/pty.c: use above functions.
24027         * io.c (pipe_finalize): ditto.
24029         * process.c: ditto.
24031 Mon Feb  5 21:26:56 2007  Koichi Sasada  <ko1@atdot.net>
24033         * ruby.h: add a prototype of rb_id2str().
24035 Mon Feb  5 21:06:50 2007  Koichi Sasada  <ko1@atdot.net>
24037         * eval_thread.c, common.mk: remove eval_thread.c.
24039         * yarvcore.c: rename cYarvThread to rb_cThread.
24041         * gc.c: remove YARV_* prefix.
24043         * gc.h: add an include guard and prototype of rb_gc_set_stack_end().
24045         * inits.c: fix to ANSI prototype style and reorder Init_*().
24047         * io.c (pipe_finalize): TODO: comment out last_status.
24049         * process.c, yarvcore.h: fix to use yarv_vm_t#last_status instead of
24050           rb_last_status and make last_status_get() to access $?.
24052         * yarvcore.c (vm_mark): mark yarv_vm_t#last_status.
24054         * ruby.h: add declarations of rb_cISeq and rb_cVM.
24056         * thread.c: move eval_thread.c codes to thread.c and remove yarv_*
24057           function prefix.
24059         * thread.c (thread_start_func_2): use yarv_thread_t#first_func if
24060           it is not null.
24062         * vm.c: fix copyright year.
24064         * yarvcore.c (Init_vm): rename to Init_VM().
24066 Mon Feb  5 04:09:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24068         * eval.c (rb_frame_callee): check if prev_cfp can be accessible.
24069           a patch from Yoshinori Sano <yoshinori.sano at gmail.com> in
24070           [ruby-dev:30252].  solves [ruby-dev:30200] and [ruby-core:9856].
24072 Sun Feb  4 20:34:41 2007  Kouhei Sutou  <kou@cozmixng.org>
24074         * test/rss/rss-assertions.rb: removed needless code for backward
24075           compatibility.
24077 Sun Feb  4 02:22:59 2007  Akinori MUSHA  <knu@iDaemons.org>
24079         * lib/cgi.rb (CGI::QueryExtension::read_multipart): Remove a debug
24080           print.
24082 Sat Feb  3 23:51:58 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24084         * parse.y (rb_compose_ivar2): function to create a new ivar2
24085           symbol from a symbol and a class.  back-ported from matzruby.
24087         * parse.y (rb_decompose_ivar2): reverse function of
24088           rb_compose_ivar2().
24090         * marshal.c (w_symbol): support class local instance variables.
24092         * marshal.c (r_object0): ditto.
24094         * compile.c (defined_expr): ditto.
24096         * compile.c (iseq_compile_each): ditto.
24098         * insns.def: add two new instructions: getinstancevariable2 and
24099           setinstancevariable2.
24101 Sat Feb  3 23:21:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24103         * insns.def (setclassvariable): remove unnecessary operand.
24105         * compile.c (iseq_compile_each): ditto.
24107         * common.mk (insns_info.inc): add dependency for insns_info.inc.
24109 Sat Feb  3 14:32:58 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24111         * ext/win32ole/win32ole.c (ole_val2olevariantdata, ole_val2variant):
24112           fix the bug of WIN32OLE_VARIANT.new when variant type is
24113           VT_ARRAY.
24115         * ext/win32ole/sample/excel1.rb: rewrite using WIN32OLE_VARIANT.
24117         * test/win32ole/test_win32ole.rb: add some test.
24119         * test/win32ole/test_win32ole_variant.rb: ditto.
24121 Sat Feb  3 03:35:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24123         * Makefile.in, */Makefile.sub, common.mk (vmasm): generalized.
24125         * common.mk (runruby, benchmark, benchmark-each, tbench): use
24126           PROGRAM for the file to be built.
24128         * proc.c (yarv_proc_alloc): needs return.
24130         * call_cfunc.ci, compile.c, compile.h, debug.h, eval.c,
24131           eval_error.h, eval_jump.h, eval_load.c, eval_thread.c, gc.c,
24132           insnhelper.h, insns.def, iseq.c, main.c, numeric.c, parse.y,
24133           range.c, ruby.h, signal.c, thread.c, thread_win32.ci, vm.c,
24134           vm.h, vm_dump.c, vm_evalbody.ci, yarvcore.c, yarvcore.h:
24135           fixed indents and non-C90 comments.
24137         * regenc.h: revert to before YARV.
24139         * lib/mkmf.rb (create_makefile): make object files depend on
24140           extconf.h even if depend file exists.
24142 Fri Feb  2 23:39:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24144         * common.mk (bin): add more dependency.  a patch from Tadashi
24145           Saito <shiba at mail2.accsnet.ne.jp>.  [ruby-dev:30245]
24147 Fri Feb  2 18:44:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24149         * insns.def (setclassvariable): remove warn argument.
24151 Fri Feb  2 18:36:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24153         * common.mk (compile.$(OBJEXT)): add config.h to vm.c and
24154           compile.c.
24156 Fri Feb  2 18:27:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24158         * eval.c: remove duplicated global variables rb_cProc and
24159           rb_cBinding.  [ruby-dev:30242]
24161 Fri Feb  2 00:13:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24163         * ruby.h (SYMBOL_P): make Symbol immediate again for performance.
24165         * string.c: redesign symbol methods.
24167 Thu Feb  1 23:25:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24169         * parse.y (rb_id2str): store Strings for operator symbols.
24170           [ruby-dev:30235]
24172 Thu Feb  1 21:04:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24174         * parse.y (assignable_gen): no need to generate NODE_CVDECL.
24176         * compile.c (iseq_compile_each): no NODE_CVDECL.
24178 Thu Feb  1 20:53:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24180         * vm.c (eval_get_cvar_base): destination for class variable access
24181           is now strictly innermost surrounding class or module.  warned
24182           if accessed from toplevel.
24184         * variable.c (rb_cvar_get): new class variable look-up scheme:
24185           1) look up in the class.  2) if the class is singleton attached
24186           to a class (i.e. metaclass) then start look up in the attached
24187           class and its ancestors. 3) otherwise, look-up in ancestors of
24188           the class.
24190         * eval.c (cvar_cbase): destination for class variable access is
24191           the class/module that holds the method, or cbase outside of
24192           methods.
24194 Thu Feb  1 20:31:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24196         * variable.c (rb_cvar_set): remove warn argument.
24198 Wed Jan 31 14:52:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24200         * test/ruby/test_iterator.rb (TestIterator::test_block_given_within_iterator):
24201           add new test.  [ruby-core:10125]
24203 Tue Jan 30 17:01:21 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
24205         * string.c (rb_str_sub_bang): calling rb_str_modify() should be just
24206           before actually modifying the string.
24207           fixed: [ruby-dev:30211] (originally reported by zunda)
24209 Tue Jan 30 13:24:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24211         * numeric.c (int_pred): add Integer#pred corresponding
24212           Integer#succ.  [RCR#5]
24214 Tue Jan 30 12:05:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24216         * mkconfig.rb: autoconf 2.61 support.  [ruby-core:10016]
24218 Mon Jan 29 23:52:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24220         * tool/compile.rb: replace YARVCore by VM class.
24222 Mon Jan 29 17:52:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24224         * lib/date/format.rb (Date::Format::Bag::method_missing): add
24225           prefix to avoid making t class-local instance variable.
24227 Mon Jan 29 21:32:37 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24229         * ext/win32ole/win32ole.c: add WIN32OLE.locale=, WIN32OLE.locale,
24230           WIN32OLE_VARIANT#vartype.
24232         * test/win32ole/test_win32ole.rb: add test for WIN32OLE.locale=,
24233           WIN32OLE.locale.
24235         * test/win32ole/test_win32ole_variant.rb: add test for
24236           WIN32OLE_VARIANT#vartype.
24238 Mon Jan 29 14:14:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24240         * tool/parse.rb: replace YARVCore by VM class.
24241           http://d.hatena.ne.jp/ysano2005/20070128
24243 Sun Jan 28 08:41:49 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24245         * ext/win32ole/win32ole.c: refactoring.
24247 Sat Jan 27 18:36:33 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24249         * ext/win32ole/win32ole.c (ole_val2olevariantdata): bug fix.
24250           WIN32OLE_VARIANT.new check that 1st argument should T_ARRAY
24251           when variant type is VT_ARRAY.
24253         * test/win32ole/test_win32ole_variant.rb: add some test.
24255 Fri Jan 26 23:55:56 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24257         * ext/win32ole/win32ole.c: bug fix of WIN32OLE_VARIANT when variant
24258           type is VT_BYREF|VT_VARIANT.
24260         * test/win32ole/test_win32ole_variant_with_ie.rb: ditto.
24262 Fri Jan 26 12:03:39 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24264         * ext/tk/lib/tk.rb (TkConfigMethod#__confinfo_cmd,
24265           __conv_keyonly_optkeys): make them private [ruby-dev:30074].
24267         * ext/tk/lib/tk/txtwin_abst.rb: fix typo [ruby-dev:30073].
24269         * ext/tk/lib/tk/canvas.rb (TkCanvas#scan_dragto): lack of an argument.
24271         * ext/tk/lib/tk/canvas.rb: clarify the including module name
24272           [ruby-dev:30080].
24274         * ext/tk/lib/tk/scrollable.rb: change primary name of modules
24275           [ruby-dev:30080].
24277 Fri Jan 26 07:48:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24279         * enumerator.c (enumerator_init_copy): need to copy internal
24280           structure on clone and dup.  [ruby-dev:30192]
24282 Wed Jan 24 20:34:51 2007  Kouhei Sutou  <kou@cozmixng.org>
24284         * test/ruby/test_iterator.rb: removed a needless workaround.
24286 Wed Jan 24 18:05:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24288         * misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): fix
24289           regexp font-lock bug.  [ruby-talk:235758]
24291 Tue Jan 23 18:26:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24293         * lib/cgi.rb (CGI::QueryExtension::read_multipart): use == instead
24294           of ===.  [ruby-dev:30176]
24296 Tue Jan 23 15:39:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
24298         * Makefile.in, common.mk, configure.in, */{Makefile.sub, configure.bat,
24299           setup.mak}: add --with-baseruby configure option.
24301 Mon Jan 22 14:57:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24303         * ext/socket/socket.c: fix errors in socket sample code.
24304           [ruby-core:09992]
24306 Sat Jan 20 21:05:18 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24308         * ext/win32ole/win32ole.c (fole_s_set_code_page): WIN32OLE.codepage=
24309           accepts installed codepage.
24311         * test/win32ole/test_win32ole.rb (test_s_codepage_changed): ditto.
24313 Sat Jan 20 11:18:49 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24315         * ext/win32ole/win32ole.c (ole_invoke, ole_invoke2, ole_propertyput):
24316           modify WIN32OLERuntimeError message.
24318         * test/win32ole/test_win32ole.rb: ditto.
24320 Sat Jan 20 06:45:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24322         * eval_proc.c (method_receiver): add new method to get the bound
24323           receiver of the method object.  [ruby-talk:234949]
24325         * eval_proc.c (method_name): new method to get the name of a
24326           method.
24328         * eval_proc.c (method_owner): a new method to get the class or
24329           module that defines the method.
24331 Fri Jan 19 17:12:23 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24333         * ext/win32ole/win32ole.c (Init_win32ole): add WIN32OLE_VARIANT::Empty,
24334           WIN32OLE_VARIANT::Null, WIN32OLE_VARIANT::Nothing.
24336         * test/win32ole/test_win32ole_variant.rb: ditto.
24338         * test/win32ole/test_nil2vtempty.rb(test_openSchema): ditto.
24340 Fri Jan 19 06:53:38 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24342         * ext/win32ole/win32ole.c (olevariant_free): fix memory leak.
24344         * ext/win32ole/win32ole.c (ole_val2olevariantdata):
24345           WIN32OLE_VARIANT.new accepts nil as first argument for some VARIANT
24346           TYPE.
24348         * test/win32ole/test_win32ole_variant.rb: ditto.
24350 Wed Jan 17 17:31:28 2007  Koichi Sasada  <ko1@atdot.net>
24352         * some refactoring around yarvcore and proc.
24354         * eval_proc.c: renamed to proc.c.
24356         * common.mk: ditto.
24358         * yarvcore.h, yarvcore.c: rename or remove some global variables
24359           removed: mYarvCore, mYarvInsns
24360           renamed: cYarvISeq -> rb_cISeq,
24361                    cYarvProc -> rb_cProc, cYarvBinding -> rb_cBinding
24362           ::YarvCore module is removed and ::YarvCore::VM class becomes ::VM.
24363           And change/remove some functions which added with YARV.
24365         * compile.c: ditto.
24367         * eval.c: ditto.
24369         * iseq.c: ditto.
24371         * vm.c: ditto.
24373         * inits.c: rename Init_yarvcore to Init_vm.
24375         * yarvcore.c, proc.c: move some functions and initialization
24376           from yarvcore.c to proc.c.
24378         * intern.h, proc.c: add global function rb_binding_new(void).
24380 Tue Jan 16 17:49:29 2007  Koichi Sasada  <ko1@atdot.net>
24382         * vm.c (eval_search_super_klass): rename to search_super_klass() and
24383           use it by th_call_super().
24385         * insns.def: ditto.
24387 Tue Jan 16 17:48:11 2007  Koichi Sasada  <ko1@atdot.net>
24389         * common.mk: fix ruby script path.
24391 Tue Jan 16 17:39:44 2007  Koichi Sasada  <ko1@atdot.net>
24393         * vm.c (invoke_block): fix to specify self.
24395 Tue Jan 16 12:12:27 2007  Koichi Sasada  <ko1@atdot.net>
24397         * env.h: removed
24399 Tue Jan 16 12:00:06 2007  Koichi Sasada  <ko1@atdot.net>
24401         * eval_proc.c (rb_proc_new): added.
24403         * string.c (sym_to_proc): supported.
24405         * vm.c (invoke_block, th_invoke_yield, th_invoke_proc): fix to support
24406           rb_proc_new.
24408         * yarvcore.c: add a test code.
24410 Sat Jan 13 23:24:59 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24412         * ext/win32ole/win32ole.c (ole_free, ole_type_free,
24413           olemethod_free, olevariable_free, oleparam_free,
24414           ole_event_free): fix memory leak.  [ruby-core:09846]
24416 Wed Jan 10 00:10:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24418         * array.c (rb_ary_replace): use ptr and len of orig instead of
24419           shared.  fixed: [ruby-dev:30116]
24421 Tue Jan  9 17:48:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
24423         * file.c (rb_find_file): should not call fpath_check() with NULL.
24424           fixed: [ruby-core:09867]
24426 Tue Jan  9 12:29:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24428         * ext/etc/etc.c (etc_getpwuid, etc_getgrgid): fix to correctly
24429           convert uid/gid from VALUE.
24431         * ext/etc/etc.c (etc_getpwuid): ditto.
24433 Tue Jan  9 03:54:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24435         * string.c (rb_str_upto): String#upto from empty string makes
24436           infinite loop.  [ruby-core:09864]
24438         * string.c (rb_str_upto): use RSTRING_LEN().
24440 Sun Jan  7 18:36:05 2007  Koichi Sasada  <ko1@atdot.net>
24442         * thread.c (rb_thread_stop_timer_thread(), rb_thread_reset_timer_thread(),
24443           rb_thread_start_timer_thread()): added.
24445         * thread_pthread.ci: add a native_thread_join() and move
24446           rb_thread_reset_timer_thread() definition to thread.c.
24448         * thread_win32.ci: ditto
24450         * process.c: fix before_exec(), after_exec() to stop timer thread
24451           (and restart timer thread if exec failed).  and fix to reset
24452           timer thread information when forked child process starts
24453           (to fix [ruby-core:09822]).
24455 Sun Jan  7 18:28:17 2007  Koichi Sasada  <ko1@atdot.net>
24457         * common.mk: add a "compare" rule and fix MATZRUBY variable
24459 Sun Jan  7 17:47:16 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24461         * test/win32ole/test_win32ole.rb: add test for WIN32OLE#[],
24462           WIN32OLE#[]=.
24464         * ext/win32ole/win32ole.c: update comment for rdoc of
24465           WIN32OLE#[] and WIN32OLE#[]=.
24467 Sun Jan  7 12:13:26 2007  Eric Hodel  <drbrain@segment7.net>
24469         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#find_class_comment):
24470           Look for class and module comments above rb_define_class and
24471           rb_define_module.  Patch by Daniel Berger <djberg96 at gmail.com>
24473 Sun Jan  7 10:32:12 2007  Eric Hodel  <drbrain@segment7.net>
24475         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants):
24476           Properly handle escaping of : in comments.
24477         * test/rdoc/parsers/test_parse_c.rb:
24478           Test RDoc::C_Parser#do_classes and Rdoc::C_Parser#find_class_comment.
24480 Sun Jan  7 09:31:18 2007  Tadayoshi Funaba  <tadf@dotrb.org>
24482         * lib/date/format.rb: updated based on date2 4.0.1.
24484 Sat Jan  6 18:46:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24486         * io.c (rb_io_getline_fast, rb_io_getline): increase lineno
24487           when met the delimiter or EOF.  fixed: [ruby-dev:30081]
24489         * io.c (prepare_getline_args, rb_io_getline_1): split
24490           preparation of arguments and reading.  [ruby-dev:30085]
24492 Sat Jan  6 13:48:36 2007  Koichi Sasada  <ko1@atdot.net>
24494         * insns.def (send): fix to optimize send() with Symbol.
24496         * yarvtest/test_method.rb: add another test.
24498 Sat Jan  6 13:43:55 2007  Koichi Sasada  <ko1@atdot.net>
24500         * common.mk: add PHONY dependency to some rules
24502 Sat Jan  6 11:50:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24504         * io.c (argf_read): fix wrong replacement.  [ruby-dev:30070]
24506 Sat Jan  6 09:10:52 2007  Koichi Sasada  <ko1@atdot.net>
24508         * insns.def: support direct method dispatch with "send" or "funcall".
24509           This means that "obj.send :m" skips "BasicObject#send" invocation
24510           (method frame creation, etc) and "obj.m" invokes directly.
24511           If you make backtrace, there are no entries of "send" method.
24513         * compile.c (iseq_specialized_instruction): fix to support above
24515         * eval.c: ditto (remove "static" from rb_f_send and rb_f_funcall
24517         * yarvcore.c: ditto (add a external IDs for compiler)
24519         * yarvcore.h: ditto (add a VM_CALL_SEND_BIT macro)
24521         * yarvtest/test_method.rb: add tests for above changes
24523         * eval.c: remove unused "Kernel#send" declaration
24525 Sat Jan  6 08:29:17 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24527         * ext/win32ole/win32ole.c (Init_win32ole): add
24528           WIN32OLE::VARIANT::VT_EMPTY, WIN32OLE::VARIANT::VT_NULL
24530         * test/win32ole/test_win32ole_variant_m.rb (test_variant): ditto.
24532 Sat Jan  6 03:49:22 2007  Koichi Sasada  <ko1@atdot.net>
24534         * benchmark/run.rb: change option format
24536         * common.mk: ditto
24538 Fri Jan  5 22:21:08 2007  Koichi Sasada  <ko1@atdot.net>
24540         * benchmark/bm_app_pentomino.rb: use Array#dup instead of
24541           Array#clone
24543         * benchmark/bmx_temp.rb: removed
24545         * benchmark/run.rb: use run.rb instead of run_rite.rb
24547         * common.mk: ditto
24549         * benchmark/run_rite.rb: removed
24551         * common.mk: use $(srcdir)/test.rb to run a test program
24552           with "make run"
24554         * benchmark/bmx_temp.rb: removed and
24555           set svn:ignore (bmx_*.rb) to benchmark/
24557         * test.rb: set svn:ignore
24559 Fri Jan  5 21:03:08 2007  Koichi Sasada  <ko1@atdot.net>
24561         * yarvtest/yarvtest.rb: fix to compare results
24563 Fri Jan  5 20:52:56 2007  Koichi Sasada  <ko1@atdot.net>
24565         * compile.c, compile.h: add ADD_CALL_RECEIVER() macro.
24567         * insns.def (send): use GET_SELF() direct if FCALL.
24569         * eval.c (rb_f_send): check method dispatch type to permit
24570           invoking private method when dispatch type is FCALL/VCALL
24572         * insns.def (opt_ltlt): remove useless statement.
24574         * vm.h: remove unused macros.
24576 Fri Jan  5 20:50:31 2007  Koichi Sasada  <ko1@atdot.net>
24578         * benchmark/run_rite.rb: fix to use readlines instead of
24579           read(...).lines (because 1.8 doesn't have String#lines).
24581 Fri Jan  5 20:28:19 2007  Koichi Sasada  <ko1@atdot.net>
24583         * thread_win32.ci (rb_thread_reset_timer_thread):
24584           added ([ruby-dev:30086]).
24586 Fri Jan  5 20:20:36 2007  Koichi Sasada  <ko1@atdot.net>
24588         * common.mk: add .SUFFIXES rule
24590 Fri Jan  5 15:58:15 2007  Koichi Sasada  <ko1@atdot.net>
24592         * eval_method.h (rb_alias): fix to check search result
24594 Fri Jan  5 13:59:53 2007  Koichi Sasada  <ko1@atdot.net>
24596         * eval_method.h (rb_add_method): fix to check old_node
24598 Fri Jan  5 12:03:07 2007  Koichi Sasada  <ko1@atdot.net>
24600         * compile.c (iseq_compile_each, set_block_local_tbl):
24601           support NODE_LAMBDA (partly).
24603         * sample/test.rb: restore test of NODE_LAMBDA
24605         * test/ruby/test_lambda.rb: ditto
24607 Fri Jan  5 12:31:23 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24609         * thread_pthread.ci (native_sleep): fix tv_nsec overflow.
24611 Thu Jan  4 20:01:29 2007  Koichi Sasada  <ko1@atdot.net>
24613         * common.mk: rename yarv-test-[all/each] to compare-test[/-each].
24614           purpose of "compare-test" rule is to compare ruby (trunk) and
24615           matzruby (branches/matzruby) binary in miniruby level.  MATZRUBY
24616           parameter means an path to miniruby of matzruby binary.  to do this
24617           comparison test, you should build matzruby branch.
24619         * yarvtest/yarvtest.rb: fix to use command line option as
24620           command names to be compared.
24622         * yarvtest/runner.rb: remove a debug output.
24624 Thu Jan  4 19:12:27 2007  Koichi Sasada  <ko1@atdot.net>
24626         * common.mk: fix to use test.rb script in build directory.
24627           ($(srcdir)/test.rb -> test.rb)
24629 Thu Jan  4 17:28:05 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24631         * lib/webrick/utils.rb (WEBrick::Utils::TimeoutHandler#initialize):
24632           Arrays could not be modified in its each block. [ruby-dev:30063]
24634 Thu Jan  4 16:57:14 2007  Koichi Sasada  <ko1@atdot.net>
24636         * yarv_version.h: removed.
24638         * common.mk: remove yarv_version.h from rules
24640         * yarvcore.h (Init_yarvcore): remove useless constants
24642 Thu Jan  4 17:00:06 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24644         * ext/openssl/ossl_asn1.c (Init_ossl_asn1):
24645           OpenSSL::ASN1::ASN1Data#value,#tag,#tag_class and
24646           OpenSSL::ASN1::BitString#unused_bits should be public.
24648 Thu Jan  4 13:45:10 2007  Koichi Sasada  <ko1@atdot.net>
24650         * thread_pthread.ci: fix last changes around PTHREAD_STACK_MIN.
24652 Thu Jan  4 13:42:47 2007  Koichi Sasada  <ko1@atdot.net>
24654         * common.mk: restore changes.
24656 Thu Jan  4 10:33:54 2007  Koichi Sasada  <ko1@atdot.net>
24658         * thread_pthread.ci: fix to skip using PTHREAD_STACK_MIN.
24659           [ruby-dev:30063]
24661 Thu Jan  4 10:30:11 2007  Koichi Sasada  <ko1@atdot.net>
24663         * benchmark/run_rite.rb (bm): fix to use lines.
24665 Wed Jan  3 18:49:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24667         * io.c (rb_io_getline): lineno update condition was wrong.
24668           [ruby-dev:30065]
24670         * io.c (rb_io_getline_fast): ditto.
24672 Wed Jan  3 11:36:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24674         * io.c (ruby_dup): start GC on ENOMEM as well.
24676 Tue Jan  2 10:29:54 2007  Eric Hodel  <drbrain@segment7.net>
24678         * ext/zlib/zlib.c: fix to compile on YARV
24679           ruby_errinfo -> rb_errinfo()
24681 Mon Jan  1 08:07:06 2007  Koichi Sasada  <ko1@atdot.net>
24683         * ext/tk/tcltklib.c: fix to compile on YARV
24684           ruby_errinfo -> rb_errinfo(),
24685           ruby_safe_level -> rb_safe_level().
24687 Mon Jan  1 07:57:17 2007  Koichi Sasada  <ko1@atdot.net>
24689         * test/drb/test_drbssl.rb: fix to skip drb tests.
24691 Mon Jan  1 06:13:11 2007  Eric Hodel  <drbrain@segment7.net>
24693         * lib/rdoc/parsers/c_parser.rb: Make Rdoc accessible.  Update constant
24694           value information.
24696 Mon Jan  1 06:13:11 2007  Eric Hodel  <drbrain@segment7.net>
24698         * ext/bigdecimal/bigdecimal.c: Update constant comments to provide
24699           values for RDoc.
24701 Mon Jan  1 06:05:55 2007  Eric Hodel  <drbrain@segment7.net>
24703         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants):
24704           Allow RDoc comment to give friendly value for rb_define_const.  Patch
24705           by Daniel Berger <djberg96 at gmail.com>, [ruby-patches-7499].
24706         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants): Fix
24707           whitespace handling in constant comments.
24709 Mon Jan  1 00:00:00 2007  Koichi Sasada  <ko1@atdot.net>
24711         * Merge YARV
24713 Sun Dec 31 16:22:48 2006  Eric Hodel  <drbrain@segment7.net>
24715         * array.c: Fix Array#reject.
24717 Sun Dec 31 00:46:25 2006  Tadayoshi Funaba  <tadf@dotrb.org>
24719         * lib/date2.rb: removed.
24721 Sun Dec 31 00:15:13 2006  Tadayoshi Funaba  <tadf@dotrb.org>
24723         * lib/date.rb, lib/date/format.rb: updated based on date2 4.0.
24725 Sat Dec 30 04:38:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24727         * enum.c (enum_each_with_index): reuse array for yield parameters.
24729         * enum.c (enum_min, enum_max): ditto.
24731 Sat Dec 30 04:25:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24733         * enum.c (enum_inject): reuse array for yield parameters.
24735 Sat Dec 30 02:54:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24737         * ext/stringio/stringio.c (strio_gets): accepts limit argument.
24739         * ext/stringio/stringio.c (strio_readline, strio_each,
24740           strio_readlines): ditto.
24742 Sat Dec 30 02:22:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24744         * ext/stringio/stringio.c (strio_getline): add limit capability.
24746         * io.c (rb_io_gets_m): accepts limit argument.  [ruby-talk:231563]
24748         * io.c (rb_io_readline, rb_io_readlines, rb_io_each_line, argf_getline):
24749           ditto.
24751         * io.c (appendline): add limit capability.
24753         * io.c (rb_io_getline_fast, rb_io_getline): ditto.
24755         * io.c (rb_io_getline): small refactoring for DRY.
24757         * io.c (rb_io_s_foreach, rb_io_s_readlines): small refactoring.
24759 Thu Dec 28 15:27:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24761         * lib/cgi.rb (CGI::Cookie::initialize): use Array() again.
24762           [ruby-core:09781]
24764 Wed Dec 27 20:52:32 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24766         * ext/win32ole/win32ole.c: remove WIN32OLE::PROPERTY class.
24768         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
24770 Wed Dec 27 10:04:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24772         * object.c (rb_Array): returns 1-element array if the argument
24773           does not have to_ary nor to_a.
24775 Tue Dec 26 21:02:14 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24777         * test/win32ole/test_folderitem2_invokeverb.rb: The argument
24778           of Shell.NameSpace should not be file path.
24780 Tue Dec 26 06:13:08 2006  Minero Aoki  <aamine@loveruby.net>
24782         * ext/bigdecimal/bigdecimal.c: remove useless method
24783           BigDecimal#!=. [ruby-dev:30050]
24785 Thu Dec 21 15:37:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24787         * string.c (rb_str_slice_bang): rdoc description bug fixed.
24788           [ruby-core:09754]
24790 Wed Dec 20 12:54:31 2006  Koichi Sasada  <ko1@atdot.net>
24792         * Convert CVS repository to Subversion repository.
24794 Mon Dec 18 08:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24796         * lib/cgi.rb (CGI::Cookie::initialize): Array(string) no longer
24797           works.  [ruby-core:09738]
24799 Fri Dec 15 00:19:53 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24801         * win32/Makefile.sub (COMPILE_RULES): latter rule has higher priority.
24803         * lib/mkmf.rb (create_makefile): remove static library before update,
24804           to get rid of sludge of Borland tlib.exe.
24806 Thu Dec 14 18:29:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24808         * ext/readline/readline.c: NetBSD editline does not have
24809           rl_username_completion_function() and rl_completion_matches().
24810           a patch from Takahiro Kambe <taca at back-street.net>.
24811           [ruby-dev:30008]
24813 Thu Dec 14 18:20:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24815         * lib/irb/locale.rb (IRB::Locale::puts): typo fixed.  a patch from
24816           NAKAMURA Usaku <usa@ruby-lang.org>.  [ruby-dev:30012]
24818 Tue Dec 12 23:33:53 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24820         * lib/optparse.rb (Switch#parse_arg, Switch#conv_arg): splat failures.
24822 Mon Dec 11 11:51:10 2006  Akinori MUSHA  <knu@iDaemons.org>
24824         * ext/digest/sha2/lib/sha2.rb: Moved one level up from under
24825           the superfluous subdirectory digest/.
24827 Mon Dec 11 11:46:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24829         * variable.c (rb_define_const): typo fixed.
24831 Mon Dec 11 09:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24833         * string.c (rb_str_aset): index double decode problem.
24834           [ruby-core:09695]
24836 Sat Dec  9 21:39:24 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24838         * eval.c (ruby_cleanup): keep the exception till after END blocks.
24839           [ruby-core:09675]
24841 Sat Dec  9 11:22:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24843         * lib/irb/locale.rb (IRB::Locale::search_file): use File.exist?
24844           instead of File.exists?.  a patch from Yutaka Kanemoto
24845           <kinpoco at gmail.com> in [ruby-dev:30000].
24847 Fri Dec  8 18:11:18 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
24849         * lib/optparse.rb: cannot put :nodoc: before method definition.
24850           put after it.
24852 Fri Dec  8 17:00:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
24854         * bin/rdoc: use File.exist? instead of File.exists?.
24856 Thu Dec  7 23:50:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24858         * object.c (Init_Object): new method Dir.exist?(path).
24859           [ruby-core:09663]
24861         * file.c (Init_File): remove File.exists?; use File.exist?
24862           instead.
24864         * file.c: rename functions to test_* to rb_file_*_p.
24866 Thu Dec  7 09:29:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24868         * lib/weakref.rb (WeakRef::__setobj__): should support
24869           marshaling.  [ruby-talk:228508]
24871 Wed Dec  6 23:58:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24873         * Makefile.in, common.mk (NULLCMD): moved for platforms that empty
24874           command does not run.  fixed: [ruby-dev:29994]
24876         * win32/win32.c (init_stdhandle): redirect unopened IOs to NUL.
24877           [ruby-core:09572]
24879 Tue Dec  5 19:01:42 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
24881         * configure.in (SITE_DIR): fixed to empty RUBY_SITE_LIB in config.h on
24882           NetBSD.  fixed: [ruby-dev:29358]
24884 Tue Dec  5 18:38:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24886         * lib/matrix.rb (Matrix::rank): use quo method to avoid integer
24887           division problem.  [ruby-core:09644]
24889         * lib/matrix.rb (Matrix::rank_e): ditto.
24891 Tue Dec  5 00:59:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24893         * misc/ruby-mode.el (ruby-parse-partial): need to parse "/=" as
24894           self assignment operator, not regex.  [ruby-talk:227324]
24896 Tue Dec  5 00:19:14 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24898         * intern.h, object.c, variable.c (rb_mod_constants): added an optional
24899           flag to search ancestors, which is defaulted to true, as well as
24900           const_defined? and const_get.  [ruby-dev:29989]
24902 Mon Dec  4 23:49:28 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24904         * instruby.rb (install_recursive): get rid of warning.
24906         * lib/optparse.rb (CompletingHash#match): get rid of splat failure.
24908 Mon Dec  4 19:16:39 2006  Akinori MUSHA  <knu@iDaemons.org>
24910         * ext/digest/lib/digest/hmac.rb: Do alias << update.
24912 Mon Dec  4 10:48:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24914         * ruby.h (OFFT2NUM): use LONG2NUM() if sizeof(long) equals to
24915           sizeof(off_t).
24917 Mon Dec  4 08:32:25 2006  Shugo Maeda  <shugo@ruby-lang.org>
24919         * lib/cgi.rb (CGI::QueryExtension::read_multipart): should quote
24920           boundary. JVN#84798830
24922 Sun Dec  3 16:16:53 2006  Akinori MUSHA  <knu@iDaemons.org>
24924         * ext/digest/lib/digest/hmac.rb: Fix problems with update
24925           timing. [Reported by: oss-ruby@technorama.net]
24927 Sat Dec  2 07:33:53 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24929         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::FormData::<<):
24930           HTTPUtils::parse_header() takes a string.  [ruby-dev:29931]
24932         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_header):
24933           String does no longer have each method.
24935         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_form_data):
24936           ditto.
24938 Sat Dec  2 07:09:04 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24940         * ext/openssl/ossl_ocsp.c: OpenSSL::OCSP::OSCPError should be
24941           subclass of OpenSSL::OpenSSLError. [ruby-dev:29980]
24943 Fri Dec  1 16:31:53 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24945         * ext/tk/tcltklib.c: shouldn't run the killed thread at callback.
24946           [ruby-talk: 227408]
24948 Tue Nov 28 17:25:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24950         * array.c (ary_iter_check): should check modification (size
24951           change) during iteration.
24953         * array.c (rb_ary_initialize, rb_ary_shift, rb_ary_unshift,
24954           rb_ary_splice, rb_ary_reverse, rb_ary_sort, rb_ary_delete,
24955           rb_ary_delete_at, rb_ary_reject_bang, rb_ary_replace,
24956           rb_ary_clear, rb_ary_fill, rb_ary_uniq_bang, rb_ary_compact,
24957           rb_ary_shuffle): add iteration check.
24959 Mon Nov 27 09:00:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24961         * string.c (rb_str_ord): typo fixed.  reported from Kornelius
24962           Kalnbach <murphy@rubychan.de>.  [ruby-core:09621]
24964 Sun Nov 26 16:36:46 2006  URABE Shyouhei  <shyouhei@ruby-lang.org>
24966         * version.h: addition of RUBY_PATCHLEVEL.
24967         * version.c: ditto.
24969 Wed Nov 22 16:00:49 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24971         * ext/tk/extconf.rb: support --with-X11/--without-X11 option.
24973         * ext/tk/README.tcltklib: add description about --with-X11-* option
24974           [ruby-talk:225166] and --with-X11/--without-X11 option.
24976         * ext/tk/tkutil/extconf.rb: able to be called manually
24977           [ruby-talk:225950].
24979 Sat Nov 18 23:39:20 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24981         * object.c (rb_obj_tap): a new method.  [ruby-talk:224013]
24983 Wed Nov 15 23:22:54 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24985         * file.c (test_grpowned, rb_stat_grpowned): should honor
24986           supplementary group IDs.  [ruby-core:09546]
24988 Tue Nov  7 18:35:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24990         * eval.c (formal_assign): need to pack rest arg information in
24991           argc.
24993 Tue Nov  7 18:05:01 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24995         * ext/tk/lib/tk/itemconfig.rb: minor bug fix.
24997 Tue Nov  7 17:52:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24999         * class.c (rb_include_module): revert duplicate inclusion of
25000           modules.  [ruby-dev:29793]
25002 Tue Nov  7 17:18:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25004         * eval.c (method_missing): update old argument adjustment.
25006 Tue Nov  7 16:41:21 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25008         * eval.c (when_check): need to splat for NODE_ARGSCAT as well.
25009           [ruby-dev:29860]
25011 Mon Nov  6 22:23:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25013         * string.c (Init_String): remove duplicated definition of
25014           Symbol#to_s.
25016 Mon Nov  6 18:54:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25018         * eval.c (svalue_to_avalue): need to splat but no error.
25020         * eval.c: new macros - YIELD_CALL, YIELD_VALUES.
25022         * eval.c (rb_yield_values): specify YIELD_VALUES.
25024         * eval.c (rb_yield_0): use new macros.
25026         * eval.c (proc_invoke): slightly modified to separate YIELD_CALL
25027           and YIELD_VALUES from YIELD_ARY_ARGS.
25029         * object.c (Init_Object): add nil.to_splat => [].
25031 Mon Nov  6 15:41:55 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
25033         * ext/tk/lib/tk/itemconfig.rb: ext/tk/lib/tk/itemconfig.rb: bug
25034           fix on 'itemconfiginfo' method, and modify to make it easy to
25035           override 'itemconfiginfo' method.
25037         * ext/tk/lib/tkextlib/tile/treeview.rb: support Tile 0.7.8.
25039         * ext/tk/lib/tkextlib/version.rb: [new] add Tk::Tkextlib_RELEASE_DATE
25040           to get the information from scripts.
25042         * ext/tk/lib/tk.rb: load 'tkextlib/version.rb', and update RELEASE_DATE
25044         * ext/tk/lib/tkextlib/SUPPORT_STATUS: update.
25046         * ext/tk/sample/editable_listbox.rb: [new] the listbox with editable
25047           items. It's one of the example about usage of Place geometry manager.
25049         * ext/tk/sample/tktextio.rb: improve the functions of TkTextIO class.
25050           Those are required by 'irbtkw.rbw'.
25052         * ext/tk/sample/irbtkw.rbw: [new] IRB on Ruby/Tk. It doesn't need any
25053           real console. IRB works on a text widget without I/O blocking. That
25054           is, thread switching on IRB will work properly, even if on Windows.
25056 Mon Nov  6 00:42:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25058         * parse.y (arg_dup_check): vid may be nameless internal id.
25060 Sun Nov  5 19:52:19 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25062         * lib/date.rb: updated based on date2 3.9.7.
25064 Sat Nov  4 13:09:31 2006  Shugo Maeda  <shugo@ruby-lang.org>
25066         * lib/net/imap.rb: accept NOMODSEQ. [ruby-core:9002]
25068 Fri Nov  3 00:16:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25070         * ext/socket/socket.c (ruby_getnameinfo__aix): AF_INET6 workaround
25071           for AIX.  a patch from Yutaka Kanemoto <kinpoco AT gmail.com>.
25072           [ruby-dev:29744]
25074 Thu Nov  2 14:19:44 2006  Akinori MUSHA  <knu@iDaemons.org>
25076         * lib/set.rb (Set#^): Fix XOR operation against a container that
25077           holds duplicate values. [ruby-core:9372]
25079 Thu Nov  2 10:00:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25081         * string.c: class Symbol is no longer subclass of String. also
25082           covers [ruby-core:09366]
25084 Thu Nov  2 08:21:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25086         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): Symbol should
25087           come earlier than String.
25089         * lib/soap/mapping/rubytypeFactory.rb (RubytypeFactory::obj2soap):
25090           ditto.
25092         * lib/set.rb (TC_Set::test_s_new): strings are no longer
25093           Enumerable
25095         * lib/soap/property.rb (Property::load): ditto.
25097         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_header): ditto.
25099         * lib/soap/mimemessage.rb (MIMEMessage::Headers::parse): ditto.
25101 Thu Nov  2 09:08:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25103         * array.c: revert lfree shift/unshift boost patch to avoid unknown
25104           memory error.
25106 Wed Nov  1 23:24:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25108         * ruby.h (struct RArray): revert embedding ptr in RVALUE.
25110         * array.c: ditto.
25112 Wed Nov  1 23:01:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25114         * string.c (hash): use Bob Jenkins' hash algorithm.
25116 Wed Nov  1 02:22:31 2006  Akinori MUSHA  <knu@iDaemons.org>
25118         * ext/digest/lib/digest/hmac.rb (Digest::HMAC::update): Minor
25119           optimization.
25121         * ext/digest/digest.c (rb_digest_instance_equal): Allow comparing
25122           a digest instance with another of a different class.
25124 Wed Nov  1 01:05:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25126         * eval.c (rb_call0): fixed bug of zsuper with both of opt and rest.
25127           fixed: [ruby-list:42928]
25129 Tue Oct 31 17:03:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25131         * time.c (time_dup): duplicate the class of original time.
25132           [ruby-core:09357]
25134         * lib/time.rb (Time::make_time, Time::rfc2822, Time::httpdate):
25135           should respect subclasses.  [ruby-core:09357]
25137 Tue Oct 31 16:25:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25139         * array.c (ary_shared_first): should address offset after
25140           ary_shared_array().  [ruby-core:09358]
25142 Mon Oct 30 23:40:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25144         * Makefile.in (miniruby): add XLDFLAGS.
25146         * configure.in (aix): use -bE option for miniruby.  [ruby-dev:29698]
25148         * dir.c (glob_helper): get rid of possible memory leak.
25150         * win32/win32.c (cmdglob, rb_w32_cmdvector, rb_w32_opendir,
25151           rb_w32_get_environ): not to use GC before initialization.
25153 Mon Oct 30 19:28:02 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25155         * bignum.c (rb_big2str0): use better approximation.
25157 Mon Oct 30 18:35:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25159         * bignum.c (rb_big2str0): wrong allocation length.  a patch from
25160           U.Nakamura <usa at garbagecollect.jp> [ruby-dev:29710]
25162 Mon Oct 30 12:34:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25164         * eval.c (rb_eval): fix commit miss.  [ruby-dev:29707]
25166 Mon Oct 30 11:15:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25168         * sprintf.c (rb_str_format): should preserve leading zero
25169           information for negative %b and %x.  [ruby-talk:221347]
25171 Sun Oct 29 19:51:31 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
25173         * regexec.c: invalid offset value was used in STATE_CHECK_BUFF_INIT().
25175 Sat Oct 28 20:13:18 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
25177         * oniguruma.h: Version 4.4.5
25179         * regint.h: ditto.
25181         * regerror.c: ditto.
25183         * regexec.c: ditto.
25185         * regcomp.c ditto.
25187         * regparse.c ditto.
25189 Sat Oct 28 07:56:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25191         * marshal.c (r_object0): missing break.  [ruby-core:09345]
25193 Fri Oct 27 17:30:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25195         * enumerator.c (enum_each_cons): move RETURN_ENUMERATOR() after
25196           argument check.
25198 Thu Oct 26 21:05:48 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
25200         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_verify): should clear error.
25201           (fix http://bugs.debian.org/394336)
25203         * ext/openssl/ossl_ns_spki.c (ossl_spki_initialize): ditto.
25205 Thu Oct 26 15:23:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25207         * enumerator.c: remove by_slice and by_cons.
25209 Thu Oct 26 15:12:12 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25211         * ext/digest/digest.c (Init_digest): typo.
25213 Wed Oct 25 17:16:05 2006  Akinori MUSHA  <knu@iDaemons.org>
25215         * test/digest/test_digest_hmac.rb: added.
25217 Wed Oct 25 16:34:31 2006  Akinori MUSHA  <knu@iDaemons.org>
25219         * ext/digest/test.sh: make this script work again.
25221 Wed Oct 25 07:59:42 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25223         * lib/date/format.rb: updated based on date2 3.9.6.
25224           [ruby-core:09323]
25226 Wed Oct 25 00:58:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25228         * win32/mkexports.rb, win32/resource.rb: use unique variable names.
25230 Tue Oct 24 19:18:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25232         * enumerator.c (enumerator_by_slice): new method added.
25234         * enumerator.c (enumerator_by_cons): ditto.
25236 Tue Oct 24 18:56:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25238         * enumerator.c (enum_each_slice, enum_each_cons): returns
25239           Enumerable::Enumerator if no block is given.  [ruby-dev:29246]
25241         * enumerator.c: remove methods: enum_with_index, enum_slice,
25242           enum_cons.  [ruby-dev:29246]
25244 Tue Oct 24 18:51:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25246         * enum.c (enum_zip): add RETURN_ENUMERATOR() to zip method.
25248 Mon Oct 23 04:30:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25250         * marshal.c (r_object0): use return value from proc given as the
25251           second argument to Marshal#load() to allow value replacement in
25252           the restoring data.
25254 Sun Oct 22 14:48:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25256         * signal.c (Init_signal): avoid duplicated installation of SIGCHLD
25257           handler.
25259 Sun Oct 22 16:47:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25261         * string.c (rb_str_substr): should be infected with only original
25262           string, but not the shared string.  fixed: [ruby-core:09152]
25264         * string.c (rb_str_new4): keep shared string untainted when original
25265           string is tainted.  fixed: [ruby-dev:29672]
25267 Sun Oct 22 07:55:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25269         * string.c (rb_str_upcase, rb_str_downcase, rb_str_downcase,
25270           rb_str_upcase_bang, rb_str_downcase_bang, rb_str_swapcase_bang):
25271           add RDoc description that case conversion to be effective only
25272           in ASCII region.
25274 Sun Oct 22 05:20:34 2006  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
25276         * configure.in: alloca is broken; use C_ALLOCA instead.
25277           [ruby-dev:29416]
25279 Sat Oct 21 17:50:40 2006  Akinori MUSHA  <knu@iDaemons.org>
25281         * ext/digest/lib/digest.rb: Follow the framework updates.
25283 Fri Oct 20 22:00:43 2006  Akinori MUSHA  <knu@iDaemons.org>
25285         * ext/digest/lib/digest/hmac.rb: Complete half-boiled updates.
25287         * ext/digest/sha2/lib/digest/sha2.rb: Fix #initialize_clone().
25289 Fri Oct 20 20:28:37 2006  Akinori MUSHA  <knu@iDaemons.org>
25291         * ext/digest: Prefix C constants with RUBY_ and C type names with
25292           rb_ to avoid name clash in writing extensions.
25294         * ext/digest: Introduce Digest::Class and Digest::Instance for
25295           ease of implementing subclasses and add-ons, inspired by
25296           gotoyuzo.
25298         * ext/digest: The Digest::Instance module now requires and assumes
25299           that any instance be resettable and clonable, and add some
25300           convenient instance methods such as "new()", for creating a new
25301           copy, parameter taking "digest()" and "hexdigest()", for instant
25302           calculation.  These methods make digest instances work just like
25303           digest classes.
25305         * ext/digest/sha2/lib/digest/sha2.rb:
25306           Add the Digest::SHA2 class to wrap up SHA2 variants: SHA256,
25307           SHA384 and SHA512, hoping this module would make a decent
25308           example of a digest subclass written in Ruby.
25310         * ext/digest/lib/digest.rb: Adjust autoload entries for SHA2
25311           classes.
25313         * ext/digest/lib/digest/hmac.rb: Follow the framework updates.
25315 Fri Oct 20 10:47:43 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25317         * lib/mkmf.rb: fixed the bug of handling COMMON_MACROS.
25319 Fri Oct 20 08:42:38 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25321         * common.mk (NULLCMD): dummy command.
25323         * bcc32/Makefile.sub (post-install-*): Borland make cannot ignore
25324           command-less double-colon rules.  [ruby-dev:29676]
25326 Fri Oct 20 00:37:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25328         * bcc32/Makefile.sub ($(LIBRUBY_SO)): execute pre-link hook.
25330         * ext/extmk.rb: workaround for Borland make.
25332 Wed Oct 18 23:02:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25334         * array.c (rb_ary_shift): shorten copy size.  fixed: [ruby-list:42907]
25336         * signal.c (Init_signal): handle SIGTERM.  fixed: [ruby-list:42895]
25338         * win32/win32.c (rb_w32_utime): allow NULL to set the current time.
25339           [ruby-talk:219248]
25341 Wed Oct 18 13:25:50 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25343         * string.c (rb_str_each_line): String#lines now works when a block
25344           is given.  in other words, lines become an alias to each_line.
25345           [ruby-core:09218]
25347         * string.c (rb_str_each_byte): ditto for bytes in place of lines.
25349 Wed Oct 18 00:55:33 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25351         * parse.y (parser_yylex): use particular enums.  [ruby-core:09221]
25353 Tue Oct 17 22:03:08 2006  Minero Aoki  <aamine@loveruby.net>
25355         * lib/erb.rb: String#each was removed, use #each_line instead.
25357 Tue Oct 17 12:27:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25359         * array.c (ary_shared_array): should set NOEMBED flag for a copied
25360           array.
25362 Tue Oct 17 08:04:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25364         * string.c (rb_str_lines): now takes optional argument for the
25365           line separator.
25367         * io.c (rb_io_lines, rb_io_bytes): new methods.
25369 Mon Oct 16 23:33:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25371         * array.c (rb_ary_unshift_m): a bug in lfree shift length
25372           calculation.
25374 Mon Oct 16 08:30:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25376         * mkconfig.rb: *OBJS are not needed for extension libraries.
25378         * {bcc32,wince,win32}/Makefile.sub (config.status): fixed typo,
25379           missing comma.
25381 Mon Oct 16 00:44:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25383         * pack.c (pack_unpack): execute block if given with unpacked value
25384           instead of creating an array.  an idea from Tim Bray.
25386 Sun Oct 15 01:03:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25388         * lib/test/unit/collector/dir.rb (Collector::Dir#collect): append base
25389           directory but not prepend.
25391         * lib/test/unit/collector/dir.rb (Collector::Dir#collect_file): do not
25392           join with dot.  fixed: [ruby-core:09179]
25394 Sat Oct 14 23:39:50 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25396         * parse.y (singleton): no need to re-create NODE_SELF() again.
25397           [ruby-core:09177]
25399 Sat Oct 14 23:25:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25401         * parse.y (parser_warning, parser_warn): some error message may
25402           contain format specifiers.  a patch from Akinori MUSHA <knu at
25403           iDaemons.org>.  [ruby-dev:29657]
25405         * regparse.c (onig_rb_warning, onig_rb_warn): ditto.
25407         * ext/bigdecimal/bigdecimal.c (VpException): ditto.
25409         * ext/dl/handle.c (rb_dlhandle_initialize): ditto.
25411         * ext/gdbm/gdbm.c (rb_gdbm_fatal): ditto.
25413 Sat Oct 14 08:15:42 2006  Akinori MUSHA  <knu@iDaemons.org>
25415         * ext/digest/digest.c, ext/digest/digest.h,
25416           ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c,
25417           ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c:
25418           Introduce API versioning.
25420         * ext/digest/digest.c, ext/digest/digest.h,
25421           ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c,
25422           ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c: Remove
25423           the constants DIGEST_LENGTH and BLOCK_LENGTH and turn them into
25424           instance methods digest_length() and block_length().  Class
25425           methods with the same names are also provided, which take extra
25426           parameters for a digest method.
25428         * ext/digest/lib/digest/hmac.rb: Completely redesign the somewhat
25429           bizarre API, now that Digest classes can take hashing
25430           parameters.
25432 Sat Oct 14 05:54:05 2006  Akinori MUSHA  <knu@iDaemons.org>
25434         * ext/digest/digest.c: Improve RDoc documentation further more.
25436 Sat Oct 14 04:33:33 2006  Akinori MUSHA  <knu@iDaemons.org>
25438         * ext/digest/digest.c: Improve RDoc documentation.
25440         * ext/digest/digest.c (Init_digest, rb_digest_base_s_digest,
25441           rb_digest_base_s_hexdigest): Make Digest::Base::digest() and
25442           Digest::Base::hexdigest() take extra arguments, which are passed
25443           through to the constructor in an internal call.
25445         * ext/digest/bubblebabble/bubblebabble.c
25446           (rb_digest_base_s_bubblebabble): Ditto for
25447           Digest::Base::bubblebabble().
25449 Sat Oct 14 00:55:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25451         * bcc32/Makefile.sub (post-install-ext): no longer needed.
25453         * bcc32/configure.bat: get rid of a quirk of Borland make, which
25454           sets empty macro in command line to "1".
25456 Fri Oct 13 22:49:02 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25458         * lib/date.rb: updated based on date2 3.9.5.
25460 Fri Oct 13 21:00:01 2006  Akinori MUSHA  <knu@iDaemons.org>
25462         * ext/digest/lib/digest.rb (Digest): Try to auto-load non-standard
25463           digest modules when a specified digest class is missing.
25465         * ext/digest/lib/digest.rb: Define Digest(name) for ease of
25466           dynamically selecting a hashing algorithm.
25468 Fri Oct 13 20:53:37 2006  Akinori MUSHA  <knu@iDaemons.org>
25470         * ext/digest/digest.c (Init_digest): Digest::Base.new() does no
25471           longer take an initial string to feed.  This change allows
25472           subclasses to take hashing parameters.  A statement such as
25473           ``md = Digest::MD5.new(s)'' can be easily rewritten as
25474           ``md = Digest::MD5.new << s'' or
25475           ``md = Digest::MD5.new.update(s)''.
25477 Fri Oct 13 20:51:55 2006  Akinori MUSHA  <knu@iDaemons.org>
25479         * ext/digest/digest.c, ext/digest/md5/md5init.c,
25480           ext/digest/rmd160/rmd160init.c, ext/digest/sha1/sha1init.c,
25481           ext/digest/sha2/sha2init.c: Add RDoc documentation.
25483         * ext/digest/digest.txt, ext/digest/digest.txt.ja: Removed in
25484           favor of embedded RDoc documentation.
25486 Fri Oct 13 20:38:12 2006  Akinori MUSHA  <knu@iDaemons.org>
25488         * ext/digest/bubblebabble, ext/digest/digest.c: Rip BubbleBabble
25489           support out of the base class and have a separate module named
25490           digest/bubblebabble.
25492 Fri Oct 13 19:53:59 2006  Akinori MUSHA  <knu@iDaemons.org>
25494         * ext/digest/digest.c (rb_digest_base_equal): Again, should call
25495           digest() of a subclass instead of the one defined in the base
25496           class.
25498 Fri Oct 13 18:19:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25500         * object.c: Class#inherited RDoc added.  a patch from Daniel
25501           Berger <djberg96 at gmail.com>  [ruby-core:08942]
25503 Fri Oct 13 02:42:00 2006  Akinori MUSHA  <knu@iDaemons.org>
25505         * ext/digest/digest.c (rb_digest_base_equal): Should call digest()
25506           of a subclass instead of the one defined in the base class.
25508 Fri Oct 13 02:30:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25510         * lib/test/unit/collector/dir.rb (Collector::Dir#collect): prepend
25511           base directory to load path.
25513         * lib/test/unit/collector/dir.rb (Collector::Dir#collect_file): should
25514           use the given File-like interface, but not File directly.
25516         * test/testunit/collector/test_dir.rb (TestDir::FileSystem): implement
25517           File-like methods correctly.
25519 Fri Oct 13 01:48:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25521         * lib/date.rb (Date::self.complete_hash): need to check if g is
25522           nil before dereference.  [ruby-core:09116]
25524 Fri Oct 13 01:05:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25526         * string.c (rb_str_partition): RDoc update.  a patch from
25527           Mauricio Fernandez <mfp at acm.org>.  [ruby-core:09160]
25529         * hash.c (rb_hash_compare_by_id): ditto.
25531 Fri Oct 13 00:34:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25533         * object.c (rb_mod_cvar_defined): wrong id check.  a patch from
25534           Mauricio Fernandez <mfp at acm.org>.  [ruby-core:09158]
25536         * object.c (rb_mod_cvar_get): typo fixed.  [ruby-core:09168]
25538         * object.c (rb_mod_cvar_set): ditto.
25540 Thu Oct 12 22:58:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25542         * hash.c (rb_hash_compare_by_id): somehow we lost renaming from
25543           Hash#identical.  [ruby-core:09163]
25545 Thu Oct 12 18:25:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25547         * ext/tk/tkutil/tkutil.c (cbsubst_table_setup): need to handle new
25548           character literal (1 char string).
25550         * lib/mkmf.rb: shut up some warnings from tk's extconf.rb.
25552 Thu Oct 12 02:15:24 2006  Akinori MUSHA  <knu@iDaemons.org>
25554         * ext/digest/lib/digest/hmac.rb: Make use of String#bytes.
25556 Thu Oct 12 02:12:31 2006  Akinori MUSHA  <knu@iDaemons.org>
25558         * ext/digest/digest.c (get_digest_base_metadata): Use an instance
25559           variable of a class object instead of a class variable for
25560           metadata.  This change is only crucial for ruby 1.8 because
25561           class variables are inherited to subclasses prior to 1.9, but
25562           applying it also to 1.9 will assure compatibilities.
25564         * ext/digest/md5/md5init.c (Init_md5): Ditto.
25566         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
25568         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
25570         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
25572 Wed Oct 11 21:36:47 2006  Akinori MUSHA  <knu@iDaemons.org>
25574         * ext/digest/digest.c (rb_digest_base_alloc,
25575           rb_digest_base_equal): Simplify the equality check and just
25576           compare resulted digests since state-level equality should
25577           not be so significant.
25579         * ext/digest/digest.h: Ditto.
25581         * ext/digest/*/*.[ch]: Ditto.
25583 Wed Oct 11 17:11:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25585         * eval.c (rb_obj_define_method): add half boiled RDoc document.
25587 Wed Oct 11 16:57:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25589         * array.c (rb_ary_replace): should shift lfree pointer before
25590           calling xfree.
25592 Wed Oct 11 15:07:42 2006  Akinori MUSHA  <knu@iDaemons.org>
25594         * ext/digest/lib/digest/hmac.rb: Add digest/hmac, which implements
25595           HMAC keyed-hashing algorithm.
25597 Wed Oct 11 15:03:55 2006  Akinori MUSHA  <knu@iDaemons.org>
25599         * ext/digest/digest.c (rb_digest_base_reset): Do not make
25600           recursive calls, but call initialize() when reset() is not
25601           defined in a subclass.
25603 Wed Oct 11 14:56:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25605         * ext/digest/sha1/sha1ossl.h: libssl 0.9.8c-3 defines no
25606           SHA_BLOCK_LENGTH.
25608 Wed Oct 11 14:03:31 2006  Akinori MUSHA  <knu@iDaemons.org>
25610         * ext/digest/digest.c (rb_digest_base_reset, Init_digest): Add
25611           Digest::Base#reset.
25613         * ext/digest/digest.h: Update the header comment.
25615         * ext/digest/md5/md5ossl.h, ext/digest/md5/md5init.c (Init_md5):
25616           Define DIGEST_LENGTH and BLOCK_LENGTH.
25618         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
25620         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
25622         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
25624         * ext/digest/depend, ext/digest/extconf.rb: Use $INSTALLFILES
25625           rather than adding make targets. [Pointed out by: nobu]
25627 Tue Oct 10 16:39:08 2006  Akinori MUSHA  <knu@iDaemons.org>
25629         * ext/digest/digest.c (hexdigest_str_new, bubblebabble_str_new):
25630           Perform StringValue() checks properly.
25632 Tue Oct 10 13:21:21 2006  Akinori MUSHA  <knu@iDaemons.org>
25634         * ext/digest/sha1/depend, ext/digest/sha2/depend: Remove obsolete
25635           dependencies.
25637 Mon Oct  9 23:46:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25639         * lib/parsedate.rb: documentation patch from Konrad Meyer
25640           <konrad.meyer@gmail.com>.  [ruby-doc:1238]
25642         * lib/open3.rb, lib/ping.rb: ditto.
25644 Mon Oct  9 23:40:58 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25646         * ext/extmk.rb, lib/fileutils.rb, lib/mkmf.rb, lib/optparse.rb,
25647           lib/shellwords.rb: get rid of shadowing outer local variable.
25649 Mon Oct  9 22:56:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25651         * lib/rexml/encoding.rb (REXML::Encoding::check_encoding): spaces
25652           are allowed around equal sign.  [ruby-core:09032]
25654         * lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser): ditto.
25656 Mon Oct  9 01:56:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25658         * eval.c (rb_obj_define_method): add new method
25659           Kernel#define_singleton_method.  [ruby-list:42851]
25661 Sat Oct  7 23:53:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25663         * string.c (rb_str_scan): small documentation fix.
25664           [ruby-core:09007]
25666 Sat Oct  7 23:44:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25668         * bignum.c (rb_big_rshift): a bug in right shift of negative
25669           bignums.  [ruby-core:09020]
25671 Sat Oct  7 23:33:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25673         * eval.c (formal_assign): packed post splat arguments may conflict
25674           with normal arguments.  [ruby-core:09021]
25676         * eval.c (rb_call0): ditto.
25678 Sat Oct  7 11:53:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25680         * object.c (rb_mod_initialize): since module_eval no longer passes
25681           self, use module_exec instead.  fixed: [ruby-dev:29637]
25683 Sat Oct  7 00:27:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25685         * class.c (rb_include_module): remove unnecessary check.
25686           [ruby-talk:218402]
25688 Fri Oct  6 15:19:59 2006  Akinori MUSHA  <knu@iDaemons.org>
25690         * ext/digest/depend: Fix header installation when the build
25691           directory is different from srcdir. [Pointed out by: eban]
25693 Fri Oct  6 09:56:31 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25695         * {bcc32,win32,wince}/Makefile.sub (config.status): shouldn't use
25696           copy command instead of install. use -run install.
25698 Fri Oct  6 06:53:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25700         * eval.c (rb_yield_0): small refactoring.
25702         * parse.y (bparam_item): fixed bugs in handling parenthesized LHS.
25704 Fri Oct  6 04:47:07 2006  Akinori MUSHA  <knu@iDaemons.org>
25706         * ext/digest/depend: Install digest.h.
25708 Fri Oct  6 04:27:40 2006  Akinori MUSHA  <knu@iDaemons.org>
25710         * ext/digest/lib/md5.rb, ext/digest/lib/sha1.rb: Remove those
25711           compatibility stub libraries.
25713         * sample/openssl/c_rehash.rb: Use digest/md5 instead of obsolete md5.
25715 Fri Oct  6 04:09:51 2006  Akinori MUSHA  <knu@iDaemons.org>
25717         * ext/digest/digest.c: Make hexdigest() always call digest() internally.
25719         * ext/digest/digest.c: Add bubblebabble().
25721 Fri Oct  6 02:38:42 2006  Akinori MUSHA  <knu@iDaemons.org>
25723         * ext/digest/digest.c: Allow subclassing in Ruby.
25725 Fri Oct  6 02:06:10 2006  Akinori MUSHA  <knu@iDaemons.org>
25727         * ext/digest/digest.c (hexdigest_str_new): Add a string size check.
25729 Thu Oct  5 19:28:35 2006  Akinori MUSHA  <knu@iDaemons.org>
25731         * ext/digest/digest.[ch]: Since the argument order of
25732           hash_final_func_t was inconsistent with others, change it and
25733           rename to hash_finish_func_t to avoid confusion.
25735         * ext/digest/digest.[ch]: Remove and eliminate the use of
25736           hash_end_func_t.  Implement hexdigest conversion in the base
25737           class.
25739         * ext/digest/md5/md5.c, ext/digest/md5/md5.h,
25740           ext/digest/md5/md5init.c, ext/digest/md5/md5ossl.c,
25741           ext/digest/md5/md5ossl.h: Remove MD5_End() and change
25742           MD5_Final() to MD5_Finish().
25744         * ext/digest/rmd160/depend, ext/digest/rmd160/extconf.rb,
25745           ext/digest/rmd160/rmd160.c, ext/digest/rmd160/rmd160.h,
25746           ext/digest/rmd160/rmd160hl.c, ext/digest/rmd160/rmd160init.c,
25747           ext/digest/rmd160/rmd160ossl.c, ext/digest/rmd160/rmd160ossl.h:
25748           Remove unused functions RMD160_End(), RMD160_File(),
25749           RMD160_Data() and change RMD160_Final() to RMD160_Finish().
25751         * ext/digest/sha1/extconf.rb, ext/digest/sha1/sha1.c,
25752           ext/digest/sha1/sha1.h, ext/digest/sha1/sha1hl.c,
25753           ext/digest/sha1/sha1init.c, ext/digest/sha1/sha1ossl.c,
25754           ext/digest/sha1/sha1ossl.h: Likewise.
25756         * ext/digest/sha2/extconf.rb, ext/digest/sha2/sha2.c,
25757           ext/digest/sha2/sha2.h, ext/digest/sha2/sha2hl.c,
25758           ext/digest/sha2/sha2init.c: Likewise.
25760 Wed Oct  4 18:47:25 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
25762         * ext/tk/lib/tkextlib/*: bugfix and update
25763           (see ext/tk/ChangeLog.tkextlib).
25765 Wed Oct  4 17:25:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25767         * eval.c (rb_call): check protected visibility based on real self,
25768           not ruby_frame->self.  [ruby-talk:217822]
25770 Wed Oct  4 15:46:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25772         * parse.y (block_param): should interpret single parenthesized
25773           left hand side expression.
25775 Wed Oct  4 08:52:30 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25777         * test/optparse/test_getopts.rb: changed the class name of test case
25778           to get rid of conflict with test_optparse.rb.
25780 Tue Oct  3 21:04:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25782         * parse.y (dyna_in_block): inline using macro.
25784         * parse.y (mlhs): simplifies the rule a bit.
25786         * parse.y (block_param): restrict block parameters to be local
25787           variables only.
25789         * test/ruby/test_iterator.rb (TestIterator::test_nested_iterator):
25790           update test suite to conform the last change.
25792 Tue Oct  3 02:31:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25794         * eval.c (splat_value): use "to_splat" instead of "to_ary" to
25795           prepare splat values as an array.
25797         * array.c (Init_Array): define to_splat.
25799         * range.c (range_to_splat): new method.
25801         * enumerator.c (enumerator_to_splat): ditto.
25803 Tue Oct  3 01:36:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25805         * string.c (rb_str_lines): returns an Enumerator instead of an
25806           array of lines.
25808         * string.c (rb_str_bytes): a new method.
25810 Mon Oct  2 23:47:55 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25812         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::COLLECTORS):
25813           base directory should be lower precedence.  fixed: [ruby-dev:29622]
25815         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner#options): typo.
25817         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
25818           load expanded path.  fixed: [ruby-dev:29621]
25820 Mon Oct  2 15:47:55 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25822         * instruby.rb: batfile should be CRLF'ed.
25824 Mon Oct  2 01:24:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25826         * common.mk (test-all): separate directory where running test cases
25827           from source tree.
25829         * lib/test/unit/autorunner.rb (options): added --basedir, --workdir
25830           and --load-path options.
25832         * lib/test/unit/collector/dir.rb (recursive_collect, collect_file):
25833           base directory support.
25835 Sun Oct  1 23:56:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25837         * Makefile.in, common.mk, ext/extmk.rb, win{32,ce}/Makefile.in: keep
25838           LIBRUBY_SO unless need to be removed.
25840 Sun Oct  1 23:12:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25842         * lib/optparse.rb (OptionParser#make_switch): pass arguments directly.
25844 Sat Sep 30 15:11:26 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25846         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.4.
25848 Fri Sep 29 13:18:24 2006  Akinori MUSHA  <knu@iDaemons.org>
25850         * ext/digest/lib/digest.rb (Digest): Require digest.so and fix the
25851           breakage.  Point out by NAKAMURA Usaku in [ruby-dev:29619].
25853 Fri Sep 29 12:11:04 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
25855         * jcode.rb (succ!): call original succ! if $KCODE == 'n'.
25856           fixed: [ruby-talk:216845]
25858 Fri Sep 29 11:43:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25860         * lib/mkmf.rb (try_func): revert fallback checking undeclared function.
25861           fixed: [ruby-core:08949]
25863 Fri Sep 29 09:56:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25865         * ext/extmk.rb: extout is needed for also clean.
25866           fixed: [ruby-core:08944]
25868         * lib/optparse.rb (OptionParser::Switch#conv_arg): unsplat by
25869           Proc#call if no conversion is given.
25871 Thu Sep 28 23:59:31 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25873         * node.h (struct thread): declare win32_exception_list on cygwin and
25874           win32 regardless if it is implemented.  Provisional fix for
25875           [ruby-core:08917].
25877 Thu Sep 28 20:49:20 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25879         * lib/tmpdir.rb: use return value of getdir.call for length.
25881 Wed Sep 27 22:08:16 2006  Akinori MUSHA  <knu@iDaemons.org>
25883         * ext/digest/md5/md5init.c (Init_md5): Now that we have digest.rb,
25884           require "digest" rather than "digest.so".
25886         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
25888         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
25890         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
25892 Wed Sep 27 21:21:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25894         * string.c (rb_str_startwith): rename startwith? to start_with?,
25895           endwith? to endwith?, respectively.  [ruby-talk:216685]
25897 Wed Sep 27 13:29:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25899         * lib/cgi.rb (CGI::TagMaker::nOE_element_def): replace to_s by
25900           join.  some other methods as well.  [ruby-dev:29613]
25902 Wed Sep 27 01:04:49 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25904         * lib/mkmf.rb (try_func): check function pointer first and macro next.
25906         * lib/mkmf.rb (have_type): simplified with typedef and sizeof.
25908 Wed Sep 27 00:08:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25910         * array.c (rb_ary_shift): shift/unshift performance boost patch,
25911           based on the patch from Eric Mahurin <eric_mahurin at yahoo.com>.
25912           [ruby-core:05861]
25914         * array.c (rb_ary_unshift_m): ditto.
25916         * array.c (ary_make_shared): ditto.
25918         * array.c (RESIZE_CAPA): ditto.
25920         * array.c (rb_ary_free): new function to free memory.  code moved
25921           from gc.c.
25923         * string.c (rb_str_free): ditto.
25925 Tue Sep 26 23:57:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25927         * lib/optparse.rb (OptionParser#getopts): use strings as key.
25928           fixed: [ruby-dev:29614]
25930 Tue Sep 26 15:29:55 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25932         * {win32,wince}/Makefile.sub (CPP): check predefined value.
25934 Tue Sep 26 07:55:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25936         * array.c (rb_ary_shift): should not move memory region if array
25937           body is shared.  a patch from Kent Sibilev <ksruby at gmail.com>.
25938           [ruby-core:08922]
25940 Mon Sep 25 23:10:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25942         * dir.c (rb_push_glob): need not to check by FilePathValue().
25943           [ruby-dev:29599]
25945         * dir.c (dir_globs): ditto.
25947 Mon Sep 25 22:26:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25949         * file.c (rb_path_end): skip root directory.  fixed: [ruby-core:08913]
25951         * lib/mkmf.rb (rm_f): get rid of NUL.
25953         * lib/mkmf.rb (init_mkmf): set default $LDFLAGS.  Patch by Michal
25954           Suchanek <hramrach at centrum.cz>.  [ruby-talk:216256]
25956 Mon Sep 25 15:06:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25958         * sample/test.rb: "print nil" now prints empty string.
25960         * test/ruby/test_system.rb (TestSystem::test_system): ditto.
25962 Mon Sep 25 11:26:25 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25964         * hash.c (recursive_hash): remove unused local variable.
25966         * parse.y (parser_yylex): ditto.
25968         * parse.y (rb_gc_mark_symbols): fix unmatched prototype .
25970         * file.c (rb_get_path): check NUL byte in the path string.
25972 Mon Sep 25 08:14:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25974         * array.c (rb_ary_shift): should clear shifting top element.
25975           [ruby-talk:216055]
25977         * array.c (rb_ary_shift): avoid creating shared object if array
25978           size is small.
25980 Mon Sep 25 08:11:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25982         * random.c (rb_f_rand): RDoc typo fix.  a patch from Frederick
25983           Cheung <fred at 82ask.com>.  [ruby-talk:216047]
25985 Sun Sep 24 21:19:24 2006  Guy Decoux  <ts@moulon.inra.fr>
25987         * gc.c (gc_mark_children): NODE_POSTEXE holds Ruby VALUE.
25988           [ruby-core:08912]
25990 Sun Sep 24 22:28:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25992         * runruby.rb: extension library scripts moved into common directory.
25994 Sun Sep 24 12:10:04 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25996         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.3.
25998 Sun Sep 24 06:55:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26000         * io.c (rb_io_print): no special handling for nil as well as puts.
26001           fixed: [ruby-dev:29586]
26003 Sun Sep 24 06:25:53 2006  why the lucky stiff  <why@ruby-lang.org>
26005         * eval.c (rb_thread_save_context, rb_thread_restore_context):
26006           sandbox hook to save and restore sandbox state.
26008         * eval.c (thread_no_ensure): added THREAD_NO_ENSURE thread flag.
26010         * eval.c (rb_thread_kill_bang): Thread#kill! uses the above flag
26011           to circumvent ensure, in order to prevent endless loops.
26012           contributed by MenTaLguY. [ruby-core:08768]
26014         * eval.c (rb_thread_kill): fix Thread#kill docs, which returns
26015           the thread object in all cases.
26017         * node.h: expose the rb_jmpbuf_t and rb_thread_t structs, along
26018           with the thread flags.  used by the sandbox extension.
26020         * ruby.h: extern rb_eThreadError, so sandbox can swap it.
26022 Sat Sep 23 21:34:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26024         * lib/cgi.rb (CGI::QueryExtension::read_multipart): CGI content
26025           may be empty.  a patch from Jamis Buck <jamis at 37signals.com>.
26027 Sat Sep 23 20:54:28 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
26029         * oniguruma.h: Version 4.4.4
26031         * regexec.c: ditto.
26033         * regcomp.c ditto.
26035 Sat Sep 23 08:35:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26037         * lib/rdoc/ri/ri_options.rb: prevent NameError.  [ruby-dev:29597]
26039 Sat Sep 23 01:02:57 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26041         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.2.
26043 Fri Sep 22 18:07:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26045         * string.c (rb_str_partition): no need to call rb_call_super(),
26046           since String is no longer includes Enumerable.
26048 Fri Sep 22 17:33:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26050         * hash.c (rb_hash_eql): new method to be used by Hash.
26052         * hash.c (rb_hash_hash): ditto.
26054 Fri Sep 22 06:53:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26056         * bignum.c (rb_big_hash): use rb_memhash().
26058         * numeric.c (flo_hash): simplified.  klass need not to affect
26059           resulting hash value.
26061 Fri Sep 22 02:06:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26063         * .cvsignore: ignore timestamp files and installed list file.
26065 Fri Sep 22 01:36:34 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26067         * instruby.rb: include FileUtils unconditionally.
26069 Fri Sep 22 00:36:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26071         * numeric.c (Init_Numeric): fix_odd_p and fix_even_p are for Fixnum.
26072           patch from Ondrej Bilka <neleai at seznam.cz>.  [ruby-core:08904]
26074 Thu Sep 21 22:56:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26076         * common.mk (no-install): not install rdoc actually.
26078         * common.mk (install-doc, no-install-doc): use instruby.rb.
26080         * instruby.rb: rdoc installation.
26082         * ext/extmk.rb: expand ruby executable names.
26084 Thu Sep 21 20:19:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26086         * string.c (str_new3): embed shorter strings more eagerly.
26088 Thu Sep 21 17:44:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26090         * string.c (rb_str_startwith): a new method to check if a string
26091           starts with given prefix.
26093         * string.c (rb_str_endwith): the opposite of String#startwith?.
26095 Thu Sep 21 16:29:02 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
26097         * rubytest.rb: use each_line instead of each.
26099 Thu Sep 21 15:06:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26101         * numeric.c (int_odd_p): a new method to check even or odd.
26102           [RCR#337]
26104         * numeric.c (int_even_p): ditto.
26106 Thu Sep 21 13:55:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26108         * ext/etc/etc.c (etc_getpwuid): uid integer should be wrapped in
26109           uid_t value.  [ruby-core:08897]
26111         * ext/etc/etc.c (etc_getpwuid): uid_t may be bigger than plain
26112           'int' type.
26114 Thu Sep 21 10:07:09 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26116         * string.c (rb_str_partition): RDoc typo fixed.  [ruby-core:08898]
26118         * string.c (rb_str_rpartition): fixed separation seek bug.
26120 Thu Sep 21 09:38:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26122         * string.c (rb_str_lines): new method to split a string into lines.
26124         * string.c (Init_String): Strings are no longer Enumerable.  use
26125           each_line or lines method explicitly.
26127         * string.c (Init_String): remove each method. use each_lines.
26129 Wed Sep 20 23:17:41 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26131         * common.mk (pre-install-doc): create data directory before install.
26133         * lib/mkmf.rb (dir_re): fixed typo.
26135         * lib/mkmf.rb (install_dirs): remove extra slash.
26137 Wed Sep 20 22:41:45 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26139         * numeric.c (fix_mul): typo again.  patch from Tadashi Saito
26140           <shiba at mail2.accsnet.ne.jp>.  fixed: [ruby-core:08893]
26142 Wed Sep 20 19:32:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26144         * string.c (rb_str_partition): a new method to separate the string
26145           by a separator.  taken from Python 2.5.
26147         * string.c (rb_str_rpartition): ditto.
26149 Wed Sep 20 09:49:40 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26151         * {bcc32,win32,wince}/Makefile.sub (INSTALLED_LIST): need to define
26152           this macro to install.
26154 Wed Sep 20 09:43:10 2006  Shugo Maeda  <shugo@ruby-lang.org>
26156         * lib/net/imap.rb: allow extra spaces in responses.
26157           Thanks, Tom Soderlund.
26159 Wed Sep 20 09:25:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26161         * ext/gdbm/gdbm.c: add RDoc documentation. a patch from Peter
26162           Adolphs <futzilogik at users dot sourceforge dot net>.
26163           [ruby-doc:1223]
26165 Tue Sep 19 00:42:15 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26167         * object.c (rb_obj_ivar_defined, rb_mod_cvar_defined): new methods,
26168           Kernel#instance_variable_defined? and Module#class_variable_defined?.
26169           [ruby-dev:29587]
26171         * lib/date/format.rb (Date::Bag#method_missing): use new method,
26172           instance_variable_defined? to check if an instance variable is
26173           defined.  fixed: [ruby-dev:29554]
26174           -- This didn't fix anything.
26176 Tue Sep 19 00:07:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26178         * string.c (sym_eql): fail early to gain performance.
26180         * string.c (sym_hash): cache hash value in aux.shared if possible.
26182         * gc.c (rb_obj_id): no need to treat symbols specially.
26184         * lib/fileutils.rb (FileUtils::FileUtils): singleton_methods() no
26185           longer return an array of strings, but of symbols.
26187         * lib/delegate.rb (DelegateClass): ditto.
26189 Mon Sep 18 15:29:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26191         * dir.c (dir_s_glob): restore GC protection volatile variable.
26192           [ruby-dev:29588]
26194         * re.c (rb_reg_regcomp): ditto.
26196 Mon Sep 18 12:16:48 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26198         * numeric.c (fix_mul): get rid of shift overflow.
26200 Mon Sep 18 10:47:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26202         * dir.c (dir_s_glob): remove unused variable.
26204         * math.c (math_log): ditto.
26206         * re.c (rb_reg_regcomp): ditto.
26208         * eval.c (break_jump): ditto.
26210         * eval.c (rb_thread_yield_0): remove unused function.
26212 Sun Sep 17 23:44:58 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26214         * lib/rdoc/rdoc.rb (RDoc::RDoc#document): scan only files modified
26215           after the previous generation.
26217 Sun Sep 17 17:42:13 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26219         * common.mk (install-doc): reverted.
26221         * instruby.rb: stores file name list without destdir prefix.
26223         * lib/rdoc/generators/ri_generator.rb: do not chdir twice.
26225 Sun Sep 17 10:42:10 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26227         * numeric.c (fix_mul): fixed typo.  fixed: [ruby-core:08885]
26229 Sat Sep 16 19:47:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26231         * README.EXT: should mention new macros: RSTRING_PTR, RSTRING_LEN,
26232           RARRAY_PTR, RARRAY_LEN.
26234         * README.EXT.ja: ditto.
26236 Sat Sep 16 16:39:23 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26238         * Makefile.in, common.in, instruby.rb, ext/extmk.rb, lib/mkmf.rb:
26239           use instruby.rb to install extensions instead of ext/extmk.rb.
26241         * instruby.rb: store installed list into the file.
26243         * ext/dbm/extconf.rb: allow multiple candidates for dbm-type.
26245         * ext/io/wait/extconf.rb: suspicious checking_for.
26247         * ext/pty/pty.c (establishShell): parent pid is not used.
26249         * ext/pty/pty.c (freeDevice): not used.
26251         * lib/mkmf.rb (checking_for): improved the messages.
26253 Sat Sep 16 11:03:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26255         * array.c (ary_shared_first): should create embedded copies
26256           instead of sharing memory region for smaller arrays.
26258 Sat Sep 16 09:37:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26260         * struct.c (inspect_struct): do not display a class name for
26261           anonymous struct.  The member fields are sufficient.
26263 Fri Sep 15 20:22:15 2006  NARUSE, Yui  <naruse@ruby-lang.org>
26265         * ext/nkf/nkf-8/nkf.c: imported nkf 2.0.8 rev.110.
26266           * Fix: check_bom cuts \xfe\xff\xXX\xXX of UTF-32LE.
26267           * Add support --ic=UTF-32.
26268           * Fix: can't guess UTF-16 and UTF-32.
26269           * Fix: can't decode beyond BMP of UTF-16LE.
26271         * ext/nkf/nkf.c (guess): Support UTF-32.
26273         * ext/nkf/lib/kconv.rb (kconv): Support UTF-32.
26275         * ext/nkf/lib/kconv.rb (to_utf32): new method.
26277 Fri Sep 15 05:23:24 2006  NARUSE, Yui  <naruse@ruby-lang.org>
26279         * ext/nkf/nkf-8/nkf.c: imported nkf 2.0.8 2006-09-15.
26280           Add support for U+10000 - U+10FFFF
26281           Add support UTF-32
26283 Fri Sep 15 00:03:07 2006  Tanaka Akira  <akr@fsij.org>
26285         * ext/digest/lib/digest.rb (Digest::Base.file): open a file in binary
26286           mode.  suggested by Kazuhiro NISHIYAMA.  [ruby-dev:29579]
26288 Thu Sep 14 17:21:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26290         * numeric.c (fix_mul): avoid bignum multiplication as far as
26291           possible.  a patch from Ondrej Bilka <neleai at seznam.cz>.
26292           [ruby-core:08825]
26294 Thu Sep 14 16:34:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26296         * string.c (rb_str_intern): allow zero length symbols.
26297           [ruby-core:08861]
26299 Thu Sep 14 16:11:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26301         * string.c (rb_str_intern): raise SecurityError only when $SAFE
26302           level is greater than zero.  [ruby-core:08862]
26304         * parse.y (rb_interned_p): new function to check if a string is
26305           already interned.
26307         * string.c (str_to_id): use rb_str_intern().
26309 Thu Sep 14 14:37:45 2006  Tanaka Akira  <akr@fsij.org>
26311         * ext/digest/lib/digest.rb (Digest::Base.file): new method.
26312           [ruby-dev:29572]
26314 Thu Sep 14 08:30:02 2006  Tanaka Akira  <akr@fsij.org>
26316         * ext/digest/digest.c (rb_digest_base_inspect): new method.
26317           [ruby-dev:29573]
26319 Thu Sep 14 01:13:56 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26321         * gc.c (ruby_init_stack): decrease "stack level too deep" in Windows.
26322           [ruby-dev:29569]
26324 Thu Sep 14 01:02:25 2006  Tanaka Akira  <akr@fsij.org>
26326         * ext/digest/lib/digest.rb: new file.
26327           [ruby-dev:28689]
26329 Wed Sep 13 18:43:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26331         * README.EXT: English adjustment.  [ruby-core:08851] and
26332           [ruby-core:08852]
26334 Wed Sep 13 18:25:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26336         * misc/ruby-mode.el (ruby-parse-partial): better here-doc support.
26337           a patch from Marshall T. Vandegrift <llasram at gmail.com>.
26338           [ruby-core:08804]
26340 Wed Sep 13 16:43:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26342         * string.c (rb_str_intern): prohibit interning tainted string.
26344 Wed Sep 13 01:14:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26346         * lib/optparse.rb (OptionParser#getopts): works with pre-registered
26347           options.  [ruby-core:08826]
26349 Tue Sep 12 03:58:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26351         * hash.c (rb_hash_compare_by_identity): rename Hash#identical to
26352           Hash#compare_by_identity.
26354 Mon Sep 11 16:52:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26356         * hash.c (rb_hash_identical): a new method to make a hash to
26357           compare keys by their identity.
26359         * hash.c (rb_hash_identical_p): new method to tell if a hash is
26360           identical or not.
26362         * st.c (st_numcmp, st_numhash): export hash type functions.
26364 Mon Sep 11 11:42:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26366         * lib/rexml/source.rb (REXML::Source::encoding): should not
26367           convert the body twice.  [ruby-core:08828]
26369         * lib/rexml/encoding.rb (REXML::Encoding::encoding):
26370           Encoding#encoding= to return boolean value to tell if the body
26371           is really converted or not.
26373         * lib/rexml/encoding.rb (REXML::Encoding::encoding): Specific
26374           conversion library (e.g. rexml/encodings/UTF-16.rb) to have
26375           higher preceding.
26377         * lib/rexml/encodings/UTF-16.rb (REXML::Encoding::decode_utf16):
26378           UTF-16#decode_utf16 should work strings without BOM.
26380 Mon Sep 11 07:39:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26382         * string.c (sym_equal): "sym == str" should compare them as
26383           strings.  [ruby-dev:29554]
26385 Sun Sep 10 22:59:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26387         * instruby.rb (parse_args): remove splat.
26389 Sun Sep 10 20:25:30 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26391         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.1.
26393 Sun Sep 10 09:41:29 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26395         * file.c: ISPRINT() needs ctype.h
26397 Sun Sep 10 09:19:47 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26399         * lib/optparse.rb: splat parsed arguments.
26401 Tue Jan 10 09:18:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26403         * eval.c (rb_require_safe): prevent extension from loading twice.
26404           fixed: [ruby-dev:29523]
26406 Sat Sep  9 23:55:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26408         * file.c (rb_f_test): test(0) should not have any special
26409           meaning.  [ruby-dev:29425]
26411         * file.c (rb_f_test): properer error message.
26413 Sat Sep  9 14:08:38 2006  Eric Hodel  <drbrain@segment7.net>
26415         * lib/test/unit/testcase.rb (Test::Unit::TestCase#run): Rescue
26416           Exception in Test::Unit::TestCase#run.  [ruby-core:08783]
26418 Sat Sep  9 04:55:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26420         * lib/pstore.rb: open all in binary mode, and get rid of the quirk of
26421           msvcrt.  fixed: [ruby-dev:29518]
26423 Sat Sep  9 04:47:45 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26425         * Makefile.in, win32/Makefile.sub (MINIRUBY): append MINIRUBYOPT.
26427         * mkconfig.rb, ext/extmk.rb, lib/mkmf.rb, win32/mkexports.rb: suppress
26428           warnings with $VERBOSE.
26430         * win32/resource.rb: only file which has more than one icon is DLL.
26432 Fri Sep  8 16:53:30 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26434         * string.c (str_alloc): should allocate a String object, even when
26435           asked to allocate a Symbol object.  [ruby-dev:29529]
26437 Fri Sep  8 16:36:27 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26439         * ext/extmk.rb (extmake): follow Array#to_s.
26441         * lib/mkmf.rb (create_makefile): ditto.
26443         * win32/resource.rb: ditto.
26445 Fri Sep  8 10:00:12 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26447         * lib/webrick/cookie.rb (WEBrick::Cookie.parse_set_cookies): new
26448           method to parse multiple cookies per Set-Cookie header.
26449           Thanks to Aaron Patterson <aaron_patterson at speakeasy.net>.
26450           [ruby-core:08802]
26452 Fri Sep  8 08:59:30 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26454         * win32/Makefile.sub, win32/configure.bat win32/setup.mak: program
26455           name transform.
26457 Fri Sep  8 08:25:39 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26459         * lib/optparse.rb: suppress `assigning void value' warning.
26461 Fri Sep  8 01:16:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26463         * array.c (Init_Array): #to_s to be an alias to #inspect.
26464           [ruby-dev:29520]
26466         * hash.c (Init_Hash): ditto.
26468         * lib/mkmf.rb (create_makefile): replace "print array" by
26469           "print *array".
26471         * mkconfig.rb: ditto.
26473 Thu Sep  7 21:02:56 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26475         * object.c (nil_to_s): returns the empty string again.
26476           [ruby-dev:29520]
26478 Thu Sep  7 23:27:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26480         * file.c (path_check_0, fpath_check): disable path check on cygwin.
26481           [ruby-talk:213074]
26483 Thu Sep  7 02:03:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26485         * time.c (time_to_s): adopt new date format using digits
26486           e.g. "2006-09-07 02:03:45 +9000".
26488 Thu Sep  7 01:54:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26490         * string.c (sym_equal): override.  check equivalence.
26492 Wed Sep  6 13:25:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26494         * parse.y (symbols_i): need to initialize early-created symbols.
26495           [ruby-dev:29496]
26497 Wed Sep  6 12:05:19 2006  NARUSE, Yui  <naruse@ruby-lang.org>
26499         * ext/nkf/lib/kconv.rb (Kconv::toeuc): remove -m0 [ruby-dev:29505]
26501 Tue Sep  5 22:06:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26503         * ext/tk/tcltklib.c: use rb_ary_new3() since RARRAY_LEN() is not l-value.
26505         * ext/tk/tkutil/tkutil.c: use RARRAY_PTR() and RARRAY_LEN() and etc.
26506           fixed: [ruby-dev:29473]
26508 Tue Sep  5 06:47:22 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26510         * time.c (time_to_s): variable declaration after an execution
26511           statement.
26513 Tue Sep  5 05:49:41 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26515         * file.c (path_check_0): check if sticky bit is set on parent
26516           directories for executable path.  fixed: [ruby-dev:29415]
26518 Tue Sep  5 05:03:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26520         * numeric.c (fix_plus): addition in Fixnum will never overflow
26521           long.  a patch from Ondrej Bilka <neleai at seznam.cz>.
26522           [ruby-core:08794]
26524         * numeric.c (fix_minus): ditto.
26526         * bignum.c (rb_big_pow): eagerly truncate resulting bignum.
26527           [ruby-core:08794]
26529 Mon Sep  4 23:15:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26531         * time.c (time_to_s): make it conform to RFC2822 date format.
26532           [ruby-dev:29467]
26534 Mon Sep  4 21:43:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26536         * ext/dbm/extconf.rb: create makefile according to the result of check
26537           for dbm header.  fixed: [ruby-dev:29445]
26539 Mon Sep  4 21:39:42 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26541         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.
26543 Mon Sep  4 21:14:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26545         * time.c (time_strftime): include nul character.  fixed: [ruby-dev:29422]
26547 Mon Sep  4 16:39:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26549         * lib/cgi.rb (CGI::out): specify -x option for nkf.
26551         * lib/cgi.rb (CGI::out): should not convert utf-8 implicitly using
26552           NKF.  it is too Japanese centric.
26554 Mon Sep  4 14:23:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26556         * ext/dbm/extconf.rb (db_check): remove debug print.
26558 Mon Sep  4 06:46:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26560         * parse.y (rb_id2sym): intern if id is attrset_id.
26561           [ruby-dev:29420] [ruby-dev:29447]
26563 Mon Sep  4 01:25:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26565         * eval.c (rb_f_local_variables): list symbols.
26567         * struct.c (rb_struct_s_members_m): ditto.
26569         * variable.c (ivar_i): ditto.
26571         * variable.c (gvar_i): ditto.
26573         * variable.c (cv_i): ditto.
26575 Sun Sep  3 20:47:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26577         * ruby.h (SYMBOL_P): Qnil and Qfalse are not Symbol.
26579 Sun Sep  3 15:32:44 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26581         * lib/mkmf.rb: get rid of nil.to_s.
26583 Sun Sep  3 06:24:38 2006  Tanaka Akira  <akr@fsij.org>
26585         * ext/socket/socket.c (ruby_connect): sockerrlen should be socklen_t.
26587 Sun Sep  3 04:40:42 2006  Tanaka Akira  <akr@fsij.org>
26589         * ext/socket/extconf.rb: check arpa/inet.h for ntohs.
26591         * ext/socket/socket.c: include arpa/inet.h if available.
26593 Sat Sep  2 23:59:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26595         * string.c (Init_String): undef Symbol#new.
26597         * struct.c (rb_struct_s_def): wrong symbol detection.
26599 Sat Sep  2 23:59:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26601         * string.c (str_to_id): a bug caused by premature optimization.
26603 Sat Sep  2 23:53:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26605         * object.c (Init_Object): move symbol related code to string.c
26607         * string.c (Init_String): Symbol as subclass of String.
26609         * parse.y (rb_intern2): handle symbol as strings.
26611         * string.c (str_new): substring of symbols are mere strings, not
26612           symbols.
26614 Sat Sep  2 23:37:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26616         * ruby.h (struct RArray): embed small arrays.
26617           (RARRAY_LEN): defined for accessing array members.
26618           (RARRAY_PTR): ditto.
26620         * array.c: use RARRAY_LEN and RARRAY_PTR.
26622 Sat Sep  2 13:23:01 2006  Tanaka Akira  <akr@fsij.org>
26624         * common.mk (ia64.o): use the compiler driver to assemble ia64.s
26625           to use appropriate ABI.
26627 Sat Sep  2 12:06:35 2006  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
26629         * lib/soap/generator.rb (SOAP::SOAPGenerator#encode_tag): do not dump
26630           XML attribute which value is nil.  value "" and nil both were dumped
26631           as 'attr="value"'.  [ruby-dev:29395]
26633 Sat Sep  2 11:47:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26635         * eval.c (rb_eval): should handle when in else clause.  a patch
26636           from Eric Hodel <drbrain at segment7.net>.  [ruby-core:08662]
26638         * parse.y (primary): wrap with NODE_CASE.  [ruby-core:08663]
26640 Sat Sep  2 12:00:32 2006  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
26642         * lib/csv.rb (CSV::IOReader#initialize): use String#[](pos, len)
26643           instead of String#[](idx) to check utf BOM.  follows String#[](idx)
26644           behavior change of 1.9.
26646 Sat Sep  2 11:47:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26648         * eval.c (rb_eval): should handle when in else clause.  a patch
26649           from Eric Hodel <drbrain at segment7.net>.  [ruby-core:08662]
26651         * parse.y (primary): wrap with NODE_CASE.  [ruby-core:08663]
26653 Fri Sep  1 22:07:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26655         * ruby.h (RSTRING_EMBED_LEN_MASK): uses 5 bits to support 64bit
26656           environment.  [ruby-dev:29369]
26658 Fri Sep  1 22:02:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26660         * string.c (rb_str_resize): should copy embedded string to
26661           malloc'ed buffer.  a patch from <nobu at ruby-lang.org> in
26662           [ruby-dev:29369].  fixed: [ruby-dev:29368]
26664         * string.c (rb_str_ord): use %ld specifier since STRING_LEN() is a
26665           long.  [ruby-dev:29369]
26667 Fri Sep  1 21:41:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26669         * ext/socket/socket.c (socks_init): typo fixed.  a patch from Sven
26670           Klemm <sven at c3d2.de>.  [ruby-core:08770]
26672 Fri Sep  1 14:22:42 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
26674         * array.c (rb_ary_shuffle): RDoc fixed.
26676 Fri Sep  1 13:52:57 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26678         * ext/tk/lib/tk/font.rb: TkFont#current_configinfo() doesn't work
26679           on Tcl/Tk8.x.
26681 Fri Sep  1 09:32:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26683         * lib/irb/ruby-lex.rb (RubyLex::getc): should not push nil into
26684           reading buffer (@readed).  reported in
26685           <http://jarp.does.notwork.org/diary/200608c.html#200608311>.
26687 Thu Aug 31 23:59:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26689         * lib/mkmf.rb (configuration): follow nil.to_s.
26691 Thu Aug 31 20:50:46 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26693         * lib/mkmf.rb (create_makefile): follow nil.to_s.
26695         * win32/resource.rb: ditto.
26697 Thu Aug 31 20:21:47 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26699         * eval.c (search_required): use RSTRING_PTR and RSTRING_STR.
26701         * file.c (test_identical, rb_file_s_truncate): ditto.
26703         * io.c (pipe_open, rb_io_reopen): ditto.
26705         * object.c (nil_plus): ditto.
26707         * process.c (proc_spawn_n, rb_spawn): ditto.
26709         * util.c (ruby_add_suffix): ditto.
26711         * ext/Win32API/Win32API.c (Win32API_initialize): ditto.
26713         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): ditto.
26715         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext): ditto.
26717         * ext/tk/stubs.c, ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: ditto.
26719         * ext/win32ole/win32ole.c (ole_val2olevariantdata): ditto.
26721 Thu Aug 31 18:23:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26723         * ruby.h (struct RString): embed small strings.
26724           (RSTRING_LEN): defined for accessing string members.
26725           (RSTRING_PTR): ditto.
26727         * string.c: use RSTRING_LEN and RSTRING_PTR.
26729 Thu Aug 31 17:16:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26731         * array.c (rb_ary_shuffle_bang): new method.
26733         * array.c (rb_ary_shuffle): ditto.
26735         * random.c (genrand_real): ditto.
26737         * random.c (genrand_int32): export the function.
26739         * random.c (Init_Random): initialize random seed at the
26740           beginning.
26742 Thu Aug 31 13:12:06 2006  why the lucky stiff  <why@ruby-lang.org>
26744         * eval.c (ruby_init): rename top_cref to ruby_top_cref and export,
26745           along with ruby_cref, for use by the sandbox. [ruby-core:08762]
26747         * node.h: ditto.
26749 Wed Aug 30 12:01:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26751         * numeric.c (flo_hash): improve collision.
26753         * string.c (rb_memhash): new generic function to calculate hash value
26754           for memory chunk.
26756 Tue Aug 29 19:10:10 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26758         * hash.c (rb_hash_s_create): fixed memory leak, based on the patch
26759           by Kent Sibilev <ksruby at gmail.com>.  fixed: [ruby-talk:211233]
26761 Mon Aug 28 11:29:46 2006  Eric Hodel  <drbrain@segment7.net>
26763         * eval.c, parse.y: Revert.
26764         * ext/.document: Add digest.c.
26765         * ext/digest/digest.c: Make RDoc show up.
26766         * ext/io/wait.c: Fix call-seq in RDoc.
26768 Mon Aug 28 08:03:20 2006  Eric Hodel  <drbrain@segment7.net>
26770         * ext/.document: Add C files with RDoc.
26771         * ext/digest/digest.c: Convert to RDoc.
26772         * ext/io/wait.c: ditto.
26773         * lib/rdoc/parsers/parse_rb.rb: Fix typo.  Submitted by
26774           <calamitas at gmail.com>.  [ruby-core:08724]
26776 Mon Aug 28 07:21:47 2006  Eric Hodel  <drbrain@segment7.net>
26778         * file.c (File#size?): Fix documentation submitted by Rick Ohnemus.
26779           ruby-Bugs-5529.  [ruby-core:08725]
26781 Sun Aug 27 21:41:23 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
26783         * oniguruma.h: Version 4.4.0
26785         * regint.h: ditto.
26787         * regparse.h: ditto.
26789         * regexec.c: ditto.
26791         * regcomp.c ditto.
26793         * regparse.c: ditto.
26795 Sat Aug 26 08:03:03 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26797         * lib/date.rb, lib/date/format.rb: updated based on date2 3.8.2.
26799 Fri Aug 25 21:15:22 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
26801         * common.mk: add regint.h and oniguruma.h to dependence.
26803         * ext/strscan/depend: ditto.
26805 Fri Aug 25 20:35:57 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26807         * test/wsdl/document/echo.rb: removed.
26809         * test/wsdl/document/test_rpc.rb: remove echo.rb after test.
26810           [ruby-dev:29337]
26812 Fri Aug 25 17:02:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26814         * gc.c (gc_sweep): typo fixed.
26816 Fri Aug 25 16:05:50 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26818         * object.c (sym_call): check if the receiver is given.
26820 Fri Aug 25 01:10:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26822         * object.c (rb_Integer): Integer(nil) should raise TypeError.
26823           [ruby-talk:210205]
26825         * object.c (nil_to_s): no longer returns empty string but "nil".
26826           [ruby-talk:210205]
26828         * lib/mkmf.rb: avoid COMMON_HEADERS being nil.
26830 Wed Aug 23 00:25:14 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26832         * lib/rexml/source.rb (REXML::IOSource#initialize): encoding have to
26833           be set with the accessor.  fixed: [ruby-list:42737]
26835 Tue Aug 22 19:21:00 2006  Minero Aoki  <aamine@loveruby.net>
26837         * lib/net/smtp.rb: parameter `to_addrs' might be an Array,
26838           .flatten is required. [ruby-dev:29316]
26840 Tue Aug 22 18:47:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26842         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::handle_method):
26843           rdoc documents C module methods as instance methods. a patch in
26844           [ruby-core:08536].
26846 Tue Aug 22 12:35:57 2006  NARUSE, Yui  <naruse@ruby-lang.org>
26848         * ext/nkf/lib/kconv.rb (Kconv::RegexpEucjp): fix regexp for
26849           euc-jp [ruby-dev:29344]
26851 Sun Aug 20 11:46:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26853         * numeric.c (num_step): also return an enumerator object if no block
26854           is given.
26856 Sat Aug 19 16:47:51 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
26858         * ext/win32ole/win32ole.c (hash2named_arg): accept hash argument
26859           of symbol key.
26861         * test/win32ole/test_win32ole.rb
26862           ditto.
26864 Sat Aug 19 11:28:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26866         * file.c (rb_file_s_rename): use errno if set properly.
26867           fixed: [ruby-dev:29293]
26869 Fri Aug 18 01:05:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26871         * lib/cgi.rb (CGI::out): specify -m0 to disable MIME decode.  a
26872           patch from Fujioka <fuj at rabbix.jp>.  [ruby-dev:29284]
26874 Thu Aug 17 19:15:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26876         * file.c (rb_stat_[rRwWxX]): check for super user.
26877           fixed: [ruby-core:08616]
26879 Thu Aug 17 14:47:06 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26881         * lib/mkmf.rb: added rdoc by Daniel Berger.  [ruby-core:08177]
26883 Wed Aug 16 17:46:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26885         * marshal.c (r_byte): IO#getc returns one byte string now.
26886           fixed: [ruby-dev:29255]
26888 Wed Aug 16 17:22:44 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26890         * common.mk (pre-install-local): remove unnecessary code.
26891           [ruby-dev:29249]
26893 Wed Aug 16 11:45:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26895         * process.c (proc_setuid, proc_setgid, proc_seteuid, proc_setegid):
26896           get rid of bogus implementations on Mac OS X.
26898 Wed Aug 16 11:09:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26900         * ruby.c (set_arg0): fill argv other than the first with an empty
26901           string instead of NULL.
26903 Tue Aug 15 11:21:08 2006  Minero Aoki  <aamine@loveruby.net>
26905         * lib/net/smtp.rb: support SMTP/SSL.  Thanks Kazuhiro NISHIYAMA.
26907         * lib/net/smtp.rb: new method SMTP.use_ssl?
26909         * lib/net/smtp.rb: new method SMTP.enable_ssl.
26911         * lib/net/smtp.rb: new method SMTP.disable_ssl.
26913         * lib/net/smtp.rb: new method SMTP.default_ssl_port.
26915         * lib/net/smtp.rb: new method SMTP.default_tls_port.
26917         * lib/net/smtp.rb: now SMTP#enable_tls accepts a SSLContext
26918           object, instead of a verity and cert.  [FEATURE CHANGE]
26920         * lib/net/smtp.rb: new method SMTP.ssl_context.
26922         * lib/net/smtp.rb: new method SMTP.default_ssl_context.
26924         * lib/net/smtp.rb: export SMTP.authenticate.
26926         * lib/net/smtp.rb: export SMTP.auth_plain.
26928         * lib/net/smtp.rb: export SMTP.auth_login.
26930         * lib/net/smtp.rb: export SMTP.auth_cram_md5.
26932         * lib/net/smtp.rb: export SMTP.starttls.
26934         * lib/net/smtp.rb: export SMTP.helo.
26936         * lib/net/smtp.rb: export SMTP.ehlo.
26938         * lib/net/smtp.rb: export SMTP.mailfrom.
26940         * lib/net/smtp.rb: export SMTP.rcptto.
26942         * lib/net/smtp.rb: export SMTP.rcptto_list.
26944         * lib/net/smtp.rb: export SMTP.data.
26946         * lib/net/smtp.rb: export SMTP.quit.
26948 Sat Aug 12 22:33:06 2006  Eric Hodel  <drbrain@segment7.net>
26950         * string.c (String#split): Describe grouping behavior.  Patch by Jan
26951           Svitok <jan.svitok at gmail.com>.  [ruby-core:08603]
26953 Sun Aug 13 12:08:02 2006  Tanaka Akira  <akr@fsij.org>
26955         * ext/socket/socket.c: ANSIfied.  [ruby-core:08601]
26957 Sat Aug 12 15:55:32 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26959         * configure.in, bcc32/Makefile.sub, win32/Makefile.sub, win32/dir.h,
26960           win32/win32.c, win32/win32.h: large file support for win32.
26962 Fri Aug 11 15:39:25 2006  Eric Hodel  <drbrain@segment7.net>
26964         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#find_body): Make RDoc
26965           ignore C function prototypes.  Patch by Tilman Sauerbeck
26966           <tilman at code-monkey.de>.  [ruby-core:8574]
26967         * lib/yaml/tag.rb: Replace nodoc with stopdoc so Module methods get
26968           documented.
26970 Wed Aug  9 16:53:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26972         * lib/net/smtp.rb (Net::SMTP::auth_cram_md5): use ord to retrieve
26973           bytes from strings.  a patch from WATANABE Tetsuya
26974           <Tetsuya.WATANABE at nifty.com>.  [ruby-dev:29240]
26976 Tue Aug  8 23:49:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26978         * lib/irb/extend-command.rb (IRB::ExtendCommandBundle): pacify
26979           RDoc.  a patch from Eric Hodel <drbrain at segment7.net>.
26980           [ruby-core:08522]
26982 Tue Aug  8 19:26:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26984         * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder::get_string):
26985           affected by str[0] returns 1 char string.  [ruby-dev:29223]
26987         * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder::get_labels):
26988           ditto.
26990 Tue Aug  8 12:28:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26992         * parse.y (arg): allow newlines before ternary colon.  [ruby-dev:29189]
26994 Mon Aug  7 17:56:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26996         * ext/bigdecimal/bigdecimal.c, ext/digest/rmd160/rmd160ossl.c,
26997           ext/digest/sha1/sha1ossl.c, ext/readline/readline.c: move
26998           inclusion of config.h to pacify AIX.  a patch from Yutaka
26999           Kanemoto <kinpoco at gmail.com>.  [ruby-dev:29197]
27001 Mon Aug  7 15:55:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27003         * ext/syck/syck.c (syck_move_tokens): should avoid negative
27004           memmove.  [ruby-list:42625]
27006 Mon Aug  7 14:37:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27008         * configure.in, common.mk: AIX link issue.  a patch from Yutaka
27009           Kanemoto <kinpoco at gmail.com>.  [ruby-dev:29190]
27011         * ext/socket/socket.c: AIX socket support.  [ruby-dev:29190]
27013 Mon Aug  7 12:05:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27015         * dln.c, eval.c, gc.c, ruby.h: shut up AIX alloca warning.
27016           a patch from Yutaka Kanemoto <kinpoco at gmail.com>.
27017           [ruby-dev:29191]
27019 Sun Aug  6 20:34:24 2006  Tadayoshi Funaba  <tadf@dotrb.org>
27021         * lib/date/format.rb (str[fp]time): %[EO]U didn't denote %U.
27023 Sun Aug  6 17:12:12 2006  Tanaka Akira  <akr@fsij.org>
27025         * io.c (io_reopen): STDERR.reopen(open("/dev/tty", "w")) should not
27026           clear FMODE_PREP in STDERR.
27028 Sat Aug  5 22:53:41 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
27030         * oniguruma.h: Version 4.2.2
27032         * regint.h: ditto.
27034         * regparse.h: ditto.
27036         * regexec.c: ditto.
27038         * regcomp.c ditto.
27040         * regerror.c: ditto.
27042         * regparse.c: ditto.
27044 Sat Aug  5 17:07:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27046         * parse.y (top_local_setup): local_vars[-1] should point
27047           ruby_scope itself to protect local_tbl from garbage collection.
27048           [ruby-dev:29049]
27050 Sat Aug  5 13:49:43 2006  Tadayoshi Funaba  <tadf@dotrb.org>
27052         * lib/date/format.rb (str[fp]time): "%\n" means "\n".
27054 Fri Aug  4 12:13:22 2006  Eric Hodel  <drbrain@segment7.net>
27056         * lib: Clean up files for RDoc.
27057         * lib/.document: Include most of the standard library in RDoc
27058           generation.
27059         * lib/rdoc/ri/ri_formatter.rb: Don't unescape HTML in HtmlFormatter.
27060           Submitted by <ksruby at gmail.com>.  [ruby-core:08392].
27061         * lib/drb/ssl.rb: Close socket on SSLError [ruby-core:7197]
27063 Fri Aug  4 18:59:49 2006  Keiju Ishitsuka  <keiju@ruby-lang.org>
27065         * lib/irb/{init.rb,ruby-lex.rb,slex.rb}: can't input '\c' for
27066           [ruby-core: 7122]. and support for ruby1.8.X
27068 Fri Aug  4 14:02:14 2006  James Edward Gray II  <james@grayproductions.net>
27070         * lib/date/format.rb (__strptime, strftime): allow multi-line patterns
27071           in Date#strftime the same as Time#strftime accepts.
27072           fixed: [ruby-core:08466]
27074 Fri Aug  4 13:56:51 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27076         * pack.c (pack_pack): check argument overrun for 'P'.  based on a
27077           patch by rucila <rucila at yahoo.cojp>.  fixed: [ruby-dev:29182]
27079 Fri Aug  4 02:42:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27081         * sprintf.c (rb_str_format): a bug in %c type check.
27083 Fri Aug  4 01:28:19 2006  Tanaka Akira  <akr@fsij.org>
27085         * io.c (io_reopen): STDERR.reopen(File.open("/dev/null", "w")) should
27086           not fclose stderr.
27088 Thu Aug  3 15:16:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27090         * range.c (range_include): should always call Enumerable#include?
27091           (not #===) for non numeric end points.  [ruby-core:08477]
27092           [ruby-core:08496]
27094 Mon Jul 31 16:51:40 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27096         * win32/win32.c (exit_handler): new function; release winsock and
27097           environment work area.
27099         * win32/win32.c (NTInitialize): setup exit_handler.
27101         * win32/win32.c (StartSockets): use exit_handler.
27103         * win32/win32.c (rb_w32_getenv): use GetEnvironmentStrings() instead
27104           of GetEnvironmentVariable(), because the latter cannot distinguish
27105           whether a null environment variable exists or not.
27106           fixed: [ruby-talk:205123]
27108 Mon Jul 31 16:15:13 2006  Tanaka Akira  <akr@fsij.org>
27110         * test/ruby/test_process.rb (TestProcess#test_rlimit_nofile):
27111           setrlimit may fail with EINVAL.
27112           reported by MIYAMUKO Katsuyuki.  [ruby-dev:29174]
27114 Mon Jul 31 09:22:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27116         * ruby.h: use ifdef (or defined) for macro constants that may or
27117           may not be defined to shut up gcc's -Wundef warnings.
27118           [ruby-core:08447]
27120 Mon Jul 31 13:38:13 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27122         * lib/webrick/httprequest.rb (WEBrick::HTTPReuqest#parse_uri): improve
27123           for the value of IPv6 address in the Host: header field.
27125 Sun Jul 30 23:26:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27127         * eval.c (rb_call0): trace call/return of method defined from block.
27128           fixed: [ruby-core:08329]
27130         * eval.c (rb_trap_eval): make the current thread runnable to deal with
27131           exceptions which occurred within the trap.  fixed: [ruby-dev:27729]
27133         * lib/cgi/session.rb, lib/cgi/session/pstore.rb: suppress warnings.
27134           fixed: [ruby-talk:204896]
27136 Sat Jul 29 06:12:06 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27138         * ext/tk/lib/multi-tk.rb: freeze ip_name for security reason.
27140 Sat Jul 29 01:23:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27142         * lib/logger.rb: improves the amount of documentation that Rdoc
27143           picks up when processing logger.rb by moving the require
27144           statement back before the comment block.  a patch from Hugh
27145           Sasse <hgs at dmu.ac.uk>.  [ruby-core:08422]
27147 Fri Jul 28 17:18:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27149         * ext/curses/curses.c (NUM2CH, CH2FIX): use single char strings.
27151 Fri Jul 28 14:09:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27153         * eval.c (rb_call): fixed typo in cache look-up.  [ruby-dev:29167]
27155 Fri Jul 28 10:41:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27157         * eval.c (rb_call): a bug in method cache look-up.
27158           http://www.rubyist.net/~matz/20060720.html#c04
27160 Fri Jul 28 10:19:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27162         * sprintf.c (rb_f_sprintf): documentation update patch from Jacob
27163           Fugal <lukfugl at gmail.com>.  [ruby-core:08418]
27165 Fri Jul 28 09:41:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27167         * time.c (time_to_s): fixed typo.  [ruby-dev:29162]
27169 Fri Jul 28 00:26:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27171         * math.c (domain_check): ANSI style function arguments
27173         * math.c (math_log): too few argument to domain_check().
27175 Thu Jul 27 21:19:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27177         * math.c (domain_check): a new function to check domain error
27178           explicitly for systems that return NaN like FreeBSD.
27179           [ruby-core:07019]
27181         * math.c (math_acos, math_asin, math_acosh, math_atanh, math_log,
27182           math_log10, math_sqrt): use domain_check().
27184         * math.c (math_sqrt): fix documentation flaw.
27186 Thu Jul 27 22:21:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27188         * time.c (time_to_s): fixed format mismatch.
27190 Thu Jul 27 18:12:12 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
27192         * time.c: need to declare time_utc_offset.
27194 Thu Jul 27 17:01:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27196         * io.c (io_close): always calls "close" method of the receiver.
27197           [ruby-core:6911] [ruby-core:8112]
27199 Thu Jul 27 16:41:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27201         * ext/openssl/ossl.h: move <ruby.h> inclusion point to shut up
27202           Solaris compiler.  [ruby-core:08114]
27204         * time.c (time_to_s): use +0900 style timezone string for local time.
27205           [ruby-dev:29143]
27207 Wed Jul 26 22:20:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27209         * configure.in: add support for as and ASFLAGS.  [ruby-dev:29138]
27211 Wed Jul 26 21:59:33 2006  Minero Aoki  <aamine@loveruby.net>
27213         * lib/net/http.rb (Net::HTTP#post, request_post, request): should
27214           set Content-Type: x-www-form-urlencoded by default.
27216         * lib/net/http.rb (Net::HTTPHeader#content_type): should return
27217           nil when there's no Content-Type.
27219         * lib/net/http.rb (Net::HTTPHeader#sub_type): should return nil
27220           when there's no sub Content-Type (e.g. "Content-Type: text").
27222         * lib/net/http.rb (Net::HTTPHeader#type_params): wrongly failed
27223           when there's no Content-Type.
27225 Wed Jul 26 18:38:13 2006  Minero Aoki  <aamine@loveruby.net>
27227         * ext/strscan/strscan.c (strscan_do_scan): always return nil if
27228           p->curr exceeds string size.
27230 Wed Jul 26 18:33:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27232         * eval.c (Init_eval): rename #invoke_method and
27233           #invoke_functional_method to __send and __send! respectively.
27235         * eval.c (remove_method): prohibit removing __send and __send!.
27237         * eval.c (rb_undef): prohibit undef'ing  __send and __send!.
27239         * eval.c (rb_eval): prohibit redefining  __send and __send!.
27241         * lib/delegate.rb (Delegator): preserve __send.
27243 Wed Jul 26 18:14:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27245         * ext/pty/pty.c (getDevice): retry once after GC on failure.
27246           [ruby-core:08282]
27248 Wed Jul 26 17:43:20 2006  Minero Aoki  <aamine@loveruby.net>
27250         * ext/strscan/strscan.c (strscan_do_scan):
27251           StringScanner.new("").scan(//) should return "". [ruby-Bugs:4361]
27253 Wed Jul 26 17:28:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27255         * sprintf.c (rb_str_format): prepend ".." to %u for negative bignum,
27256           but not "-".  fixed: [ruby-core:08167]
27258 Wed Jul 26 16:39:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27260         * string.c (rb_str_scan): add string modification check.
27261           [ruby-core:7216]
27263 Wed Jul 26 16:06:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27265         * lib/cgi.rb (CGI::QueryExtension::read_multipart): check
27266           multipart boundary end.  a patch from Fujioka <fuj at rabbix.jp>
27267           [ruby-dev:28470]
27269 Wed Jul 26 01:02:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27271         * configure.in: suppress warnings by automake 1.8 or later.
27273 Tue Jul 25 14:46:14 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27275         * lib/mkmf.rb (configuration): typo.
27277 Tue Jul 25 13:14:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27279         * process.c (rb_proc_times): rename hz to hertz to avoid name
27280           crash on AIX.  [ruby-dev:29126]
27282 Mon Jul 24 22:03:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27284         * eval.c (backtrace): skip frames successive on node and method name.
27286 Mon Jul 24 15:51:52 2006  Tanaka Akira  <akr@fsij.org>
27288         * ext/readline/readline.c (readline_readline): rl_deprep_term_function
27289           may be NULL with libedit.  reported by Ryan Davis.  [ruby-dev:29070]
27291 Mon Jul 24 15:19:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27293         * eval.c (rb_call0): revert last change.  [ruby-dev:29112]
27294           [ruby-core:08374]
27296 Sun Jul 23 22:59:49 2006  Tanaka Akira  <akr@fsij.org>
27298         * test/socket/test_unix.rb: disabled on cygwin.
27299           reported by Kouhei Yanagita.  [ruby-dev:29080]
27301 Fri Jul 21 23:57:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27303         * ruby.c (proc_options): script is never used while recursing.
27305 Fri Jul 21 21:21:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27307         * eval.c (rb_call0): include funcalled methods in caller list.
27308           fixed: [ruby-core:08290]
27310 Fri Jul 21 17:52:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27312         * object.c (rb_cstr_to_dbl): "9_e8" should consider "_e8" as
27313           trailing garbage so that it should return 9.0.  [ruby-dev:29088]
27315 Fri Jul 21 12:11:00 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27317         * ext/extmk.rb, lib/mkmf.rb (with_destdir): remove drive letter before
27318           prepending destdir on DOSISH.
27320 Fri Jul 21 04:17:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27322         * eval.c (rb_call): try local method look-up first for fcall, then
27323           normal method look-up.  [ruby-talk:202564]
27325         * eval.c (rb_get_method_body): save local method cache separately.
27327         * eval.c (search_method): export info whether method is local or
27328           not.
27330 Thu Jul 20 20:27:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27332         * object.c (rb_mod_attr): make Module#attr to be an alias to
27333           attr_reader.  [RCR#331]
27335 Thu Jul 20 15:07:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27337         * ruby.h: export classes/modules to implement sandbox.
27338           [ruby-core:08283]
27340 Wed Jul 19 19:40:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27342         * eval.c (rb_yield_0): should check args_args before lambda
27343           argument check.  [ruby-dev:29029]
27345 Tue Jul 18 23:53:59 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27347         * process.c (rb_f_system): shouldn't block SIGCHLD if it's not
27348           exist.
27350 Tue Jul 18 22:10:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27352         * process.c (rb_f_system): block SIGCHLD during the process
27353           execution, like glibc system(3) does.  [ruby-talk:202361]
27355 Tue Jul 18 23:10:43 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27357         * win32/win32.c (open_ifs_socket): should not use plain malloc.
27359         * win32/win32.c (rb_w32_opendir): should not use plain realloc.
27361 Tue Jul 18 18:05:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27363         * test/ruby/test_float.rb (TestFloat::test_strtod): update test to
27364           conform strtod change.
27366 Tue Jul 18 16:52:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27368         * eval.c (yield_under_i): argument should be passed in avalue
27369           form.  [ruby-dev:29044]
27371 Tue Jul 18 15:49:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27373         * pack.c (pack_unpack): propagate association array to copied
27374           string.  [ruby-core:08223]
27376         * pack.c (pack_unpack): return referenced string itself if it has
27377           same length as specified.  a patch from <nobu at ruby-lang.org>
27378           in [ruby-core:08225].
27380         * pack.c (pack_pack): taint 'p' packed strings.
27382 Tue Jul 18 15:19:07 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27384         * intern.h (st_foreach_safe): fix prototype.
27386         * node.h (NODE_LMASK): bigger than long on LLP64.
27388         * missing/vsnprintf.c (BSD__uqtoa): new function to support LLP64.
27389           all changes are derived from [ruby-dev:29045]
27391 Tue Jul 18 14:03:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27393         * lib/webrick/httpserver.rb (WEBrick::HTTPServer::unmount): remove
27394           inpect argument from sprintf.  [ruby-dev:29039]
27396 Tue Jul 18 10:53:37 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27398         * object.c (rb_cstr_to_dbl): limit out-of-range message.
27400         * util.c (ruby_strtod): return end pointer even if ERANGE occurred.
27401           fixed: [ruby-dev:29041]
27403 Mon Jul 18 00:43:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27405         * util.c (ruby_strtod): stop at dot not followed by digits.
27406           fixed: [ruby-dev:29036]
27408 Tue Jul 18 00:01:27 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27410         * ext/extmk.rb: remove LIBRUBY_SO if static linked extensions exist.
27412 Mon Jul 17 23:30:46 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27414         * configure.in (rb_cv_msvcrt): defaulted to msvcrt.  Workaround for a
27415           bug of cygwin 1.5.20.
27417 Mon Jul 17 22:55:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27419         * ext/io/wait/wait.c (io_ready_p): protoize.
27421 Mon Jul 17 13:43:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27423         * pack.c (define_swapx): should not use plain malloc.
27425         * ext/curses/curses.c (curses_getmouse): ditto.
27427 Mon Jul 17 12:58:41 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
27429         * configure.in: should use ac_cv_lib_dl_dlopen=no on MinGW.
27431 Mon Jul 17 11:47:35 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27433         * st.c: still need to include config.h on some platforms.
27435 Sat Jul 15 01:09:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27437         * st.c (malloc): use xmalloc/xcalloc instead of plain
27438           malloc/calloc, to detect memory allocation failure.  see
27439           <http://www.nongnu.org/failmalloc/>.
27441 Fri Jul 14 13:08:13 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27443         * ext/tk/lib/tk.rb: add methods for new features of latest Tcl/Tk8.5.
27445         * ext/tk/lib/tk/namespace.rb: ditto.
27447 Fri Jul 14 02:30:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27449         * lib/monitor.rb: document patch from Hugh Sasse <hgs at dmu.ac.uk>.
27450           [ruby-core:08205]
27452 Fri Jul 14 00:10:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27454         * array.c (rb_ary_pop): may cause realloc oscillation.  a patch
27455           from MORITA Naoyuki <mlgetter at kidou.sakura.ne.jp>.
27456           [ruby-dev:29028]
27458 Thu Jul 13 22:23:56 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27460         * ext/tk/lib/tk/composite.rb: improve handling of the classname on the
27461           option database for the widget class which includes TkComposite.
27463 Thu Jul 13 00:40:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27465         * ruby.h (FIX2LONG): returns integer of size of VALUE.
27466           [ruby-dev:29024]
27468         * ruby.h (FIX2ULONG): ditto.
27470 Wed Jul 12 20:05:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27472         * parse.y (f_args): allow post mandatory arguments after optional
27473           arguments.  [ruby-dev:29014]
27475         * parse.y (new_args_gen): allow post_args without rest_args.
27477         * eval.c (formal_assign): ditto.
27479         * parse.y (new_args_gen): check post argument duplication.
27481 Tue Jul 11 20:58:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27483         * ruby.h: export rb_cMethod.  [ruby-talk:201259]
27485 Tue Jul 11 19:13:33 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27487         * ext/tk/lib/multi-tk.rb: remove restriction on the class of
27488           pseudo-toplevel.
27490 Tue Jul 11 18:00:57 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27492         * ext/tk/lib/multi-tk.rb: security fix.
27494 Tue Jul 11 17:28:08 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27496         * string.c (rb_str_dump): need to extend len for \b.
27498 Tue Jul 11 15:29:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27500         * bignum.c (rb_int2big): use SIGNED_VALUE.  [ruby-dev:29019]
27502         * bignum.c (rb_int2inum, rb_uint2inum): use VALUE sized integer.
27504         * bignum.c (rb_big2long, rb_big2ulong): ditto.
27506         * numeric.c (rb_num2long, rb_num2ulong): ditto.
27508         * numeric.c (check_int, check_uint): ditto.
27510         * bignum.c (rb_quad_pack): typo fixed.
27512 Tue Jul 11 13:40:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27514         * bignum.c (bignorm): sizeof(long) may be smaller than
27515           sizeof(VALUE).  [ruby-dev:29013]
27517         * ruby.h (FIXNUM_MAX): fixnum may be bigger than long.
27519         * ruby.h (SIGNED_VALUE): signed integer of size of VALUE.
27521 Mon Jul 10 23:37:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27523         * lib/soap/rpc/proxy.rb (Proxy::Operation::response_doc): remove
27524           splat star from return statements.
27526         * lib/soap/rpc/proxy.rb (Proxy::Operation::response_obj): retrieve
27527           the first value from the result array if response has only one
27528           value.
27530 Mon Jul 10 22:00:00 2006  Shigeo Kobayashi  <shigek@ruby-lang.org>
27532         * ext/bigdecimal/bigdecimal.c: Allows '_' to appear within
27533           digits.  [ruby-dev:28872]
27535         * ext/bigdecimal/lib/bigdecimal/util.rb: Bug in to_r reported by
27536           [ruby-list:42533] fixed.
27538 Mon Jul 10 19:22:19 2006  Tanaka Akira  <akr@fsij.org>
27540         * gc.c (gc_sweep): expand heap earlier.
27541           reported by MORITA Naoyuki.  [ruby-dev:28960]
27543 Mon Jul 10 18:59:34 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27545         * ext/tk/lib/tk/font.rb: sorry. mistaken to patch.
27547 Mon Jul 10 18:46:52 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27549         * ext/tk/tcltklib.c: make SEGV risk lower at exit.
27551         * ext/tk/lib/tk.rb: ditto.
27553         * ext/tk/lib/multi-tk.rb: fail to call function-style methods on slave
27554           interpreters. The strategy (MultiTkIp_PseudoToplevel_Evaluable) to
27555           fix the problem is a little tricky. You may have to take care of
27556           conflicting with it.
27558         * ext/tk/lib/tk.rb: a little change for the pseudo-toplevel strategy.
27560         * ext/tk/lib/tk/font.rb: ditto.
27562         * ext/tk/lib/tk/msgcat.rb: ditto.
27564         * ext/tk/lib/tkextlib/itk/incr_tk.rb: ditto.
27566         * ext/tk/sample/demos-en/widget: fail to call function-style methods
27567           on sample scripts. To fix it, a strategy which similar to the way
27568           on MultiTiIp is used. Please take care when re-write and re-run a
27569           demo script on the Widget-Demo code viewer.
27571         * ext/tk/sample/demos-jp/widget: ditto.
27573 Mon Jul 10 17:32:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27575         * sample/test.rb: update test suites.
27577         * test/ruby/test_assignment.rb (TestAssignment::test_yield): ditto.
27579         * test/ruby/test_iterator.rb (TestIterator::test_itertest): ditto.
27581 Mon Jul 10 14:43:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27583         * eval.c (rb_call): remove erroneously restored prot_tag->blkid
27584           initialization.  [ruby-dev:28997]  [ruby-dev:29000]
27586 Mon Jul 10 13:58:08 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27588         * signal.c (install_nativethread_sighandler): commented out.
27590 Mon Jul 10 09:29:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27592         * eval.c (rb_clear_cache_for_remove): clear entries for included
27593           module.  fixed: [ruby-core:08180]
27595 Mon Jul 10 02:22:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27597         * eval.c (proc_invoke): should not overwrite block information in
27598           current frame.  [ruby-dev:28957]
27600         * eval.c (rb_yield_0): retrieve proper block object from the frame
27601           record.
27603         * eval.c (proc_alloc): return preserved block object if it's
27604           available.
27606 Mon Jul 10 01:48:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27608         * st.h (st_data_t): use pointer sized integer for st_data_t.
27609           [ruby-dev:28988]
27611 Sun Jul  9 18:06:47 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27613         * lib/mkmf.rb (try_constant): fix for value 1 at cross compiling.
27615         * lib/mkmf.rb (create_makefile): prevent substitution of macro
27616           definition.  fixed: http://www.yotabanana.com/lab/20060624.html#p02
27618 Sun Jul  9 07:58:48 2006  Ryan Davis  <ryand@zenspider.com>
27620         * lib/rdoc/parsers/parse_f95.rb: massive overhaul from Yasuhiro
27621           Morikawa including new file suffixes, function support, public
27622           variables and constants, derived-types, defined operators and
27623           assignments, namelists, and subroutine and function
27624           arguments. Truly massive.
27626         * lib/rdoc/diagram.rb: diagrams are now cached.
27628         * lib/irb/completion.rb: fixed a crasher when completing against
27629           an unnamed class/module.
27631         * lib/rdoc/parsers/parse_c.rb: private comment (--/++) support in
27632           C-file rdoc.
27634         * lib/debug.rb: minor clarification in help.
27636         * lib/pp.rb: minor clarification on exception.
27638 Sun Jul  9 00:54:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27640         * eval.c (next_jump): deal with destination of next.
27641           fixed: [ruby-core:08169]
27643 Fri Jul  7 17:49:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27645         * string.c (rb_str_ord): extract lower byte.  fixed: [ruby-dev:28980]
27647         * lib/jcode.rb (String#succ!): fix for 1.9.  fixed: [ruby-dev:28979]
27649 Fri Jul  7 14:05:03 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27651         * win32/Makefile.sub (config.h): define FUNC_STDCALL/FUNC_CDECL.
27652           from [ruby-dev:28970].
27654 Fri Jul  7 00:38:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27656         * hash.c (rb_hash_default): should not call default procedure if
27657           no key is given.  [ruby-list:42541]
27659 Thu Jul  6 23:30:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27661         * process.c (rb_proc_times): use sysconf(_SC_CLK_TCK) value prior to
27662           HZ and CLK_TCK.  fixed: [ruby-talk:200293]
27664 Thu Jul  6 21:50:06 2006  Minero Aoki  <aamine@loveruby.net>
27666         * ext/racc/cparse/cparse.c: sync with original code, rev 1.8.
27668         * ext/racc/cparse/cparse.c: should mark CparseParams objects.
27670         * lib/racc/parser.rb: sync with original code, rev 1.8.
27672         * lib/racc/parser.rb: update coding style.
27674 Wed Jul  5 05:28:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27676         * parse.y (block_param): should allow block argument after splat
27677           and post splat args.
27679 Wed Jul  5 01:12:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27681         * test/ruby/test_lambda.rb (TestLambdaParameters::test_lambda_as_iterator):
27682           -> style block no longer available.  [ruby-dev:28958]
27684 Tue Jul  4 21:48:56 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27686         * ruby.c (proc_options): suppress warning on DOSISH.
27688 Tue Jul  4 15:12:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27690         * eval.c (rb_call): should not set prot_tag->blkid since it would
27691           never catch breaks at this level.  [ruby-dev:28922]
27693 Tue Jul  4 04:48:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27695         * bignum.c: ruby 1.9 HEAD 64 bit warnings clean up from
27696           <ville.mattila at stonesoft.com>.   [ruby-core:08120]
27698 Mon Jul  3 19:04:38 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27700         * ext/tk/tcltklib.c (ip_make_menu_embeddable): help to make a menu
27701           widget embeddable (pack, grid, and so on) like as a general widget.
27702           However, an embeddable menu may require to be defined some event
27703           bindings for general use.
27705         * ext/tk/lib/tk/event.rb: [bug fix] Tk.callback_break and
27706           Tk.callback_continue don't work on MultiTkIp.
27708         * ext/tk/lib/multi-tk.rb: ditto.
27710         * ext/tk/lib/tk.rb: lack of Tk.callback_return.
27712         * ext/tk/lib/tk/menu.rb: improve creating clone menus.
27714 Mon Jul  3 14:42:06 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27716         * ext/etc/extconf.rb (PW_UID2VAL, PW_GID2VAL): defaulted to conversion
27717           from int, and sys/types.h needs to be included before grp.h.
27718           fixed: [ruby-dev:28938]
27720 Mon Jul  3 10:44:01 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27722         * io.c (popen_exec): close file descriptors other than standard I/Os.
27723           fixed: [ruby-dev:28924]
27725 Mon Jul  3 05:15:29 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27727         * test/openssl/test_asn1.c: String#[]= doesn't accept Integer.
27729 Mon Jul  3 01:14:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27731         * string.c (rb_str_inspect): encode \b (\010) for escape.
27732           [ruby-dev:28927]
27734         * string.c (rb_str_dump): ditto.
27736 Sun Jul  2 19:03:30 2006  Minero Aoki  <aamine@loveruby.net>
27738         * ext/racc/cparse/cparse.c: sync with original code, rev 1.7.
27740         * ext/racc/cparse/cparse.c: must require version.h to get
27741           RUBY_VERSION_CODE.
27743 Sun Jul  2 18:42:27 2006  Minero Aoki  <aamine@loveruby.net>
27745         * ext/racc/cparse/cparse.c: sync with original source code, rev
27746           1.6.
27748         * ext/racc/cparse/cparse.c: do not use rb_iterate to give a block
27749           to the method, use rb_block_call instead. [ruby-dev:28445]
27751 Sun Jul  2 11:22:03 2006  Tanaka Akira  <akr@m17n.org>
27753         * io.c (io_reopen): STDOUT.reopen(filename, "w+") didn't work.
27754           (rb_io_reopen): STDOUT.reopen(File.open(filename, "w+")) didn't work.
27756 Sat Jul  1 23:55:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27758         * eval.c (PUSH_FRAME): initialize frame->self.  [ruby-dev:28911]
27760 Sat Jul  1 17:00:42 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27762         * test/webrick/utils.rb: use Proc#yield instead of Proc#call.
27763           [ruby-dev:28914]
27765 Sat Jul  1 15:15:49 2006  Tanaka Akira  <akr@m17n.org>
27767         * test/socket/test_nonblock.rb: add timeout to send/receive
27768           an empty UDP packet.
27769           [ruby-dev:28820]
27771 Fri Jun 30 23:46:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27773         * configure.in: should test isinf for Solaris with GCC compiler.
27774           a patch from <ville.mattila at stonesoft.com>.  [ruby-core:07791]
27776         * configure.in: -shared patch from Andrew Morrow
27777           <andrew.c.morrow at gmail.com>.  [ruby-core:08100]
27779 Fri Jun 30 19:35:41 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27781         * lib/webrick/httputils.rb (WEBrick::HTTPUtils._escape): should
27782           use String#ord to get ascii code from the one-character string.
27783           [ruby-dev:28901]
27785 Thu Jun 29 23:56:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27787         * gc.c (gc_mark_children): a bug in NODE_BLOCK_PASS marking.
27788           [ruby-dev:28908]
27790 Thu Jun 29 23:04:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27792         * parse.y: use ARGSPUSH instead of ARGSCAT to prevent too much
27793           splat expansion.
27795         * eval.c (when_check): need to handle ARGSPUSH as well.
27797         * eval.c (block_orphan): lambda and proc from method are always
27798           orphan.
27800         * gc.c (gc_mark_children): proper marking for NODE_LAMBDA.
27802 Thu Jun 29 22:47:30 2006  Tanaka Akira  <akr@m17n.org>
27804         * eval.c (SETUP_ARGS0): avoid GC problem.
27805           [ruby-dev:28902]
27807 Thu Jun 29 18:58:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27809         * ext/bigdecimal/bigdecimal.c (BigDecimal_version): fix patch
27810           failure.
27812 Thu Jun 29 18:00:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27814         * ext/bigdecimal/bigdecimal.c: add RDoc document.  a patch from
27815           mathew <meta at pobox.com>.   [ruby-core:07050]
27817 Wed Jun 28 14:53:09 2006  Eric Hodel  <drbrain@segment7.net>
27819         * lib/optparse.rb: RDoc patch from Robin Stocker <robin@nibor.org>
27820           [ruby-core:08087]
27822 Wed Jun 28 23:23:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27824         * object.c (rb_cstr_to_dbl): underscores should appear only
27825           between digits.  [ruby-dev:28891]
27827 Wed Jun 28 19:04:34 2006  Tanaka Akira  <akr@m17n.org>
27829         * test/socket/test_unix.rb: test_seqpacket_pair removed.
27830           [ruby-dev:28846]
27832 Wed Jun 28 13:51:21 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27834         * eval.c (when_check): arbitrary values are allowed after splats.
27835           fixed: [ruby-dev:28879]
27837 Wed Jun 28 09:16:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27839         * parse.y (primary): remove meaningless else-only case statement
27840           syntax.
27842 Wed Jun 28 08:08:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27844         * eval.c (rb_eval): problem to handle else part.  [ruby-dev:28873]
27846 Wed Jun 28 01:48:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27848         * eval.c (rb_eval): support splat in when expression list.
27849           [ruby-dev:28822]
27851         * eval.c (when_check): a new auxiliary function for case match.
27853         * eval.c (when_cond): ditto.
27855 Wed Jun 28 01:05:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27857         * object.c (rb_cstr_to_dbl): should not skip '_' at the beginning
27858           of a string.  [ruby-dev:28830]
27860         * bignum.c (rb_cstr_to_inum): ditto.
27862 Tue Jun 27 23:03:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27864         * string.c: RDoc update for =~ method.  a patch from Alex Young
27865           <alex at blackkettle.org>.  [ruby-core:08068]
27867 Tue Jun 27 22:47:18 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27869         * ext/tk/tcltklib.c: forgot to update TCLTKLIB_RELEASE_DATE.
27871         * ext/tk/lib/tk.rb (tk_tcl2ruby): [bug fix] sometimes fail to convert
27872           a tcl string to a ruby object if the tcl string includes "\n".
27874 Tue Jun 27 20:05:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27876         * io.c (pipe_open): backout unnecessary fix on 2006-06-26.
27877           [ruby-dev:28865]
27879         * eval.c (rb_yield_0): exact argument number check now done only
27880           for lambda Proc.
27882         * eval.c (rb_yield_0): add check for number of arguments, if
27883           there's one lambda block parameter.
27885 Tue Jun 27 16:04:05 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
27887         * win32/win32.h: define isascii on MinGW for msvcrt compatibility.
27889         * configure.in: set ac_cv_header_sys_time_h=no on MinGW
27890           for msvcrt compatibility.
27892 Tue Jun 27 11:36:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27894         * ext/etc/etc.c (setup_passwd, setup_group): allow bignum uid, gid and
27895           so on.  [ruby-talk:199102]
27897 Tue Jun 27 10:46:53 2006  Tanaka Akira  <akr@m17n.org>
27899         * eval.c (rb_yield_0): avoid core dump.  [ruby-dev:28840]
27901 Mon Jun 26 11:03:00 2006  Eric Hodel  <drbrain@segment7.net>
27903         * lib/rdoc/ri: Add options to limit the ri search path.
27905 Tue Jun 27 01:31:59 2006  Tanaka Akira  <akr@m17n.org>
27907         * ext/socket/socket.c (bsock_recv_nonblock): new method
27908           BasicSocket#recv_nonblock.
27909           (udp_recvfrom_nonblock): renamed from ip_recvfrom_nonblock.
27910           IPSocket#recvfrom_nonblock is moved to UDPSocket#recvfrom_nonblock.
27911           (unix_recvfrom_nonblock): removed.
27912           UNIXSocket#recvfrom_nonblock is removed.
27914 Tue Jun 27 00:52:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27916         * ext/ripper/eventids2.c (token_assoc): added tCHAR, which is not
27917           under 256 now.  fixed: [ruby-dev:28832]
27919 Mon Jun 26 23:42:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27921         * eval.c (call_trace_func): no check for argument number of the
27922           callback.  fixed: [ruby-dev:28812]
27924 Mon Jun 26 18:37:44 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27926         * ext/tk/tcltklib.c (ip_delete): fix SEGV when a slave-ip is
27927           deleted on callback.
27929 Mon Jun 26 15:40:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27931         * ext/socket/socket.c (sock_accept): revert to avoid ambiguity of
27932           argument evaluation order.  [ruby-dev:28861]
27934         * ext/socket/socket.c (sock_accept_nonblock): ditto.
27936 Mon Jun 26 10:47:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27938         * io.c (pipe_open): avoid closing uninitialized file descriptors.
27939           a patch from <tommy at tmtm.org> [ruby-dev:28600]
27941 Sun Jun 25 23:02:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27943         * Makefile.in, mkconfig.rb: catch-up for latest autoconf.
27945 Sun Jun 25 17:44:16 2006  Tanaka Akira  <akr@m17n.org>
27947         * parse.y (paren_args): wrap $2 by escape_Qundef because it may be
27948           Qundef.  [ruby-dev:28843]
27950 Sun Jun 25 17:18:33 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
27952         * ext/win32ole/win32ole.c(ole_invoke): support some kind of
27953           method of word. [ruby-Bugs#3237]
27955         * test/win32ole/test_word.rb: ditto.
27957 Sat Jun 24 23:48:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27959         * parse.y: replace terminal token names with more descriptive
27960           name, i.e. kEND to keyword_end.  [ruby-list:42477]
27962 Sat Jun 24 23:37:41 2006  Tanaka Akira  <akr@m17n.org>
27964         * eval.c (rb_eval): use rb_ary_new2 instead of rb_ary_new4 to avoid
27965           GC problem.
27966           (rb_yield_values): use rb_ary_new2 instead of rb_ary_new4.
27968         * array.c (rb_ary_new4): don't set len as n if contents is not
27969           initialized.  make it safe with GC.
27971           [ruby-dev:28826]
27973 Fri Jun 23 23:35:32 2006  Tanaka Akira  <akr@m17n.org>
27975         * ruby.h, lib/drb/drb.rb, lib/drb/invokemethod.rb: remove Values class.
27976           [ruby-dev:28805]
27978 Fri Jun 23 17:27:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27980         * eval.c (rb_block_pass): removed.
27982         * eval.c (rb_thread_start_1): use rb_proc_yield() instead of
27983           rb_block_pass().  fixed: [ruby-dev:28794]
27985 Thu Jun 22 11:52:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27987         * lib/net/http.rb (Net::HTTPResponse): duplicated error 501;
27988           HTTPInternalServerError should be error 500.  [ruby-core:08037]
27990 Thu Jun 22 11:47:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27992         * variable.c (rb_mod_name): returns nil for anonymous modules.
27993           [ruby-talk:198440]
27995 Thu Jun 22 10:31:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27997         * string.c (rb_str_aref): "abc"[3] should not return an empty
27998           string but nil.  [ruby-dev:28786]
28000 Thu Jun 22 05:15:58 2006  Tanaka Akira  <akr@m17n.org>
28002         * ext/socket/socket.c (sock_s_socketpair): try GC only once.
28003           [ruby-dev:28778]
28005 Wed Jun 21 21:20:31 2006  Tadayoshi Funaba  <tadf@dotrb.org>
28007         * lib/date.rb (jd_to_commercial): now works fine even if in
28008           mathn-ized context.
28010 Wed Jun 21 17:29:57 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28012         * ext/socket/getaddrinfo.c (freeaddrinfo, get_name): fixed typo.
28014         * ext/tk/tcltklib.c (tcl_eval, tcl_global_eval): ditto.
28016         * ext/zlib/zlib.c (rscheck): constified.
28018 Wed Jun 21 17:18:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28020         * lib/pp.rb (PP::PPMethods::seplist): should have preserved
28021           original reference to the array.  [ruby-dev:28747]
28023 Wed Jun 21 14:35:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28025         * parse.y (block_param): do not use multiple assignment for a sole
28026           block parameter.  [ruby-dev:28710]
28028         * eval.c (rb_yield_0): pass a raw yielded value to a sole block
28029           parameter if a value is passed by yield.
28031         * eval.c (proc_invoke): args may not be an array.
28033         * eval.c (rb_proc_yield): pass original value without wrapping
28034           it in an array.
28036 Wed Jun 21 14:06:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28038         * parse.y (method_call): remove (fn)(args) style lambda
28039           invocation, add fn.(args) instead.
28041 Wed Jun 21 08:39:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28043         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): merge Date
28044           and Time processing.  [ruby-core:08033]
28046 Wed Jun 21 03:01:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28048         * eval.c, file.c, etc.: code-cleanup patch from Stefan Huehner
28049           <stefan at huehner.org>.  [ruby-core:08029]
28051 Wed Jun 21 01:40:25 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28053         * parse.y (reswords): modifier token is no longer returned in fname
28054           state.  fixed: [ruby-dev:28775]
28056 Tue Jun 20 23:28:34 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28058         * ext/extmk.rb (parse_args): provisional catch-up for the recent changes.
28060         * lib/optparse.rb (OptionParser::List#summarize, OptionParser#order!): ditto.
28062 Tue Jun 20 11:07:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28064         * eval.c (proc_invoke): intercept break and return from lambda
28065           Proc objects.  [ruby-dev:28742]
28067         * eval.c (proc_invoke): remove unnecessary YIELD_PROC_CALL flag.
28069         * eval.c (YIELD_EXACT_ARGS): renamed from YIELD_LAMBDA_CALL, which
28070           is no longer related to the behavior turned on by this flag.
28072         * eval.c (return_jump): no need to care about PROT_YIELD.
28074         * eval.c (break_jump): no jump to toplevel PROT_THREAD tag.
28076         * eval.c (rb_yield_0): fix confusion between lambda (which is a
28077           property of a proc) and pcall (which depends on whether it's
28078           called via yield or call).
28080         * eval.c (rb_thread_yield): no need to specify YIELD_LAMBDA_CALL.
28082         * eval.c (rb_block_pass): update blkid in prot_tag.
28084 Mon Jun 19 23:40:59 2006  NARUSE, Yui  <naruse@ruby-lang.org>
28086           * ext/nkf/lib/kconv.rb: remove default -m0 and fix document.
28088           * ext/nkf/nkf-8/{nkf.c, config.h, utf8tbl.c, utf8tbl.h}:
28089             imported nkf 2.0.7.
28091 Mon Jun 19 17:02:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28093         * sample/test.rb (proc_return3): return within non lambda block
28094           should terminate surrounding method.  [ruby-dev:28741]
28096 Mon Jun 19 13:22:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28098         * ext/socket/socket.c (unix_sysaccept): typo fixed.
28100         * ext/socket/socket.c (sock_connect): remove an unused local
28101           variable tmpaddr.
28103 Mon Jun 19 02:10:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28105         * ext/socket/socket.c (tcp_accept_nonblock): forgot to remove
28106           abandoned hacks.  [ruby-dev:28740]
28108 Mon Jun 19 00:00:17 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28110         * ext/tk/lib/multi-tk.rb: fix bug: initialize improper tables.
28112 Sun Jun 18 20:28:43 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28114         * ext/win32ole/win32ole.c (fole_methods): The return value
28115           of WIN32OLE#ole_methods should include PROPERTYPUTREF methods.
28117         * ext/win32ole/win32ole.c (fole_put_methods): The return value
28118           of WIN32OLE#ole_put_methods should include PROPERTYPUTREF methods.
28120         * test/win32ole/test_ole_methods.rb: ditto.
28122         * ext/win32ole/win32ole.c (ole_propertyput): support
28123           PROPERTYPUTREF. [ruby-talk:183042]
28125         * test/win32ole/test_propertyputref.rb: ditto.
28127 Sat Jun 17 23:42:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28129         * eval.c (Init_eval): add aliases invoke_method and
28130           invoke_functional_method corresponding send and funcall
28131           respectively.  [ruby-talk:197512]
28133         * parse.y (parser_yylex): returns the most typical keyword token
28134           on EXPR_FNAME.  [ruby-core:7995]
28136         * ext/socket/socket.c: protoize.
28138 Sat Jun 17 22:17:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28140         * lib/mathn.rb (Integer::prime_division): raise ZeroDivisionError
28141           on zeros.  [ruby-dev:28739]
28143 Sat Jun 17 14:53:32 2006  Tanaka Akira  <akr@m17n.org>
28145         * lib/pathname.rb (Kernel#Pathname): new method.
28147 Sat Jun 17 02:01:00 2006  Tanaka Akira  <akr@m17n.org>
28149         * lib/pp.rb (Kernel#pretty_inspect): defined for pretty printed
28150           string.
28152 Fri Jun 16 01:41:00 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28154         * eval.c (rb_proc_arity): get rid of segfault for mere splat.
28156         * gc.c (gc_mark_children): NODE_BLOCK_PASS needs u3 to be marked.
28158 Thu Jun 15 22:06:56 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28160         * parse.y (then): remove ':' from 'then' and 'do' rules.
28162 Wed Jun 14 18:00:20 2006  Eric Hodel  <drbrain@segment7.net>
28164         * enum.c (enum_any): Documentation typo.
28166 Wed Jun 14 15:01:09 2006  Eric Hodel  <drbrain@segment7.net>
28168         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser#warn): Don't print
28169           warnings when -q is set.
28171 Wed Jun 14 16:11:37 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28173         * eval.c (rb_f_method_name, rb_f_callee_name): document typo.
28175 Wed Jun 14 15:19:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28177         * hash.c (env_aset): raise TypeError on nil with more descriptive
28178           message.  [ruby-core:07990]
28180 Tue Jun 13 17:22:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28182         * ext/socket/socket.c (Init_socket): remove obsolete constants:
28183           IPsocket, TCPsocket, SOCKSsocket, TCPserver, UDPsocket,
28184           UNIXsocket, UNIXserver.
28186 Tue Jun 13 09:07:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28188         * eval.c (formal_assign): post splat arguments should have had
28189           higher priority than optional arguments, since they are
28190           mandatory.  [ruby-dev:28715]
28192         * eval.c (VIS_MASK): broken. should be 15.  [ruby-dev:28715]
28194         * io.c (argf_getc): should return one-character string.
28195           [ruby-dev:28715]
28197         * io.c (rb_io_readchar): ditto.
28199 Sun Jun 11 23:20:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28201         * object.c (sym_call): disallow to call private methods.
28203         * lib/optparse.rb (OptionParser::Arguable#getopts): pass self to the
28204           parser.
28206 Sun Jun 11 09:56:41 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28208         * win32/win32.h (write): not need to define on bcc.
28210 Sun Jun 11 08:30:33 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28212         * lib/optparse.rb (OptionParser#getopts): new methods.
28214 Sun Jun 11 07:27:11 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28216         * lib/rdoc/ri/ri_writer.rb: use String#ord.
28218 Sun Jun 11 04:38:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28220         * object.c (sym_to_proc): imported Symbol#to_proc from ActiveSupport.
28222 Sat Jun 10 18:02:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28224         * ext/bigdecimal/lib/bigdecimal/newton.rb (Newton::nlsolve): typo
28225           fixed: raize -> raise.  [ruby-talk:196608]
28227 Sat Jun 10 17:49:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28229         * string.c (rb_str_ord): new method.
28231         * parse.y (rbracket): allow optional newline before closing
28232           brackets.
28234 Sat Jun 10 15:12:29 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28236         * eval.c (rb_f_method_name, rb_f_callee_name): new functions.
28237           new global method `__method__' and `__callee__'.
28239 Sat Jun 10 10:13:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28241         * lib/getoptlong.rb (GetoptLong#set_options): receive arguments
28242           as Array.
28244         * lib/irb/slex.rb: use Proc#yield.
28246         * lib/rdoc/markup/simple_markup/inline.rb: follow the new behavior
28247           of String#[].
28249         * lib/rdoc/ri/ri_writer.rb: ditto.
28251 Sat Jun 10 08:17:23 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28253         * math.c (log2): may be a macro.
28255         * parse.y (args, block_param, f_args): pass f_post_arg to #params.
28257         * util.c (powersOf10): constified.
28259         * ext/readline/readline.c: include extconf.h first.
28261         * ext/ripper/eventids2.c: removed tLAMBDA_ARG.
28263         * ext/tk/tcltklib.c (lib_fromUTF8_core): removed conflict.
28265         * ext/tk/tkutil/tkutil.c (cbsubst_get_subst_arg): rb_id2name() is
28266           defined as const now.
28268         * ext/win32ole/win32ole.c (fole_missing): ditto.
28270         * lib/mkmf.rb (create_makefile): force to create extconf header.
28272         * lib/optparse.rb (order!): use Proc#yield.
28274 Sat Jun 10 06:53:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28276         * eval.c (CALLARGS): remove last semicolon. C90 compiler doesn't
28277           allow any lines (even if they're empty) within variable
28278           declarations.
28280 Fri Jun  9 09:56:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28282         * sprintf.c (rb_str_format): allow %c to print one character
28283           string (e.g. ?x).
28285 Thu Jun  8 14:00:02 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28287         * win32/win32.[ch] (rb_w32_read, rb_w32_write): new functions.
28288           use recv() and send() when fd is socket. fixed: [ruby-dev:28694]
28290 Wed Jun  7 16:22:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28292         * lib/tempfile.rb (Tempfile::make_tmpname): put dot between
28293           basename and pid.  [ruby-talk:196272]
28295 Wed Jun  7 16:16:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28297         * parse.y (do_block): remove -> style block.
28299         * parse.y (parser_yylex): remove tLAMBDA_ARG.
28301 Wed Jun  7 14:51:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28303         * win32/win32.c (errmap): add some winsock errors.
28305 Wed Jun  7 09:14:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28307         * eval.c (rb_call0): binding for the return event hook should have
28308           consistent scope.  [ruby-core:07928]
28310 Tue Jun  6 23:25:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28312         * eval.c (proc_invoke): return behavior should depend whether it
28313           is surrounded by a lambda or a mere block.
28315 Mon Jun  5 18:12:12 2006  Tanaka Akira  <akr@m17n.org>
28317         * ext/socket/socket.c (sock_s_unpack_sockaddr_in): reject
28318           non-AF_INET/AF_INET6 sockaddr.
28319           (sock_s_unpack_sockaddr_un): reject non-AF_UNIX sockaddr.
28320           [ruby-dev:28691]
28322 Sun Jun  4 20:40:19 2006  Tanaka Akira  <akr@m17n.org>
28324         * ext/socket/socket.c: fix sockaddr_un handling.
28325           [ruby-dev:28677]
28327 Sat Jun  3 23:53:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28329         * eval.c (formal_assign): handles post splat arguments.
28331         * eval.c (rb_call0): ditto.
28333 Sat Jun  3 13:10:41 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28335         * st.c (strhash): use FNV-1a hash.
28337 Fri Jun  2 20:01:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28339         * parse.y (parser_yylex): removed experimental ';;' terminator.
28341 Fri Jun  2 19:00:40 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28343         * ext/openssl/extconf.rb: use create_header.
28345         * ext/openssl/ossl.h, ext/openssl/openssl_missing.h:
28346           include RUBY_EXTCONF_H.
28348 Fri Jun  2 17:16:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28350         * lib/mkmf.rb (CLEANINGS): remove extconf.h by distclean if created.
28352 Fri Jun  2 00:11:19 2006  Tanaka Akira  <akr@m17n.org>
28354         * ext/socket/socket.c (s_recvfrom): alen may be zero with UNIXSocket
28355           too.  (tested on NetBSD 3.0)
28356           (s_recvfrom_nonblock): extracted from sock_recvfrom_nonblock.
28357           (sock_recvfrom_nonblock): use s_recvfrom_nonblock.
28358           (ip_recvfrom_nonblock): new method: IPSocket#recvfrom_nonblock
28359           (unix_recvfrom_nonblock): new method: UNIXSocket#recvfrom_nonblock
28360           (s_accept_nonblock): extracted from sock_accept_nonblock.
28361           (sock_accept_nonblock): use s_accept_nonblock.
28362           (tcp_accept_nonblock): new method: TCPServer#accept_nonblock
28363           (unix_accept_nonblock): new method: UNIXServer#accept_nonblock
28365 Thu Jun  1 19:12:37 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28367         * win32/win32.c (rb_w32_cmdvector): backslashes inside single-quotes
28368           no longer has special meanings.  fixed: [ruby-list:42311]
28370 Thu Jun  1 17:55:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28372         * eval.c (rb_node_arity): should be aware of post splat arguments.
28374         * eval.c (rb_proc_arity): ditto.
28376 Thu Jun  1 16:17:26 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28378         * win32/win32.c (rb_w32_getcwd): runtime's getcwd() will not success
28379           if the length of the cwd is longer than MAX_PATH.
28380           fixed [ruby-list:42335]
28382 Thu Jun  1 16:07:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28384         * parse.y (f_args): syntax rule enhanced to support arguments
28385           after the splat.
28387         * parse.y (mlhs_basic): ditto for multiple assignments
28389         * parse.y (block_param): ditto for block parameters.
28391         * parse.y (f_post_arg): mandatory formal arguments after the splat
28392           argument.
28394         * parse.y (new_args_gen): generate nodes for mandatory formal
28395           arguments after the splat argument.
28397         * eval.c (rb_eval): dispatch mandatory formal arguments after the
28398           splat argument.
28400 Thu Jun  1 11:33:32 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28402         * win32/win32.c (rb_w32_getcwd): set errno if not set.
28403           fixed [ruby-list:42346]
28405 Thu Jun  1 00:45:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28407         * parse.y (args): allow more than one splat in the argument list.
28409 Wed May 31 18:38:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28411         * parse.y (method_call): allow aref [] to accept all kind of
28412           method argument, including assocs, splat, and block argument.
28414         * eval.c (SETUP_ARGS0): prepare block argument as well.
28416 Tue May 30 18:13:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28418         * lib/mathn.rb (Integer): remove Integer#gcd2. [ruby-core:07931]
28420 Mon May 29 22:40:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28422         * eval.c (error_line): print receivers true/false/nil specially.
28424         * eval.c (rb_proc_yield): handles parameters in yield semantics.
28426         * eval.c (nil_yield): gives LocalJumpError to denote no block
28427           error.
28429         * io.c (rb_io_getc): now takes one-character string.
28431 Sat May 27 22:46:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28433         * eval.c (proc_invoke): save and restore block in the current frame.
28434           fixed: [ruby-core:07833], [ruby-talk:191639]
28436 Sat May 27 11:29:46 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28438         * ext/extmk.rb (extmake): remove extinit files if no statically linked
28439           extensions.
28441 Fri May 26 19:56:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28443         * string.c (rb_str_hash): use FNV-1a hash from Fowler/Noll/Vo
28444           hashing algorithm.
28446 Fri May 26 09:05:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28448         * ruby.h, lib/mkmf.rb (create_header): clear command line options for
28449           macros moved to extconf.h.
28451         * ext/extmk.rb (extract_makefile, extmk): made RUBY_EXTCONF_H and
28452           EXTSTATIC permanent.
28454         * ext/{dbm,digest/*,socket,zlib}/extconf.rb: used $defs and $INCFLAGS.
28456         * {bcc32,win32,wince}/Makefile.sub (COMPILE_C, COMPILE_CXX): added
28457           $(INCFLAGS).
28459         * lib/mkmf.rb (configuration): add $defs unless extconf.h was created.
28461 Thu May 25 01:52:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28463         * lib/mkmf.rb (pkg_config): particular config commands support.
28465         * ext/extmk.rb: deal with $static set in extconf.rb.
28467         * mkconfig.rb: merge multiple entries to an entry with multiple lines.
28469         * lib/mkmf.rb: allow a series of commands to link.
28471         * win32/Makefile.sub: embed manifests.
28473         * win32/setup.mak: suffix OS name by runtime version.
28475 Wed May 24 23:52:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28477         * configure.in (ac_install_sh): ignore dummy install-sh.
28478           [ruby-talk:193876]
28480 Wed May 24 17:55:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28482         * string.c (rb_str_aref): str[0] now returns 1 character string,
28483           instead of a fixnum.  [Ruby2]
28485         * parse.y (parser_yylex): ?c now returns 1 character string,
28486           instead of a fixnum.  [Ruby2]
28488         * string.c (rb_str_aset): no longer support fixnum insertion.
28490 Wed May 24 03:10:44 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28492         * ext/openssl/lib/openssl/ssl.rb
28493           (OpenSSL::SSL::SocketForwarder#setsockopt,getsockopt): typo fixed.
28495 Mon May 22 16:32:03 2006  Tanaka Akira  <akr@m17n.org>
28497         * rubyio.h (rb_io_set_nonblock): declared.
28499         * io.c (rb_io_set_nonblock): new function.
28500           (io_getpartial): nonblocking read support.
28501           (io_read_nonblock): new method: IO#read_nonblock.
28502           (io_write_nonblock): new method: IO#write_nonblock.
28504         * ext/socket/socket.c (s_accept): retry for EWOULDBLOCK.
28505           revert [ruby-talk:113807].
28506           (sock_connect_nonblock): new method: Socket#connect_nonblock.
28507           (sock_accept_nonblock): new method: Socket#accept_nonblock.
28508           (sock_recvfrom_nonblock): new method: Socket#recvfrom_nonblock.
28510           [ruby-core:7917]
28512 Mon May 22 15:57:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28514         * eval.c (umethod_bind): should not update original class.
28515           [ruby-dev:28636]
28517 Mon May 22 13:38:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28519         * eval.c (ev_const_get): should support constant access from
28520           within instance_eval().  [ruby-dev:28327]
28522 Sun May 21 09:50:31 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28524         * regexec.c: add STK_NULL_CHECK_END to IS_TO_VOID_TARGET().
28525           [ruby-list:42234]
28527 Thu May 18 22:37:20 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28529         * lib/webrick/config.rb (WEBrick::Config::HTTP): add new parameters,
28530           :InputBufferSize and :OutputBufferSize.
28532         * lib/webrick/utils.rb (WEBrick::Utils.timeout): add new timeout
28533           method. this implementation is expected to be compatible with
28534           timeout.rb and faster than timeout.rb.
28536         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#_read_data):
28537           Timeout.timeout is replaced by WEBrick::Utils.timeout.
28539         * lib/webrick/httprequest.rb: WEBrick::HTTPRequest::BUFSIZE is
28540           replaced by config[:InputBufferSize].
28542         * lib/webrick/httpresposne.rb: WEBrick::HTTPResponse::BUFSIZE is
28543           replaced by config[:OutputBufferSize].
28545         * lib/webrick/server.rb: get rid of unnecessary require.
28547         * test/webrick/test_utils.rb: test for WEBrick::Utils.timeout.
28549 Thu May 18 17:51:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28551         * time.c (time_timeval): should round for usec floating
28552           number.  [ruby-core:07896]
28554         * time.c (time_add): ditto.
28556 Thu May 18 00:42:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28558         * ext/extmk.rb, lib/mkmf.rb: use BUILD_FILE_SEPARATOR in Makefiles.
28560 Wed May 17 17:55:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28562         * dir.c (sys_warning): should not call a vararg function
28563           rb_sys_warning() indirectly.  [ruby-core:07886]
28565 Tue May 16 17:23:19 2006    <sinara@blade.nagaokaut.ac.jp>
28567         * numeric.c (flo_divmod): the first element of Float#divmod should
28568           be an integer. [ruby-dev:28589]
28570         * test/ruby/test_float.rb: add tests for divmod, div, modulo and remainder.
28572 Tue May 16 15:34:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28574         * re.c (rb_reg_initialize): should not allow modifying literal
28575           regexps.  frozen check moved from rb_reg_initialize_m as well.
28577 Tue May 16 09:20:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28579         * re.c (rb_reg_initialize): should not modify untainted objects in
28580           safe levels higher than 3.
28582         * re.c (rb_memcmp): type change from char* to const void*.
28584         * dir.c (dir_close): should not close untainted dir stream.
28586         * dir.c (GetDIR): add tainted/frozen check for each dir operation.
28588 Mon May 15 21:37:12 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28590         * re.c (rb_reg_prepare_re): don't use onig_recompile().
28592 Mon May 15 17:42:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28594         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_symbol_arg):
28595           typo fixed.  a patch from Florian Gross <florg at florg.net>.
28597 Sat May 13 16:14:05 2006  Tanaka Akira  <akr@m17n.org>
28599         * lib/pp.rb (PP.mcall): new method.
28600           (Struct#pretty_print): call Kernel#class and Struct#members even if
28601           overridden.
28602           (Struct#pretty_print_cycle): ditto.
28603           [ruby-core:7865]
28605 Fri May 12 15:54:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28607         * eval.c (EXEC_EVENT_HOOK): trace_func may remove itself from
28608           event_hooks.  no guarantee for arbitrary hook deletion.
28609           [ruby-dev:28632]
28611 Thu May 11 19:57:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28613         * util.c (ruby_strtod): differ addition to minimize error.
28614           [ruby-dev:28619]
28616 Thu May 11 18:30:11 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28618         * ext/openssl/ossl_cipher.c (add_cipher_name_to_ary): should return
28619           value. [ruby-dev:28627]
28621 Thu May 11 18:10:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28623         * util.c (ruby_strtod): should not raise ERANGE when the input
28624           string does not have any digits.  [ruby-dev:28629]
28626 Wed May 10 23:40:21 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28628         * oniguruma.h: Version 4.0.3
28630         * regexec.c: ditto.
28632 Mon May  8 09:10:31 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28634         * ext/openssl/extconf.rb: add check for OBJ_NAME_do_all_sorted.
28636         * ext/openssl/ossl_cipher.c (ossl_s_ciphers): new method
28637           OpenSSL::Cipher.ciphers. it returns all the cipher names.
28639         * ext/openssl/ossl_cipher.c (ossl_cipher_init): refine warning message.
28641         * ext/openssl/lib/openssl/cipher.rb: reimplement without eval() and
28642           add constants AES128, AES192, AES256. [ruby-dev:28610]
28644         * ext/openssl/lib/openssl/digest.rb: reimplement without eval().
28646         * test/openssl/test_cipher.rb, test_digest: fix about reimplemented
28647           features.
28649         * sample/openssl/cipher.rb: rewrite all.
28651 Sun May  7 03:09:51 2006  Stephan Maka  <stephan@spaceboyz.net>
28653         * lib/resolv.rb (Resolv::DNS::Requester::ConnectedUDP#initialize):
28654           Use AF_INET6 for nameservers containing colons.
28656 Sat May  6 23:40:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28658         * eval.c (proc_invoke): should restore old ruby_frame->block.
28659           thanks to ts <decoux at moulon.inra.fr>.  [ruby-core:07833]
28660           also fix [ruby-dev:28614] as well.
28662 Sat May  6 00:38:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28664         * signal.c (trap): sig should be less then NSIG.  Coverity found
28665           this bug.  a patch from Kevin Tew <tewk at tewk.com>.
28666           [ruby-core:07823]
28668 Thu May  4 22:13:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28670         * math.c (math_log2): add new method inspired by
28671           [ruby-talk:191237].
28673         * math.c (math_log): add optional base argument to Math::log().
28674           [ruby-talk:191308]
28676 Thu May  4 02:24:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28678         * ext/syck/emitter.c (syck_scan_scalar): avoid accessing
28679           uninitialized array element.  a patch from Pat Eyler
28680           <rubypate at gmail.com>.  [ruby-core:07809]
28682         * array.c (rb_ary_fill): initialize local variables first.  a
28683           patch from Pat Eyler <rubypate at gmail.com>.  [ruby-core:07810]
28685         * ext/syck/yaml2byte.c (syck_yaml2byte_handler): need to free
28686           type_tag.  a patch from Pat Eyler <rubypate at gmail.com>.
28687           [ruby-core:07808]
28689 Wed May  3 02:12:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28691         * ext/socket/socket.c (make_hostent_internal): accept ai_family
28692           check from Sam Roberts <sroberts at uniserve.com>.
28693           [ruby-core:07691]
28695 Mon May  1 17:58:16 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28697         * ext/win32ole/win32ole.c (add_event_call_back): should not
28698           delete event handler when the event name is not entried.
28700 Mon May  1 08:32:10 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28702         * ext/win32ole/win32ole.c (ole_param_ole_type): should return
28703           "unknown type" string when ITypeInfo::GetFuncDesc failed.
28705 Sat Apr 29 22:43:37 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28707         * ext/openssl/ossl_asn1.c (ossl_asn1_decode0): should initialize
28708           flag. [ruby-core:07785]
28710 Fri Apr 28 10:53:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28712         * util.c (ruby_strtod): should not cut off 18 digits for no
28713           reason.  [ruby-core:07796]
28715 Thu Apr 27 01:38:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28717         * array.c (rb_ary_fill): internalize local variable "beg" to
28718           pacify Coverity.  [ruby-core:07770]
28720 Wed Apr 26 16:59:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28722         * pack.c (pack_unpack): now supports CRLF newlines.  a patch from
28723           <tommy at tmtm.org>.  [ruby-dev:28601]
28725 Wed Apr 26 16:55:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28727         * applied code clean-up patch from Stefan Huehner
28728           <stefan at huehner.org>.  [ruby-core:07764]
28730 Tue Apr 25 18:00:05 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28732         * ext/tk/tcltklib.c (delete_slaves): maybe increment the reference
28733           count of a NULL Tcl_Obj [ruby-core:07759].
28735 Tue Apr 25 07:55:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28737         * lib/jcode.rb (String::tr_s): should have translated non
28738           squeezing character sequence (i.e. a character) as well.  thanks
28739           to Hiroshi Ichikawa <gimite at gimite.ddo.jp> [ruby-list:42090]
28741 Fri Apr 21 15:19:13 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28743         * ext/tk/tcltklib.c (lib_eventloop_ensure): refer freed pointer
28744           [ruby-core:07744] and memory leak.
28746 Fri Apr 21 12:14:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28748         * ext/socket/socket.c: document update patch from Sam Roberts
28749           <sroberts at uniserve.com>.  [ruby-core:07701]
28751 Thu Apr 20 08:43:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28753         * lib/mathn.rb (Integer): need not to remove gcd2.  a patch from
28754           NARUSE, Yui <naruse at airemix.com>.  [ruby-dev:28570]
28756 Wed Apr 19 13:55:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28758         * parse.y (arg): too much NEW_LIST()
28760         * eval.c (SETUP_ARGS0): remove unnecessary access to nd_alen.
28762 Wed Apr 19 11:57:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28764         * eval.c (rb_eval): use ARGSCAT for NODE_OP_ASGN1.
28765           [ruby-dev:28585]
28767         * parse.y (arg): use NODE_ARGSCAT for placeholder.
28769 Wed Apr 19 11:13:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28771         * lib/getoptlong.rb (GetoptLong::get): RDoc update patch from
28772           mathew <meta at pobox.com>.  [ruby-core:07738]
28774 Wed Apr 19 10:13:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28776         * variable.c (rb_const_set): raise error when no target klass is
28777           supplied.  [ruby-dev:28582]
28779 Tue Apr 18 17:40:37 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28781         * ext/tk/lib/multi-tk.rb: add a binding to a container for a slave IP.
28783         * ext/tk/lib/tk.rb: update RELEASE_DATE.
28785         * ext/tk/tcltklib.c: forget to reset a Tcl interpreter.
28787         * ext/tk/stubs.c: fix potential bugs about handling rb_argv0.
28789 Mon Apr 10 01:03:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28791         * prec.c (prec_prec_f): documentation patch from
28792           <gerardo.santana at gmail.com>.  [ruby-core:07689]
28794 Sat Apr  8 02:34:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28796         * bignum.c (rb_big_pow): second operand may be too big even if
28797           it's a Fixnum.  [ruby-talk:187984]
28799 Sat Apr  8 02:12:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28801         * README.EXT: update symbol description.  [ruby-talk:188104]
28803 Sat Apr  8 18:06:28 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28805         * ext/win32ole/win32ole.c: add WIN32OLE_METHOD#inspect,
28806           WIN32OLE_PARAM#inspect.
28808         * test/win32ole/test_win32ole_method.rb: ditto.
28810         * add test/win32ole/test_win32ole_param.rb.
28812 Fri Apr  7 22:11:30 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28814         * ext/win32ole/win32ole.c(foletypelib_initialize): WIN32OLE_TYPELIB.new
28815           accepts OLE file.
28817         * test/win32ole/test_win32ole_typelib.rb(test_initialize): ditto.
28819 Thu Apr  6 23:28:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28821         * COPYING: explicitly note GPLv2.  [ruby-talk:187922]
28823 Thu Apr  6 16:43:06 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28825         * intern.h (rb_obj_instance_exec, rb_mod_module_exec): add declaration.
28827 Thu Apr  6 11:18:37 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28829         * ext/tk/lib/tk/panedwindow.rb: lack of arguments. [ruby-core:7681]
28831 Thu Apr  6 01:04:47 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28833         * ext/tk/tcltklib.c: fix SEGV when embedding to an application.
28834           [ruby-core:7600]
28836         * ext/tk/tcltklib.c: fix SEGV at exit. [ruby-talk:186489]
28838         * ext/tk/tkutil/tkutil.c: follow to changing specification of
28839           instance_eval on ruby-1.9.x.
28841         * ext/tk/lib/tk.rb: ditto.
28843         * ext/tk/lib/multi-tk.rb: ditto.
28845         * ext/tk/lib/tk.rb: remove warning about redefinition of methods.
28847         * ext/tk/lib/tk/variable.rb: remove warning about unseting Tcl
28848           variables.
28850 Wed Apr  5 00:22:54 2006  Tanaka Akira  <akr@m17n.org>
28852         * lib/pathname.rb: use a subclass for instantiation except
28853           methods take pathname argument.  suggested by Evan Phoenix.
28854           [ruby-core:7618]
28856 Tue Apr  4 22:15:41 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28858         * parse.y: remove some obsolete syntax rules (unparenthesized
28859           method calls in argument list).
28861 Sat Apr  1 15:11:27 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28863         * ext/win32ole/win32ole.c: add WIN32OLE_TYPE#inspect,
28864           WIN32OLE_VARIABLE#inspect
28866         * remove ext/win32ole/tests/testOLEVARIABLE.rb, testOLETYPE.rb
28867           testOLETYPELIB.rb.
28869         * testall.rb: ditto.
28871         * add test/win32ole
28873 Fri Mar 31 14:24:55 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28875         * enumerator.c (enumerator_with_index): removed suspicious return
28876           statement.
28878 Wed Mar 29 23:06:48 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28880         * ext/win32ole/win32ole.c (ole_invoke): change the behavior of
28881           WIN32OLE#[], WIN32OLE#[]=. These methods invoke DISPID_VALUE.
28883         * ext/win32ole/sample/excel2.rb: ditto.
28885         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
28887 Wed Mar 29 10:11:31 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28889         * ext/nkf/nkf-utf8/nkf.c (nkf_each_char_to_hex, encode_fallback_subchar,
28890           e2w_conv): support C90 compiler.
28892 Mon Mar 27 22:45:37 2006  NARUSE, Yui  <naruse@ruby-lang.org>
28894         * ext/nkf/nkf-utf8/{nkf.c, utf8tbl.c}: imported nkf 2.0.6.
28895           * Add --ic / --oc option and mapping tables.
28896           * Add fallback option.
28897           * Add --no-best-fit-chars option.
28898           * Fix some bugs.
28900         * ext/nkf/nkf.c (nkf_split_options): added for parse option string.
28902         * ext/nkf/lib/kconv.rb (Kconv.to*): add -m0.
28903           Note that Kconv.to* still imply -X.
28905         * ext/nkf/test.rb: Removed.  Obsolete by test/nkf.
28907         * ext/.document: enabled documents in nkf and kconv
28909         * ext/nkf/nkf.c, ext/nkf/lib/kconv.rb: Add rdoc.
28911 Mon Mar 27 03:17:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28913         * eval.c (rb_call0): insecure calling should be checked for non
28914           NODE_SCOPE method invocations too.
28916         * eval.c (rb_alias): should preserve the current safe level as
28917           well as method definition.
28919 Sun Mar 26 22:02:51 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28921         * re.c: refactoring for options.
28923         * parse.y: ditto.
28925 Fri Mar 24 21:11:02 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28927         * re.c (match_aref): RDoc description updated.
28929         * string.c (rb_str_sub): ditto.
28931         * string.c (rb_str_gsub): ditto.
28933 Fri Mar 24 17:20:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28935         * process.c (rb_f_sleep): remove RDoc description about SIGALRM
28936           which is not valid on the current implementation. [ruby-dev:28464]
28938 Thu Mar 23 21:40:47 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28940         * re.c (rb_reg_regsub): prohibit \1, \2 ...\9 in replaced string
28941           for named regex pattern.
28943 Thu Mar 23 21:06:23 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28945         * oniguruma.h: Version 4.0.2
28947         * regparse.c: ditto.
28949         * regcomp.c ditto.
28951         * regerror.c: ditto.
28953 Thu Mar 23 10:47:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28955         * eval.c (method_missing): should support argument splat in
28956           super.  a bug in combination of super, splat and
28957           method_missing.  [ruby-talk:185438]
28959 Thu Mar 23 00:01:32 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28961         * re.c (rb_reg_regsub): add back reference by name \k<name> in
28962           replace string.
28964         * re.h: add regexp argument to rb_reg_regsub().
28966         * string.c (rb_str_sub_bang): ditto.
28968         * string.c (str_gsub): ditto.
28970 Tue Mar 21 22:14:01 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28972         * re.c (match_alloc): initialize member regexp.
28974         * re.c (match_aref): add String and Symbol argument. [ruby-dev:28448]
28976         * re.h: add member regexp to RMatch.
28978         * gc.c (gc_mark_children): add gc_mark() to regexp member.
28980 Mon Mar 20 12:05:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28982         * configure.in: Solaris SunPro compiler -rapth patch from
28983           <kuwa at labs.fujitsu.com>.  [ruby-dev:28443]
28985 Mon Mar 20 11:12:38 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28987         * ext/win32ole/win32ole.c (folevariant_value): could not compile
28988           with C90 compiler.
28990 Mon Mar 20 09:40:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28992         * configure.in: remove enable_rpath=no for Solaris.
28993           [ruby-dev:28440]
28995 Sun Mar 19 09:46:30 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28997         * ext/win32ole/win32ole.c (ole_val2olevariantdata): change behavior
28998           of converting  OLE Variant object with VT_ARRAY|VT_UI1 and Ruby
28999           String object.
29001         * ext/win32ole/win32ole.c (folevariant_value): ditto.
29003         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
29005 Wed Mar 15 16:51:11 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29007         * lib/mkmf.rb (create_makefile): support libraries without *.so.
29009 Wed Mar 15 16:39:29 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29011         * ext/openssl/ossl_ssl.c, ext/openssl/ossl_nsspki.c: should use
29012           "rb_str_new(0, 0)" to make empty string.
29014 Sun Mar 12 17:02:10 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
29016         * ext/win32ole/win32ole.c(ole_val2olevariantdata): support VT_ARRAY in
29017           WIN32OLE_VARIANT.new().
29019         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
29021         * ext/win32ole/tests/testOLEPARAM.rb: test method name should not be
29022           duplicated.
29024 Sat Mar 11 14:24:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29026         * ruby.1: a clarification patch from David Lutterkort
29027           <dlutter at redhat.com>.  [ruby-core:7508]
29029 Sun Mar  5 18:40:58 2006  Minero Aoki  <aamine@loveruby.net>
29031         * lib/fileutils.rb: do not repeat command options.
29033 Sun Mar  5 18:35:03 2006  Minero Aoki  <aamine@loveruby.net>
29035         * lib/net/http.rb (send_request_with_body): #content_type never
29036           return false, use #main_type instead. [ruby-core:07476]
29038 Sat Mar  4 15:26:40 2006  Tanaka Akira  <akr@m17n.org>
29040         * gc.c (id2ref): fix symbol test.
29042 Sat Mar  4 01:08:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29044         * lib/rdoc/ri/ri_paths.rb (RI::Paths): adding paths from rubygems
29045           directories.  a patch from Eric Hodel <drbrain at segment7.net>.
29046           [ruby-core:07423]
29048 Fri Mar  3 17:59:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29050         * eval.c (rb_clear_cache_by_class): clearing wrong cache.
29052 Fri Mar  3 21:22:42 2006  Tanaka Akira  <akr@m17n.org>
29054         * lib/fileutils.rb (FileUtils.cp_r): implement :remove_destination
29055           option.
29057         * ext/extmk.rb: use :remove_destination to install extension libraries
29058           to avoid SEGV.  [ruby-dev:28417]
29060 Fri Mar  3 14:41:04 2006  Minero Aoki  <aamine@loveruby.net>
29062         * ext/dl/.cvsignore: ignore callback.h.
29064         * ext/ripper/.cvsignore: ignore eventids2table.c.
29066         * ext/socket/.cvsignore: ignore constants.h.
29068 Thu Mar  2 18:58:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29070         * eval.c (rb_thread_fd_writable): should not re-schedule output
29071           from KILLED thread (must be error printing).
29073 Thu Mar  2 09:12:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29075         * array.c (rb_ary_flatten_bang): allow specifying recursion
29076           level.  [ruby-talk:182170]
29078         * array.c (rb_ary_flatten): ditto.
29080 Thu Mar  2 08:02:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29082         * gc.c (add_heap): a heap_slots may overflow.  a patch from Stefan
29083           Weil <weil at mail.berlios.de>.
29085 Wed Mar  1 17:13:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29087         * eval.c (rb_call): use separate cache for fcall/vcall
29088           invocation.
29090         * eval.c (rb_eval): NODE_FCALL, NODE_VCALL can call local
29091           functions.
29093         * eval.c (rb_mod_local): a new method to specify newly added
29094           visibility "local".
29096         * eval.c (search_method): search for local methods which are
29097           visible only from the current class.
29099         * class.c (rb_class_local_methods): a method to list local methods.
29101 Thu Mar  2 17:54:45 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29103         * gc.c: commited magic for reducing RVALUE size on windows. (24->20byte)
29104           [ruby-core:7474]
29106 Thu Mar  2 14:12:26 2006  Tanaka Akira  <akr@m17n.org>
29108         * gc.c: align VALUE with sizeof(RVALUE) globally.
29109           (is_pointer_to_heap): check alignment out of loop.
29110           (id2ref): avoid collision between symbols and objects.
29111           (rb_obj_id): ditto.  moved from object.c.
29112           [ruby-talk:178364] [ruby-core:7305]
29114 Thu Mar  2 12:55:16 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29116         * win32/win32.c (filetime_to_unixtime): should set tm_isdst to -1.
29117           stat() didn't treat daylight saving time property on WinNT.
29118           [ruby-talk:182100]
29120 Wed Mar  1 00:15:51 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29122         * lib/rdoc/parsers/parse_rb.rb (read_escape): could not handle /\^/.
29123           merged Mr. Ishizuka's lib/irb/ruby-lex.rb 's patch rev 1.29.
29124           [ruby-talk:181631] [ruby-dev:28404]
29126 Tue Feb 28 19:32:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29128         * object.c (Init_Object): add BasicObject class as a top level
29129           BlankSlate class.
29131 Mon Feb 27 00:19:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29133         * ruby.h (SYM2ID): should not cast to signed long.
29134           [ruby-core:07414]
29136 Fri Feb 24 20:21:38 2006  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29138         * test/drb/drbtest.rb (add_service_command): quote pathnames in the
29139           server's command line for space contained directory names.
29140           Thanks, arton. [ruby-dev:28386]
29142 Fri Feb 24 12:10:07 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29144         * instruby.rb: install *.exe.manifest and *.dll.manifest if exist.
29145           It's for VC++8.
29147 Fri Feb 24 11:17:45 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29149         * win32/win32.c (NtInitialize): need to set a handler for VC++8.
29151 Thu Feb 23 22:39:59 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29153         * bcc32/Makefile.sub: use borlndmm.dll if possible. bcc32's RTL internal
29154           memory manager cannot handle large memory block properly.
29155           ex: 10000.times { "" << "." * 529671; GC.start } # crash
29156           [ruby-dev:28230]
29158 Thu Feb 23 13:23:03 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29160         * eval.c (SETUP_ARGS0): fixed memory corruption. [ruby-dev:28360]
29162 Wed Feb 22 21:16:55 2006  Tanaka Akira  <akr@m17n.org>
29164         * lib/pathname.rb (Pathname#each_filename): use split_names properly.
29166 Wed Feb 22 16:24:05 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29168         * test/webrick/test_cgi.rb: should support platforms which search
29169           library path from the interpreter's path.
29170           And, support test without install incidentally.
29172 Wed Feb 22 14:21:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29174         * bignum.c (bignorm): x may not be a bignum.  [ruby-dev:28367]
29176 Wed Feb 22 09:22:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29178         * eval.c (proc_alloc): add proper check for creation of a lambda
29179           without a block.
29181 Tue Feb 21 02:07:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29183         * parse.y (f_arglist): should set command_start = Qtrue for
29184           command body.  [ruby-talk:180648]
29186 Mon Feb 20 22:30:17 2006  Tanaka Akira  <akr@m17n.org>
29188         * mkconfig.rb: alias Config to RbConfig for compatibility.
29190 Mon Feb 20 18:21:41 2006  Tanaka Akira  <akr@m17n.org>
29192         * io.c (rb_io_reopen): flush before reopening a file.
29193           reported by Mathieu Bouchard.  [ruby-core:7396]
29195 Mon Feb 20 17:29:50 2006  Tanaka Akira  <akr@m17n.org>
29197         * mkconfig.rb: generate RbConfig instead of Config.
29199         * instruby.rb, rubytest.rb, runruby.rb, bcc32/Makefile.sub,
29200           ext/extmk.rb, ext/dl/extconf.rb, ext/iconv/charset_alias.rb,
29201           lib/mkmf.rb, lib/rdoc/ri/ri_paths.rb,
29202           lib/webrick/httpservlet/cgihandler.rb,
29203           test/dbm/test_dbm.rb, test/gdbm/test_gdbm.rb,
29204           test/ruby/envutil.rb, test/soap/calc/test_calc_cgi.rb,
29205           test/soap/header/test_authheader_cgi.rb, test/soap/ssl/test_ssl.rb,
29206           win32/mkexports.rb, win32/resource.rb: Use RbConfig instead of
29207           Config.
29209 Mon Feb 20 13:46:19 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29211         * lib/find.rb: should raise ENOENT if root entry does not exist,
29212           without opening it. [ruby-dev:28345]
29214 Mon Feb 20 12:27:53 2006  Kent Sibilev  <ksruby@gmail.com>
29216         * lib/rational.rb (Integer::gcd): small typo fix.
29217           [ruby-core:07395]
29219 Mon Feb 20 10:03:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29221         * variable.c (rb_const_get_0): Object should have been the lowest
29222           in const lookup precedence.  [ruby-dev:28343]
29224 Mon Feb 20 09:17:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29226         * lib/delegate.rb (Delegator): should not delegate "funcall".
29228 Mon Feb 20 09:13:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29230         * lib/webrick/httpservlet/cgihandler.rb (WEBrick::HTTPServlet::CGIHandler):
29231           qualify the access for Config constant.  [ruby-dev:28338]
29233         * lib/resolv.rb (Resolv::DNS::Resource::IN::A): qualify
29234           ClassValue.  [ruby-dev:28338]
29236 Mon Feb 20 01:05:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29238         * lib/rational.rb (Integer::gcd): replaced by gcd4 in
29239           [ruby-core:07390].  [ruby-core:07377]
29241 Mon Feb 20 00:57:02 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29243         * ext/openssl/ossl.h (OSSL_Debug): should not use __func__.
29244           [ruby-dev:28339]
29246 Mon Feb 20 00:13:49 2006  Tanaka Akira  <akr@m17n.org>
29248         * lib/open-uri.rb: add :ssl_verify_mode option.
29249           suggested by Will Glynn.
29251         * lib/open-uri.rb: add :ssl_ca_cert option.
29253 Sun Feb 19 04:46:29 2006  Guy Decoux  <ts@moulon.inra.fr>
29255         * eval.c: initial value for block_unique must be 1.
29256           [ruby-talk:180420]
29258 Sat Feb 18 23:58:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29260         * lib/tracer.rb (Tracer::Tracer.add_filter): turn on tracer mode
29261           only when caller() level size is one.  [ruby-core:07389]
29263         * lib/rdoc/parsers/parse_rb.rb: need not to require "tracer".
29264           [ruby-core:07389]
29266         * sample/rtags.rb: ditto.
29268 Sat Feb 18 21:16:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29270         * eval.c (rb_obj_instance_eval): RDoc description updated.  a
29271           patch from Ozgur Murat Homurlu <ozgurmurath at gmail.com>.
29272           [ruby-core:07381]
29274 Sat Feb 18 01:01:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29276         * variable.c (rb_const_get_0): skip ruby_wrapper in const search
29277           to give it lower priority (just above Object).  need not to
29278           change rb_const_defined_0() since it's only a precedence matter;
29279           they are defined anyway.
29281 Sat Feb 18 00:22:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29283         * lib/tracer.rb: merged a minor clarification patch from Daniel
29284           Berger <Daniel.Berger at qwest.com>.  [ruby-core:07376]
29286 Fri Feb 17 17:30:20 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29288         * eval.c (ev_const_get): simplified using rb_const_get_fallback().
29290         * eval.c (ev_const_defined): adopt to ev_const_get() using
29291           rb_const_defined_fallback().
29293         * variable.c (rb_const_get_fallback): new function to implement
29294           constant search.
29296         * variable.c (rb_const_defined_fallback): new function to
29297           implement constant definition check.
29299         * variable.c (rb_const_get_0): adopt to new behavior.  constants
29300           are looked up in the order of: current class, super classes (but
29301           Object), lexically external classes/modules, and Object.
29303         * variable.c (rb_const_defined_0): ditto.
29305 Fri Feb 17 11:20:53 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29307         * util.c (ruby_strtod): Float("1e") should fail. [ruby-core:7330]
29309         * pack.c (EXTEND32): unpack("l") did not work where sizeof(long) != 4.
29310           [ruby-talk:180024]
29312         * pack.c (pack_unpack): fixed integer overflow on template "w".
29313           [ruby-talk:180126]
29315 Fri Feb 17 09:39:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29317         * eval.c (rb_thread_wait_for): sleep should always sleep for
29318           specified amount of time.  [ruby-talk:180067]
29320 Wed Feb 15 16:52:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29322         * eval.c (rb_eval): NODE_OP_ASGN1 should allow splat in its
29323           argument list.  [ruby-core:07366]
29325         * parse.y (arg): avoid unnecessary extra argument.
29326           [ruby-core:07366]
29328         * eval.c (rb_eval): honor visibility on OP_ASGN1 and
29329           OP_ASGN2. [ruby-core:07366]
29331 Wed Feb 15 15:20:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29333         * eval.c (error_line): remove void control path.  [ruby-dev:28335]
29335 Wed Feb 15 10:09:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29337         * eval.c (yield_under_i): should not pass self as an argument to
29338           the block for instance_eval.  [ruby-core:07364]
29340 Wed Feb 15 09:20:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29342         * eval.c (rb_obj_instance_eval): should be no singleton classes for
29343           true, false, and nil.  [ruby-dev:28186]
29345 Tue Feb 14 20:26:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29347         * enumerator.c (enumerator_each): return self if no block is
29348           given.  [yarv-dev:882]
29350 Tue Feb 14 18:48:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29352         * eval.c (DMETHOD_P): accessing wrong frame.  [ruby-dev:28181]
29354         * eval.c (proc_invoke): preserve FRAME_DMETH flag.
29356 Tue Feb 14 15:15:22 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29358         * ext/zlib/zlib.c: suppress warning on test/zlib. [ruby-dev:28323]
29360 Tue Feb 14 13:47:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29362         * win32/win32.c (rb_w32_utime): drop read-only attribute before
29363           changing file time.
29365 Tue Feb 14 13:38:01 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29367         * win32/Makefile.sub (config.h): should define HAVE_LONG_LONG with
29368           VC++8.
29370 Tue Feb 14 11:42:38 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29372         * time.c (search_time_t): support non 32bit time_t environments.
29374         * win32/Makefile.sub (config.h): VC++8 has ``long long'' type.
29376         * win32/Makefile.sub (config.h): VC++8's time_t is 64bit value.
29378 Mon Feb 13 18:01:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29380         * eval.c (copy_node_scope): remove duplicated semicolons at end.
29381           a patch from KIMURA Koichi <kimura.koichi at canon.co.jp>.
29382           [ruby-dev:28332]
29384         * eval.c (VIS_MODE): remove unnecessary argument.
29385           [ruby-dev:28332]
29387 Mon Feb 13 13:49:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29389         * parse.y (parser_parse_string): mention "regexp" in a error
29390           message.  a patch from Mauricio Fernandez <mfp at acm.org>
29391           [ruby-core:07340]
29393 Mon Feb 13 00:01:32 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
29395         * oniguruma.h: Version 4.0.1
29397         * regparse.c (onig_free_shared_cclass_table): fix memory leaks.
29399         * regcomp.c (optimize_node_left): change from IS_POSIXLINE() to IS_MULTILINE().
29401         * regint.h: rename ANCHOR_ANYCHAR_STAR_PL to ANCHOR_ANYCHAR_STAR_ML.
29403         * regparse.h: ditto.
29405         * regexec.c: ditto.
29407 Sat Feb 11 21:57:29 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
29409         * ext/win32ole/win32ole.c: add WIN32OLE.create_guid.
29411         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
29413 Sat Feb 11 01:57:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29415         * eval.c (rb_f_autoload): check if ruby_cbase is nil (during
29416           instance_eval for objects cannot have singleton classes,
29417           e.g. fixnums and symbols).  [ruby-dev:28178]
29419 Fri Feb 10 12:31:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29421         * eval.c (rb_eval): should support NODE_ZSUPER in NODE_ITER.
29422           [ruby-dev:28326]
29424         * eval.c (ZSUPER_ARGS): support macro.
29426 Wed Feb  8 10:26:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29428         * gc.c (rb_gc_call_finalizer_at_exit): turn on during_gc while
29429           invoking finalizers.
29431         * gc.c (rb_gc_finalize_deferred): ditto.
29433 Tue Feb  7 23:03:13 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29435         * ext/zlib/zlib.c: should not access ruby objects in finalizer.
29436           [ruby-dev:28286]
29438 Tue Feb  7 18:42:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29440         * io.c (rb_write_error2): use fwrite(3) if rb_stderr is not
29441           updated or is already freed.  [ruby-dev:28313]
29443 Mon Feb  6 16:02:51 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
29445         * file.c (rb_thread_flock): ERROR_NOT_LOCKED is not an error on Cygwin.
29446           In such situation, flock() should return 0.
29448 Mon Feb  6 14:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29450         * eval.c (error_line): include the class name of a surrounding
29451           method in error position description.
29453 Mon Feb  6 00:14:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29455         * enum.c (enum_find_index): a new method Enumerable#find_index.
29456           [ruby-talk:178495]
29458 Sun Feb  5 23:29:31 2006  Tanaka Akira  <akr@m17n.org>
29460         * ruby.h (struct RStruct): embed 3 or less elements structs.
29461           (RSTRUCT_LEN): defined for accessing struct members.
29462           (RSTRUCT_PTR): ditto.
29464         * struct.c: use RSTRUCT_LEN and RSTRUCT_PTR.
29465           (struct_alloc): allocate small structs in embedded format.
29466           (rb_struct_init_copy): ditto.
29468         * gc.c (gc_mark_children): use RSTRUCT_LEN and RSTRUCT_PTR.
29469           (obj_free): ditto.
29471         * marshal.c (w_object): use RSTRUCT_LEN and RSTRUCT_PTR.
29473 Sun Feb  5 21:01:49 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29475         * numeric.c (fix_to_s): removed workaround for radix 2. Historically,
29476           rb_fix2str could only handle radix 8, 10, 16. (Rev1.37) But for now,
29477           it can handle radix 2..36. [ruby-Bugs#3438] [ruby-core:7300]
29479 Sun Feb  5 18:49:00 2006  Minero Aoki  <aamine@loveruby.net>
29481         * lib/net/http.rb (add_field, get_fields): keep 1.8.2
29482           compatibility.  This patch is contributed by Rob Pitt.
29484 Sun Feb  5 16:33:50 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29486         * lib/mkmf.rb (create_makefile): Kernel#sub! was removed on HEAD.
29488 Sun Feb  5 14:26:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29490         * lib/pstore.rb: should return default value if name is not found.
29491           [ruby-core:7304]
29493         * lib/pstore.rb: should raise PStore::Error if not in transaction.
29495 Sat Feb  4 22:51:43 2006  Tanaka Akira  <akr@m17n.org>
29497         * eval.c: apply the FreeBSD getcontext/setcontext workaround
29498           only before FreeBSD 7-CURRENT.
29500 Sat Feb  4 21:10:06 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29502         * win32/win32.c (LK_ERR): ERROR_NOT_LOCKED is not an error.
29503           In such situation, flock() should return 0.
29505 Sat Feb  4 15:52:56 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29507         * numeric.c (fix_to_s): (2**32).to_s(2) fails with exception where
29508           sizeof(int) == 4 < sizeof(long). [ruby-core:7300]
29510 Sat Feb  4 15:02:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29512         * oniguruma.h: merge Oniguruma 4.0.0  [ruby-dev:28290]
29514 Fri Feb  3 19:25:53 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29516         * ruby.h: fixed prototype.
29518         * ext/syck/rubyext.c: defined symbol ID as global variable as others.
29520 Fri Feb  3 17:57:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29522         * eval.c: unify ruby_class (for method definition) and ruby_cbase
29523           (for constant reference).
29525 Fri Feb  3 15:02:10 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29527         * ext/syck/syck.c (syck_move_tokens): should reset p->cursor or etc
29528           even if skip == 0. This causes buffer overrun.
29529           (ex: YAML.load('--- "..' + '\x82\xA0' * 511 + '"'))
29531 Fri Feb  3 00:01:31 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29533         * ext/syck/emitter.c (syck_emitter_write): should not set '\0' on
29534           emitter's marker. if marker points to the end of buffer, this is
29535           buffer overrun. (ex: YAML.dump("." * 12288))
29537 Thu Feb  2 17:13:01 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29539         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser#get_tk): added
29540           support of :'string' style Symbol.
29542 Thu Feb  2 16:01:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29544         * eval.c (rb_call0): use TMP_ALLOC() instead of allocating
29545           a temporary array object.
29547         * eval.c (eval): need not to protect $SAFE value.
29548           [ruby-core:07177]
29550         * error.c (Init_Exception): change NameError to direct subclass of
29551           Exception so that default rescue do not handle it silently.
29553 Thu Feb  2 14:45:53 2006  Ville Mattila  <ville.mattila@stonesoft.com>
29555         * configure.in: The isinf is not recognized by autoconf
29556           library guesser on solaris 10. [ruby-core:7138]
29558 Wed Feb  1 22:01:47 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29560         * configure.in, hash.c (ruby_setenv): use setenv(3) and unsetenv(3)
29561           where they are supported. modifying environ variable seems to
29562           segfault solaris 10. [ruby-core:7276] [ruby-dev:28270]
29564         * ruby.c (set_arg0): if use setenv(3), environ space cannot be used
29565           for altering argv[0].
29567 Tue Jan 31 14:46:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29569         * struct.c (rb_struct_select): update RDoc description.
29570           [ruby-core:7254]
29572 Tue Jan 31 11:58:51 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29574         * ext/tk/lib/multi-tk.rb: add MultiTkIp#eval and bg_eval.
29576         * ext/tk/lib/tk/namespace.rb: TkNamespace#eval was enbugged at the
29577           last commit. Now it will return a proper object.
29579 Tue Jan 31 08:07:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29581         * numeric.c (int_upto): return an enumerator if no block is
29582           attached to the method.
29584         * numeric.c (int_downto): ditto.
29586         * numeric.c (int_dotimes): ditto.
29588         * enum.c (enum_first): new method Enumerable#first to take first n
29589           elements from an enumerable.
29591         * enum.c (enum_group_by): new method Enumerable#group_by that
29592           groups enumerable values according to their block values.
29594 Tue Jan 31 00:08:22 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29596         * ext/syck/rubyext.c (syck_resolver_transfer): workaround for SEGV.
29597           ex: ruby -ryaml -e 'YAML.load("!map:B {}")' [ruby-core:7217]
29599 Sat Jan 28 07:49:30 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29601         * lib/rdoc/usage.rb: support "a:0:33" style caller[-1]. In this case
29602           file name is "a:0". I don't know this really happens though...
29603           [ruby-Bugs:3344]
29605 Thu Jan 26 15:55:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29607         * ext/socket/socket.c: turn on do_not_reverse_lookup by default.
29609 Wed Jan 25 22:29:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29611         * configure.in, dln.c, file.c, intern.h, missing.h (eaccess): use
29612           system routine if provided.  fixed: [ruby-core:07195]
29614 Sun Jan 22 23:27:13 2006  Go Noguchi  <gonoguti@yahoo.co.jp>
29616         * lib/test/unit/autorunner.rb (process_args): ignore arguments after
29617           '--' so that test scripts can handle them.  fixed: [ruby-dev:28258]
29619 Sun Jan 22 22:09:52 2006  Tanaka Akira  <akr@m17n.org>
29621         * eval.c (POST_GETCONTEXT): define separately from PRE_GETCONTEXT on
29622           IA64 to avoid reusing variable address.
29624 Sun Jan 22 20:03:35 2006  Tanaka Akira  <akr@m17n.org>
29626         * eval.c (ruby_setjmp): define PRE_GETCONTEXT and POST_GETCONTEXT
29627           instead of FUNCTION_CALL_MAY_RETURN_TWICE.
29628           define PRE_GETCONTEXT to clear carry flag for workaround of
29629           FreeBSD/i386 getcontext/setcontext bug.
29630           [ruby-dev:28263]
29632 Thu Jan 19 22:19:18 2006  Minero Aoki  <aamine@loveruby.net>
29634         * lib/fileutils.rb (mv): should remove file after copying.
29635           [ruby-dev:28223]
29637 Wed Jan 18 23:37:06 2006  Tanaka Akira  <akr@m17n.org>
29639         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): don't clobber %l7 of SPARC
29640           if enable-shared.
29641           (ruby_setjmp): call FUNCTION_CALL_MAY_RETURN_TWICE after getcontext
29642           too.
29643           reported by Pav Lucistnik and Marius Strobl.
29644           http://lists.freebsd.org/pipermail/freebsd-sparc64/2006-January/003739.html
29646 Tue Jan 17 23:59:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29648         * object.c (rb_mod_const_get, rb_mod_const_defined): added optional
29649           flag to search ancestors, which is defaulted to true.
29650           fixed: [ruby-talk:175899]
29652         * eval.c (rb_mod_method_defined): ditto.
29654 Tue Jan 17 11:31:47 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29656         * win32/setup.mak (MAKE): workaround for nmake 8.
29658 Tue Jan 17 11:06:19 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29660         * win32/Makefile.sub: invoke .bat via shell. workaround for nmake 8.
29662 Mon Jan 16 10:13:38 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29664         * ext/syck/emitter.c (syck_emit_seq, syck_emit_map, syck_emit_item):
29665           should output complex key mark even if map's key is empty seq/map.
29666           [ruby-core:7129]
29668 Sat Jan 14 03:38:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29670         * file.c (rb_file_s_chmod): avoid warning where sizeof(int) !=
29671           sizeof(void*).
29673 Fri Jan 13 19:26:15 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29675         * lib/rdoc/diagram.rb:
29676             - properly quote bare element attributes
29677             - terminates dangling elements (e.g. <img>, <br>, <link>, etc)
29678             - converts "CVS" to the more HTML-friendly acronym element
29679             - adds missing type attributes to style elements
29681           based on Paul Duncan's patch <pabs@pablotron.org> [ruby-core:7028]
29683         * lib/rdoc/generators/html_generator.rb: ditto.
29684         * lib/rdoc/generators/template/html/hefss.rb: ditto.
29685         * lib/rdoc/generators/template/html/html.rb: ditto.
29686         * lib/rdoc/generators/template/html/kilmer.rb: ditto.
29688 Thu Jan 12 11:53:08 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29690         * ext/tk/sample/tkballoonhelp.rb: [bug fix] couldn't add to a widget
29691           which is constructed with TkComposite module.
29692           [new feature] support 'command' option which is called just before
29693           popping up the balloon help.
29695 Wed Jan 11 00:12:29 2006  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29697         * lib/erb.rb (ERB::Compiler): add instance variable @insert_cmd to
29698           change <%='s behavior.
29700 Tue Jan 10 19:42:33 2006  Tanaka Akira  <akr@m17n.org>
29702         * gc.c (garbage_collect): mark ruby_current_node.
29703           if an exception is raised in a finalizer written in C called by
29704           rb_gc_call_finalizer_at_exit, ruby_set_current_source may use
29705           collected ruby_current_node and mark_source_filename may corrupt
29706           memory.
29708 Tue Jan 10 13:30:34 2006  akira yamada  <akira@ruby-lang.org>
29710         * ext/syck/rubyext.c (syck_resolver_transfer): should be able to load
29711           !ruby/object:Bignum syntax 1.8.3 dumped. [ruby-core:6159]
29713 Tue Jan 10 12:47:41 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29715         * lib/yaml/rubytypes.rb (Fixnum): Bignum could not be loaded in
29716           ruby 1.8.3/1.8.4. [ruby-core:6115]
29718         * lib/yaml/rubytypes.rb (Numeric): Subclass of Numeric could not
29719           be dumped properly. [ruby-core:7047]
29721 Tue Jan 10 12:00:48 2006  Aaron Schrab  <aaron @nospam@ schrab.com>
29723         * lib/yaml/rubytypes.rb (Symbol#yaml_new): YAML loading of quoted
29724           Symbols broken. [ruby-Bugs:2535]
29726 Tue Jan 10 07:26:52 2006  Tanaka Akira  <akr@m17n.org>
29728         * gc.c (gc_stress): renamed from always_gc and enabled by default.
29729           (gc_stress_get): new function for GC.stress.
29730           (gc_stress_set): new function for GC.stress=.
29732 Mon Jan  9 19:58:56 2006  arton  <artonx@yahoo.co.jp>
29734         * ext/zlib/extconf.rb: zlib compiled DLL version 1.2.3 distributed by
29735           http://www.zlib.net/ has zdll.lib. [ruby-dev:28209]
29737 Mon Jan  9 14:25:00 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29739         * win32/Makefile.sub (OPTFLAGS): I have experienced trouble on y- flag,
29740           (VisualC++6) so use -O2b2xg- if  $(MSC_VER) < 1400. [ruby-core:7040]
29742 Mon Jan  9 14:25:00 2006  Kero van Gelder  <rubyforge @nospam@ kero.tmfweb.nl>
29744         * lib/webrick/httpservlet/filehandler.rb: fixed typo. [ruby-core:7075]
29746 Sun Jan  8 14:15:27 2006  Tanaka Akira  <akr@m17n.org>
29748         * eval.c (GCC_VERSION_BEFORE): check __INTEL_COMPILER.
29749           Intel C++ Compiler defines __GNUC__.
29750           http://www.intel.com/software/products/compilers/clin/docs/ug_cpp/lin1077.htm
29752 Sat Jan  7 15:40:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29754         * parse.y (singleton): get rid of segfault on syntax error.
29755           fixed: [ruby-core:07070]
29757 Sat Jan  7 06:24:18 2006  Tanaka Akira  <akr@m17n.org>
29759         * eval.c (rb_fd_isset): compare the result of FD_ISSET with 0 to
29760           avoid FreeBSD bug.  FreeBSD defines FD_ISSET as just a bitmap of
29761           unsigned long.  So returning the value from rb_fd_isset discards
29762           upper 32bits on LP64 environment.
29763           http://www.freebsd.org/cgi/query-pr.cgi?pr=ia64/91421
29765 Fri Jan  6 02:20:18 2006  Tanaka Akira  <akr@m17n.org>
29767         * configure.in: don't force getcontext on IA64.
29769         * eval.c (ruby_setjmp): add an argument for just before getcontext.
29770           (THREAD_SAVE_CONTEXT): call rb_thread_save_context just
29771           before getcontext.
29772           [ruby-dev:28205]
29774 Sun Jan  1 15:28:46 2006  Tanaka Akira  <akr@m17n.org>
29776         * missing.h (isinf): avoid macro expansion
29777           "extern int isinf(double);" to
29778           "extern int ((sizeof(double)==sizeof(float))?_Isinff(double):_Isinf(double));" on
29779           HP-UX.
29781 Sun Jan  1 14:42:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29783         * win32/win32.c (rb_w32_seekdir): should not segfault even if passed
29784           the location which rb_w32_telldir didn't return. (and should change
29785           `bits' position) [ruby-core:7035]
29787         * win32/dir.h: ditto. (stores `loc' instead of `bitpos')
29789         * test/ruby/test_dir.rb: added.
29791 Sat Dec 31 22:57:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29793         * eval.c (rb_thread_save_context): should not recycle scope object used
29794           in a thread.  fixed: [ruby-dev:28177]
29796 Sat Dec 31 19:50:38 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29798         * ext/syck/rubyext.c: attribute name was truncated with Rev1.64.
29800 Sat Dec 31 11:53:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29802         * lib/generator.rb: (Generator#initialize): should kill @loop_thread
29803           before starting new thread. (occurs when called via Generator#rewind)
29804           [ruby-dev:28184]
29806 Fri Dec 30 18:22:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29808         * gc.c (garbage_collect): mark objects referred from aborting threads.
29809           [ruby-dev:28190]
29811         * win32/Makefile.sub: VC++8 support.
29813 Fri Dec 30 15:17:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29815         * lib/generator.rb (Generator#initialize): ensured to stop @loop_thread.
29816           Mr. Tanaka pointed out one Thread.pass is not enough. [ruby-dev:28185]
29818 Fri Dec 30 12:20:57 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29820         * lib/generator.rb (Generator#initialize): fixed dead lock. this occurred
29821           when end? was called before @loop_thread was stopped. [ruby-core:7029]
29823 Fri Dec 30 01:04:52 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29825         * lib/generator.rb: should work with another thread. (more robust code)
29826           [ruby-dev:28177]
29828 Thu Dec 29 23:59:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29830         * eval.c (rb_gc_mark_threads): keep unmarked threads which won't wake
29831           up alone, and mark threads in the loading table.  [ruby-dev:28154]
29833         * eval.c (rb_gc_abort_threads), gc.c (gc_sweep): kill unmarked
29834           threads.  [ruby-dev:28172]
29836 Thu Dec 29 17:02:07 2005  Tanaka Akira  <akr@m17n.org>
29838         * test/ruby/envutil.rb (EnvUtil.rubybin): search "ruby" instead of
29839           "miniruby".  [ruby-dev:28140]
29841 Thu Dec 29 14:35:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29843         * eval.c (rb_mod_define_method): should save safe_level in the
29844           proc object.  [ruby-dev:28146]
29846 Thu Dec 29 11:22:34 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29848         * lib/generator.rb: reimplemented Generator class with Thread instead of
29849           callcc, in order to fix memory leak. [ruby-dev:28142]
29851 Wed Dec 28 14:10:05 2005  Tanaka Akira  <akr@m17n.org>
29853         * ia64.s: remove .pred.safe_across_calls directive.
29854           reported by WATANABE Tetsuya.  [ruby-dev:28141]
29856 Wed Dec 28 01:32:39 2005  Tanaka Akira  <akr@m17n.org>
29858         * eval.c (struct thread): add bstr_max.
29859           (rb_thread_save_context): use realloc instead of REALLOC_N
29860           to avoid GC.
29862 Tue Dec 27 23:59:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29864         * lib/optparse.rb (CompletingHash#match): fix for 1.9.
29866 Tue Dec 27 16:59:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29868         * test/drb/drbtest.rb (DRbService::self.ext_service): increase
29869           timeout limit.  a patch from Kazuhiro NISHIYAMA
29870           <zn at mbf.nifty.com>. [ruby-dev:28132]
29872 Tue Dec 27 14:17:55 2005  Tanaka Akira  <akr@m17n.org>
29874         * configure.in: define IA64 for portability.  (HP aC++/ANSI C doesn't
29875           define __ia64__.)
29876           don't check libunwind stuff.
29877           check __libc_ia64_register_backing_store_base.
29879         * defines.h: declare rb_ia64_bsp and rb_ia64_flushrs.
29880           (flush_register_windows): call rb_ia64_flushrs on IA64.
29882         * ia64.s: new file for IA64.
29883           it is separated from C program files because
29884           Intel C++ Compiler for IA64 doesn't support inline assembly.
29886         * common.mk (ia64.$(OBJEXT)): new target.
29888         * ruby.h (RUBY_INIT_STACK): defined.
29889           (ruby_init_stack): declared for RUBY_INIT_STACK.
29891         * main.c (main): precedes RUBY_INIT_STACK before ruby_init.
29893         * gc.c (rb_gc_register_stack_start): new global variable on IA64.
29894           (garbage_collect): simplify register stack marking code.
29895           don't use libunwind.
29896           (Init_stack): initialize rb_gc_register_stack_start.
29897           (ruby_init_stack): new function for RUBY_INIT_STACK.
29899         * eval.c (struct thread): add bstr_pos member for original position of
29900           register stack.
29901           (rb_thread_save_context): simplify register stack saving code.
29902           don't use libunwind.
29903           (rb_thread_restore_context_0): new function.  moved from
29904           rb_thread_restore_context except the stack position checking code.
29905           don't use libunwind for IA64 register stack.
29906           (register_stack_extend): new function.
29907           (stack_extend): make it self-recursive with
29908           the stack position checking code in old rb_thread_restore_context.
29909           (rb_thread_restore_context): just call stack_extend.
29910           (flush_register_windows): removed.
29912           [ruby-dev:28127]
29914 Tue Dec 27 14:09:39 2005  Minero Aoki  <aamine@loveruby.net>
29916         * process.c: new method Process.exec. [ruby-dev:28107]
29918 Tue Dec 27 08:22:15 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29920         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLSocket#post_connection_check):
29921           treat wildcard character in commonName. [ruby-dev:28121]
29923 Mon Dec 26 08:50:36 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29925         * eval.c (ev_const_get): fixed a bug in constant reference during
29926           instance_eval.  [yarv-dev:707]
29928         * eval.c (ev_const_defined): ditto.
29930         * lib/yaml.rb (YAML::add_domain_type): typo fixed.  a patch from
29931           Joel VanderWerf <vjoel at path.berkeley.edu>.
29932           [ruby-talk:165285] [ruby-core:6995]
29934 Fri Dec 23 10:30:23 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29936         * ext/digest/sha2/sha2.c (ULL): support AIX C.  a patch from
29937           Kailden <kailden at gmail.com>.  [ruby-core:06984]
29939 Wed Dec 21 16:47:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29941         * file.c (w32_io_info): should return handle because FileIndex is
29942           valid only while file is open. [ruby-dev:28088]
29944 Wed Dec 21 12:12:21 2005  Tanaka Akira  <akr@m17n.org>
29946         * test/pathname/test_pathname.rb (test_kernel_open): use
29947           File.identical?.
29948           [ruby-talk:171804]
29950 Tue Dec 20 22:41:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29952         * eval.c (eval_under_i): evaluate source in caller's frame.
29953           [ruby-dev:28076]
29955 Tue Dec 20 12:53:23 2005  why the lucky stiff  <why@ruby-lang.org>
29957         * ext/syck/rubyext.c (syck_emitter_reset): to ensure compatibility
29958           with previous Ruby versions, documents are no longer headless.
29960 Tue Dec 20 12:33:01 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29962         * ext/syck/rubyext.c (syck_node_transform): ruby object holding
29963           explicitly freed SyckNode caused SEGV. [ruby-dev:28067]
29965         ... I think syck GC problem was solved now!
29967 Tue Dec 20 01:46:48 2005  Tanaka Akira  <akr@m17n.org>
29969         * io.c (rb_f_backquote): fix a GC problem on
29970           IA64 with gcc 4.0.3 20051216 (prerelease) -O3.
29972 Mon Dec 19 23:32:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29974         * Makefile.in (XCFLAGS): separated as well as win32/Makefile.sub.
29976         * main.c (always_gc): dllimport is required for VC to import a DLL
29977           symbol.  fixed: [ruby-dev:28051]
29979         * parse.y (rb_symname_p): fixed wrong validation.  [ruby-dev:28047]
29981 Mon Dec 19 23:09:24 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29983         * st.c: uses malloc instead of xmalloc to avoid GC. syck uses st_insert
29984           in gram.c to insert node from rb_syck_bad_anchor_handler into
29985           SyckParser's hash table. if GC occurs in st_insert, it's not under
29986           SyckParser's mark system yet. so RString can be released wrongly.
29988         * ext/syck/syck.h (S_FREE): small hack. no need to check if pointer is
29989           NULL or not before S_FREE.
29991         * ext/syck/rubyext.c (syck_parser_assign_io): rb_check_string_type can
29992           return new RString. if so, it becomes unreachable from GC after
29993           returns syck_parser_assign_io, and can be freed by GC. (dangling
29994           in syck io system) so extends its life time till syck_parse is called.
29996         * ext/syck/rubyext.c (syck_parser_s_alloc): always allocates bonus,
29997           so no need to check if NULL, and "volatile VALUE hash"
29998           is not needed. (bonus->port was not protected in syck_emitter_reset)
30000         * ext/syck/rubyext.c (syck_mark_parser): ditto.
30002         * ext/syck/rubyext.c (syck_parser_load): ditto.
30004         * ext/syck/rubyext.c (syck_parser_load_documents): ditto.
30006         * ext/syck/rubyext.c (syck_emitter_s_alloc): ditto.
30008         * ext/syck/rubyext.c (syck_mark_emitter): ditto.
30010         * ext/syck/rubyext.c (syck_emitter_reset): ditto.
30012         * ext/syck/rubyext.c (syck_scalar_value_set): "should set newly
30013           allocated memory instead of RString's internal storage" stuff again.
30014           by this, should call syck_free_node instead of rb_syck_free_node.
30016         * ext/syck/rubyext.c (syck_node_type_id_set): ditto.
30018         ... I believe syck GC problem was solved by this.
30020 Mon Dec 19 12:20:59 2005  Tanaka Akira  <akr@m17n.org>
30022         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): activate only
30023           before gcc 4.0.3 on SPARC and IA64.
30025 Mon Dec 19 11:37:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30027         * ext/syck/rubyext.c: sorry, I reverted my "should set newly
30028           allocated memory instead of RString's internal storage" stuff.
30029           node allocated in rubyext.c seems to be freed by rb_syck_free_node
30030           not syck_free_node, and it won't free data.str->ptr and type_id.
30032          (I still think this is unsafe because RString(foo)->ptr becomes
30033           dangling pointer when RString is modified or freed, but anyway
30034           I misunderstood, so go back to original code for now)
30036 Sat Dec 17 21:50:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30038         * ext/syck/rubyext.c (syck_emitter_reset): should initialize
30039           emitter->bonus->oid. otherwise rb_gc_mark crashes.
30041         * ext/syck/rubyext.c (syck_mark_parser): should mark anchor nodes
30042           because they hold ruby objects. (ie: rb_syck_bad_anchor_handler)
30044 Sat Dec 17 11:00:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30046         * ext/syck/rubyext.c (rb_syck_compile): avoid potential memory
30047           leak.
30049         * ext/syck/rubyext.c (syck_set_ivars): avoid potential memory
30050           leak by explicit symbol allocation.
30052 Sat Dec 17 03:57:01 2005  Tanaka Akira  <akr@m17n.org>
30054         * bignum.c (rb_big_rshift): fix a GC problem on
30055           IA64 with gcc 4.0.3 20051216 (prerelease).
30057 Sat Dec 17 03:30:23 2005  Tanaka Akira  <akr@m17n.org>
30059         * eval.c (bmcall): fix a GC problem by tail call on
30060           IA64 with gcc 4.0.3 20051216 (prerelease).
30062 Fri Dec 16 17:53:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30064         * ext/syck/rubyext.c (rb_syck_compile): fixed memory leak.
30066         * ext/syck/rubyext.c: should protect global variable from GC.
30068 Fri Dec 16 11:44:43 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30070         * ext/syck/rubyext.c (syck_resolver_tagurize): fixed memory leak.
30072         * ext/syck/rubyext.c (syck_node_type_id_set): should set newly
30073           allocated memory instead of RString's internal storage.
30075         * ext/syck/rubyext.c (syck_scalar_value_set): ditto.
30077         ... these fixes won't fix [ruby-dev:27839]. more work is needed.
30079 Fri Dec 16 04:38:55 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30081         * lib/delegate.rb (Delegator::method_missing): should delegate
30082           block as well.
30084 Thu Dec 15 19:57:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30086         * lib/cgi.rb (CGI::QueryExtension::MorphingBody): fix criteria to
30087           use Tempfile.  A fix from Zev Blut <rubyzbibd at ubit.com>.
30088           [ruby-core:06076]
30090         * string.c: remove global functions work on $_.
30092 Thu Dec 15 12:35:14 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30094         * lib/tmpdir.rb: merged RDoc patch from Eric Hodel <drbrain at
30095           segment7.net>.  [ruby-core:06894]
30097 Thu Dec 15 01:33:31 2005  Tanaka Akira  <akr@m17n.org>
30099         * ext/zlib/zlib.c (zstream_run): fix a GC problem by tail call on
30100           x86_64 with gcc 4.0.3 20051111 (prerelease) (Debian 4.0.2-4)
30102 Wed Dec 14 23:50:20 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30104         * lib/rdoc/parsers/parse_c.rb (find_class_comment): fix for class
30105           document with prototypes.  [ruby-core:06863]
30107 Wed Dec 14 23:39:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30109         * dir.c (has_magic): glob names contain alphabets to enable case fold
30110           search.  [ruby-dev:27735]
30112         * dir.c (Init_Dir): FNM_SYSCASE which is default case fold flag.
30113           [ruby-dev:23296]
30115 Wed Dec 14 12:01:26 2005  Tanaka Akira  <akr@m17n.org>
30117         * marshal.c (r_object0): fix a GC problem for reading a bignum on
30118           IA64 with gcc 3.3.5 (Debian 1:3.3.5-13).
30120 Tue Dec 13 12:23:47 2005  Tanaka Akira  <akr@m17n.org>
30122         * re.c (rb_reg_regcomp): fix a GC problem on x86_64 with
30123           gcc 3.3.5 (Debian 1:3.3.5-13).
30125 Tue Dec 13 01:44:16 2005  Tanaka Akira  <akr@m17n.org>
30127         * array.c (rb_ary_diff): fix a GC problem on IA64 with
30128           gcc 3.3.5 (Debian 1:3.3.5-13).
30129           When rb_ary_push is called, there was no register which contains
30130           `hash' but `&RHASH(hash)->tbl' instead.
30132 Tue Dec 13 00:08:09 2005  Tanaka Akira  <akr@m17n.org>
30134         * sprintf.c (rb_str_format): fix a GC problem.
30135           [ruby-dev:28001]
30137 Mon Dec 12 15:51:22 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30139         * test/openssl/test_ssl.rb (test_parallel): call GC.start to close
30140           unused files. [ruby-dev:27981]
30142 Mon Dec 12 09:58:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30144         * range.c (range_cover): new method Range#cover? added.  the
30145           method name might be changed.  thanks to takano32 at
30146           http://www.rubyist.net/~matz/20051210.html#c08 for name
30147           suggestion.  [ruby-talk:167182]
30149 Mon Dec 12 00:33:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30151         * ext/digest/digest.c (rb_digest_base_s_digest): add volatile to
30152           protect temporary context object.  [ruby-dev:27979]
30154         * ext/iconv/iconv.c (Init_iconv): rb_gc_register_address() should
30155           be called before actual variable initialization.
30156           [ruby-dev:27986]
30158 Sun Dec 11 23:54:07 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30160         * ext/tk/*: update to support libraries in ActiveTcl8.4.12.0
30161           (see ext/tk/ChangeLog.tkextlib).
30163         * ext/tk/sample/scrollframe.rb: add a new sample.
30165 Sun Dec 11 22:07:58 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30167         * test/rinda/test_rinda.rb (test_remote_array_and_hash): pseudo remote
30168           objects are protected against GC. [ruby-dev:27911]
30170 Sat Dec 10 01:06:06 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
30172         * lib/matrix.rb: add Matrix#determinant_e, Matrix#rank_e.
30173           [ruby-dev:27820] and related thread.
30175 Sat Dec 10 00:31:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30177         * eval.c (calling_scope_t): gave names to magic numbers for rb_call().
30178           [ruby-dev:27978]
30180 Fri Dec  9 23:31:02 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30182         * lib/rexml/encoding.rb (encoding=): give priority to particular
30183           conversion to iconv.  [ruby-core:06520]
30185 Fri Dec  9 23:16:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30187         * range.c (range_include): return false unless included in numeric
30188           range.  fixed: [ruby-dev:27975]
30190 Thu Dec  8 02:07:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30192         * eval.c (umethod_bind): adjust invoking class for module method.
30193           [ruby-dev:27964]
30195 Thu Dec  8 00:40:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30197         * eval.c (call_trace_func): klass parameter should be a
30198           class/module that defines calling method.  [ruby-talk:169307]
30200 Wed Dec  7 17:10:27 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
30202         * sprintf.c (rb_f_sprintf): [ruby-dev:27967]
30204 Wed Dec  7 16:39:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30206         * range.c (range_include): use discrete membership for non Numeric
30207           values, for example, String.
30209         * numeric.c (num_scalar_p): new method. [ruby-dev:27936]
30211         * lib/complex.rb (Complex#scalar?): ditto.
30213 Wed Dec  7 15:31:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30215         * sprintf.c (rb_str_format): integer overflow check added.
30217         * sprintf.c (GETASTER): ditto.
30219 Wed Dec  7 01:02:04 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30221         * ext/tk/README.macosx-aqua: [new document] tips to avoid the known
30222           bug on platform specific dialogs of Tcl/Tk Aqua on MacOS X.
30224         * ext/tk/tcltklib.c: fix bug on switching threads and waiting on the
30225           deleted interpreter on vwait and tkwait command.
30227         * ext/tk/lib/multi-tk.rb: kill the meaningless loop for the deleted Tk
30228           interpreter.
30230         * ext/tk/sample/demos-jp/image3.rb: [bug fix] wrong argument.
30232         * ext/tk/sample/demos-en/image3.rb: ditto.
30234         * ext/tk/sample/demos-jp/menu.rb: fix message for MacOS X.
30236         * ext/tk/sample/demos-jp/menu8x.rb: ditto.
30238         * ext/tk/sample/demos-en/menu.rb: ditto.
30240 Tue Dec  6 16:48:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30242         * gc.c (ruby_xmalloc2): change check condition for integer
30243           overflow.  [ruby-dev:27399]
30245         * gc.c (ruby_xrealloc2): ditto.
30247 Tue Dec  6 16:37:57 2005  Yuya Nishida  <yuya@j96.org>
30249         * eval.c (exec_under): avoid accessing ruby_frame->prev.
30250           [ruby-dev:27948]
30252 Fri Dec  2 19:06:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30254         * dir.c (Compare): should not fold double byte alphabet on win9x.
30256 Thu Dec  1 00:50:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30258         * eval.c (rb_funcall2): allow to call protected methods.
30259           fixed: [ruby-dev:27890]
30261 Wed Nov 30 23:52:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30263         * parse.y (struct parser_params): fields common to ripper must be
30264           placed at each same offset.
30266         * parse.y (NEWHEAP, ADD2HEAP): set count after pointer was set.
30267           fixed: [ruby-dev:27896]
30269 Wed Nov 30 13:43:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30271         * misc/ruby-mode.el (ruby-expr-beg): support $! at the end of
30272           expression.   [ruby-dev:27868]
30274 Mon Nov 28 20:24:22 2005  Tanaka Akira  <akr@m17n.org>
30276         * lib/pp.rb (PP::PPMethods#object_address_group): mask an address with
30277           word size.
30279 Tue Nov 29 23:57:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30281         * parse.y (struct parser_params): heap must be placed at same offset
30282           also in ripper.y.  fixed: [ruby-dev:27846]
30284         * parse.y (yycompile): prevent vparser from tail call optimization.
30285           fixed: [ruby-dev:27851]
30287         * parse.y (parser_mark): value needs to be marked.
30288           fixed: [ruby-dev:27845]
30290 Tue Nov 29 22:45:30 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30292         * lib/drb/observer.rb (notify_observers): follow change of observer.rb.
30293           fixed: [ruby-core:6796]
30295 Mon Nov 28 20:24:22 2005  Tanaka Akira  <akr@m17n.org>
30297         * lib/pp.rb (PP::PPMethods#object_address_group): adjust address format.
30299 Mon Nov 28 18:55:22 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30301         * ext/socket/socket.c (init_inetsock_internal): remove setting
30302           SO_REUSEADDR option on server socket on Cygwin.
30303           fixed: [ruby-core:6765] ([ ruby-Bugs-2872 ])
30305 Mon Nov 28 13:11:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30307         * win32/win32.c (rb_w32_strerror): remove all CR and LF. (avoid broken
30308           error message on bccwin32 + winsock)
30310 Mon Nov 28 09:15:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30312         * lib/mkmf.rb (create_makefile): should not change sodir with
30313           dir.gsub!. (bccwin32 failed to install third party extensions)
30314           [ruby-dev:27834]
30316 Sun Nov 27 05:37:20 2005  Tanaka Akira  <akr@m17n.org>
30318         * lib/pathname.rb: use File.basename to decompose pathnames.
30319           experimental Windows support.
30321 Sun Nov 27 00:56:13 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
30323         * lib/wsdl/xmlSchema/complexContent.rb: missing
30324           ComplexContent#elementformdefault method.
30326 Sat Nov 26 19:57:45 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
30328         * dln.c (conv_to_posix_path): should initialize posix.
30330 Fri Nov 25 20:34:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30332         * lib/xmlrpc/datetime.rb (DateTime::to_a): comparison with non
30333           array-convertible object must return false.
30335 Fri Nov 25 14:34:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30337         * range.c (range_max): treat end exclusion without iteration if
30338           the end value is an integer.  [ruby-talk:167433]
30340 Fri Nov 25 12:52:57 2005  Kouhei Sutou  <kou@cozmixng.org>
30342         * lib/rss/rss.rb: added backward compatibility codes.
30343         * lib/rss/parser.rb: ditto.
30344         * test/rss/test_parser.rb: ditto.
30345         * test/rss/test_2.0.rb: ditto.
30347         * test/rss/test_content.rb: use #__send__ instead of #funcall for
30348           no private method.
30350 Fri Nov 25 12:39:56 2005  Kouhei Sutou  <kou@cozmixng.org>
30352         * lib/rss/rss.rb: improved type conversion.
30353         * lib/rss/1.0.rb: ditto.
30354         * lib/rss/0.9.rb: ditto.
30355         * lib/rss/2.0.rb: ditto.
30356         * lib/rss/image.rb: ditto.
30357         * lib/rss/syndication.rb: ditto.
30359         * test/rss/test_2.0.rb: added type conversion tests.
30360         * test/rss/test_accessor.rb: ditto.
30361         * test/rss/test_to_s.rb: ditto.
30362         * test/rss/test_syndication.rb: ditto.
30363         * test/rss/test_setup_maker_2.0.rb: ditto.
30364         * test/rss/test_setup_maker_1.0.rb: ditto.
30365         * test/rss/test_setup_maker_0.9.rb: ditto.
30366         * test/rss/test_maker_sy.rb: ditto.
30367         * test/rss/test_maker_image.rb: ditto.
30368         * test/rss/test_maker_2.0.rb: ditto.
30369         * test/rss/test_maker_0.9.rb: ditto.
30370         * test/rss/test_image.rb: ditto.
30372         * test/rss/test_maker_1.0.rb: use assert instead of assert_equal.
30374         * test/rss/rss-assertions.rb: improved type conversion assertions.
30376 Fri Nov 25 10:38:20 2005  Kouhei Sutou  <kou@cozmixng.org>
30378         * lib/rss/image.rb: added Image prefix.
30380         * lib/rss/maker/image.rb: ditto.
30382 Fri Nov 25 10:33:02 2005  Kouhei Sutou  <kou@cozmixng.org>
30384         * test/rss/test_2.0.rb: added RSS 2.0 tests.
30386         * test/rss/rss-assertions.rb: extended XML stylesheet assertion.
30388         * lib/rss/0.9.rb: added initialize method.
30390         * test/rss/test_1.0.rb: cleanup.
30392 Fri Nov 25 10:29:48 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30394         * range.c (range_min): use <=> comparison rather than iteration.
30395           [ruby-talk:167420]
30397         * range.c (range_max): ditto.
30399 Thu Nov 24 01:31:44 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30401         * file.c (w32_io_info): CreateFile failed on Win9x if file was already
30402           opened. (FILE_SHARE_READ was needed, but actually I don't understand
30403           the flags of CreateFile well...)
30405 Wed Nov 23 23:52:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30407         * numeric.c (num_div): use floor rather than rb_Integer().
30408           [ruby-dev:27674]
30410 Wed Nov 23 22:34:15 2005  Kouhei Sutou  <kou@cozmixng.org>
30412         * lib/rss/parser.rb: added entity handling type predicate.
30413         * lib/rss/rexmlparser.rb: ditto.
30414         * lib/rss/xmlparser.rb: ditto.
30415         * lib/rss/xmlscanner.rb: ditto.
30417         * lib/rss/xmlscanner.rb: more robust entity handling.
30419         * test/rss/test_parser.rb: added an entity handling test.
30421 Wed Nov 23 20:59:01 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30423         * ext/tk/lib/tk.rb: add Tk.pkgconfig_list and Tk.pkgconfig_get
30424           [Tk8.5 feature].
30426         * ext/tk/lib/tk/text.rb: supports new indices modifiers on a Text
30427           widget [Tk8.5 feature].
30429         * ext/tk/lib/tk/virtevent.rb: add TkNamedVirtualEvent.
30431         * ext/tk/lib/tk/autoload.rb: ditto.
30433         * ext/tk/lib/tk/event.rb: add :data key for virtual events [Tk8.5
30434           feature].
30436 Wed Nov 23 18:52:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30438         * file.c (w32_io_info): should not call GetFileInformationByHandle
30439           for pipe.
30441         * file.c (w32_io_info): checks return value from rb_w32_get_osfhandle.
30443         * file.c (w32_io_info): now can identify directory on WinNT.
30445 Wed Nov 23 18:46:53 2005  Kouhei Sutou  <kou@cozmixng.org>
30447         * lib/rss/: use #__send__ instead of #send.
30448         * test/rss/: ditto.
30450 Wed Nov 23 18:32:56 2005  Kouhei Sutou  <kou@cozmixng.org>
30452         * test/rss/test_taxonomy.rb: use #reject directory.
30454 Wed Nov 23 18:26:00 2005  Kouhei Sutou  <kou@cozmixng.org>
30456         * lib/rss/taxonomy.rb: changed class or module prefix to
30457           Taxonomy from Taxo.
30458         * lib/rss/maker/taxonomy.rb: ditto.
30460 Wed Nov 23 18:21:11 2005  Kouhei Sutou  <kou@cozmixng.org>
30462         * lib/rss/maker/taxonomy.rb: implemented taxonomy module for RSS
30463           Maker.
30464         * lib/rss/taxonomy.rb: supported RSS Maker.
30465         * lib/rss/maker.rb: added taxonomy module support.
30467         * lib/rss/rss.rb: adjusted to other element API.
30468         * lib/rss/1.0.rb: adjusted to other element API but backward
30469           compatibility is reserved.
30470         * lib/rss/0.9.rb: ditto.
30472         * test/rss/test_maker_taxo.rb: added test case for taxonomy module
30473           for RSS Maker.
30474         * test/rss/test_setup_maker_1.0.rb: added tests for taxo:topic.
30476         * test/rss/test_setup_maker_1.0.rb: added backward compatibility
30477           test.
30478         * test/rss/test_setup_maker_0.9.rb: ditto.
30479         * test/rss/test_setup_maker_2.0.rb: ditto.
30481         * test/rss/rss-testcase.rb: added convenience method for setting
30482           up taxo:topic.
30483         * test/rss/rss-assertions.rb: added assertion for taxo:topic.
30485         * sample/rss/blend.rb: followed new API.
30487 Wed Nov 23 17:42:24 2005  Kouhei Sutou  <kou@cozmixng.org>
30489         * lib/rss/rss.rb: fixed a indentation bug.
30491         * lib/rss/taxonomy.rb: fixed <taxo:topic> #to_s bug.
30493         * test/rss/test_taxonomy.rb: added a #to_s test.
30495 Wed Nov 23 03:40:49 2005  Guy Decoux  <ts@moulon.inra.fr>
30497         * re.c (KR_REHASH): should cast to unsigned for 64bit CPU.
30498           [ruby-core:06721]
30500 Wed Nov 23 07:26:44 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30502         * ext/openssl/extconf.rb: check for X509V3_EXT_nconf_nid.
30504         * ext/openssl/ossl_x509ext.c (MakeX509ExtFactory): should use
30505           OPENSSL_malloc to allocate X509V3_CTX.
30507         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext): use
30508           X509V3_EXT_nconf_nid to avoid SEGV (and to build extensions which
30509           values are placed in separate section).
30511         * test/openssl/test_x509ext.rb: new file.
30513 Wed Nov 23 01:22:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30515         * file.c (test_identical): test if two files are identical.
30517         * file.c (rb_f_test): support DOSISH systems where st_ino is not
30518           reliable.  fixed: [ruby-core:06672]
30520         * win32.h, win32.c (rb_w32_osid): check the running platform.
30522 Tue Nov 22 23:52:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30524         * lib/optparse.rb: match incomplete (in current enconding) multibyte
30525           string.  http://inamode6.tokuhirom.dnsalias.org/show/1551
30527 Tue Nov 22 18:36:11 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30529         * win32/win32.c (winnt_stat): set mapped errno instead of ENOENT.
30531 Tue Nov 22 14:36:54 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30533         * file.c (rb_file_s_basename): skip slashes just after UNC top slashes.
30535         * test/ruby/test_path.rb (test_dirname, test_basename): follow new
30536           spec. and add new tests.
30538 Tue Nov 22 13:30:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30540         * win32/win32.c (rb_w32_stat): Dir.chdir('//server/shared');
30541           p Dir.glob('*') should work on WinNT. (implemented our own
30542           stat(2) on WinNT) [ruby-list:41552] [ruby-dev:27711]
30544 Tue Nov 22 02:31:53 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30546         * ext/tk/lib/tkextlib/tile.rb: bug fix (Tk::Tile::USE_TTK_NAMESPACE
30547           is not defined).
30549 Tue Nov 22 01:45:21 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30551         * file.c (rb_file_s_basename): DOSISH_UNC is defined on cygwin but
30552           DOSISH is not.  fixed: [ruby-dev:27797]
30554 Mon Nov 21 22:50:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30556         * file.c (rb_path_skip_prefix, rb_file_s_basename): UNC without path
30557           should not be splitted.  fixed: [ruby-dev:27776] [ruby-dev:27786]
30559         * parse.y (dsym): prohibit empty symbol literal by interpolation.
30560           fixed: [ruby-talk:166529]
30562 Mon Nov 21 16:03:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30564         * win32/setup.mk: findstr doesn't exist on win9x.
30565           fixed: [ruby-dev:27756]
30567 Sun Nov 20 21:39:27 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
30569         * regparse.c (fetch_token_in_cc): tok->escaped should be
30570           initialized.  [ruby-dev:27763]
30572 Sun Nov 20 22:34:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30574         * parse.y (rb_symname_p): [ not followed by ] is not valid symbol.
30575           fixed: [ruby-talk:166520]
30577 Sat Nov 19 19:57:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30579         * lib/fileutils.rb (FileUtils::ln): ln documentation fix.
30580           [ruby-core:06661]
30582 Sat Nov 19 08:19:38 2005  Zach Dennis  <zdennis@mktec.com>
30584         * ext/socket/socket.c: Socket Documentation. [ruby-core:6552]
30586 Sat Nov 19 07:34:32 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30588         * ext/tk/lib/tk/font.rb: remove dependency on Ruby's version (1.8
30589           or 1.9).
30591         * ext/tk/lib/tkextlib/ICONS/icons.rb: ditto.
30593         * ext/tk/sample/tkextlib/treectrl/demo.rb: ditto.
30595 Fri Nov 18 18:07:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30597         * file.c (rb_file_s_dirname): should use skipprefix for UNC path.
30598           pointed out by nobu ([ruby-dev:27744]). fixed: [ruby-core:5076]
30600 Fri Nov 18 17:35:09 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30602         * ext/tk/lib/multi-tk.rb: add restriction to access the entried
30603           command table and manipulate other IPs (for reason of security).
30604           Now, a IP object can be controlled by only its master IP or the
30605           default IP.
30607         * ext/tk/lib/remote-tk.rb: add restriction to manipulate.
30609         * ext/tk/tcltklib.c (ip_is_slave_of_p): add TclTkIp#slave_of?(ip)
30610           to check manipulability.
30612         * ext/tk/lib/tk.rb: bug fix on handling of Tcl's namespaces.
30614         * ext/tk/lib/tk/namespace.rb: ditto.
30616 Fri Nov 18 16:47:33 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30618         * file.c (rb_file_s_dirname): added checks for some patterns with drive
30619           letter. fixed: [ruby-dev:27738]
30621         * test/ruby/test_path.rb (test_dirname): added tests for above
30622           patterns.
30624 Fri Nov 18 12:19:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30626         * win32/win32.h (S_IFIFO): r,w = IO.pipe; r.stat.pipe? now
30627           returns true on VisualC++6.
30629 Thu Nov 17 17:58:00 2005  Kouhei Sutou  <kou@cozmixng.org>
30631         * lib/rss/1.0.rb: added convenience method 'resources'.
30633         * lib/rss/taxonomy.rb: ditto.
30635         * test/rss/rss-assertions.rb: added test for 'resources'.
30637         * test/rss/test_taxonomy.rb: ditto.
30639 Thu Nov 17 17:53:30 2005  Kouhei Sutou  <kou@cozmixng.org>
30641         * lib/rss/taxonomy.rb: implemented taxonomy module.
30643         * test/rss/test_taxonomy.rb: added tests for taxonomy support.
30645 Thu Nov 17 17:40:19 2005  Kouhei Sutou  <kou@cozmixng.org>
30647         * lib/rss/1.0.rb: added rdf:Bag.
30649 Thu Nov 17 13:52:00 2005  Kouhei Sutou  <kou@cozmixng.org>
30651         * lib/rss/rss.rb: removed needless argument 'prefix'.
30653         * lib/rss/parser.rb: ditto.
30655 Wed Nov 16 23:24:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30657         * common.mk (static-ruby): overridable.
30659         * ext/extmk.rb (parse_args): force to link extensions statically only
30660           if static is given for extstatic.
30662         * ext/extmk.rb (RUBY, RUBYW): overridable.
30664 Wed Nov 16 01:29:31 2005  Kouhei Sutou  <kou@cozmixng.org>
30666         * lib/rss/trackback.rb: added TrackBack prefix.
30668         * lib/rss/maker/trackback.rb: ditto.
30670 Wed Nov 16 01:26:13 2005  Kouhei Sutou  <kou@cozmixng.org>
30672         * lib/rss/rss.rb (RSS::VERSION): 0.1.5 -> 0.1.6.
30674         * test/rss/test_version.rb (RSS::TestVersion#test_version): ditto.
30676 Tue Nov 15 23:54:24 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30678         * file.c (file_load_ok): eaccess() returns 0 on success.
30679           fixed: [ruby-dev:27713]
30681 Tue Nov 15 16:36:03 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30683         * array.c (rb_ary_fill): previous commit disabled this usage:
30685             a = [0,1,2,3,4,5,6,7,8,9]
30686             a.fill {|i| a[i] * 10} #=> [nil, nil, ...., nil]
30688           previous commit has the advantage of early garbage collection, but
30689           potentially this would break some script. so I reverted behavior.
30691 Tue Nov 15 16:15:23 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30693         * file.c (file_load_ok): use eaccess() instead of actually opening
30694           the file.  [ruby-talk:156378]
30696         * lib/jcode.rb (String::reverse): add new methods.
30697           [ruby-list:41245]
30699 Tue Nov 15 15:49:34 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30701         * array.c (rb_ary_fill): tail elements were vanished when the middle
30702           part of array was filled. (ie: [0,1,2,3,4].fill(-1,2,1) => [0,1,-1])
30704         * test/ruby/test_array.rb (test_fill): added.
30706 Tue Nov 15 14:39:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30708         * array.c (rb_ary_fill): should adjust array length correctly when
30709           an array is expanded in the fill process.  [ruby-core:06625]
30711 Mon Nov 14 23:49:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30713         * file.c (rb_file_s_readlink): ERANGE will occur only on GPFS.
30714           [ruby-dev:27699]
30716 Mon Nov 14 17:36:22 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30718         * array.c (rb_ary_first): RDoc update from Daniel Berger
30719           <djberg96@yahoo.com>.  [ruby-core:06577].
30721 Sun Nov 13 10:55:24 2005  Minero Aoki  <aamine@loveruby.net>
30723         * lib/uri/common.rb (escape): regard second argument as a
30724           character set. [ruby-dev:27692]
30726 Sat Nov 12 08:36:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30728         * configure.in, eval.c, intern.h: check fd_mask type.
30730         * configure.in (socketpair): need to be checked.
30732 Fri Nov 11 19:53:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30734         * eval.c, intern.h: failed to compile where NFDBITS is defined but
30735           howmany() is not defined. [ruby-dev:27680]
30737         * io.c (is_socket): failed to compile where S_ISSOCK is not defined.
30739         * io.c (pipe_open): failed to compile where socketpair is not supported.
30741 Fri Nov 11 08:20:56 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30743         * Makefile.in (OUTFLAG): keep trailing spaces.  [ruby-dev:27666]
30745         * mkconfig.rb: substitution references added.
30747 Fri Nov 11 07:39:49 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30749         * configure.in: undef HAVE_LINK on BeOS. (link(2) always returns
30750           EINVAL, and this causes error in test/fileutils.)
30752         * file.c: override chown(2) and fchown(2) on BeOS. (these functions
30753           should not change user/group id if -1 is passed as corresponding
30754           argument, and this causes error in test/fileutils too)
30755           [ruby-dev:27672]
30757 Thu Nov 10 21:05:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30759         * lib/shellwords.rb: fix for blank but not empty string.
30760           fixed: [ruby-dev:27663]
30762 Wed Nov  9 08:39:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30764         * lib/shellwords.rb: refactored.  [ruby-core:06581]
30766 Tue Nov  8 17:35:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30768         * intern.h, eval.c (rb_thread_signal_raise): constified.
30770         * signal.c: cosmetic change.
30772 Tue Nov  8 15:32:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30774         * lib/drb/ssl.rb (DRb::SSLConfig#accept): fixed typo.
30775           [ruby-dev:27560] [ruby-core:4627]
30777 Mon Nov  7 20:54:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30779         * ext/iconv/iconv.c: iconvctl() support.  [EXPERIMENTAL]
30781 Mon Nov  7 16:23:23 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30783         * ext/openssl/ossl.h: need to include winsock2.h before including
30784           windows.h by some openssl headers.
30786 Mon Nov  7 13:43:51 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30788         * ext/tk/stubs.c (_nativethread_consistency_check): use simpler
30789           (low cost) way to check whether the Tcl interpreter was compiled
30790           with threads enabled of not.
30792         * ext/tk/tcltklib.c: reduce warnings.
30794         * ext/tk/tkutil/tkutil.c: ditto.
30796 Mon Nov  7 00:06:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30798         * lib/yaml.rb: removed :nodoc: to generate Kernel doc. [ruby-core:6324]
30800 Sun Nov  6 23:39:13 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30802         * ext/iconv/iconv.c (Iconv::BrokenLibrary): exception when detected a
30803           bug of underlying library.
30805 Sun Nov  6 21:43:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30807         * ext/tk/stubs.c (ruby_tcl_create_ip_and_stubs_init): should touch
30808           interpreter after initialization is done. [ruby-dev:27638]
30810 Sun Nov  6 20:13:27 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30812         * file.c (rb_file_s_readlink): readlink(2) on AIX fails with ERANGE if
30813           buffer size is less than required.  fixed: [ruby-dev:27634]
30815 Sat Nov  5 13:42:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30817         * configure.in, cygwin/GNUmakefile.in (mingw): use def file to alias
30818           symbols.  [ruby-dev:27532]
30820         * bcc32/mkexports.rb, win32/mkexports.rb: make aliases in DLL.
30822         * win32/win32.c, win32/win32.h: replace symbols only when RUBY_EXPORT
30823           is defined.
30825 Thu Nov  3 07:57:39 2005  Minero Aoki  <aamine@loveruby.net>
30827         * lib/open-uri.rb (open_loop): find_proxy should return nil when
30828           proxy does not exist. [ruby-dev:27630]
30830 Wed Nov  2 20:25:28 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30832         * ext/tk/extconf.rb: ext/tk/extconf.rb: change the check parameter
30833           for Win32.
30835 Wed Nov  2 19:03:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30837         * ext/tk/tcltklib.c (ip_rbUpdateObjCmd, ip_rb_threadUpdateObjCmd):
30838           passed improper flags to DoOneEvent().
30840         * ext/tk/tkutil/tkutil.c: use rb_obj_respond_to() instead of
30841           rb_respond_to().
30843 Tue Nov  1 14:20:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30845         * eval.c (rb_call_super): should call method_missing if super is
30846           called from Kernel method.
30848         * eval.c (exec_under): frame during eval should preserve external
30849           information.
30851 Tue Nov  1 10:48:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30853         * ext/openssl/extconf.rb: should check ERR_peek_last_error().
30854           [ruby-dev:27597]
30856         * ext/openssl/ossl.c (ossl_raise): ditto.
30858 Mon Oct 31 17:34:46 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30860         * configure.in: use proper option for Sun linker. A patch from
30861           Shinya Kuwamura <kuwa at labs.fujitsu.com>.  [ruby-dev:27603]
30863 Mon Oct 31 05:46:08 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30865         * ext/openssl/ossl_cipher.c (ossl_cipher_update): input data must
30866           not be empty. [ruby-talk:161220]
30868         * test/openssl/test_cipher.rb: add test for Cipher#update("").
30870 Mon Oct 31 05:38:26 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30872         * lib/webrick/httpservlet/cgihandler.rb
30873           (WEBrick::HTTPServlet::CGIHandler#do_GET): the value of Set-Cookie:
30874           header field should be splited into each cookie.  [ruby-Bugs:2199]
30876         * lib/webrick/cookie.rb (WEBrick::Cookie.parse_set_cookie): new method
30877           to parse the value of Set-Cookie: header field.
30879         * test/webrick/test_cookie.rb, test/webrick/test_cgi.rb,
30880           test/webrick/webrick.cgi: add some test for cookie.
30882 Mon Oct 31 02:33:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30884         * numeric.c (fix_rshift): RDoc fix.  [ruby-core:6351]
30886         * util.h (strtod): add #undef for platforms defines strtod()
30887           macro.   [ruby-dev:27563]
30889 Mon Oct 31 02:31:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30891         * test/ruby/test_float.rb (test_precision): test by assert_in_delta.
30892           [ruby-dev:27575]
30894 Sat Oct 29 01:58:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30896         * ext/etc/etc.c: document update from mathew <meta@pobox.com>.
30897           [ruby-core:06473]
30899         * ext/fcntl/fcntl.c: ditto.
30901 Sat Oct 29 16:56:03 2005  Tadayoshi Funaba  <tadf@dotrb.org>
30903         * lib/date.rb: added seven predicates sunday? to saturday?.
30905         * lib/date.rb: added two methods {prev,next}_month,
30906           that are almost same as << and >>.
30908 Thu Oct 27 20:34:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30910         * enumerator.c (enumerator_allocate): allow subclassing.
30912 Thu Oct 27 16:45:31 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30914         * string.c (scan_once): wrong condition to use mbclen2().
30915           [ruby-dev:27535]
30917 Thu Oct 27 11:53:17 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30919         * missing.h, missing/memcmp.c, missing/memmove.c:
30920           ANSI compatible interface.
30922 Wed Oct 26 09:15:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30924         * ext/syck/implicit.c (syck_type_id_to_uri): should return
30925           newly allocated memory. otherwise, type_id will be freed
30926           twice. [ruby-dev:27384] [ruby-core:6385]
30928 Wed Oct 26 01:58:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30930         * configure.in (RUBY_EXTERN): macro to export symbols in shared
30931           library.  [ruby-core:05528]
30933         * defines.h, {bcc32,win32,wince}/Makefile.sub (RUBY_EXTERN): moved to
30934           configuration pass.
30936         * ext/extmk.rb (extmake): RUBY_EXTERN for static linked extensions.
30938 Tue Oct 25 20:06:59 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30940         * ruby.h (Qfalse, Qtrue, Qnil, Qundef): make sure these immediate
30941           values have VALUE type. there is an environment where sizeof(VALUE)
30942           != sizeof(int) like IA64. if 32bit integer (Qtrue) is passed to ANYARGS
30943           and received by 64bit integer (VALUE), upper bits may have garbage value.
30944           [ruby-dev:27513]
30946 Tue Oct 25 15:32:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30948         * lib/rational.rb: applied documentation patch from Gavin Sinclair
30949           <gsinclair@gmail.com>.  [ruby-core:06364]
30951         * lib/irb.rb (IRB::Irb::eval_input): handle prompts with newlines
30952           in irb auto-indentation mode.  [ruby-core:06358]
30954 Tue Oct 25 14:21:46 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30956         * gc.c (garbage_collect): sorry, previous commit was incorrect.
30957           [ruby-core:6386]
30959 Tue Oct 25 13:40:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30961         * gc.c (garbage_collect): return now whether there're rooms for new
30962           objects, rather than whether GC run. fixed: [ruby-core:6376]
30964 Tue Oct 25 02:12:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30966         * lib/rdoc/markup/simple_markup.rb (SM::SimpleMarkup::LABEL_LIST_RE):
30967           reduce redundant backtrack.  [ruby-talk:161771]
30969 Tue Oct 25 00:35:33 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30971         * lib/rinda/*: RDoc documentation from Eric Hodel
30972           <drbrain@segment7.net> added.
30974 Mon Oct 24 21:14:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30976         * configure.in, io.c: use sys/syscall.h if syscall.h is not available.
30977           [ruby-core:06247]
30979 Mon Oct 24 20:38:25 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30981         * ext/Win32API/lib/win32/resolv.rb (get_info): support multiple DNS.
30982           fixed: [ruby-list:40058], [ruby-dev:27479]
30984 Mon Oct 24 11:01:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30986         * ext/tk/lib/tk/canvas.rb (TkCanvasItemConfig::__item_val2ruby_optkeys):
30987           typo fixed.  [ruby-talk:162187]
30989         * ext/tk/lib/tk/menu.rb (TkMenuEntryConfig::__item_val2ruby_optkeys):
30990           ditto.  [ruby-core:06359]
30992 Mon Oct 24 07:57:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30994         * ext/tk/lib/tk/canvas.rb (TkCanvasItemConfig::__item_val2ruby_optkeys):
30995           typo fixed.  [ruby-talk:162187]
30997         * ext/tk/lib/tk/menu.rb (TkMenuEntryConfig::__item_val2ruby_optkeys):
30998           ditto.  [ruby-core:06359]
31000         * lib/matrix.rb (Matrix::initialize): use funcall instead of send
31001           to allow private methods to be called.  A report from
31002           Jean-Claude Arbaut <jcarbaut@laposte.net>.  [ruby-core:06359]
31004 Mon Oct 24 00:41:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31006         * time.c (time_sunday): added predicate methods for the days of the
31007           week.  [ruby-list:41340]
31009 Sun Oct 23 07:11:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31011         * ext/tk/extconf.rb: improve messages [ruby-core:06325].
31013         * ext/tk/lib/tk.rb, ext/tk/lib/tk/canvas.rb, ext/tk/lib/tk/entry.rb,
31014           ext/tk/lib/tk/frame.rb, ext/tk/lib/tk/image.rb,
31015           ext/tk/lib/tk/itemconfig.rb, ext/tk/lib/tk/labelframe.rb,
31016           ext/tk/lib/tk/listbox.rb, ext/tk/lib/tk/menu.rb,
31017           ext/tk/lib/tk/radiobutton.rb, ext/tk/lib/tk/scale.rb,
31018           ext/tk/lib/tk/spinbox.rb, ext/tk/lib/tk/text.rb,
31019           ext/tk/lib/tk/toplevel.rb: improve conversion of option values.
31021         * ext/tk/lib/tkextlib/*: ditto.
31023         * ext/tk/lib/tkextlib/*: update to support ActiveTcl8.4.11.2.
31025         * ext/tk/lib/tkextlib/trofs/*: support Trofs 0.4.3.
31027         * ext/tk/lib/tkextlib/tile/*: support Tile 0.7.2.
31029         * ext/tk/lib/tkextlib/vu/*: support vu 2.3.0.
31031         * ext/tk/lib/tkextlib/tcllib/*: support Tcllib 1.8 (Tklib 0.3).
31033 Sat Oct 22 23:54:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31035         * ext/extmk.rb, lib/mkmf.rb (with_config): support --with-extension
31036           options.  [ruby-dev:27449]
31038 Sat Oct 22 14:25:43 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31040         * util.[hc] (ruby_add_suffix): constified.
31042         * util.[hc] (ruby_scan_{oct,hex}): fixed typo. (renamed from
31043           scan_{oct,hex})
31045         * util.c: almostly ANSI styled. (except for functions depending on
31046           macro and K&R technique)
31048 Sat Oct 22 13:26:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31050         * object.c (sym_inspect), parse.y (parser_yylex, rb_symname_p): check
31051           if valid as a symbol name more strictly.  [ruby-dev:27478]
31053         * test/ruby/test_symbol.rb: tests for [ruby-core:03573].
31055         * time.c (rb_strftime): removed meaningless volatile modifiers, and
31056           concatenate successive nul characters at once.  [ruby-dev:27472]
31058         * ext/tk/lib/tk/font.rb, ext/tk/lib/tkextlib/ICONS/icons.rb,
31059           ext/tk/sample/tkextlib/treectrl/demo.rb, lib/net/imap.rb,
31060           lib/rss/parser.rb, test/rss/test_content.rb,
31061           test/rss/test_dublincore.rb, test/rss/test_syndication.rb,
31062           test/rss/test_trackback.rb, test/ruby/test_eval.rb,
31063           test/socket/test_socket.rb, test/socket/test_udp.rb:
31064           Object#fcall was renamed as Object#funcall.
31066 Sat Oct 22 10:08:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31068         * missing.h, missing/*.c: SUSv3 compatible strcasecmp and strncasecmp,
31069           ANSI compatible strtol and strtoul, and ANSI styled other functions.
31071 Fri Oct 21 19:16:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31073         * rubysig.h (CHECK_INTS): fixed typo. (I believe bit-or is improper)
31075 Fri Oct 21 17:49:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31077         * bin/erb (ERB::Main::run): typo fixed.  [ruby-core:06337]
31079 Fri Oct 21 15:42:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31081         * intern.h, struct.c (rb_struct_iv_get): constified.
31083         * marshal.c: avoid one VC++6 warning for implicit conversion
31084           from int to char.
31086         * ruby.h: ANSI styled.
31088         * bcc32/Makefile.sub (HAVE_HYPOT): added.
31090         * ext/socket/extconf.rb: BeOS is only one platform should call
31091           closesocket, so check __BEOS__ macro directly. (I was worried
31092           accidently HAVE_CLOSESOCKET is defined on windows again because
31093           it has it)
31095         * ext/socket/{getaddrinfo.c,socket.c}: ditto.
31097         ... these are all cosmetic changes.
31099 Fri Oct 21 15:23:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31101         * bignum.c (bignew_1): convertion from `int' to `char' discards
31102           upper bits, (ie. (char)0xff00 -> 0) so it's better to test if
31103           nonzero and set 0 or 1 instead of simply casting ... as a flag usage.
31104           (but I believe this won't cause actual bug in current implementation)
31105           [ruby-dev:27055]
31107         * time.c: should use LONG_LONG instead of `long long'.
31109 Thu Oct 20 22:22:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31111         * parser.y (struct parser_params): parser never modify input string.
31113         * ext/ripper/tools/preproc.rb (prelude): do not append surplus
31114           newlines to fix line numbers.
31116 Thu Oct 20 11:41:57 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31118         * class.c, eval.c, hash.c, st.c, variable.c: changed /* ??? */ stuff
31119           protoize generated to ANYARGS.
31121 Thu Oct 20 11:18:11 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31123         * eval.c, file.c, ruby.c: removed strchr, strrchr, strstr definition
31124           because they are defined in missing.h.
31126         * missing.h, missing/strchr.c, missing/strstr.c: ANSI styled.
31128 Thu Oct 20 09:36:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31130         * lib/mkmf.rb (create_makefile): Borland make seems not to allow
31131           empty dependency list. If this change is not good, please correct
31132           it.
31134 Thu Oct 20 07:55:09 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31136         * lib/mkmf.rb (create_makefile): get rid of a restriction
31137           of Borland make.  fixed: [ruby-dev:27460]
31139         * ext/ripper/depend: ditto.
31141 Wed Oct 19 23:58:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31143         * lib/mkmf.rb (create_makefile): do not create unnecessary empty
31144           directories.  fixed: [ruby-dev:27451]
31146 Wed Oct 19 08:28:32 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31148         * file.c (rb_file_join): elements may contain null pointer strings.
31149           report and fixed by Lloyd Zusman (hippoman): [ruby-core:06326]
31151 Wed Oct 19 02:34:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31153         * enumerator.c, eval.c, gc.c, parse.y, regparse.c, sjis.c, time.c:
31154           made internal symbols static.  [ruby-dev:27435]
31156 Tue Oct 18 10:58:27 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31158         * ext/dl/depend, ext/dl/extconf.rb, ext/socket/depend,
31159           ext/socket/extconf.rb: shouldn't define DESTCLEANFILES in depend,
31160           use $distcleanfiles in extconf.rb.
31162         * win32/Makefile.sub (distclean-local): should remove .config.h.time.
31164 Mon Oct 17 09:42:50 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31166         * mkconfig.rb: fixup configure_args for mswin32 configure.
31168         * win32/configure.bat (srcdir, target): ditto.
31170 Mon Oct 17 05:01:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31172         * env.h: move struct METHOD and struct BLOCK from eval.c to
31173           support NodeWrap and ParseTree.
31175 Sun Oct 16 22:16:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31177         * ext/extmk.rb: omit non-existing directories.
31179 Sun Oct 16 14:40:54 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31181         * lib/rinda/rinda.rb (Rinda::Tuple#initialize): check remote hash
31182           tuple. fixed: [ruby-list:41227]
31184         * test/rinda/test_rinda.rb: test it.
31186 Sun Oct 16 03:38:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31188         * rubysig.h (CHECK_INTS): prevent signal handler to run during
31189           critical section.  [ruby-core:04039]
31191         * eval.c (load_wait): need not to call rb_thread_schedule()
31192           explicitly.  [ruby-core:04039]
31194         * eval.c (rb_thread_schedule): clear rb_thread_critical.
31195           [ruby-core:04039]
31197 Sun Oct 16 00:13:14 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31199         * win32/configure.bat: remove unnecessary line which prevents
31200           creating Makefile.
31202 Sat Oct 15 23:52:07 2005  Shugo Maeda  <shugo@ruby-lang.org>
31204         * lib/net/ftp.rb: (getbinaryfile): allow nil for localfile, and
31205           returns retrieved data if localfile is nil.
31207         * lib/net/ftp.rb: (gettextfile): ditto.
31209 Sat Oct 15 19:51:29 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31211         * bin/erb: typo fixed, again. thanks, Doug Kearns.
31213 Fri Oct 14 23:09:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31215         * win32/Makefile.sub (MKFILES): update MKFILES if configure files get
31216           changed.
31218         * win32/configure.bat, win32/setup.mak (configure_args): store
31219           arguments to configure files.
31221 Fri Oct 14 22:05:45 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31223         * win32/win32.c (ioctl): should set errno.
31225 Fri Oct 14 16:39:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31227         * lib/webrick/config.rb (Config::FileHandler): :UserDir should be nil.
31228           It is harmful to permit the access to ~/public_html by default.
31229           suggested by Hiroyuki Iwatsuki.
31231 Fri Oct 14 04:58:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31233         * eval.c (rb_obj_instance_exec): create instance_exec and
31234           module_exec which pass arguments to the block.
31236         * eval.c (rb_f_funcall): rename fcall to funcall to follow
31237           tradition.
31239 Thu Oct 13 23:29:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31241         * parse.y (HEAPCNT): bison allocates indivisible size.
31242           fixed: [ruby-core:06261]
31244         * io.c, pack.c, ext/syck/rubyext.c, ext/syck/syck.h, missing/isinf.c:
31245           get rid of warnings.  fixed: [ruby-core:06247]
31247 Wed Oct 12 12:51:56 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31249         * ext/openssl/ossl.c (Init_openssl): should call
31250           OpenSSL_add_ssl_algorithms().
31252 Wed Oct 12 11:08:54 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
31254         * file.c (rb_f_test): typo in RDoc comments.
31256 Tue Oct 11 21:41:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31258         * configure.in (RUBY_FUNC_ATTRIBUTE): check prefixed attribute form
31259           first.  [ruby-dev:27398]
31261         * array.c, enum.c, eval.c, util.c: safer function pointer usage.
31262           fixed: [ruby-core:06143]
31264         * util.h (qsort): removed the definition incompatible to ANSI.
31265           fixed: [ruby-core:06147]
31267         * eval.c (rb_obj_respond_to): check if obj responds to the given
31268           method with the given visibility.  [ruby-dev:27408]
31270         * eval.c (rb_respond_to): conform to Object#respond_to?.  [ruby-dev:27411]
31272 Tue Oct 11 00:01:21 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31274         * st.c (st_free_table): do not call free() but xfree().
31275           [ruby-core:06205]
31277 Sat Oct  8 19:49:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31279         * eval.c (Init_Binding): add Binding#dup method.  [yarv-dev:666]
31281         * io.c (rb_io_init_copy): clear PREP flag for copied IO.
31282           fixed: [ruby-dev:27371]
31284         * parse.y (rb_parser_malloc, rb_parser_free): manage parser stack on
31285           heap.  [ruby-list:41199]
31287         * parse.y (ripper_initialize): use rb_respond_to().
31289         * ext/ripper/depend (check): get rid of re-generating ripper.y always.
31291         * ext/iconv/charset_alias.rb: parse config.charset_alias file directly.
31293         * ext/nkf/lib/kconv.rb (Kconv.conv): get rid of nil.to_a.
31295         * lib/scanf.rb (Scanf::FormatSpecifier#letter, #width): use matched
31296           substring directly.
31298         * test/ruby/test_assignment.rb, test/ruby/test_iterator.rb: followed
31299           change of sample/test.rb.
31301         * test/net/http/test_http.rb: removed superfluous splatting stars.
31303 Fri Oct  7 16:41:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31305         * eval.c (splat_value): call rb_Array() to convert svalue to
31306           values.  [ruby-dev:27397]
31308 Fri Oct  7 09:54:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31310         * lib/cgi.rb (CGI::Cookie::parse): Cookies from Nokia devices may
31311           not be parsed correctly.  A patch from August Z. Flatby
31312           (augustzf) in [ruby-Patches-2595].  [ruby-core:06183]
31314 Thu Oct  6 22:51:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31316         * object.c (rb_Array): Array() to raise error for objects without
31317           to_ary, nor to_a.
31319         * object.c (nil_to_a): revert NilClass#to_a.
31321 Thu Oct  6 20:10:38 2005  Minero Aoki  <aamine@loveruby.net>
31323         * ext/strscan/strscan.c (strscan_free): remove useless code.
31324           [ruby-dev:26368] [ruby-dev:27389]
31326 Thu Oct  6 01:02:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31328         * range.c (rb_range_beg_len): should return Qfalse for non-range
31329           object.
31331 Wed Oct  5 04:42:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31333         * lib/xmlrpc/server.rb (XMLRPC::Server#initialize): should mount the
31334           servlet on "/".
31336 Wed Oct  5 04:06:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31338         * lib/xmlrpc/server.rb (XMLRPC::Server#serve): delete wrong call
31339           of "join".
31341 Mon Oct  3 00:04:00 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
31343         * pack.c (EXTEND16): [ruby-dev:27383]
31345 Sat Oct  1 23:55:24 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31347         * win32/win32.c (do_select, rb_w32_select): brush up.
31349 Sat Oct  1 12:57:02 2005  Tanaka Akira  <akr@m17n.org>
31351         * bignum.c (rb_big_rand): removed.  [ruby-dev:25405]
31353 Sat Oct  1 01:46:51 2005  Tanaka Akira  <akr@m17n.org>
31355         * lib/open-uri.rb (OpenURI.open_loop): prohibit multiple proxy
31356           options.
31358 Thu Sep 29 10:26:18 2005  Tanaka Akira  <akr@m17n.org>
31360         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): abolish sizeof(FILE).
31361           [ruby-dev:27317]
31363 Thu Sep 29 10:15:14 2005  Tanaka Akira  <akr@m17n.org>
31365         * lib/open-uri.rb (:proxy_http_basic_authentication): new option.
31367 Thu Sep 29 07:22:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31369         * eval.c (rb_f_send): underscores need to be escaped.
31370           fixed by Doug Kearns.  [ruby-core:06053]
31372 Thu Sep 29 00:57:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31374         * eval.c (ev_const_get), variable.c (rb_const_get_0): retry only when
31375           autoload succeeded.
31377         * variable.c (rb_autoload_load): now return true if autoload
31378           succeeded.  fixed: [ruby-dev:27331]
31380 Wed Sep 28 23:40:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31382         * file.c (rb_stat_inspect): constified.
31384 Wed Sep 28 15:12:28 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31386         * lib/webrick/cgi.rb (WEBrick::CGI#start): req.query_string should
31387           refer the value of QUERY_STRING. [ruby-list:41186]
31389         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#query_string=):
31390           add new method.
31392 Wed Sep 28 10:45:44 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31394         * ext/tk/tcltklib.c: cannot compile with Tcl/Tk8.0.x [ruby-dev:27335].
31396 Wed Sep 28 07:56:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31398         * lib/yaml/basenode.rb (YAML::BaseNode::match_segment): fix typo.
31399           [ruby-dev:27237], [ruby-core:05854]
31401         * lib/yaml/tag.rb (Module#yaml_as): suppress warnings.
31403         * lib/yaml/types.rb (YAML::PrivateType, YAML::DomainType): ditto.
31405 Wed Sep 28 03:16:41 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31407         * rubysig.h: fixed build problem with --enable-pthread on platforms
31408           which don't have setitimer().
31410 Mon Sep 26 22:32:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31412         * eval.c (set_trace_func): add rb_secure(4) to prevent adding
31413           tracing function.
31415 Mon Sep 26 20:59:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31417         * parse.y: changed to ANSI function style.
31419 Sun Sep 25 12:02:04 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31421         * bin/erb: typo fixed.
31423 Sun Sep 25 11:54:11 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31425         * lib/rinda/tuplespace.rb (Rinda::TemplateEntry::initialize): pull
31426           up method. Tabs converted to spaces.
31428 Sun Sep 25 09:34:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31430         * parse.y: replaced `foo _((boo))' with `foo(boo)'.
31432 Sun Sep 25 08:19:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31434         * test/rss/test_content.rb, test/rss/test_syndication.rb: use fcall
31435           instead of send in order to override visibility.
31437 Sun Sep 25 01:46:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31439         * misc/ruby-mode.el (ruby-calculate-indent): arrange deep-indent
31440           closing parenthesis at same column as the opening.
31442 Sun Sep 25 01:33:41 2005  Tanaka Akira  <akr@m17n.org>
31444         * process.c (proc_setrlimit): make the third argument (rlim_max)
31445           optional.
31447 Sun Sep 25 00:42:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31449         * misc/ruby-mode.el (ruby-expr-beg): deal with heredoc separately.
31450           fixed: [ruby-list:41168]
31452         * misc/ruby-mode.el (ruby-calculate-indent): not to deepen indent
31453           level for continuous line inside parentheses.
31454           http://nabeken.tdiary.net/20050915.html#p02
31456 Sat Sep 24 21:19:39 2005  Minero Aoki  <aamine@loveruby.net>
31458         * ext/strscan/strscan.c: document enhancement.
31460         * ext/strscan/strscan.c: update copyright year.
31462         * ext/strscan/strscan.c: update coding style.
31464 Sat Sep 24 20:20:05 2005  Minero Aoki  <aamine@loveruby.net>
31466         * test/net/http/test_http.rb (teardown): Net::HTTP.version_1_1 breaks
31467           many other tests; ensure that Net::HTTP is version 1.2 after test.
31468           [ruby-dev:27312]
31470 Sat Sep 24 11:44:28 2005  Minero Aoki  <aamine@loveruby.net>
31472         * test/net/http/test_http.rb: new file.
31474 Sat Sep 24 08:54:05 2005  Minero Aoki  <aamine@loveruby.net>
31476         * lib/fileutils.rb (cd): no longer accept :noop option, related
31477           code is useless. [ruby-core:05858] [ruby-Bugs:2494]
31479 Sat Sep 24 08:30:00 2005  Tanaka Akira  <akr@m17n.org>
31481         * lib/pathname.rb (Pathname#sub): new method.
31483 Sat Sep 24 08:29:36 2005  Minero Aoki  <aamine@loveruby.net>
31485         * lib/fileutils.rb: fix visibility of FileUtils::NoWrite, Verbose,
31486           DryRun. [ruby-core:05954]
31488         * test/fileutils/test_nowrite.rb: test it.
31490         * test/fileutils/test_dryrun.rb: new file.
31492         * test/fileutils/test_verbose.rb: new file.
31494 Sat Sep 24 07:59:01 2005  Minero Aoki  <aamine@loveruby.net>
31496         * sample/ripper/colorize.rb: removed (replaced by ruby2html.rb).
31498         * sample/ripper/ruby2html.rb: added.
31500 Sat Sep 24 06:35:15 2005  Minero Aoki  <aamine@loveruby.net>
31502         * ext/ripper: no longer generates .rb files.
31504         * parse.y (Init_ripper): ripper_init_eventids*() takes 1 argument,
31505           self (class Ripper).
31507         * ext/ripper/depend: target removed: `lib/ripper/core.rb'.
31509         * ext/ripper/depend: new target `eventids2table.c'.
31511         * ext/ripper/depend: new target `check'.
31513         * ext/ripper/eventids2.c: include eventids2table.c.
31515         * ext/ripper/eventids2.c: initialize SCANNER_EVENT_TABLE.
31517         * ext/ripper/extconf.rb: update $cleanfiles list.
31519         * ext/ripper/tools/generate.rb: no longer generate ripper/core.rb.
31521         * ext/ripper/tools/generate.rb: new mode `check'.
31523         * ext/ripper/tools/generate.rb: new mode `eventids2table'.
31525         * ext/ripper/lib/ripper/core.rb.in: removed.
31527         * ext/ripper/lib/ripper/core.rb: added.
31529         * ext/ripper/lib/ripper/filter.rb: update copyright year.
31531         * ext/ripper/lib/ripper/lexer.rb: ditto.
31533         * ext/ripper/lib/ripper/sexp.rb: ditto.
31535 Sat Sep 24 02:40:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31537         * lib/delegate.rb: document update from James Edward Gray II
31538           <james@grayproductions.net>.  [ruby-core:05942]
31540 Sat Sep 24 02:05:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31542         * process.c (proc_daemon): should restrict execution on levels
31543           higher than $SAFE=2.  suggested by URABE Shyouhei
31544           <shyouhei@ice.uec.ac.jp>.
31546 Fri Sep 23 20:10:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31548         * ext/ripper/tools/generate.rb, ext/ripper/tools/preproc.rb: StringIO
31549           is not available for miniruby.  fixed: [ruby-dev:27307]
31551 Fri Sep 23 17:36:48 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
31553         * ext/win32ole/win32ole.c: avoid core dump with WIN32OLE_EVENT.
31554           [ruby-dev:27133]
31556 Fri Sep 23 16:27:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31558         * lib/forwardable.rb: replaced by new implementation from
31559           <Daniel.Berger@qwest.com>.  [ruby-core:05899]
31561 Fri Sep 23 07:07:47 2005  Minero Aoki  <aamine@loveruby.net>
31563         * test/ripper/depend: use --output option instead of redirect;
31564           nmake does not remove a target when the target file is created by
31565           redirect. [ruby-dev:26466]
31567         * test/ripper/tools/preproc.rb: new option --output.
31569 Fri Sep 23 06:57:52 2005  Minero Aoki  <aamine@loveruby.net>
31571         * test/ripper/tools/generate.rb: check parser event arity.
31573         * test/ripper/tools/generate.rb: detect crash of parser-event-IDs
31574           and scanner-event-IDs.
31576 Fri Sep 23 06:01:30 2005  Minero Aoki  <aamine@loveruby.net>
31578         * test/ruby/test_file.rb: check File#chown(nil,nil).
31579           [ruby-dev:27140]
31581 Fri Sep 23 05:57:23 2005  Minero Aoki  <aamine@loveruby.net>
31583         * ext/ripper: refactoring code generation tools. [ruby-dev:27247]
31584           [ruby-dev:27273]
31586         * ext/ripper/depend: use generate.rb.
31588         * ext/ripper/lib/ripper/core.rb: removed.
31590         * ext/ripper/tools/generate-eventids1.rb: removed (code moved to
31591           generate.rb).
31593         * ext/ripper/tools/generate-ripper_rb.rb: removed (code moved to
31594           generate.rb).
31596         * ext/ripper/tools/list-parse-event-ids.rb: removed (code moved to
31597           generate.rb).
31599         * ext/ripper/tools/list-scan-event-ids.rb: removed (code moved to
31600           generate.rb).
31602         * ext/ripper/lib/ripper/core.rb: removed.
31604         * ext/ripper: refactoring tests. [ruby-dev:27273]
31606         * ext/ripper/test/check-event-arity.rb: removed (code moved to
31607           tools/generate.rb).
31609         * ext/ripper/test/check-event-coverage.rb: removed (code moved to
31610           test/ripper/test_parser_events.rb).
31612         * ext/ripper/test/check-scanner-event-coverage.rb: removed (code
31613           moved to test/ripper/test_scanner_events.rb).
31615         * ext/ripper/test/list-called-events.rb: removed.
31617         * ext/ripper/test/src_rb: removed.
31619         * ext/ripper/test/validate.rb: removed.
31621         * test/ripper/test_scanner_events.rb: check event coverage.
31623         * ext/ripper/lib/ripper/core.rb.in: update copyright year.
31625 Thu Sep 22 23:40:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31627         * lib/mkmf.rb (find_executable0): default path if environment is not
31628           set.  [ruby-dev:27281]
31630         * ext/ripper/extconf.rb (have_command): replaced with find_executable.
31632 Thu Sep 22 17:31:48 2005  Shugo Maeda  <shugo@ruby-lang.org>
31634         * test/readline/test_readline.rb (TestReadline::replace_stdio):
31635           merged the patch of [ruby-dev:25232] instead of [ruby-dev:25223].
31636           (merged from ruby_1_8 branch)
31638 Wed Sep 21 23:30:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31640         * lib/mkmf.rb (configuration): generalized nmake dependent code.
31642 Wed Sep 21 14:16:30 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31644         * ext/ripper/depend (SUFFIXES): no longer needed.
31646         * ext/ripper/depend (c): avoid nmake problem. fixed [ruby-dev:27191]
31648 Wed Sep 21 08:52:25 2005  why the lucky stiff  <why@ruby-lang.org>
31650         * ext/syck/token.c: correctly compute indentation of a block
31651           scalar's parent node. [ruby-talk:150620]
31653 Wed Sep 21 08:20:24 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31655         * README.EXT, README.EXT.ja: add new features.
31657 Wed Sep 21 07:43:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31659         * lib/optparse.rb (default_argv, Arguable#options): defaults strings
31660           to be parsed to Arguable instance.
31662 Wed Sep 21 02:44:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31664         * file.c (path_check_0): disallow sticky world writable directory
31665           in PATH (and $LOAD_PATH).  [ruby-dev:27226]
31667 Wed Sep 21 00:32:22 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31669         * numeric.c (fix_idiv): 1.div(1.0) should return integer value.
31670           [ruby-dev:27235]
31672 Tue Sep 20 22:25:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31674         * ext/io/wait/lib/nonblock.rb: disable on platforms non-blocking flag
31675           is not available.  fixed: [ruby-dev:27187]
31677         * file.c (rb_stat_inspect): protoized function pointer.
31679 Tue Sep 20 18:23:04 2005  Tanaka Akira  <akr@m17n.org>
31681         * eval.c (thread_mark): mark th->last_status.  [ruby-dev:27179]
31683 Tue Sep 20 18:20:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31685         * lib/yaml.rb: require 'yaml/constants'.  [ruby-core:5776]
31687 Tue Sep 20 17:48:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31689         * lib/xmlrpc/client.rb (XMLRPC::Client::do_rpc): add charset
31690           information to content-type header.[ruby-core:5127]
31692         * lib/xmlrpc/server.rb (CGIServer::serve): ditto.
31694         * lib/xmlrpc/server.rb (ModRubyServer::serve): ditto.
31696         * lib/xmlrpc/server.rb (WEBrickServlet::service): ditto.
31698 Tue Sep 20 17:26:42 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31700         * test/webrick/test_cgi.rb: set ENV["PATH"] to CGIEnvPath on
31701           windows. bcc32's runtime is not installed into system directory,
31702           so it cannot be found without this setting. [ruby-dev:27166]
31704 Tue Sep 20 17:14:10 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31706         * io.c: PIPE_BUF is not defined on BeOS. use _POSIX_PIPE_BUF instead.
31707           [ruby-dev:27185]
31709 Tue Sep 20 17:10:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31711         * test/dbm/test_dbm.rb (TestDBM::test_s_open_error): remove
31712           test_s_open_error test to detect duplicate open.
31713           [ruby-dev:27202]
31715 Tue Sep 20 15:39:40 2005  why the lucky stiff  <why@ruby-lang.org>
31717         * ext/syck/emitter.c (syck_scan_scalar): prevent indicators from
31718           appearing alone or at the end of plain scalars. [ruby-core:5826]
31720         * ext/syck/emitter.c (syck_emit_scalar): treat typed scalar nodes
31721           as complex keys.
31723         * lib/syck.h: version 0.60.
31725         * lib/yaml/basenode.rb (YAML::BaseNode#at): transform keys during
31726           key searches.
31728         * ext/syck/rubyext.c: loading of binary-typed nodes.  prevent
31729           emission of plain strings that look like symbols, but which aren't.
31731 Tue Sep 20 05:48:26 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31733         * test/xmlrpc/test_webrick_server.rb (setup_http_server):
31734           should not include 'webrick/https' unless 'use_ssl' because
31735           it fails where openssl is not installed.
31737 Tue Sep 20 01:24:45 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31739         * eval.c (splat_value): use to_a to splat non Array object.
31741         * object.c (nil_to_a): remove nil.to_a.  [experimental]
31743 Tue Sep 20 01:01:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31745         * lib/mathn.rb (Fixnum): remove debug print.
31747         * lib/rational.rb (Rational): ditto.
31749 Tue Sep 20 00:34:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31751         * io.c (io_close): call rb_io_close() directly if io is a T_FILE
31752           object.  [ruby-dev:27156]
31754 Mon Sep 19 18:58:10 2005  Minero Aoki  <aamine@loveruby.net>
31756         * file.c (rb_file_chown): should accept nil. [ruby-dev:27171]
31758 Mon Sep 19 18:29:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31760         * file.c (file_expand_path): allow pathnames to expand.
31761           [ruby-dev:27152]
31763 Mon Sep 19 15:12:15 2005  Minero Aoki  <aamine@loveruby.net>
31765         * ext/ripper/depend: do not make ripper/core.rb. [ruby-dev:26462]
31767 Mon Sep 19 14:49:19 2005  Minero Aoki  <aamine@loveruby.net>
31769         * ext/ripper/eventids2.c: add prefix `t' to tLAMBDA-related lexer
31770           events.
31772         * ext/ripper/lib/ripper/core.rb: updated.
31774 Mon Sep 19 14:39:46 2005  Minero Aoki  <aamine@loveruby.net>
31776         * parse.y (do_block): do_block event dispatches 2 args.
31777           [ruby-dev:26964]
31779         * ext/ripper/lib/ripper/core.rb: updated.
31781         * ext/ripper/tools/list-parser-event-ids.rb: check arity mismatch.
31783 Mon Sep 19 07:45:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31785         * ext/openssl/ossl_pkey.h, ossl_pkey_rsa.c, ossl_pkey_dsa.c:
31786           an instance variable "private" is added to OpenSSL::PKey class.
31787           this ivar is a flag that shows whether there is a private key
31788           in the instance.
31790         * ext/openssl/ossl_engine.c: (ossl_engine_load_privkey): set private
31791           key flag.
31793         * test/openssl/test_pkey_rsa.rb: add test about private detection.
31795 Mon Sep 19 06:38:03 2005  Minero Aoki  <aamine@loveruby.net>
31797         * lib/fileutils.rb: method renaming: collect_methods ->
31798           collect_method.
31800 Mon Sep 19 05:58:59 2005  Minero Aoki  <aamine@loveruby.net>
31802         * lib/fileutils.rb: use module_function instead of single extend.
31804         * test/fileutils/test_fileutils.rb: test existence of singleton
31805           methods.
31807 Mon Sep 19 05:32:41 2005  Minero Aoki  <aamine@loveruby.net>
31809         * lib/fileutils.rb (remove_entry_secure): does not use chdir(2).
31811 Mon Sep 19 03:17:48 2005  Tanaka Akira  <akr@m17n.org>
31813         * file.c (rb_thread_flock): wrap the flock system call by
31814           TRAP_BEG/TRAP_END to enable signals.  [ruby-dev:27122]
31816         * ext/socket/socket.c (bsock_send): wrap the sendto and send system
31817           call by TRAP_BEG/TRAP_END to enable signals when writing to a socket
31818           which is full.  [ruby-dev:27132]
31820         * io.c (rb_io_syswrite): wrap the write system call by
31821           TRAP_BEG/TRAP_END to run signal hander in syswrite method.
31822           [ruby-dev:27134]
31824 Mon Sep 19 01:07:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31826         * numeric.c (Init_Numeric): should define Fixnum#div.
31827           [ruby-dev:27129]
31829         * file.c (rb_thread_flock): wrap flock(2) by TRAP_BEG and
31830           TRAP_END.  [ruby-dev:27122]
31832         * file.c (rb_file_join): call FilePathValue() to all Pathnames to
31833           join.  [ruby-dev:27127]
31835         * file.c (rb_get_path): call StringValueCStr() to ensure no nul
31836           bytes in path strings.
31838         * gc.c (garbage_collect): need value for return.  [ruby-dev:27127]
31840 Sun Sep 18 02:10:47 2005  why the lucky stiff  <why@ruby-lang.org>
31842         * lib/yaml/rubytypes.rb: remove comments that are bungling up
31843           the rdoc and ri output.  output symbols as plain scalars.
31845         * ext/syck/rubyext.c (syck_emitter_reset): emit headless
31846           documents always.
31848         * ext/syck/emitter.c (syck_scan_scalar): quote scalars with any
31849           kind of surrounding line space, tabs or spaces alike.
31851         * ext/syck/token.c: accept tabs as whitespace, not for indentation,
31852           but strip from plain scalars.
31854         * test/yaml/test_yaml.rb: remove outdated tests.
31856 Sun Sep 18 01:10:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31858         * gc.c (garbage_collect): return false if no GC run.
31860 Sat Sep 17 23:25:04 2005  sheepman  <sheepman@sheepman.sakura.ne.jp>
31862         * lib/mathn.rb (Rational::inspect): should preserve original
31863           operand.  [ruby-core:05806]
31865 Sat Sep 17 23:20:27 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31867         * lib/cgi.rb (CGI::Cookie): should handle multiple values for a
31868           cookie name.  [ruby-talk:156140]
31870         * test/socket/test_tcp.rb (TestTCPSocket::test_recvfrom): typo
31871           fixed.  [ruby-dev:27123]
31873 Sat Sep 17 20:58:56 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31875         * win32/win32.c (rb_w32_select): fixed deadlock bug.
31876           because select(2) modifies its fd_set arguments, it must be
31877           restored sometimes.
31879         * win32/win32.c (rb_w32_select): performance improvement when
31880          'always readable/writable handles' and sockets are passed.
31881           sockets should be polled every time.
31883             require "net/http"
31885             Thread.new {
31886               loop do
31887                 STDOUT.write(".") # busy on console (this is worst case though)
31888               end
31889             }
31891             # socket operation took long time. (sometimes timed out)
31892             Net::HTTP.start("www.ruby-lang.org") do |http|
31893                 http.get("/cgi-bin/cvsweb.cgi/ruby/array.c?rev=1.179")
31894             end
31896 Sat Sep 17 14:54:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31898         * test/ruby/test_readpartial.rb (test_open_pipe, test_with_stdio):
31899           these tests are working now, so turned on. (windows)
31901 Sat Sep 17 14:18:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31903         * win32/win32.c (rb_w32_select): I hope performance problem was
31904           solved.
31906 Sat Sep 17 13:45:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31908         * win32/win32.c (rb_w32_select): console support is back.
31909           but still has performance problem because I loosely took 1 second
31910           for wait time. I'll fix it later. (The reason I drastically changed
31911           the code is that I wanted to implement the fileset management as
31912           single function, and I was worried that if pipe or console
31913           was always available, socket may not be processed any time)
31915 Sat Sep 17 11:24:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31917         * win32/win32.c (rb_w32_select): select for socket didn't work.
31918           this caused deadlock in drb test. this happened because GetFileType
31919           for socket handle returns FILE_TYPE_PIPE. Of course, it's not a
31920           pipe. So socket handle didn't reach winsock's select function.
31922         * win32/win32.c (rb_w32_select): read for pipe was still blocked
31923           even if writer handle was closed.
31925             r,w = IO.pipe
31927             Thread.new {
31928               sleep 3; puts "------- 1"
31929               w.puts("foo")
31930               sleep 3; puts "------- 2"
31931               w.puts("boo")
31932               sleep 3; puts "------- 3"
31933               w.close
31934             }
31936             until r.eof? # should break by w.close but didn't.
31937               puts r.gets
31938             end
31940         * win32/win32.c (rb_w32_select): temporary reverted console support
31941           but it'll be back soon.
31943 Sat Sep 17 10:42:13 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31945         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string and bg_eval_string
31946           should call Kernel.eval on caller's safe-level instead of slave's
31947           safe-level (Of course, the given script should be evaluated on
31948           slave's safe-level).
31950 Sat Sep 17 09:45:26 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31952         * string.c (rb_str_substr): should propagate taintness even for
31953           empty strings.  [ruby-dev:27121]
31955         * string.c (rb_str_aref): should infect result if range argument
31956           is tainted.  [ruby-dev:27121]
31958 Sat Sep 17 08:35:39 2005  Kouhei Sutou  <kou@cozmixng.org>
31960         * lib/rss/maker/base.rb (RSS::Maker::ItemsBase#normalize): fixed
31961           strange RSS::Maker::Item#max_size behavior.
31962           Thanks to Kazuhiko <kazuhiko@fdiary.net>.
31964         * test/rss/test_maker_1.0.rb (RSS::TestMaker10#test_items): ditto.
31966 Sat Sep 17 08:02:53 2005  Shugo Maeda  <shugo@ruby-lang.org>
31968         * lib/net/imap.rb: supported DIGEST-MD5.  Thanks, Mathieu Arnold.
31970         * lib/net/imap.rb: use fcall instead of send.  Thanks, Satoru
31971           Takabayashi.
31973 Fri Sep 16 22:45:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31975         * file.c (rb_file_s_extname): empty string for path name ending with a
31976           period.  fixed: [ruby-core:05651]
31978         * file.c (rb_file_join): smarter behavior at edge cases.
31979           fixed: [ruby-core:05706]
31981         * gc.c (rb_memerror, ruby_xmalloc, ruby_xrealloc, rb_newobj): just
31982           abondon if no memory available, when interpreter is not running.
31983           [ruby-dev:27104]
31985         * gc.c (garbage_collect): return whether GC could run.
31987         * dir.c (rb_push_glob): fix delimiter bug.  fixed: [ruby-dev:27105]
31989         * dir.c (dir_s_aref, dir_s_glob): allow multiple patterns.
31990           [ruby-dev:27110]
31992         * win32/win32.c (cmdglob): enable brace expansion.
31994 Fri Sep 16 18:34:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31996         * ext/syck/node.c (syck_replace_str): was using return from the
31997           void function.  a patch from MIYAMUKO Katsuyuki
31998           <miyamuko at mtb.biglobe.ne.jp>.  [ruby-dev:27111]
32000 Fri Sep 16 14:48:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32002         * ext/tk/lib/multi-tk.rb: fix typo on MultiTkIp#bg_eval_string
32004 Fri Sep 16 12:02:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32006         * ext/syck/rubyext.c (syck_resolver_transfer): remove C++ style
32007           comment (//).  [ruby-core:05793]
32009 Fri Sep 16 00:17:03 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32011         * test/logger/test_logger.rb: unintentionally overwritten changes by
32012           Usa.  reverted.
32014 Fri Sep 16 00:03:11 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32016         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#initialize): should set
32017           $stdout.binmode.
32019 Thu Sep 15 23:25:21 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32021         * lib/{soap,wsdl,xsd}, test/{soap,wsdl,xsd}: imported soap4r/1.5.5.
32023           #nnn is a ticket number at http://dev.ctor.org/soap4r
32025           * SOAP
32027             * allow to configure an envelope namespace of SOAP request. (#124)
32028                 TemporaryNamespace = 'http://www.w3.org/2003/05/soap-envelope'
32029                 @client.options["soap.envelope.requestnamespace"] =
32030                   TemporaryNamespace
32031                 @client.options["soap.envelope.responsenamespace"] =
32032                   TemporaryNamespace
32033                 @client.do_proc(...)
32035             * let SOAP request XML indent space configuable.  see
32036               "soap.envelope.no_indent" option. (#130)
32038             * let external CES configuable.
32039               ex. client["soap.mapping.external_ces"] = 'SJIS'.  $KCODE is used
32040               by default. (#133)
32041                 external CES ::= CES used in Ruby object of client and server
32042                 internal CES ::= CES used in SOAP/OM
32044             * add iso-8859-1 external CES support. (#106)
32046             * fixed illegal 'qualified' handling of elements.  it caused
32047               ASP.NET inteoperability problem. (#144)
32049             * added 'soap.envelope.use_numeric_character_reference' (boolean)
32050               option to let query XML use numeric character reference in XML,
32051               not plain UTF-8 character.  !GoogleSearch server seems to not
32052               allow plain UTF-8 character since 2005-08-15 update. (#147)
32054             * SOAP::Header::SimpleHeader (de)serialization throws an exception
32055               on !SimpleHeader.on_(in|out)bound when header is a String.  so we
32056               could not use a simple single element headerItem.  fixed.  thanks
32057               to emil. (#129)
32059             * out parameter of rpc operation did not work.  (#132)
32061             * follow HTTP redirect only if using http-access2.  (#125) (#145)
32063             * add a workaround for importing an WSDL whose path begins with
32064               drive letter.  (#115)
32066           * WSDL
32068             * SOAP Data which is defined as a simpletype was not mapped
32069               correctly to Ruby obj when using wsdl2ruby.rb generated classdef
32070               file. (#123)
32072             * rpc/literal support. (#118)
32074             * re-implemented local element qualify/unqualify control.  handles
32075               elementFormDefault and form in WSDL.  (#119)
32077             * Array of an element which has simpleType causes a crash. (#128)
32079             * prarmeterOrder may not contain return part so it can be shorter
32080               than parts size.  Thanks to Hugh.  (#139)
32082           * Samples
32084             * added !BasicAuth client sample. (#117)
32086             * added Base64 client/server sample.
32088             * added Flickr SOAP interface client sample. (#122)
32090             * added !SalesForce client sample. (#135)
32092             * updated Thawte CA certificate for !GoogleAdWords sample.
32094             * updated a client script with the newer version made by Johan.
32095               thanks!
32097             * shortened long file names. (#120)
32099             * fixed typo in authheader sample. (#129)
32101             * updated deprecated method usage.  (#138)
32103 Thu Sep 15 22:40:27 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32105         * test/ruby/test_signal.rb (test_exit_action): skip the test using
32106           fork on fork-less platforms.
32108 Thu Sep 15 13:54:33 2005  Tanaka Akira  <akr@m17n.org>
32110         * lib/open-uri.rb: add :read_timeout option.
32111           [ruby-core:4848]
32113 Thu Sep 15 11:39:18 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32115         * ext/tk/lib/tk/dialog.rb: If a dialog does not show up yet,
32116           TkDialogObj#name raises an exception. [ruby-talk:156109]
32118 Thu Sep 15 11:01:58 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32120         * win32/win32.c (rb_w32_pipe_exec): remove unnecessary CloseHandle().
32122         * win32/win32.c (extract_console_fd, peek_console): new functions.
32124         * win32/win32.c (rb_w32_select): check consoles by polling them.
32126 Thu Sep 15 00:18:24 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32128         * lib/net/telnet.rb (Net::Telnet::waitfor): replace sysread with
32129           readpartial.  [ruby-talk:127641]
32131 Wed Sep 14 23:28:28 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32133         * win32/win32.c (collect_file_fd): rename from extract_file_fd.
32135         * win32/win32.c (extract_pipe_fd, peek_pipe): new functions.
32137         * win32/win32.c (rb_w32_select): check pipes by polling them.
32139 Wed Sep 14 22:40:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32141         * dir.c (ruby_glob): glob function not using ruby exception system.
32143 Wed Sep 14 17:24:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32145         * dir.c: changed `foo (*bar)_((boo))' to `foo (*bar)(boo)`.
32147         * enumerator.c, eval.c, gc.c, intern.h, io.c, process.c, ruby.c,
32148           ruby.h, signal.c: ditto.
32150 Wed Sep 14 15:06:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32152         * bignum.c: changed `foo _((boo))' to `foo(boo)`. [ruby-dev:27056]
32154         * defines.h, dir.c, dln.h, enumerator.c, env.h, error.c, eval.c, file.c,
32155           gc.c, hash.c, inits.c, intern.h, io.c, lex.c, marshal.c, missing.h,
32156           node.h, numeric.c, pack.c, process.c, re.h, ruby.c, ruby.h, rubyio.h,
32157           rubysig.h, signal.c, sprintf.c, st.h, string.c, struct.c, time.c,
32158           util.c, util.h, variable.c: ditto.
32160 Tue Sep 13 22:09:40 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32162         * lib/logger.rb (Logger): added formatter accessor to logger for
32163           dictating the way in which the logger should format the messages it
32164           displays.  Thanks to Nicholas Seckar (cf. [ruby-talk:153391]) and
32165           Daniel Berger.
32167         * lib/logger.rb (Logger): added VERSION constant.
32169         * lib/logger.rb: removed document for LogDevice. It is an
32170           implementation detail and is not a public interface.
32172         * test/logger/test_logger.rb: added tests.
32174 Tue Sep 13 21:47:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32176         * eval.c (BEGIN_CALLARGS): pop halfly pushed status.
32177           fixed: [ruby-dev:26881]
32179 Tue Sep 13 20:24:37 2005  Tanaka Akira  <akr@m17n.org>
32181         * ruby.h (PRINTF_ARGS): new macro for printf style argument checking.
32183 Tue Sep 13 15:41:29 2005  Minero Aoki  <aamine@loveruby.net>
32185         * lib/net/http.rb: wrote docuemntation of HTTPRequest/HTTPResponse
32186           classes.
32188 Tue Sep 13 14:27:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32190         * string.c, missing.h: failed to build on powerpc-apple-darwin7.9.0
32191           because of crypt argument's constness mismatch. (I hope this works)
32192           (http://mput.dip.jp/autobuild/ruby-trunk/log/20050913T110001.gz)
32194 Tue Sep 13 12:33:05 2005  why the lucky stiff  <why@ruby-lang.org>
32196         * lib/yaml.rb: reworking YAML::Stream to use the new
32197           emitter.
32199         * lib/yaml/stream.rb: ditto.
32201         * lib/yaml/rubytypes.rb: added Object#yaml_new.
32203         * lib/yaml/tag.rb: the tag_subclasses? method now
32204           shows up in the class.  allow taguri to be set using an accessor.
32205           continue support of Object#to_yaml_type.
32207         * ext/syck/rubyext.c: new emitter code.  yaml_new and yaml_initialize
32208           get called, should they be present.  consolidated all the diaspora of           internal node types into the family below YAML::Syck::Node -- Map,
32209           Seq, Scalar -- all of whom are SyckNode structs pointing to
32210           Ruby data.  moved Object#yaml_new into the node_import and made it
32211           the default behavior.  the target_class is always called wih
32212           yaml_new, prepended a parameter, which is the klass.  loaded nodes
32213           through GenericResolver show their style.
32214           new Resolver#tagurize converts type ids to taguris.
32216         * ext/syck/implicit.re: were 'y' and 'n' seriously omitted??
32218         * ext/syck/emitter.c: renovated emitter, walks the tree in advance.
32219           consolidated redundant block_styles struct into
32220           the scalar_style struct.  (this means loaded nodes can now
32221           be sent back to emitter and preserve at least its very basic
32222           formatting.)
32224         * ext/syck/gram.c: headless documents of any kind allowed.
32226         * ext/syck/node.c: new syck_replace_str methods and syck_empty_*
32227           methods for rewriting node contents, while keeping the ID
32228           and other setup info.  added syck_seq_assign.
32230         * ext/syck/syck.h: reflect block_styles and new node functions.
32232 Tue Sep 13 08:09:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32234         * lib/ostruct.rb (new_ostruct_member): Object#send no longer call
32235           private methods.  [ruby-dev:27044]
32237         * test/rss/test_dublincore.rb, test/rss/test_trackback.rb,
32238           test/ruby/test_eval.rb, test/socket/test_socket.rb: ditto.
32240         * test/ruby/test_lambda (test_call_with_block): lambda makes new scope
32241           for formal block parameter.
32243 Tue Sep 13 01:17:45 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32245         * eval.c (proc_save_safe_level): no need to restrict safe level
32246           memoize in $SAFE>=3.  [ruby-dev:27050]
32248 Tue Sep 13 00:02:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32250         * file.c (apply2files): stricter callback definition.
32252         * file.c (rb_path_check): constified.
32254 Mon Sep 12 20:53:06 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32256         * test/openssl/test_pkcs7.rb (test_enveloped): skip this test
32257           to avoid a bug of PKCS7_enctypt() (only if ext/openssl is
32258           compiled with OpenSSL-0.9.7d or earlier versions).
32259           http://www.mail-archive.com/openssl-dev@openssl.org/msg17376.html
32261 Mon Sep 12 20:32:00 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32263         * win32/win32.[hc] (rb_w32_argv_size, ...): reverted my latest change
32264           to avoid incompatible pointer warning. (mingw32)
32266 Mon Sep 12 19:58:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32268         * dln.c: avoid warning of const to non-const convertion.
32269           [ruby-dev:27041]
32271         * eval.c, io.c, ruby.c: ditto.
32273 Mon Sep 12 19:26:29 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32275         * array.c: moved to ANSI function style from K&R function style.
32276           (used protoize on windows, so still K&R remains on #ifdef part of
32277            other platforms. And  `foo _((boo))' stuff is still there)
32278            [ruby-dev:26975]
32280         * bignum.c, class.c, compar.c, dir.c, dln.c, dmyext.c, enum.c,
32281           enumerator.c, error.c, eval.c, file.c, gc.c, hash.c, inits.c,
32282           io.c, main.c, marshal.c, math.c, numeric.c, object.c, pack.c,
32283           prec.c, process.c, random.c, range.c, re.c, regcomp.c, regenc.c,
32284           regerror.c, regexec.c, regparse.c, regparse.h, ruby.c, signal.c,
32285           sprintf.c, st.c, string.c, struct.c, time.c, util.h, variable.c,
32286           version.c: ditto.
32288 Mon Sep 12 14:03:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32290         * test/dbm/test_dbm.rb: remove locking test, which may not be
32291           supported on some platforms.  [ruby-dev:27030]
32293 Sun Sep 11 23:23:02 2005  Shugo Maeda  <shugo@ruby-lang.org>
32295         * lib/net/imap.rb (starttls): supported the STARTTLS command.
32297 Sun Sep 11 22:18:07 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
32299         * bin/erb (ERB::Main#run): set ERB#filename so that it is used
32300           when reporting syntax/runtime errors. Tabs converted to spaces.
32302 Sat Sep 10 22:34:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32304         * array.c, bignum.c: protoize.
32306 Sat Sep 10 00:23:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32308         * eval.c (splat_value): simpler and consistent array conversion
32309           for argument splat.  [yarv-dev:599]
32311 Fri Sep  9 16:45:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32313         * string.c (rb_str_times): make empty strings to keep taintness,
32314           and a little improvement.  [ruby-dev:26900]
32316         * ext/iconv/iconv.c (iconv_try), ext/iconv/extconf.rb: get rid of meta
32317           characters in command line option.  fixed: [ruby-talk:155369]
32319         * ext/iconv/iconv.c: protoized.
32321 Thu Sep  8 14:58:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32323         * merged a patch from Takahiro Kambe <taca at back-street.net> to
32324           support DragonFly BSD.  [ruby-dev:26984]
32326 Thu Sep  8 13:14:57 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
32328         * missing/strchr.c (strrchr): fixed a bug in detecting NUL in a
32329           string.  [ruby-dev:26985]
32331 Wed Sep  7 17:29:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32333         * ext/openssl/ossl_engine.c (ossl_engine_s_by_id):
32334           OpenSSL::Engine.by_id calls given block before calling
32335           ENGINE_init (block parameter is the return value of this method
32336           itself).  this functionality is useful to load dynamic shared
32337           engines.
32339                 require "openssl"
32340                 pkcs11 = OpenSSL::Engine.by_id("dynamic"){|e|
32341                   e.ctrl_cmd("SO_PATH", "/usr/lib/opensc/engine_pkcs11.so")
32342                   e.ctrl_cmd("LIST_ADD", "1")
32343                   e.ctrl_cmd("LOAD")
32344                 }
32345                 pkcs11.ctrl_cmd("PIN", "secret")
32346                 key = pkcs11.load_private_key
32348         * ext/openssl/ossl_engine.c (ossl_engine_ctrl_cmd): new method
32349           OpenSSL::Engine#ctrl_cmd. it wraps ENGINE_ctrl_cmd_string.
32351         * ext/openssl/ossl_engine.c (ossl_engine_get_cmds): new method
32352           OpenSSL::Engine#cmds. it returms engine command definitions.
32354 Wed Sep  7 15:48:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32356         * ext/openssl/ossl_asn1.c (asn1str_to_str): new function.
32358         * ext/openssl/ossl_pkcs7.c: new class OpenSSL::PKCS7::RecipientInfo.
32359           this class wraps PKCS7_RECIP_INFO struct.
32361         * ext/openssl/ossl_pkcs7.c: OpenSSL::PKCS7::Signer is renamed to
32362           OpenSSL::PKCS7::SignerInfo. ("Signer" remains as an alias of
32363           SignerInfo.)
32365         * test/openssl/test_pkcs7.rb: new file.
32367 Wed Sep  7 12:55:08 2005  Tanaka Akira  <akr@m17n.org>
32369         * lib/open-uri.rb: abolish mod === tempfile to avoid a problem
32370           [ruby-dev:26967].
32372 Wed Sep  7 10:45:15 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32374         * eval.c (rb_thread_switch): convert all exceptions to
32375           SystemExit.  fixed: [ruby-core:05724]
32377         * eval.c (rb_thread_terminated): show backtrace before propagate
32378           exceptions to main thread.
32380 Wed Sep  7 09:21:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32382         * win32/win32.[hc] (rb_w32_utime): constified.
32384         * win32/win32.h (rb_w32_stat): added prototype.
32386         * win32/win32.[hc] (rb_w32_argv_size,rb_w32_join_argv,rb_w32_aspawn):
32387           changed `char *const *' to `const char *const *'. (constify string)
32389 Wed Sep  7 08:35:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32391         * Makefile.in, configure.in (MINIOBJS): miniruby on HP-UX can not load
32392           extension libraries.
32394         * bignum.c (bignew_1, bigadd): K&R style argument actually can't be
32395           defined as char.
32397         * missing/vsnprintf.c: ANSI compiler supports const keyword.
32399         * ext/digest/sha2/extconf.rb: reject platforms which has inttypes.h
32400           but no 64bit integer.
32402         * lib/mkmf.rb (what_type?): guesstimate type.
32404         * ext/etc/etc.c (setup_passwd), ext/etc/extconf.rb: pw_age might be
32405           char*.  fixed: [ruby-core:05470]
32407 Wed Sep  7 08:32:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32409         * string.c (rb_str_times): should taint empty strings as well.
32411         * object.c (Init_Object): make class_variable_{get,set} public.
32412           [ruby-dev:26965]
32414 Mon Sep  5 22:28:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32416         * parse.y (stmt, mlhs_node, lhs, arg, method_call): aref_args might be
32417           nothing.  fixed: [ruby-dev:26952]
32419         * ext/ripper/eventids2.c: added new tokens.  fixed: [ruby-dev:26952]
32421 Mon Sep  5 17:03:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32423         * lib/find.rb: should raise ENOENT if root entry does not exist.
32424           [ruby-list:41054]
32426         * lib/ostruct.rb: a patch from Florian Gross <florgro at gmail.com>
32427           merged to allow recursive inspect (and to_s) for OpenStruct.
32428           [ruby-core:05532]
32430 Mon Sep  5 08:20:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32432         * lib/observer.rb: a patch from nornagon <nornagon at gmail.com>
32433           merged to allow arbitrary names for update methods.
32434           [ruby-core:05416]
32436 Mon Sep  5 07:01:12 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32438         * ext/openssl/openssl/lib/openssl/buffering.rb (Buffering#do_write):
32439           should clear data from the buffer which already been output.
32441 Sun Sep  4 15:01:35 2005  Minero Aoki  <aamine@loveruby.net>
32443         * parse.y (f_arg): Ripper should not do semantic check.
32444           [ruby-dev:26948]
32446 Sat Sep  3 23:52:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32448         * eval.c (rb_f_fcall): new method to avoid inefficiency of
32449           obj.instance_eval{send(...)} tricks.
32451 Sat Sep  3 13:59:31 2005  Tanaka Akira  <akr@m17n.org>
32453         * lib/pathname.rb (Pathname#descend): Pathname.new("./a/b/c").descend
32454           didn't yield "."
32455           (Pathname#ascend): ditto.
32457 Fri Sep  2 23:51:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32459         * parse.y (f_arg): f_norm_arg is a VALUE in ripper, not an ID.
32460           fixed: [ruby-dev:26942]
32462         * lib: do not use __send__ to access private methods.  [ruby-dev:26935]
32464 Thu Sep  1 17:11:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32466         * eval.c (rb_call0): wrong condition for $SAFE restoration.
32468 Thu Sep  1 14:12:45 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32470         * ext/tk/lib/multi-tk.rb: On Tcl8.5, MultiTkIp#invoke_hidden doesn't
32471           work (gives wrong order of arguments).
32473         * ext/tk/lib/multi-tk.rb: add MultiTkIp#invoke_hidden_on_namespace
32474           to support '-namespace' option of 'interp invokehidden' command
32475           on Tcl8.5.
32477 Wed Aug 31 14:41:30 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32479         * win32/Makefile.sub (OPTFLAGS): default global optimization to
32480           disabled for all VC++ versions.  fixed: [ruby-dev:26897]
32482 Wed Aug 31 10:36:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32484         * process.c (proc_detach, proc_setmaxgroups): missing argument type
32485           declaration. (I recommend ANSI-style function)
32487 Wed Aug 31 06:59:01 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32489         * string.c (rb_str_scan): already String#scan behaves differently
32490           regarding if block is given.
32492 Tue Aug 30 23:49:34 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32494         * array.c, dir.c, enum.c, hash.c, io.c, range.c, string.c, struct.c:
32495           let enumerable methods return Enumerator.  [ruby-dev:26924]
32497         * intern.h (RETURN_ENUMERATOR): utility macro for enumerable methods.
32499 Tue Aug 30 23:25:45 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32501         * lib/debug.rb: no need to restart at exit.
32503 Tue Aug 30 23:20:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32505         * eval.c (rb_rescue2): initialization miss.  fixed: [ruby-dev:26917]
32507         * lib/mkmf.rb (xsystem, xpopen): no longer expand by Config.
32509         * lib/mkmf.rb (link_command, cc_command, cpp_command): expand
32510           variables at once, and quote hdrdir.  fixed: [ruby-core:05680]
32512         * lib/mkmf.rb (libpathflag): quote paths.
32514 Tue Aug 30 19:34:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32516         * ext/digest/md5/md5ossl.h, ext/digest/rmd160/rmd160ossl.h,
32517           ext/digest/sha1/sha1ossl.h: include <stddef.h> to avoid
32518           error in compilation with OpenSSL-0.9.8. [ruby-list:41068]
32520 Tue Aug 30 16:19:40 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
32522         * lib/irb/init.rb: bug fix. [ruby-dev: 26920]
32524 Tue Aug 30 16:13:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32526         * enum.c (enum_count): new method.  [ruby-dev:26895]
32528 Tue Aug 30 12:45:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32530         * eval.c (rb_f_send): do not call private methods if the receiver
32531           is specified.  [ruby-talk:153672]
32533 Mon Aug 29 19:47:18 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32535         * lib/rdoc/usage.rb: improper exceptions. [ruby-dev:26870]
32537         * lib/rdoc/usage.rb: support the case when non-ruby code exists before
32538           shebang. (this is needed when ri.bat is executed on windows)
32540 Mon Aug 29 18:58:05 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
32542         * lib/irb/init.rb: make IRB -I option that is same befavior for ruby.
32543           [ruby-dev:26872]
32545         * lib/irb/locale.rb: support to print help message when OS locale is
32546           ja_JP.utf-8. [ruby-dev:26872]
32548 Mon Aug 29 01:43:05 2005  Tanaka Akira  <akr@m17n.org>
32550         * lib/pathname.rb (Pathname#descend): new method.
32551           (Pathname#ascend): ditto.
32553 Mon Aug 29 00:35:09 2005  Tanaka Akira  <akr@m17n.org>
32555         * lib/time.rb: require 'date/format' instead of 'parsedate'.
32556           (Time.parse): extract fractional seconds using Date._parse.
32557           (Time.strptime): extract fractional seconds using Date._strptime.
32558           [ruby-talk:153859]
32560 Sat Aug 27 20:13:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32562         * ext/curses/curses.c ({curses,window}_clrtoeol): added. suggested
32563           by Reyn Vlietstra.
32565         * ext/curses/curses.c: chtype in curses is not `char', rahter `long'.
32566           [ruby-Bugs:2298]
32568         * ext/curses/view.rb: String =~ String is deprecated.
32570 Thu Aug 25 15:48:58 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32572         * ext/win32ole/win32ole.c: suppress warnings. (win32)
32574 Wed Aug 24 11:01:26 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32576         * test/logger/test_logger.rb (test_shifting_size): should close log
32577           device before unlink, since some platform cannot unlink opened
32578           file.
32580 Tue Aug 23 06:07:02 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32582         * ext/openssl/lib/digest.rb: added SHA224, SHA256, SHA384 and SHA512.
32583           these features are enabled if this library is compiled with
32584           OpenSSL 0.9.8 or later.
32586         * test/openssl/test_digest.rb: add test for new digests.
32588 Tue Aug 23 05:47:04 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32590         * ext/openssl/ossl_ns_spki.c (ossl_spki_initialize): try to decode
32591           the argument as a string.
32593         * ext/openssl/ossl_ns_pki.c (ossl_spki_to_der): new method.
32595         * ext/openssl/ossl_x509store.c (ossl_x509store_initialize): should
32596           set @time to avoid warning.
32598         * ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths,
32599           X509_STORE_add_cert, X509_STORE_add_crl): should raise error if
32600           wrapped functions fails.
32602         * ext/openssl/ossl_ssl.c (ossl_sslctx_set_ciphers): fix error message.
32604         * ext/openssl/ossl_x509req.c (ossl_x509req_set_attributes): get rid
32605           of unused variable.
32607         * test/openssl/test_ns_spki.rb: add new file.
32609         * test/openssl/test_x509store.rb: add test for error.
32611 Tue Aug 23 01:11:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32613         * sprintf.c (ruby__sfvwrite): should move `buf' to the end of
32614           `result'. [ruby-dev:26859]
32616 Mon Aug 22 23:51:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32618         * parse.y: ONIG_OPTION_CAPTURE_GROUP conflicts with
32619           RE_OPTION_ONCE.  [ruby-dev:26852]
32621 Mon Aug 22 20:11:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32623         * missing/vsnprintf.c (BSD__sprint): needs to call vwrite function
32624           pointer.  fixed: [ruby-dev:26854]
32626 Sat Aug 20 23:55:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32628         * parse.y (parser_yylex): update paren_nest for brackets [].
32630 Sun Aug 21 00:10:23 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32632         * lib/wsdl/xmlSchema/importer.rb (WSDL::XMLSchema::Importer#fetch): add
32633           a workaround for importing an WSDL whose path begins with drive
32634           letter.  [ruby-dev:26242]
32636 Sat Aug 20 22:05:25 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
32638         * regexec.c (code_is_in_cclass_node): check code size.
32639           [ruby-dev:26840]
32641 Sat Aug 20 22:37:13 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32643         * lib/logger.rb (write, shift_log?, shift_log): file shifting race
32644           condition bug fixed.  [ruby-dev:26764]
32646         * test/logger/test_logger.rb: tests.
32648 Fri Aug 19 18:13:39 2005  Tanaka Akira  <akr@m17n.org>
32650         * lib/time.rb (Time.apply_offset): fix a problem with last day of
32651           month.  reported by Lucas Nussbaum.  [ruby-talk:152866]
32653 Thu Aug 18 11:05:36 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32655         * win32/win32.c (socketpair_internal): need to call open_ifs_socket()
32656           to create sockets instead of winsock's socket().
32657           fixed: [yarv-dev:581]
32659 Wed Aug 17 23:58:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32661         * eval.c (terminate_process): take String message.
32663         * eval.c (rb_thread_switch): propagate the exception caused thread
32664           termination directly.  fixed: [ruby-core:05552]
32666 Wed Aug 17 21:20:05 2005  NARUSE, Yui  <naruse@ruby-lang.org>
32668         * ext/nkf/lib/kconv.rb: ensure that symbol_to_option is private_class_method
32669           and all other methods are module_function
32670           fixed: [ruby-dev:26808]
32672 Wed Aug 17 00:05:46 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32674         * eval.c (rb_add_method): preserve safe level in the environment
32675           where a method is defined .
32677         * eval.c (rb_call0): restore preserved safe level in the method
32678           execution.
32680         * parse.y (lambda): need separate block variable stack
32681           manipulation and lpar_beg maintenance.  based on a patch found
32682           in [ruby-core:05551] from Mauricio Fernandez <mfp at acm.org>.
32684         * parse.y (parser_yylex): adjust lpar_beg after tLAMBEG and
32685           kDO_LAMBDA. [ruby-core:05551]
32687 Mon Aug 15 07:24:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32689         * intern.h (rb_check_to_integer): add declaration.
32691         * object.c (rb_to_integer, rb_check_to_integer): argument constified.
32693 Mon Aug 15 00:38:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32695         * eval.c (rb_rescue2): reduce PUSH_TAG() as well as NODE_RESCUE.
32696           [ruby-dev:26800]
32698         * range.c (range_check, range_init): reduce uselse exceptions.
32700 Mon Aug 15 00:34:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32702         * parse.y (yycompile): remove unreachable code.  [yarv-dev:570]
32704 Sat Aug 13 22:16:12 2005  Minero Aoki  <aamine@loveruby.net>
32706         * lib/fileutils.rb (remove_entry_secure): forgot final chdir.
32708 Sat Aug 13 22:07:49 2005  Minero Aoki  <aamine@loveruby.net>
32710         * lib/fileutils.rb (remove_entry_secure): uses chdir(2) and check
32711           if current directory is correct. [ruby-dev:26100] [ruby-dev:26226]
32713 Sat Aug 13 21:11:05 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
32715         * ext/win32ole/win32ole.c: add WIN32OLE_VARIANT class.
32717         * ext/win32ole/tests/testall.rb: ditto.
32719         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
32721 Sat Aug 13 18:51:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32723         * eval.c (rb_block_pass): distinguish current block from others.
32724           fixed: [ruby-dev:26274]
32726         * ext/stringio/stringio.c (strio_set_string): disallow nil.
32727           http://www.rubyist.net/~nobu/t/20050811.html#c05
32729 Sat Aug 13 08:01:59 2005  NARUSE, Yui  <naruse@ruby-lang.org>
32731         * ext/nkf/lib/kconv.rb: Kconv.kconv is now alias of Kconv.conv
32732         * ext/nkf/lib/kconv.rb: remove nkf dependend symbols fomr SYMBOL_TO_OPTION
32734 Fri Aug 12 17:06:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32736         * parse.y (f_larglist): allow optional arguments even when
32737           parentheses are omitted.  based on Nobu's patch from
32738           http://www.rubyist.net/~nobu/t/20050805.html
32740         * parse.y (parser_yylex): update & maintain lpar_beg for detect
32741           lambda parameters.
32743 Thu Aug 11 23:29:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32745         * ext/stringio/stringio.c: keep holding string after closed.
32747 Thu Aug 11 20:48:40 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
32749         * numeric.c (fix_equal, fix_cmp, fix_gt, fix_ge, fix_lt, fix_le):
32750           reduce coercing when a method knows about a operand type.
32751           [ruby-dev:26789]
32753 Thu Aug 11 13:01:48 2005  Kouhei Sutou  <kou@cozmixng.org>
32755         * lib/rss: fixed sort bug. [ruby-list:41018]
32757         * lib/rss/1.0.rb (RSS::RDF::Channel#setup_maker_attributes):
32758           removed self.
32760         * lib/rss/maker/base.rb (RSS::Maker::ItemsBase#<=>): use #date
32761           instead of @date.
32762           (RSS::Maker::Base::self.def_array_element): added #size.
32764         * lib/rss/maker/1.0.rb
32765           (RSS::Maker::RSS10::Channel#to_rss,
32766            RSS::Maker::RSS10::Items::Item#to_rss): cleared dc_dates set
32767           upped by using #date.
32769         * lib/rss/maker/dublincore.rb
32770           (RSS::Maker::ChannelBase, RSS::Maker::ItemsBase::ItemBase):
32771           fixed opposite alias.
32773         * test/rss/test_setup_maker_1.0.rb
32774           (RSS::TestSetupMaker10::test_setup_maker_items_sort): added some
32775           tests for RSS::Maker::ItemsBase#do_sort.
32777 Wed Aug 10 12:01:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32779         * lib/delegate.rb: simplifies Delegator classes; SimpleDelegator
32780           now uses method_missing for all methods.
32782 Wed Aug 10 10:38:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32784         * bignum.c (rb_big_mul0): multiply two numbers (x, y) without
32785           normalizing the result.  x should be a big number.
32786           [ruby-dev:26778]
32788         * bignum.c (rb_big_pow): use rb_big_mul0() instead of
32789           rb_big_mul().
32791         * array.c (rb_ary_or, rb_ary_and, rb_ary_plus, rb_ary_diff):
32792           revert the change on 2005-08-03.  Set operation on other item
32793           should have in separate methods.
32795         * parse.y (shadowing_lvar_gen): warn when arguments shadows
32796           external local variables.
32798         * parse.y (f_opt): optional arguments should not clobber external
32799           local variables.
32801         * parse.y (f_rest_arg): rest arguments should not clobber external
32802           local variables.
32804 Wed Aug 10 10:29:40 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32806         * ext/tk/lib/tk.rb: fix bug on handling __ruby2val_optkeys().
32808         * ext/tk/lib/tk/itemconfig.rb: fix bug on handling
32809           __item_ruby2val_optkeys().
32811         * ext/tk/lib/tk/canvas.rb: didn't check __item_ruby2val_optkeys().
32813         * ext/tk/lib/tkextlib/blt/component.rb: ditto.
32815 Tue Aug  9 21:53:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32817         * eval.c (formal_assign): let default values override
32818           arguments to zsuper.  fixed: [ruby-dev:26743]
32820 Tue Aug  9 20:30:19 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
32822         * bignum.c (rb_big_coerce): allow bignum x bignum coercing.
32823           [ruby-dev:26778]
32825 Tue Aug  9 15:12:04 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32827         * ext/tk/tcltklib.c: remove dangerous 'rb_jump_tag's.
32829         * ext/tk/lib/tk.rb: add __val2ruby_optkeys and __ruby2val_optkeys to
32830           help to convert option values between ruby and tcl.
32832         * ext/tk/lib/tk/itemconfig.rb: add __item_val2ruby_optkeys and
32833           __item_ruby2val_optkeys to help to convert option values between
32834             ruby and tcl.
32836         * ext/tk/lib/tk/radiobutton.rb: use __ruby2val_optkeys for 'variable'
32837           option (for the reason of backward compatibility).
32839         * ext/tk/lib/tk/composite.rb: clarify the arguments of super().
32841         * ext/tk/lib/tk/spinbox.rb: ditto.
32843         * ext/tk/lib/tk/text.rb: ditto.
32845         * ext/tk/lib/tk/validation.rb: ditto.
32847         * ext/tk/lib/tkextlib/*: support to treat tkvariable-type
32848           configure options.
32850 Tue Aug  9 08:24:05 2005  Mauricio Fernandez  <mfp@acm.org>
32852         * parse.y (f_block_arg), eval.c (rb_yield_0): deal with dynamic
32853           variable lambda arguments.  [ruby-core:05540]
32855 Mon Aug  8 22:13:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32857         * eval.c (assign): deal with new block argument.
32858           fixed: [ruby-core:05536]
32860         * eval.c (rb_node_arity): follow change of NODE_ARGS.
32861           fixed: [ruby-dev:26761]
32863 Mon Aug  8 21:28:13 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32865         * test/ruby/test_fnmatch.rb: separated from test_file.rb.
32867 Mon Aug  8 20:40:35 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32869         * test/ruby/test_method.rb: added.  [ruby-dev:26761]
32871 Mon Aug  8 01:26:37 2005  Mauricio Fernandez  <mfp@acm.org>
32873         * parse.y (f_larglist): mistake in syntax rule.  [ruby-core:05535]
32875 Mon Aug  8 05:16:55 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32877         * ext/openssl/ossl.c (ossl_raise): should use ERR_peek_last_error
32878           to get last error on the current thread. And should report
32879           if errors are on the stack while OpenSSL.debug is true.
32881         * ext/openssl/ossl.c (ossl_get_errors): new method for debugging
32882           this library.
32884 Mon Aug  8 05:15:19 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32886         * lib/webrick/httpproxy.rb (HTTPProxyServer#intialize),
32887           lib/webrick/httpserver.rb (HTTPServer#intialize),
32888           lib/webrick/httpservlet/cgihandler.rb (CGIHandler#initialize),
32889           lib/webrick/httpservlet/erbhandler.rb (ERBHandler#initialize),
32890           lib/webrick/httpservlet/filehandler.rb(DefaultFileHandler#initialize):
32891           super (called with no arguments) takes default value of optional
32892           arguments. [ruby-dev:26743]
32894         * lib/webrick/httputils.rb: add a media-type "text/html" for .xhtml.
32896 Sun Aug  7 23:52:39 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32898         * test/ruby/test_super.rb: added optional arg tests.  [ruby-dev:26743]
32899           the tests expects 1.8 behavior at this time.
32901 Sat Aug  6 12:35:24 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32903         * ext/tk/lib/{tk.rb,tk/itemconfig.rb}: configure creates
32904           TkVariable if key name is 'variable' or 'textvariable'
32905           by default. [ruby-dev:26749]
32907         * ext/tk/lib/tk/{label,radiobutton}.rb: removed its own
32908           {variable,textvariable} function.
32910         * ext/tk/lib/tk/variable.rb: retains backward conpatibility.
32912 Fri Aug  5 12:48:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32914         * ext/tk/tcltklib.c: fixed memory leak when tk_funcall raised
32915           exception. (copies argv into heap in tk_funcall instead of
32916           caller)
32918 Fri Aug  5 12:36:40 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32920         * lib/mkmf.rb (create_makefile): need to convert path separetor
32921           before invoking install command.
32923 Fri Aug  5 08:08:05 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32925         * eval.c (return_jump): fix "can't across thread" error message
32926           when no thread associated.
32927           http://www.namikilab.tuat.ac.jp/~sasada/diary/200507.html#d31
32929 Fri Aug  5 00:25:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32931         * ext/tk/tcltklib.c: refactoring - extract ruby string <->
32932           tcl object conversion as get_str_from_obj and get_obj_from_str.
32934 Fri Aug  5 00:19:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32936         * enumerator.c (Init_Enumerator): provided features should have
32937           extensions.
32939         * eval.c (rb_feature_p): returns type of the feature instead of
32940           extension.
32942         * eval.c (search_required): ruby library should be prior to statically
32943           linked extentions.  fixed: [ruby-dev:26711]
32945         * eval.c (formal_assign): returns position of rest arguments variable.
32947         * parse.y (f_rest_arg): use anonymous variable for rest arguments.
32948           fixed: [ruby-dev:26647]
32950         * extmk.rb (extmake): needs to be wrapped in an Array.
32952 Thu Aug  4 20:03:18 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
32954         * numeric.c (Init_Numeric): do not share implementation among
32955           Fixnum#/ and Fixnum#div.  [ruby-core:05531]
32957 Thu Aug  4 18:38:36 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32959         * ext/tk/tcltklib.c: cannot compile for Tcl7.6/Tk4.2.
32961         * ext/tk/tcltklib.c: add nativethread consistency check.
32963         * ext/tk/stubs.c: ditto.
32965         * ext/tk/lib/tk.rb: forgot to define TclTkIp.encoding and encoding=
32966           when Tcl is 7.6 or 8.0.
32968         * ext/tk/lib/tk/wm.rb: support to make some methods as options of
32969           root or toplevel widget. [ruby-talk:150336]
32971         * ext/tk/lib/tk/root.rb: ditto.
32973         * ext/tk/lib/tk/toplevel.rb: ditto.
32975         * ext/tk/lib/tkextlib/SUPPRT_STATUS: update RELEASE_DATE
32977 Thu Aug  4 13:30:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32979         * numeric.c (fix_div): should not convert the result into
32980           integer.  [ruby-core:05524]
32982 Thu Aug  4 08:03:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32984         * ext/extmk.rb (extmake): should not modify $mflags for each
32985           extentions.
32987 Thu Aug  4 00:25:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32989         * common.mk, Makefile.in, {bcc32,win32,wince}/Makefile.sub: integrated
32990           macro definitions.
32992         * bcc32/Makefile.sub: LIBRUBY_SO should use DLDOBJS, not EXTOBJS.
32994         * {win32,wince}/Makefile.sub: separate config.h for compiler versions.
32996 Thu Aug  4 00:24:59 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32998         * sprintf.c: replacing is no longer needed.
33000 Wed Aug  3 21:59:16 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33002         * ext/tk/lib/tk/variable.rb: TkVariable#trace didn't work on
33003           TkVariable retrived from TkVariable.new_hash.ref. [ruby-dev:26721]
33005 Wed Aug  3 12:40:28 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
33007         * numeric.c (fix_plus): reduce coercing when a method knows about
33008           a operand type.  [ruby-dev:26723]
33010         * numeric.c (fix_minus, fix_mul, fix_quo, fix_div, fix_mod,
33011           fix_divmod, fix_pow): ditto.
33013         * bignum.c (rb_big_div, rb_big_modulo): export to reduce
33014           coercing.
33016 Wed Aug  3 10:13:52 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33018         * configure.in, {bcc32,win32,wince}/Makefile.sub (HAVE_SNPRINTF,
33019           HAVE_VSNPRINTF): use win32/win32.c's implementation instead of
33020           missing/vsnprintf.c's.
33022         * win32/win32.[ch] (rb_w32_snprintf, rb_w32_vsnprintf): reverted.
33024 Wed Aug  3 10:05:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33026         * configure.in: check vsnprintf() and snprintf().
33028         * sprintf.c, missing/vsnprintf.c: made vsnprintf() and snprintf()
33029           private.  fixed: [ruby-dev:26651]
33031 Wed Aug  3 08:22:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33033         * ext/socket/socket.c (ruby_connect): revert [ruby-talk:111654]
33034           changes at 2004-09-07.  [ruby-dev:26656]
33036 Wed Aug  3 06:53:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33038         * array.c (rb_ary_or): wraps the operand in an array if it is not
33039           an array.  [ruby-talk:150495] [EXPERIMENTAL]
33041         * array.c (rb_ary_and, rb_ary_plus, rb_ary_diff): ditto.
33043 Tue Aug  2 10:23:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33045         * ext/tk/tcltklib.c: use Tcl_[GS]etVar2Ex instead of
33046           Tcl_Obj[GS]etVar2. (avoid Tcl_NewStringObj on supported platforms)
33048         * ext/tk/tcltklib.c: use ip_{get,set,unset}_variable2_core from
33049           ip_{get,set,unset}_variable.
33051         * ext/tk/tcltklib.c: replaced Tcl_Panic with rb_bug.
33053 Tue Aug  2 01:40:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33055         * lib/ping.rb (Ping.pingecho): should rescue StandardError.
33056           [ruby-dev:26677]
33058 Mon Aug  1 19:02:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33060         * ext/tk/tcltklib.c: refactoring - replaced rb_ivar_defined &
33061           rb_ivar_get with single rb_attr_get call.
33063 Mon Aug  1 18:44:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33065         * ext/tk/tcltklib.c (Tcl_GetStringResult): refactoring - define
33066           alternative macro on Tcl7.x or earlier.
33068 Mon Aug  1 13:53:55 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33070         * ext/tk/tcltklib.c (deleted_ip): refactoring - interpreter
33071           deletion check. [ruby-dev:26664]
33073 Mon Aug  1 01:08:21 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
33075         * lib/drb/drb.rb (check_insecure_method): use private_methods and
33076           protected_methods instead of respond_to? to check method visibility.
33077           [ruby-dev:26616]
33079         * test/drb/drbtest.rb: ditto.
33081         * test/drb/ut_drb.rb: ditto.
33083 Sat Jul 30 18:49:44 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
33085         * ext/win32ole/win32ole.c: add WIN32OLE_TYPE#ole_typelib,
33086           WIN32OLE_TYPE#implemented_ole_types.
33088         * ext/win32ole/tests/testOLETYPE.rb: ditto.
33090 Fri Jul 29 16:12:02 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
33092         * lib/irb/context.rb: fix `irb --readline` option. [ruby-dev:40955]
33094 Fri Jul 29 09:59:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33096         * eval.c (rb_call0): fix calling zsuper from a method with anonymous
33097           rest argument.  [ruby-dev:26639]
33099         * eval.c (rb_yield_0): push yielded node instead of yielding.
33100           fixed: [yarv-dev:549]
33102 Thu Jul 28 21:49:17 2005  IWATSUKI Hiroyuki  <don@na.rim.or.jp>
33104         * parse.y (rb_parser_end_seen_p): exclude from ripper.
33105           <http://moonrock.jp/~don/d/200507.html#d28_t2>
33107         * sprintf.c (clearerr): remove standard macro before re-definition.
33108           <http://moonrock.jp/~don/d/200507.html#d28_t3>
33110 Thu Jul 28 18:09:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33112         * ext/tk/stubs.c: When --enable-tcltk-stubs, the initialize
33113           routine creates a Tcl/Tk interpreter and deletes it. However,
33114           init cost of Tk's MainWindow is not so small. And that makes it
33115           impossible to use libraries written with Tcl functions only on
33116           an environment without a graphical display. This changes support
33117           delaying initalization of Tk_Stubs until the script needs Tk.
33119         * ext/tk/stubs.h: New file. Define prototypes and return codes of
33120           functions on stubs.c.
33122         * ext/tk/tcltklib.c: Support delaying initalization of Tk_Stubs
33123           until the script needs Tk.
33125         * ext/tk/tcltklib.c: Show friendly error messages for errors on
33126           initialization.
33128         * ext/tk/tcltklib.c: Avoid SEGV on ip_finalize() when ruby is
33129           exiting and $DEBUG is true. (Not fix. If you know the reason of
33130           why, please fix it.)
33132         * ext/tk/tkutil/tkutil.c (ary2list, ary2list2): bug fix on handling
33133           of encoding.
33135         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string and bg_eval_string
33136           don't work propery.
33138         * ext/tk/lib/tk.rb: Forget extending Tk::Encoding module to Tk.
33140         * ext/tk/lib/tk/variable.rb: TkVarAccess fails to initialize the
33141           object for an element of a Tcl's array variable.
33143 Thu Jul 28 17:23:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33145         * parse.y (f_larglist): allow block argument in lambda parameter
33146           list without parenthesis.
33148 Thu Jul 28 17:14:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33150         * hash.c (each_i): typo fixed.  [ruby-dev:26622]
33152 Thu Jul 28 15:04:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33154         * parse.y (f_arg): better argument name duplication check
33156         * parse.y (new_args_gen): factored out name duplication check for
33157           optional and rest arguments.
33159         * parse.y (new_bv_gen): allow shadowing outer local variables;
33160           warning remains.
33162 Thu Jul 28 13:46:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33164         * parse.y (ripper_warningS): the argument was omitted.
33165           [ruby-dev:26621]
33167 Thu Jul 28 11:30:57 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33169         * parse.y (f_larglist): allow bv_decl at the end of lambda
33170           argument list.  [EXPERIMENTAL]
33172         * parse.y (new_bv_gen): allow local variable shadowing, with
33173           warning in verbose mode.
33175 Wed Jul 27 23:23:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33177         * gc.c (obj_free): make message format consistent with one from
33178           gc_mark().  [ruby-talk:149668]
33180         * sprintf.c (quad_t): prepare quad_t as well.  [ruby-talk:149668]
33182 Wed Jul 27 22:11:37 2005  Kouhei Sutou  <kou@cozmixng.org>
33184         * sample/rss/tdiary_plugin: removed. because the plugin
33185           is imported in the tDiary plugin packages.
33187 Wed Jul 27 19:11:53 2005  Minero Aoki  <aamine@loveruby.net>
33189         * lib/fileutils.rb (cd): follow :noop option change. (This patch
33190           is contributed by Doug Kearns)
33192 Wed Jul 27 16:25:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33194         * parse.y (lambda): Perl6 style -> lambda expression. [NEW]
33195           [VERY EXPERIMENTAL]
33197 Wed Jul 27 10:43:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33199         * gc.c (id2ref): must not assign pointers to long int.  use
33200           LONG_LONG instead if SIZEOF_LONG < SIZEOF_VOIDP.
33201           [ruby-talk:149645]
33203         * ruby.h: use LONG_LONG to simplify the change.
33204           [ruby-talk:149645]
33206 Wed Jul 27 10:59:02 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33208         * dir.c (dir_each): rewinddir(3) before iteration.
33209           [ruby-talk:149628]
33211 Wed Jul 27 02:34:58 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33213         * eval.c (rb_f_throw): replace all '0x%lx' by '%p'.
33214           [ruby-talk:149553]
33216         * missing/vsnprintf.c (BSD_vfprintf): '%p' need to handle 64bit
33217           size pointer.  [ruby-talk:149553]
33219 Tue Jul 26 22:41:28 2005  Minero Aoki  <aamine@loveruby.net>
33221         * ext/ripper/lib/ripper/sexp.rb: new method Ripper.sexp_raw.
33223         * ext/ripper/lib/ripper/sexp.rb (Ripper.sexp): returns more
33224           readable tree.  This is suggested by Kirill A. Shutemov.
33226 Tue Jul 26 22:05:12 2005  Minero Aoki  <aamine@loveruby.net>
33228         * lib/net/http.rb: merge a patch contributed by Daniel Berger,
33229           with some modification. (RubyForge #2128)
33231 Tue Jul 26 18:11:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33233         * ruby.h: support LLP64 model.  [ruby-talk:149524]
33235 Tue Jul 26 12:57:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33237         * ext/openssl/openssl_missin.c: include <openssl/engine.h> before
33238           <openssl/x509_vfy.h> to avoid compilation error of mswin32.
33239           suggested by NAKAMURA Usaku.
33241 Mon Jul 25 23:48:55 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33243         * win32/win32.[ch]: (rb_w32_vsnprintf, rb_w32_snprintf): removed.
33245 Mon Jul 25 21:30:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33247         * common.mk: Borland MAKE doesn't look for file names which have paths
33248           from VPATH.  fixed: [ruby-dev:26604]
33250         * ruby.h (NORETURN, DEPRECATED): moved just after config.h.
33252         * {win32,wince}/Makefile.sub: vsnprintf() is in missing now.
33254         * {bcc32,win32,wince}/Makefile.sub: moved CPPFLAGS only for ruby
33255           source to XCFLAGS.
33257 Mon Jul 25 14:10:02 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33259         * ext/tk/lib/multi-tk.rb: fix en-bugged part in the last commit.
33261 Mon Jul 25 13:45:18 2005  NAJIMA Hiroki  <najima@mickey.ai.kyutech.ac.jp>
33263         * io.c: check HAVE_SYS_IOCTL_H before including the header.
33264           [ruby-dev:26610]
33266 Sat Jul 23 16:48:12 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33268         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should check
33269           OPENSSL_NO_STATIC_ENGINE.
33271 Sat Jul 23 11:46:30 2005  Tanaka Akira  <akr@m17n.org>
33273         * eval.c (rb_fd_select): the all three fd_sets must be long enough for
33274           select.  fixed: [ruby-talk:149059]
33276 Sat Jul 23 10:01:41 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33278         * sprintf.c (rb_vsprintf, rb_sprintf): new functions return new String,
33279           using missing/vsnprintf.c.  [ruby-dev:26580]
33281         *  missing/vsnprintf.c: made the output changeable.
33283 Fri Jul 22 21:06:08 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
33285         * bignum.c (rb_big_eq): reduce isnan().  [ruby-dev:26600]
33287         * numeric.c (flo_eq, flo_gt, flo_ge, flo_lt, flo_le): ditto.
33289 Fri Jul 22 15:02:39 2005  Kouhei Sutou  <kou@cozmixng.org>
33291         * lib/rss/rss.rb: moved copyright description to lib/rss.rb.
33293         * lib/rss.rb: added for convenience.
33295         * sample/rss/re_read.rb: added #to_s sample.
33297         * sample/rss/blend.rb: use 'require "rss"' instead of
33298           'require "rss/*"'.
33299         * sample/rss/list_description.rb: ditto.
33300         * sample/rss/rss_recent.rb: ditto.
33301         * sample/rss/tdiary-plugin/rss-recent.rb: ditto.
33303         * sample/rss/tdiary-plugin/rss-recent.rb: 0.0.6 -> 0.0.7.
33305 Fri Jul 22 14:37:43 2005  Kouhei Sutou  <kou@cozmixng.org>
33307         * lib/rss/parser.rb (RSS::Parser#initialize): accept HTTP/FTP
33308           URI and local file path too.
33310         * test/rss/test_parser.rb (RSS::TestParser#test_parse): test
33311           for the above.
33313 Fri Jul 22 07:01:42 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33315         * ext/tk/tkutil/tkutil.c (tk_conv_args): forget to revert
33316           thread_critical and gc_disable when raise ArgumentError.
33318         * ext/tk/lib/remote-tk.rb: RemoteTkIp doesn't need to include TkUtil.
33320         * ext/tk/tcltklib.c: add TclTkIp#has_mainwindow? method.
33322         * ext/tk/lib/tk.rb: add Tk.has_mainwindow? method.
33324         * ext/tk/lib/multi-tk.rb: add MultiTkIp#has_mainwindow? method.
33326         * ext/tk/lib/remote-tk.rb: add RemoteTkIp#has_mainwindow? method.
33328         * ext/tk/lib/multi-tk.rb: slave IP fail to exit itself when $SAFE==4.
33330         * ext/tk/lib/multi-tk.rb: remove constants from MultiTkIp module to
33331           avoid access from external.
33333         * ext/tk/lib/multi-tk.rb: check_root flag is ignored on slave IPs'
33334           mainloop.
33336         * ext/tk/lib/multi-tk.rb: hang-up Tk.mainloop called on a slave IP
33337           with $SAFE==4.
33339         * ext/tk/lib/multi-tk.rb: MultiTkIp#bg_eval_proc doesn't work
33340           properly.
33342         * ext/tk/lib/multi-tk.rb: add MultiTkIp#set_cb_error(proc) and
33343           cb_error(exc) to log errors at callbacks on safe slave IPs.
33345         * ext/tk/lib/multi-tk.rb: fail to get an available slave IP object
33346           when call Tk.mainloop in the block which is given to new_* method,
33347             because cannot finish initialize while the root widget is alive.
33349         * ext/tk/lib/multi-tk.rb: fail to control a slave IP when Tk.mainloop
33350           runs on the IP.
33352 Thu Jul 21 01:00:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33354         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c,config.h}:
33355           import 1.76
33356           [ruby-dev:26592] nkf constification
33358 Wed Jul 20 19:18:52 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33360         * io.c (S_ISREG): need to define S_ISREG before it is used first.
33362 Wed Jul 20 18:33:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33364         * io.c (wsplit_p): patch for the environment where
33365           fcntl(F_GETFL, O_NONBLOCK) is not supported. in that case,
33366           set FMODE_WSPLIT without fcntl check. [ruby-dev:26566]
33368 Wed Jul 20 18:07:11 2005  Tanaka Akira  <akr@m17n.org>
33370         * io.c (rb_io_ctl): update FMODE_WSPLIT_INITIALIZED and FMODE_WSPLIT
33371           by F_SETFL.
33373 Wed Jul 20 10:04:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33375         * variable.c (rb_class_path): need to adjust snprintf() len for
33376           teminating NUL.  [ruby-dev:26581]
33378 Wed Jul 20 03:58:52 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33380         * ext/socket/socket.c: sorry, BeOS also uses HAVE_CLOSESOCKET,
33381           so reverted.
33383         * ext/socket/extconf.rb: should not define HAVE_CLOSESOCKET
33384           on windows.
33386 Wed Jul 20 03:12:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33388         * ext/socket/socket.c: should not undef close() on win32.
33389           it's defined to rb_w32_close(), otherwise handle leaks.
33390           [ruby-Bugs-2131]
33392 Wed Jul 20 00:48:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33394         * error.c (syserr_initialize): don't use str before StringValue()
33395           check.  [ruby-dev:26579]
33397 Tue Jul 19 22:47:29 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33399         * error.c (syserr_initialize): add 1 byte for snprintf() size for
33400           NUL at the end.  [ruby-dev:26574]
33402 Tue Jul 19 17:16:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33404         * signal.c (trap): remove sigexit(); handle "EXIT" via sig_exec().
33405           [ruby-dev:26440]
33407         * io.c (rb_io_inspect): replace sprintf() with "%s" format all
33408           over the place by snprintf() to avoid integer overflow.
33410 Tue Jul 19 14:10:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33412         * ext/tk/tcltklib.c: rbtk_eventloop_depth is used as int.
33414         * ext/tk/tcltklib.c: rbtk_pending_exception is tested with
33415           NIL_P, so should assign Qnil instead of 0 (Qfalse).
33417         * ext/tk/tcltklib.c (ip_invoke_real): fixed memory leak when
33418           ip is deleted.
33420 Tue Jul 19 13:19:46 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33422         * ext/tk/lib/tk/variable.rb: For symmetry, add TkVariable#string. It
33423           returns a string even if the default value type of the TkVariable
33424           object is not "string".
33426 Mon Jul 18 21:39:18 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33428         * eval.c (rb_call0): make the pointer to NODE volatile
33429           instead of NODE itself.
33431 Mon Jul 18 14:32:21 2005  Tanaka Akira  <akr@m17n.org>
33433         * eval.c (rb_call0): make body volatile to avoid possible optimization
33434           problem.
33435           [ruby-dev:26195]
33437 Mon Jul 18 12:23:27 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33439         * ext/io/wait/wait.c: wrong backport from trunk, and compile error on
33440           platforms fd_set is not a bit set.  fixed: [ruby-dev:26562]
33442 Mon Jul 18 09:36:25 2005  Tanaka Akira  <akr@m17n.org>
33444         * rubyio.h (FMODE_WSPLIT, FMODE_WSPLIT_INITIALIZED): new constant.
33446         * io.c (wsplit_p): new function.
33447           (io_fflush): split writing data by PIPE_BUF if wsplit_p is true in
33448           multi-threaded mode.
33449           (io_fwrite): ditto.
33450           [ruby-dev:26540]
33452 Mon Jul 18 05:00:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33454         * ext/nkf/nkf-utf8/nkf.c: import nkf.c 1.73
33455           fix: TestKconv 1F
33457 Sun Jul 17 13:46:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33459         * ext/io/wait/extconf.rb, ext/io/wait/wait.c: Win32 platforms support.
33461 Sat Jul 16 23:43:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33463         * enumerator.c (Init_Enumerator): wrong argument specs.
33464           [ruby-core:05481]
33466 Sat Jul 16 15:52:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33468         * win32/win32.[hc]: constified socket functions. [ruby-dev:26553]
33470 Fri Jul 15 23:59:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33472         * lib/rdoc/parsers/parse_c.rb (handle_class_module): handle a
33473           module enclosed in a built-in module.  fixed: [ruby-talk:148239]
33475         * lib/rdoc/parsers/parse_c.rb (find_body): allow macros as methods.
33477         * lib/rdoc/parsers/parse_c.rb (find_call_seq): allow :nodoc: modifier
33478           in C.  [ruby-core:04572]
33480 Fri Jul 15 23:20:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33482         * enumerator.c (Init_Enumerator): use an internal directly.
33484 Fri Jul 15 07:58:10 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33486         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
33487           sockets should be non-blocking mode. [ruby-dev:26405]
33489         * lib/webrick/utils.rb (WEBrick::Utils.set_non_blocking): new method.
33491 Fri Jul 15 00:11:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33493         * enum.c (enumeratorize): create new enumerator for current method if
33494           no block is given.
33496         * enumerator.c: moved from ext/enumerator.
33498 Thu Jul 14 18:27:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33500         * win32/win32.c (rb_w32_strerror): should return correct message
33501           for ENAMETOOLONG and ENOTEMPTY. (bcc32) [ruby-dev:26533]
33503         * win32/win32.c (rb_w32_strerror): stripped CR LF on the tail.
33504           (bcc32) [ruby-dev:26533]
33506 Thu Jul 14 00:45:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33508         * LEGAL (ext/nkf/nkf-utf8): updated from nkf1.7 to nkf-utf8.
33510 Wed Jul 13 22:44:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33512         * parse.y: remove static variables.  [ruby-dev:26530]
33514 Wed Jul 13 19:36:29 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33516         * win32/win32.c (rb_w32_mkdir): should set EEXIST (not EACCES)
33517           if file or directory already exists. (bcc32) [ruby-dev:26508]
33519         * win32/win32.c (rb_w32_rmdir): should set ENOTDIR (not EINVAL)
33520           if it is not directory. (bcc32, win32)
33522         * win32/win32.c (rb_w32_rmdir, rb_w32_unlink): restore
33523           FILE_ATTRIBUTE_READONLY flag on function failure.
33525 Wed Jul 13 12:40:00 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33527         * ext/tk/tcltklib.c: TclTkLib.do_one_event doesn't work.
33529         * ext/tk/lib/tk.rb: Tk.thread_update is available.
33531 Tue Jul 12 23:32:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33533         * lib/mkmf.rb: keep curdir unexpanded.
33535 Mon Jul 11 23:50:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33537         * eval.c, intern.h (rb_proc_call, rb_obj_method, rb_method_call):
33538           export.
33540         * ext/enumerator/enumerator.c (enumerator_with_index): [EXPERIMENTAL]
33541           added a new method Enumerator#with_index.  [ruby-talk:147728]
33543 Mon Jul 11 08:31:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33545         * regparse.c (fetch_escaped_value): mask values following \c in
33546           regexp.  fixed: [ruby-dev:26500]
33548 Sun Jul 11 05:18:17 2005  Michael Neumann  <mneumann@ruby-lang.org>
33550         * lib/xmlrpc/server.rb (XMLRPC::Server): Switch from GServer over to
33551           WEBrick. This makes file lib/xmlrpc/httpserver.rb obsolete (at least it is
33552           no further used by the XML-RPC library).
33554 Mon Jul 11 02:50:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33556         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line):
33557           mistook to merge the patch of [ruby-dev:26235] at
33558           revision 1.11.
33560 Sun Jul 10 23:58:04 2005  Tanaka Akira  <akr@m17n.org>
33562         * lib/pathname.rb (Pathname#unlink): try Dir.unlink first to
33563           avoid unlink a directory by root.
33564           cf. [ruby-dev:26237]
33566 Sun Jul 10 12:47:01 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33568         * lib/debug.rb (debug_command): added a deficient format specifier.
33569           fixed: [ruby-core:05419]
33571 Sat Jul  9 22:02:37 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
33573         * ext/win32ole/win32ole.c (ole_method_dispid): convert dispid
33574           in Ruby and C by INT2NUM and NUM2INT.
33576         * ext/win32ole/win32ole.c (ole_invoke2): ditto.
33578         * ext/win32ole/test/testWIN32OLE.rb: ditto.
33580         * ext/win32ole/test/testOLEMETHOD.rb: ditto.
33582 Fri Jul  8 15:45:04 2005  Kouhei Sutou  <kou@cozmixng.org>
33584         * lib/rss/rss.rb (RSS::VERSION): 0.1.4 -> 0.1.5.
33586         * test/rss/test_version.rb (RSS::TestVersion#test_version):
33587           ditto.
33589         * lib/rss/0.9.rb (RSS::Rss::Channel::Item::Category):
33590           domain attribute of <category> is optional. Thanks to
33591           Chris Lee <clee@kde.org>.
33593         * test/rss/test_parser.rb (RSS::TestParser#test_category20):
33594           adjusted test case.
33596 Wed Jul  6 18:45:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33598         * object.c (rb_obj_pattern_match): now returns nil.
33599           [ruby-core:05391]
33601 Mon Jul  4 14:35:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33603         * sample/svr.rb: service can be stopped by ill-behaved client; use
33604           tsvr.rb instead.
33606 Mon Jul  4 13:25:21 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33608         * missing/erf.c: original erf.c by prof. Okumura is confirmed to
33609           be public domain.  reverted BSD implementation.
33611 Wed Jul  6 11:15:21 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33613         * win32/win32.c (open_ifs_socket): new function.
33615         * win32/win32.c (StartSockets, rb_w32_socket): use open_ifs_socket()
33616           instead of socket().
33617           all changes are derived from [ruby-core:5388].
33619 Wed Jul  6 00:15:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33621         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c,config.h}:
33622           imported nkf.c 1.70 (support UTF-8-MAC)
33624         * ext/nkf/lib/kconv.rb: add :utf8mac and :internalunicode
33626 Tue Jul  5 23:44:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33628         * instruby.rb: expand source library path.
33630 Tue Jul  5 23:27:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33632         * array.c (sort_2): get rid of yet another bcc's bug.
33633           fixed: [ruby-core:05152]
33635         * eval.c (rb_thread_save_context): must not switch contexts during
33636           re-allocating stack.  fixed: [ruby-core:05219]
33638 Tue Jul  5 15:15:10 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33640         * ext/tk/tkutil.c: fix typo.
33642 Tue Jul  5 14:52:56 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33644         * ext/tk/tcltklib.c: bug fix on treating Unicode strings.
33646         * ext/tk/tcltklib.c: add methods to treat encoding mode.
33648         * ext/tk/MANUAL_tcltklib.eng: add description of TclTkLib#encoding,
33649           encoding_system, and so on.
33651         * ext/tk/MANUAL_tcltklib.eucj: ditto.
33653         * ext/tk/tkutil/tkutil.c: fail to create a Tcl's list string from
33654           an array including multiple kind of encoded strings.
33656         * ext/tk/lib/tk.rb: ditto.
33658         * ext/tk/lib/multi-tk.rb: 2nd arg of _{to|from}UTF8 is omissible.
33660         * ext/tk/lib/remote-tk.rb: ditto.
33662         * ext/tk/lib/tk.rb: override TclTkLib#encoding and encoding= to
33663           use TkCore::INTERP.encoding and encoding=.
33665         * ext/tk/lib/tk.rb: when "require 'tk'" and $KCODE=='NONE', check
33666           DEFAULT_TK_ENCODING to decide Ruby/Tk's system encoding mode.
33668         * ext/tk/lib/tk/encodedstr.rb: check both of Tk.encoding and
33669           Tk.encoding_system. Tk.encoding has higher priority.
33671         * ext/tk/lib/tk/optiondb.rb: ditto.
33673         * ext/tk/lib/tk/spinbox.rb: ditto.
33675         * ext/tk/lib/tk/validation.rb: ditto.
33677         * ext/tk/lib/tk/namespace.rb: arguemnts for TclTkIp#_merge_tklist
33678           should be UTF-8 strings.
33680 Mon Jul  4 19:29:32 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33682         * lib/set.rb: test change to follow revision 1.28. (duck typing?)
33684 Mon Jul  4 11:23:50 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33686         * test/{dbm,gdbm,sdbm}/test_{dbm,gdbm,sdbm}.rb: skip some tests
33687           which using fork on fork-less platforms.
33689 Sun Jul  3 23:26:30 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
33691         * test/wsdl/document/test_rpc.rb: compare formatted time string of
33692           Time objects instead of comparing Time objects itself to avoid
33693           unintended conflict of usec part.  [ruby-dev:26220]
33695 Sat Jul  2 22:41:04 2005  Tanaka Akira  <akr@m17n.org>
33697         * ext/socket/socket.c (unix_send_io, unix_recv_io): support x86-64 and
33698           IA64.
33700 Sat Jul  2 17:06:23 2005  Tanaka Akira  <akr@m17n.org>
33702         * defines.h (FLUSH_REGISTER_WINDOWS): defined for IA64.
33703           (flush_register_windows): declare flush_register_windows.
33705         * eval.c (flush_register_windows): new function.
33707         * ruby.h (NOINLINE): move up to be effective in defines.h.
33709 Sat Jul  2 15:19:41 2005  Tanaka Akira  <akr@m17n.org>
33711         * configure.in: check select_large_fdset.
33713         * eval.c: use select_large_fdset to support large file descriptors
33714           on Solaris.  [ruby-dev:26404]
33716 Fri Jul  1 17:55:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33718         * bignum.c (rb_big_neg): may be accessing bogus pointer value.
33720 Fri Jul  1 15:50:12 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33722         * missing/erf.c: need to include some headers for some platforms.
33724         * win32/win32.h (copysign, scalb): define for compatibility with
33725           other platforms. [ruby-dev:26430]
33727 Fri Jul  1 15:37:42 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33729         * missing/crypt.c: modified to make it compilable on platforms
33730           other than BSD.  [ruby-dev:26430]
33732         * missing/erf.c: ditto.  code from <exp.c> merged.
33734 Fri Jul  1 12:44:56 2005  Tanaka Akira  <akr@m17n.org>
33736         * lib/open-uri.rb (OpenURI.open_http): refine post_connection_check
33737           call.
33739 Fri Jul  1 11:34:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33741         * missing/crypt.c: replaced with 4.4BSD version.
33743         * missing/erf.c: ditto.
33745         * missing/vsnprintf.c: removed the third provision from the old
33746           BSD license.  [ruby-core:05177]
33748 Fri Jul  1 01:45:21 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33750         * enum.c (enum_min, enum_max): must not return Qundef.
33751           fixed: [ruby-core:05299]
33753 Fri Jul  1 00:18:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33755         * lib/delegate.rb (Delegator::respond_to): respond_to? must check
33756           destination object.  [ruby-talk:146894]
33758 Thu Jun 30 23:52:12 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33760         * signal.c (trap): non-string trap hander was ignored.
33761           fixed: [ruby-dev:26417]
33763 Thu Jun 30 19:00:21 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
33765         * lib/irb/ruby-lex.rb (RubyLex::identify_number): alternative implements
33766           for [ruby-dev:26410]. And support a numeric form of 0d99999.
33768 Thu Jun 30 17:28:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33770         * lib/irb/ruby-lex.rb (RubyLex::identify_number): should not treat
33771           plain zero as an octal number.  [ruby-dev:26410]
33773 Thu Jun 30 15:13:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33775         * eval.c (rb_eval): pre-evaluate argument for unambiguous
33776           evaluation order.  [ruby-dev:26383]
33778 Thu Jun 30 14:48:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33780         * lib/net/http.rb (Net::HTTP#connect, Net::HTTP#request): should
33781           not send proxy username and password to origin servers.
33782           [ruby-dev:25673]
33784         * lib/net/http.rb (Net::HTTP::ProxyDelta#edit_path): should not
33785           send HTTPS scheme URL to origine servers. [ruby-dev:25689]
33787 Thu Jun 30 09:53:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33789         * lib/delegate.rb (Delegator::method_missing): forward unknown
33790           method to the destination.  suggested by
33791           <christophe.poucet@gmail.com>.  [ruby-talk:146776]
33793 Wed Jun 29 00:03:20 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
33795         * regparse.c (fetch_token): avoid warning of unused goto tag.
33796           [ruby-dev:26389]
33798 Tue Jun 28 21:59:29 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
33800         * dir.c, eval.c, parse.y, process.c, ruby.c: avoid warning "unused
33801           variable" [ruby-dev:26387]
33803         * dir.c (glob_helper): avoid warning "enumeration value `RECURSIVE'
33804           not handled in switch" [ruby-dev:26392]
33806 Tue Jun 28 01:52:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33808         * ext/nkf/lib/kconv.rb: add Kconv::VERSION
33809         * ext/nkf/lib/kconv.rb (conv): can process arrayed options
33810         * ext/nkf/nkf-utf8/nkf.c: imported Revision 1.69
33811         * ext/nkf/nkf-utf8/utf8tbl.c: imported Revision 1.9
33813 Sat Jun 25 23:30:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33815         * process.c (detach_process_watcher): terminate process watcher
33816           thread right after rb_waitpid() succeed.  [ruby-talk:146430]
33818 Sat Jun 25 17:12:20 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33820         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_query): should
33821           discard if key=val pair is empty. patch from Gary Wright.
33823 Sat Jun 25 15:49:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33825         * enum.c (enum_min, enum_max, enum_min_by, enum_max_by): do not ignore
33826           nil as the first element.
33828 Sat Jun 25 15:13:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33830         * lib/set.rb (Set#==): [ruby-dev:25206] (ported from ruby_1_8 branch)
33832 Sat Jun 25 11:37:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33834         * ext/nkf/lib/kconv.rb: remove constants
33835           Iconv_Shift_JIS, Uconv_EUC_JP, Iconv_UTF8
33836         * ext/nkf/lib/kconv.rb: add module functions to Kconv
33837           conv, {eucjp, shiftjis, utf8}?, guess_as_symbol
33838         * ext/nkf/lib/kconv.rb: add instance methods to String
33839           conv, {eucjp, shiftjis, utf8}?
33840         * ext/nkf/lib/kconv.rb: add aliases Kconv.to_* and String#to_*
33842 Fri Jun 24 17:00:00 2005  Shigeo Kobayashi  <shigeo@tinyforest.jp>
33844         * ext/bigdecimal/bigdecimal.c: patch from "NATORI Shin"
33845           (u-tokyo.ac.jp) applied to fix rounding bug.
33847 Fri Jun 24 13:17:45 2005  akira yamada  <akira@ruby-lang.org>
33849         * lib/uri/common.rb, lib/uri/generic.rb: fixed typo in documents and
33850           replaced some existent domain name with "example.com".
33852 Fri Jun 24 12:23:19 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33854         * ext/tk/lib/tk.rb: fix typo on Tk.grid_propagate.
33856         * ext/tk/lib/tk.rb: Tk.event_generate and TkWindow#event_generate
33857           accept TkEvent::Event object as context argument.
33859         * ext/tk/lib/tk/event.rb: add TkEvent::Event#valid_fields and
33860           valid_for_generate to get field parameters of event_generate.
33862 Thu Jun 23 23:55:59 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33864         * runruby.rb: should load built rbconfig.rb.
33866 Thu Jun 23 16:53:15 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33868         * ext/tk/lib/tk/canvastag.rb: TkcGroup.new cannot include given items.
33869           TkcGroup#exclude calls wrong method.
33870           Add alias TkcGroup#add [ruby-talk:146049].
33872         * ext/tk/lib/tk/canvas.rb: TkCanvas#dtag and some subcommands of
33873           TkCanvas#addtag fail to treat a TkcTag argument.
33875         * ext/tk/lib/tk/event.rb: add TkEvent::Event#generate to help to send
33876           current event to other widgets.
33878 Mon Jun 20 18:44:04 2005  Tanaka Akira  <akr@m17n.org>
33880         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): DUMMY_SETJMP is replaced
33881           because setjmp is not enough to fix getcontext and SPARC register
33882           window problem.
33884 Mon Jun 20 17:15:51 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33886         * ext/dbm/dbm.c (fdbm_closed): new method DBM#closed?
33888         * ext/gdbm/gdbm.c (fgdbm_closed): new method GDBM#closed?
33890         * ext/sdbm/init.c (fsdbm_closed): new method SDBM#closed?
33892         * test/dbm/test_dbm.rb, test/gdbm/test_gdbm.rb, test/sdbm/test_sdbm.rb
33893           (teardown): close all db objects before deleting data files.
33895         * win32/win32.{ch} (unlink): hook runtime function to change
33896           file attribute before unlinking.
33897           merge from 1.8, see [ruby-dev:26360]
33899 Mon Jun 20 02:15:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33901         * gc.c (define_final): document fix: finalizers never get called
33902           before target object is destroyed.
33904 Mon Jun 20 01:26:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33906         * ext/openssl/openssl_missing.c, ext/openssl/ossl.h,
33907           ext/openssl/ossl_asn1.c, ext/openssl/ossl_bio.c,
33908           ext/openssl/ossl_pkcs12.h, ext/openssl/ossl_x509req.c: avoid
33909           compiler warnings. suggested by Michal Rokos.
33911 Sun Jun 20 00:22:02 2005  Michael Neumann  <mneumann@ruby-lang.org>
33913         * lib/xmlrpc/utils.rb: Patch by Nobuhiro IMAI fixes the following
33914           problem: Default value modification on
33915           Module#public_instance_methods (false -> true) breaks
33916           s.add_handler(XMLRPC::iPIMethods("sample"), MyHandler.new) style
33917           security protection.
33919         * lib/xmlrpc/client.rb: Aliased XMLRPC::Client#new2 as
33920           XMLRPC::Client#new_from_uri, and #new3 as #new_from_hash.
33922 Sun Jun 19 14:09:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33924         * gc.c (run_final): reduce unnecessary object allocation during
33925           finalization.
33927         * gc.c (rb_gc_call_finalizer_at_exit): deferred finalizers list should
33928           be cleared before calling them.  fixed: [ruby-talk:145790]
33930 Sat Jun 18 01:15:36 2005  Shugo Maeda  <shugo@ruby-lang.org>
33932         * ext/readline/readline.c (readline_readline): do not set
33933           rl_{in,out}stream.
33935         * ext/readline/readline.c (readline_s_set_input): new method.
33937         * ext/readline/readline.c (readline_s_set_output): new method.
33939         * lib/irb/input-method.rb: set Readline.input and Readline.output.
33941 Fri Jun 17 13:01:40 2005  Tanaka Akira  <akr@m17n.org>
33943         * lib/time.rb (Time.parse): fix previous leap seconds support.
33944           (Time.rfc2822): ditto.
33945           (Time.xmlschema): ditto.
33947 Thu Jun 16 15:41:32 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33949         * ruby.c (load_file): '!' is already read. reported by gotoyuzo.
33951 Thu Jun 16 15:09:38 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33953         * ext/tk/tcltklib.c (ip_rb_threadVwaitCommand): Tcl_Release
33954           was missing.
33956 Thu Jun 16 13:34:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33958         * ext/tk/lib/tk.rb: add Tk.getMultiple{Open|Save}File() which return
33959           an Array of selected files.
33961 Thu Jun 16 12:53:24 2005  Tanaka Akira  <akr@m17n.org>
33963         * lib/time.rb (Time.parse): "Fri Jan  1 08:59:60 +0900 1999" was
33964           parsed as "Fri Jan 01 09:00:00 JST 1999" even on an environment
33965           which supports leap seconds.
33966           (Time.rfc2822): ditto.
33967           (Time.xmlschema): ditto.
33969 Thu Jun 16 00:13:41 2005  Tanaka Akira  <akr@m17n.org>
33971         * lib/resolv.rb (Resolv::DNS::Resource#ttl): new attribute.
33972           (Resolv::DNS::Resource#==): ignore @ttl.
33973           (Resolv::DNS::Resource#hash): ditto.
33974           (Resolv::DNS::Message::MessageDecoder#get_rr): save TTL in a
33975           Resource object.
33976           based on [ruby-core:5190] by Eric Hodel.
33978 Wed Jun 15 18:26:39 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33980         * ext/tk/lib/tk.rb: support "tk inactive" sub-command [for Tcl/Tk8.5a3]
33982         * ext/tk/lib/tk/namespace.rb: support "namespace path" sub-command and
33983           'namespace ensemble' sub-command [for Tcl/Tk8.5a3]
33985 Tue Jun 14 02:02:43 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33987         * ext/tk/tkutil/tkutil.c: add TkUtil::CallbackSubst.subst_arg(m, ...)
33988           & _define_attribute_aliases(hash) to get substitution-argument from
33989           attributes (e.g. subst_arg(:x,:y,:num,:button) --> "%x %y %b %b ").
33991         * ext/tk/lib/tk/event.rb: use _define_attribute_aliases().
33993 Mon Jun 13 13:03:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33995         * hash.c (ruby_setenv): fixed SEGV. [ruby-dev:26186]
33997 Mon Jun 13 01:54:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33999         * signal.c (sigexit): call rb_thread_signal_exit() instead of
34000           rb_exit().  [ruby-dev:26347]
34002         * eval.c (rb_thread_signal_exit): a new function to exit on main
34003           thread.
34005         * eval.c (rb_thread_switch): exit status should be retrieved from
34006           ruby_errinfo.
34008         * eval.c (rb_f_exit): ensure exit(0) should call
34009           exit(EXIT_SUCCESS).
34011 Mon Jun 13 01:20:02 2005  Tanaka Akira  <akr@m17n.org>
34013         * eval.c (rb_gc_mark_threads): curr_thread may not be part of the
34014           thread list.  [ruby-dev:26312]
34016 Sat Jun 11 22:34:44 2005  Minero Aoki  <aamine@loveruby.net>
34018         * parse.y: missing arg_paren event.  This patch is contributed by
34019           Mitchell N Charity.
34021 Fri Jun 10 23:55:17 2005  Tanaka Akira  <akr@m17n.org>
34023         * eval.c (unknown_node): show more information.  [ruby-dev:26196]
34025 Fri Jun 10 23:35:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34027         * missing/mkdir.c: remove. [ruby-core:05177]
34029 Fri Jun 10 22:54:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34031         * missing.h: fd_set stuffs need sys/types.h.  fixed: [ruby-core:05179]
34033 Thu Jun  9 23:58:12 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34035         * ext/Win32API/Win32API.c (Win32API_Call): disable global
34036           optimization. fixed: [ruby-core:05143]
34038 Thu Jun  9 23:35:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34040         * enum.c (enum_inject): default the result value to Qundef to use
34041           first element as initial value if not given.
34043 Thu Jun  9 19:55:41 2005  Tanaka Akira  <akr@m17n.org>
34045         * eval.c (ruby_longjmp): new macro to call longjmp, setcontext, etc.
34046           (ruby_setjmp): new macro to call setjmp, getcontext, etc.
34047           (ruby_setjmp): call setjmp before getcontext to avoid IA64 register
34048           stack problem.
34049           [ruby-talk:144939]
34051         * gc.c (Init_stack): remove IA64_MAGIC_STACK_LIMIT.
34053 Thu Jun  9 18:24:16 2005  Tanaka Akira  <akr@m17n.org>
34055         * configure.in, eval.c, gc.c: use libunwind only on HP-UX.
34056           [ruby-dev:26297]
34058 Thu Jun  9 14:46:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34060         * hash.c (env_aset): do not treat nil as key-removing value.
34061           [ruby-list:40865]
34063         * parse.y (method_call): allow aref expression ([]) to take a
34064           block.
34066         * parse.y (block_dup_check): a function to check duplication of
34067           a block argument and an actual block.
34069 Thu Jun  9 11:55:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34071         * lib/delegate.rb (SimpleDelegator::__setobj__): need check for
34072           recursive delegation.  [ruby-core:04940]
34074 Thu Jun  9 11:50:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34076         * lib/cgi.rb: add underscore aliases CGI::escape_html,
34077           CGI::unescape_html, CGI::escape_element, CGI::unescape_element.
34078           [ruby-core:05058]
34080 Wed Jun  8 18:47:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34082         * misc/ruby-mode.el (ruby-expr-beg): fix looking point drift.
34084 Wed Jun  8 12:25:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34086         * array.c (rb_ary_nitems): add the block feature to Array#nitems.
34087           suggested by Bertram Scharpf <lists@bertram-scharpf.de> in
34088           [ruby-talk:134083].
34090 Wed Jun  8 11:11:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34092         * bignum.c (get2comp): revert all prior changes, and calculate
34093           proper 2's complement for negative numbers.
34095 Wed Jun  8 08:33:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34097         * enum.c (enum_min_by, enum_max_by): return nil if no iteration.
34098           fixed: [ruby-dev:26245]
34100         * eval.c (rb_need_block): ensure a block is given.
34102         * eval.c (backtrace): skip successive frames sharing same node.
34104 Wed Jun  8 01:27:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34106         * bignum.c (bignorm): fixed a bug in normalizing negative numbers
34107           reported from Honda Hiroki <hhonda@ipflex.com>.  normalizing
34108           should not trim leading zeros from negative numbers.
34110         * bignum.c (rb_cstr_to_inum): must remove leading zeros for this
34111           case.
34113 Wed Jun  8 00:15:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34115         * ext/socket/socket.c (ruby_getaddrinfo__aix): merged a patch from
34116           KUBO Takehiro <kubo at jiubao.org> to support AIX.  [ruby-list:40832]
34118 Wed Jun  8 00:09:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34120         * lib/yaml/rubytypes.rb (Array::to_yaml): merged a patch from
34121           Tilman Sauerbeck <tilman at code-monkey.de>.  [ruby-core:05055]
34123         * lib/yaml/rubytypes.rb (Hash::to_yaml): ditto.
34125 Wed Jun  8 00:00:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34127         * ext/curses/curses.c (curses_insertln): merged a patch from
34128           TAKAHASHI Tamotsu <ttakah at lapis.plala.or.jp>.  [ruby-ext:02305]
34130 Tue Jun  7 19:34:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34132         * lib/irb/init.rb (IRB::IRB.rc_file_generators): more flexible
34133           IRB.rc_file_generators.  [ruby-core:05163]
34135 Tue Jun  7 18:39:31 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34137         * lib/thread.rb: RDoc documentation from Eric Hodel
34138           <drbrain@segment7.net> added.  [ruby-core:05148]
34140 Tue Jun  7 18:30:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34142         * lib/mkmf.rb (create_makefile): add .SUFFIXES from depend file.
34143           fixed: [ruby-dev:26294]
34145 Tue Jun  7 17:20:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34147         * parse.y (parser_yylex): allow ';;' to be block terminator in
34148           place of 'end'.  [highly experimental]
34150         * misc/ruby-mode.el (ruby-block-end-re): allow ';;' to be a
34151           negative indent trigger.  [highly experimental]
34153         * parse.y (parser_yylex): small error fixed.
34155 Tue Jun  7 16:45:49 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34157         * parse.y (parser_yylex): "respond_to?:foo" should be interpreted
34158           as "respond_to? :foo" at the command level.  [ruby-talk:144303]
34160 Tue Jun  7 16:32:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34162         * sprintf.c (rb_f_sprintf): raise exception on debug mode (-d),
34163           not verbose mode (-v/-w).  [ruby-core:05123]
34165         * sprintf.c (rb_f_sprintf): warn always on verbose mode.
34167 Tue Jun  7 10:30:49 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34169         * ext/tk/lib/multi-tk.rb: slave-ip fails to call procedures
34170           delegated by master-ip.
34172 Mon Jun  6 16:35:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34174         * ext/ripper/depend: add .y to .SUFFIXES for nmake.
34176 Sun Jun  5 23:00:35 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34178         * ext/tk/lib/tk/console.rb: create console when required
34180         * ext/tk/sample/tkextlib/tile/demo.rb: fix TypeError & create Console
34182 Sun Jun  5 10:23:52 2005  Tanaka Akira  <akr@m17n.org>
34184         * signal.c (ruby_signal): don't set SA_RESTART.
34185           [ruby-dev:26276]
34187 Sat Jun  4 14:55:18 2005  Tanaka Akira  <akr@m17n.org>
34189         * test/dbm/test_dbm.rb: merged from ext/dbm/testdbm.rb.
34191         * test/gdbm/test_gdbm.rb: merged from ext/gdbm/testgdbm.rb.
34193         * test/sdbm/test_sdbm.rb: renamed from ext/sdbm/testsdbm.rb with
34194           modification to use test/unit.
34196 Fri Jun  3 23:23:02 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34198         * intern.h (rb_fdset_t): deal with fd bit sets over FD_SETSIZE.
34199           fixed: [ruby-dev:26187]
34201         * eval.c (rb_fd_init, rb_fd_term, rb_fd_zero, rb_fd_set, rb_fd_clr,
34202           rb_fd_isset, rb_fd_copy): ditto.
34204         * io.c (rb_io_wait_readable, rb_io_wait_writable, rb_f_select): ditto.
34206         * ext/io/wait/wait.c (io_wait): ditto.
34208         * ext/socket/socket.c (wait_connectable, unix_recv_io): ditto.
34210 Fri Jun  3 14:06:12 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34212         * ext/tk/lib/multi-tk.rb: fix typo.
34214 Thu Jun  2 23:42:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34216         * parse.y: pragma support on ripper.  [ruby-dev:26266]
34218 Thu Jun  2 00:02:16 2005  Minero Aoki  <aamine@loveruby.net>
34220         * struct.c: accessing >10 member caused segmentation fault.
34221           [ruby-dev:26247]
34223         * test/ruby/test_struct.rb: test it.
34225 Wed Jun  1 11:30:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34227         * bcc32/Makefile.sub: can use single quote character in DESTDIR.
34228           [ruby-dev:26205]
34230         * bcc32/Makefile.sub: Dir.glob in 1.9 doesn't treat \ as path separator.
34231           [ruby-dev:26254]
34233 Wed Jun  1 00:11:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34235         * parse.y (method_call): new experiment: "(expr)(args...)" to
34236           invoke "expr.call(args...)".  [EXPERIMENTAL]
34238 Tue May 31 23:43:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34240         * parse.y (command): revert implicit "call" for local variables.
34242 Tue May 31 15:52:45 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34244         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should
34245           break the loop if the socket reached to EOF. [ruby-talk:142285]
34247         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): send response
34248           without reading the whole request body if keep-alive is diabled.
34249           [experimental]
34251 Mon May 30 23:48:29 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34253         * ext/tk/lib/tk/macpkg.rb: add PACKAGE_NAME information of Tcl/Tk
34254           Extension.
34256         * ext/tk/lib/tk/msgcat.rb: ditto.
34258         * ext/tk/lib/tk/winpkg.rb: ditto.
34260         * ext/tk/lib/tkextlib/*: ditto.
34262 Sat May 28 16:39:21 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34264         * test/openssl/test_x509store.rb: add test for expired CRL
34265           and refine some assertions.
34267 Sat May 28 05:15:44 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34269         * ext/openssl/ossl_x509store.c (ossl_x509stctx_set_time): should
34270           not set internal flag directry.
34272 Sat May 28 02:00:11 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34274         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line):
34275           ENV["REQUEST_URI"] is better to get correct Request-URI
34276           than ENV["SCRIPT_NAME"] + ENV["PATH_INFO"].  [ruby-dev:26235]
34278 Fri May 27 16:32:04 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34280         * lib/mkmf.rb: use the semicolon as the path separator
34281           in the environment of MSYS.  fixed: [ruby-dev:26232]
34283 Thu May 26 20:31:21 2005  Minero Aoki  <aamine@loveruby.net>
34285         * lib/fileutils.rb (remove_entry_secure): add documentation.
34287         * lib/fileutils.rb (remove_entry_secure): should not invoke
34288           unlink(2) against a directory.
34290 Thu May 26 08:29:19 2005  Akiyoshi, Masamichi  <akiyoshi@hp.com>
34292         * vms/vmsruby_private.c, vms/vmsruby_private.h: private routines
34293           for VMS port are added.
34295         * eval.c (ruby_init): change to call VMS private intialization routine.
34297 Thu May 26 07:39:07 2005  Minero Aoki  <aamine@loveruby.net>
34299         * lib/fileutils.rb (rm_r): use lchown(2), not chown(2).
34300           [ruby-dev:26226]
34302         * lib/fileutils.rb (cd): remove :noop option. (feature change)
34304         * lib/fileutils.rb (cp_r): should copy symlink as symlink, for
34305           also tree root. (feature change)
34307         * lib/fileutils.rb (cp_r): new option :dereference_root.
34309         * lib/fileutils.rb: new method remove_entry.
34311         * lib/fileutils.rb: new method remove_entry_secure.
34313         * lib/fileutils.rb: add documentation.
34315 Thu May 26 06:08:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34317         * ext/tk/lib/tk.rb: add shortcut-methods of tk_call + tk_split_list
34319 Wed May 25 20:06:27 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34321         * ext/tk/lib/tk.rb: TkComm#tk_split_*list fail to split a kind of SJIS
34322           strings. To avoid the trouble, add arguments to control converting
34323           encoding, and do split on a UTF8 string.
34325         * ext/tk/lib/multi-tk.rb: modify to attend encoding.
34327         * ext/tk/lib/remote-tk.rb: ditto.
34329         * ext/tk/lib/tk/itemconfig.rb: ditto.
34331         * ext/tk/lib/tk/listbox.rb: ditto.
34333         * ext/tk/lib/tk/namespace.rb: ditto.
34335         * ext/tk/lib/tk/panedwindow.rb: ditto.
34337         * ext/tk/lib/tk/text.rb: ditto.
34339         * ext/tk/lib/tk/textmark.rb: ditto.
34341         * ext/tk/lib/tk/texttag.rb: ditto.
34343         * ext/tk/lib/tk/variable.rb: ditto.
34345         * ext/tk/lib/tk/winfo.rb: ditto.
34347         * ext/tk/lib/tkextlib/iwidgets/scrolledlistbox.rb: ditto.
34349         * ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: ditto.
34351         * ext/tk/lib/tk.rb: add TkWindow#lower_window/raise_window and
34352           Tk#lower_window/raise_window by reason of method-name conflict
34354         * ext/tk/lib/tk/canvas.rb: bug fix on TkCanvas#delete when given
34355           non-TkcItem arguments.
34357         * ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb: ditto.
34359 Wed May 25 19:48:12 2005  Minero Aoki  <aamine@loveruby.net>
34361         * lib/fileutils.rb (rm_r): does chown(2). [ruby-dev:26199]
34363 Wed May 25 12:59:48 2005  Tanaka Akira  <akr@m17n.org>
34365         * lib/open-uri.rb (OpenURI::Meta::RE_QUOTED_STRING): a content of
34366           quoted-string should be zero or more characters.
34368 Tue May 24 23:42:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34370         * numeric.c (fix_pow): support Fixnum ** Float case directly
34371           without coercing.  [ruby-talk:142697] [ruby-talk:143054]
34373 Tue May 24 16:57:24 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34375         * ruby.c (require_libraries): caused SEGV when continuation jumped
34376           in to the required library code.
34378 Tue May 24 17:45:59 2005  Shugo Maeda  <shugo@ruby-lang.org>
34380         * test/readline/test_readline.rb: do not test libedit.
34381           fixed: [ruby-dev:26217]
34383 Tue May 24 06:45:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34385         * misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): string
34386           literals to be matched non-greedy.
34388 Tue May 24 00:39:14 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
34390         * test/soap/calc: method name 'set' was able to crash with a class Set.
34391           [ruby-dev:26210]
34393         * test/wsdl/document/test_rpc.rb: dateTime comparison failed under
34394           TZ=right/Asia/Tokyo (with leap second.) [ruby-dev:26208]
34396 Mon May 23 16:23:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34398         * ext/tk/extconf.rb: Framework support on MacOS X Tiger.
34400         * ext/tk/README.tcltklib: add description of Framework support options.
34402 Mon May 23 15:07:34 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34404         * win32/Makefile.sub ($(PROGRAM)): add dependency on $(LIBRUBY_SO).
34405           [experimental]
34407 Mon May 23 12:21:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34409         * re.c (make_regexp): should not return junk address during
34410           compile time.  [ruby-dev:26206]
34412 Sun May 22 21:54:06 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
34414         * lib/{soap,wsdl,xsd}, test/{soap,wsdl,xsd}: imported soap4r/1.5.4.
34416           == SOAP client and server ==
34418           === for both client side and server side ===
34420           * improved document/literal service support.
34421             style(rpc,document)/use(encoding, literal) combination are all
34422             supported.  for the detail about combination, see
34423             test/soap/test_style.rb.
34425           * let WSDLEncodedRegistry#soap2obj map SOAP/OM to Ruby according to
34426             WSDL as well as obj2soap.  closes #70.
34428           * let SOAP::Mapping::Object handle XML attribute for doc/lit service.
34429             you can set/get XML attribute via accessor methods which as a name
34430             'xmlattr_' prefixed (<foo name="bar"/> -> Foo#xmlattr_name).
34432           === client side ===
34434           * WSDLDriver capitalized name operation bug fixed.  from
34435             1.5.3-ruby1.8.2, operation which has capitalized name (such as
34436             KeywordSearchRequest in AWS) is defined as a method having
34437             uncapitalized name. (converted with GenSupport.safemethodname
34438             to handle operation name 'foo-bar').  it introduced serious
34439             incompatibility; in the past, it was defined as a capitalized.
34440             define capitalized method as well under that circumstance.
34442           * added new factory interface 'WSDLDriverFactory#create_rpc_driver'
34443             to create RPC::Driver, not WSDLDriver (RPC::Driver and WSDLDriver
34444             are merged).  'WSDLDriverFactory#create_driver' still creates
34445             WSDLDriver for compatibility but it warns that the method is
34446             deprecated.  please use create_rpc_driver instead of create_driver.
34448           * allow to use an URI object as an endpoint_url even with net/http,
34449             not http-access2.
34451           === server side ===
34453           * added mod_ruby support to SOAP::CGIStub.  rename a CGI script
34454             server.cgi to server.rb and let mod_ruby's RubyHandler handles the
34455             script.  CGIStub detects if it's running under mod_ruby environment
34456             or not.
34458           * added fcgi support to SOAP::CGIStub.  see the sample at
34459             sample/soap/calc/server.fcgi.  (almost same as server.cgi but has
34460             fcgi handler at the bottom.)
34462           * allow to return a SOAPFault object to respond customized SOAP fault.
34464           * added the interface 'generate_explicit_type' for server side
34465             (CGIStub, HTTPServer).  call 'self.generate_explicit_type = true'
34466             if you want to return simplified XML even if it's rpc/encoded
34467             service.
34469           == WSDL ==
34471           === WSDL definition ===
34473           * improved XML Schema support such as extension, restriction,
34474             simpleType, complexType + simpleContent, ref, length, import,
34475             include.
34477           * reduced "unknown element/attribute" warnings (warn only 1 time for
34478             each QName).
34480           * importing XSD file at schemaLocation with xsd:import.
34482           === code generation from WSDL ===
34484           * generator crashed when there's '-' in defined element/attribute
34485             name.
34487           * added ApacheMap WSDL definition.
34489         * sample/{soap,wsdl}: removed.
34491 Sun May 22 19:11:35 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34493         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLServer#intialize):
34494           should initialize session id context. [ruby-core:4663]
34496         * ext/openssl/ossl_ssl.c (ossl_sslctx_setup): add session id support.
34498 Sun May 22 12:30:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34500         * intern.h, parse.y (ruby_pragma): removed.  fixed: [ruby-dev:26198]
34502         * parse.y (parser_pragma): pragma name was ignored.
34504 Sun May 22 02:39:57 2005  Minero Aoki  <aamine@loveruby.net>
34506         * lib/fileutils.rb (rm_r): new option :secure to avoid
34507           time-to-check-to-time-to-use security problem.  [ruby-dev:26100]
34509         * lib/fileutils.rb (remove_file, remove_dir): try chmod(700) only
34510           on Windows.
34512         * lib/fileutils.rb: does not depend on find.rb.
34514         * lib/fileutils.rb: new method chmod_R.
34516         * lib/fileutils.rb (chown_R): did not work.
34518 Sat May 21 10:23:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34520         * bcc32/Makefile.sub: tds files were not deleted when DESTDIR
34521           included '\' path delimiter. [ruby-dev:26193]
34523 Fri May 20 15:52:18 2005  Shugo Maeda  <shugo@ruby-lang.org>
34525         * ext/readline/readline.c (readline_attempted_completion_function):
34526           return 2 items if completion_proc returns only 1 item (for libedit).
34528 Fri May 20 01:24:33 2005  Shugo Maeda  <shugo@ruby-lang.org>
34530         * ext/readline/extconf.rb: check rl_vi_editing_mode() and
34531           rl_emacs_editing_mode().
34533 Thu May 19 23:33:09 2005  Shugo Maeda  <shugo@ruby-lang.org>
34535         * ext/readline/readline.c: supported libedit. fixed: [ruby-core:4858]
34537         * ext/readline/extconf.rb: added new option --enable-libedit.
34539         * test/readline/test_readline.rb: added assertions for
34540           Readline::HISTORY.
34542         * lib/irb/input-method.rb: do not use Readline::HISTORY.pop.
34544 Wed May 18 23:42:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34546         * error.c (exc_exception): reverted to call Exception#initialize
34547           directly.  fixed: [ruby-dev:26177]
34549 Wed May 18 17:38:51 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34551         * dir.c (glob_helper): check whether path is "" before calling
34552           do_opendir.  [ruby-dev:26183]
34554 Wed May 18 13:40:48 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34556         * win32/win32.c (NtInitialize): fix typo.
34558 Wed May 18 11:07:47 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34560         * dir.c (glob_helper): get rid of using String.  [ruby-dev:26180]
34562         * eval.c (ruby_options), win32/win32.c (NtInitialize): move argument
34563           intialization back.  [ruby-dev:26180]
34565 Tue May 17 11:49:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34567         * win32/win32.c (unixtime_to_filetime): use localtime() instead of
34568           gmtime() when using FileLocalTimeToFileTime().
34570 Mon May 16 22:42:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34572         * win32/win32.h, {bcc32,win32,wince}/Makefile.sub: moved rb_[ugp]id_t
34573           to get rid of redefinition warnings on mingw.
34575         * class.c (rb_class_init_copy): singleton class is disallowed to copy,
34576           from its definition.  fixed: [ruby-talk:142749]
34578         * parse.y (pragma_encoding): add prototype to suppress false warning
34579           by VC.
34581         * process.c (proc_spawn_v): use rb_w32_aspawn on Win32.
34583 Mon May 16 03:29:01 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34585         * win32/win32.{h,c}: define rb_[pgu]id_t.
34587 Mon May 16 00:21:02 2005  Tanaka Akira  <akr@m17n.org>
34589         * lib/pathname.rb (Pathname#unlink): use SystemCallError instead of
34590           Errno::EISDIR because EISDIR is not portable.
34591           [ruby-core:5001]
34593 Sun May 15 22:28:10 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
34595         * lib/drb/drb.rb (DRbObject#method_missing): use raise(exception).
34596           [ruby-dev:26164]
34598 Sun May 15 18:56:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34600         * configure.in, ruby.h: define rb_[pgu]id_t macros instead of typedefs
34601           to get rid of types which might not be defined yet.  [ruby-dev:26165]
34603 Sun May 15 14:35:46 2005  Tanaka Akira  <akr@m17n.org>
34605         * lib/pathname.rb (Pathname#unlink): unlink a symlink to a directory
34606           was failed.  [ruby-core:4992]
34608 Sun May 15 09:57:30 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34610         * win32/win32.c (unixtime_to_filetime): deal with DST.
34611           [ruby-talk:141817]
34613 Sat May 14 23:59:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34615         * error.c (exc_exception, {exit,name_err,syserr}_initialize): call
34616           Execption#initialize.  fixed: [ruby-talk:142593]
34618 Sat May 14 23:56:41 2005  Erik Huelsmann  <ehuels@gmail.com>
34620         * configure.in: Check for the availability of pid_t, gid_t and uid_t and
34621           remove AC_TYPE_UID_T.  fixed: [ruby-core:04745]
34623         * defines.h: Remove pid_t typedef.
34625         * ruby.h: Define rb_pid_t, rb_gid_t and rb_uid_t in accordance with
34626          the available system types.
34628         * process.c: Change instances of pid_t and gid_t to their rb_*
34629          counterparts.
34631         * ext/pty/pty.c: Change pid_t to rb_pid_t.
34633         * vms/config.h: Define HAVE_{P,G,U}ID_T to 1.
34635         * win32/Makefile.sub: Remove #define for {g,u}id_t.
34637         * win32/win32.c: Change pid_t to rb_pid_t.
34639         * wince/Makefile.sub: Remove #define for {g,u}id_t.
34641         * wince/sys/types.h: Remove definitions of {p,g,u}id_t.
34643 Sat May 14 11:47:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34645         * intern.h (ruby_pragma): prototype.  [ruby-core:04881]
34647         * parse.y (parser_pragma): parse Emacsen hack.
34649         * parse.y (parser_prepare): deal with specific syntax at the top.
34651         * ruby.c (load_file): read the first line iff it started with shebang.
34653 Fri May 13 23:44:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34655         * ext/extmk.rb: keep srcdir unexpanded.
34657         * lib/mkmf.rb (create_makefile): quote topdir and hdrdir if necessary.
34658           fixed: [ruby-core:04932]
34660         * lib/mkmf.rb (configuration), {bcc32,win32,wince}/Makefile.sub: make
34661           also INSTALL_PROG and INSTALL_DATA system dependent.
34662           fixed: [ruby-core:04931]
34664 Fri May 13 23:32:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34666         * eval.c (unknown_node): add volatile directive to prototype.
34668 Fri May 13 17:50:49 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34670         * variable.c (generic_ivar_get): rb_attr_get should not warn.
34671           [ruby-dev:26010]
34673 Thu May 12 17:41:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
34675         * ext/nkf/nkf-utf8/nkf.c: follow nkf 2.0.5
34677 Thu May 12 16:50:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34679         * lib/rdoc/parsers/parse_c.rb: more readability for mixing
34680           progress "c..." and warning message.
34682 Thu May 12 15:50:56 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
34684         * lib/rdoc/parsers/parse_c.rb: show parsing progress for C files.
34685           [ruby-core:4341]
34687 Thu May 12 09:53:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34689         * version.c (ruby_show_version): flush for non-tty stdout.
34691 Thu May 12 01:23:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34693         * eval.c (unknown_node): ignore broken NODE to get rid of accessing
34694           possibly inaccessible address.  fixed: [ruby-dev:26122]
34695           should emit more useful information like [ruby-dev:26126], though.
34697 Wed May 11 15:58:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34699         * eval.c (break_jump): break should not cross functions.
34700           [ruby-list:40818]
34702 Wed May 11 10:41:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34704         * lib/tempfile.rb (Tempfile#unlink): fixed typo.
34706 Wed May 11 01:03:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34708         * eval.c (TMP_ALLOC): use macro NEW_NODE() to get rid of warnings on
34709           platforms which have no alloca().  fixed: [ruby-talk:141301]
34711 Sun May  8 23:17:47 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34713         * ext/tk/lib/tk/timer.rb: fix typo.
34715 Sun May  8 21:00:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34717         * hash.c (Init_Hash): remove custom "hash" and "eql?".
34718           (ported from 1.8) [ruby-dev:26132]
34720 Sun May  8 16:50:25 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34722         * lib/profiler.rb: fixed "undefined method `[]' for nil:NilClass"
34723           [ruby-core:4775] [ruby-talk:140401] [ruby-dev:26118]
34725 Sat May  7 22:58:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34727         * lib/mkmf.rb (have_var): no libs argument is given.
34729 Fri May  6 08:08:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34731         * hash.c:rb_hash_hash_i() should be static.  [ruby-core:04815]
34733         * re.c should include regint.h for declarations of oniguruma
34734           functions.  [ruby-core:04815]
34736 Sun May  1 09:15:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34738         * ruby.c (process_sflag): replace '-' in variable names with '_'.
34739           [ruby-dev:26107]
34741         * eval.c (rb_eval), parse.y (arg): reduce fixnum range literal at
34742           parser.  fixed: [ruby-dev:26113]
34744 Sat Apr 30 11:59:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34746         * configure.in (RUBY_FUNC_ATTRIBUTE): check for function attribute.
34747           [ruby-dev:26109]
34749         * eval.c, gc.c: moved noinline to configure.in.
34751         * rubyio.h (DEPRECATED): moved to configure.in.
34753         * ruby.h (DEPRECATED, NOINLINE): default definition.
34755         * win{32,ce}/Makefile.sub (config.h): deprecated and noinline for
34756           __declspec() are available for VC++7 or later.
34758 Sat Apr 30 06:57:39 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34760         * lib/webrick/cgi.rb: new methods WEBrick::CGI#[], WEBrick::CGI#logger
34761           and WEBrick::CGI#config.  these are necessary to use an instance of
34762           WEBrick::CGI as the first argument of HTTPServlet#get_instance.
34763           (suggested by Tatsuki Sugiura)
34765         * lib/webrick/cgi.rb
34766           (WEBrick::CGI#initalize): set a dummy to @config[:ServerSoftware]
34767           if SERVER_SOFTWARE environment variable is not given.
34768           (WEBrick::CGI#start): req.path_info must be a String.
34769           (WEBrick::CGI::Socket#request_line): treat REQUEST_METHOD, PATH_INFO
34770           and SCRIPT_NAME to run in console.
34772         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.escape_path): should
34773           not use String#split("/"). it removes trailing empty path component.
34775 Thu Apr 28 08:21:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34777         * ruby.c (set_arg0): use also environment variable space for setting
34778           $0.  [ruby-core:04774]
34780 Wed Apr 27 23:42:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34782         * win32/Makefile.sub (OPTFLAGS): default global optimization to
34783           disabled only for VC++6.
34785 Tue Apr 26 22:58:00 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34787         * ext/tk/tcltklib.c (ip_invoke_core): call Tcl's "::unknown"
34788           command when can't get information of target command.
34790 Mon Apr 25 13:54:55 2005  speakillof  <speakillof@yahoo.co.jp>
34792         * lib/rexml/encodings/SHIFT-JIS.rb: encoding and decoding were
34793           swapped. [ruby-core:4772]
34795 Mon Apr 25 01:18:43 2005  Tanaka Akira  <akr@m17n.org>
34797         * oniguruma.h (OnigWarnFunc): add a variadic argument.
34798           [ruby-core:4751]
34800 Sat Apr 23 19:49:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34802         * ext/tk/tcltklib.c (ip_RubyExitCommand): exit with status code
34803           via TclTkIp#_eval didn't work. [ruby-talk:139390]
34805 Sat Apr 23 11:45:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34807         * eval.c (rb_provided): should check also path name to be loaded.
34808           fixed: [ruby-dev:26093]
34810 Fri Apr 22 16:55:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34812         * ext/tk/tcltklib.c (ip_set_exc_message): fixed memory leak.
34814         * ext/tk/tcltklib.c: eTkCallbackReturn was not initialized.
34816 Thu Apr 21 06:45:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34818         * ruby.c (ruby_incpush_expand, proc_options): expand relative path
34819           given with -I option.  [ruby-dev:26090]
34821         * configure.in, lib/mkmf.rb, {bcc32,win32,wince}/Makefile.sub: improve
34822           C++ support.  [ruby-dev:26089]
34824 Thu Apr 21 01:53:09 2005  Minero Aoki  <aamine@loveruby.net>
34826         * lib/net/http.rb: add rdoc.
34828 Thu Apr 21 00:07:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34830         * lib/mkmf.rb (create_makefile): support platforms have file separator
34831           other than /.
34833         * {bcc32,win32,wince}/Makefile.sub (BUILD_FILE_SEPARATOR): separator
34834           of building platform.
34836         * {bcc32,win32,wince}/Makefile.sub (CP, INSTALL): use COPY command.
34838 Wed Apr 20 23:22:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34840         * Makefile.in, common.mk: miniruby depends on MINIOBJS.
34842         * dmydln.c (dln_load): dummy function to raise LoadError.
34844         * cygwin/GNUmakefile.in, {bcc32,win32,wince}/Makefile.sub: miniruby
34845           can't load extensions on Windows.
34847 Wed Apr 20 23:01:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34849         * win32/ifchange.bat: delete testing files.
34851 Wed Apr 20 22:54:54 2005  Minero Aoki  <aamine@loveruby.net>
34853         * lib/net/http.rb: new method Net::HTTP.post_form.
34855         * lib/net/http.rb: new method Net::HTTPHeader#set_form_data and
34856           its alias #form_data=.
34858         * lib/net/http.rb: Net::HTTPHeader#add_header -> add_field
34859           (adjustted to Ruby 1.8).
34861 Wed Apr 20 10:53:30 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34863         * lib/rdoc/parsers/parse_rb.rb (lex_init): use IRB module.
34864           [ruby-core:04737]
34866 Wed Apr 20 07:27:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34868         * {bcc32,win32,wince}/configure.bat, {bcc32,win32,wince}/setup.mak:
34869           add extout option.
34871         * bcc32/setup.mak: make configuration variables overridable.
34873 Tue Apr 19 23:37:09 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34875         * lib/ftools.rb (File.safe_unlink): do not modify a symlinked file.
34877 Tue Apr 19 23:02:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34879         * eval.c (search_required): deal with features with path too.
34881         * intern.h (rb_file_expand_path): prototype.  fixed: [ruby-dev:26082]
34883 Tue Apr 19 08:38:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34885         * eval.c (search_required, rb_require_safe): expand path in
34886           rb_features.  [ruby-dev:26079]
34888         * file.c (rb_find_file_ext): return absolute path.
34890         * ext/extmk.rb: expand path for ext/**/extconf.rb.
34892         * eval.c (search_required): handle static linked extensions.
34894 Mon Apr 18 15:37:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34896         * eval.c (rb_attr): attribute name check added.
34898         * numeric.c (flo_plus): small typo fix.
34900 Mon Apr 18 11:25:14 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34902         * ext/zlib/zlib.c (zstream_run): fixed SEGV. [ruby-core:4712]
34904 Sun Apr 17 23:57:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34906         * ext/extmk.rb (extmake, parse_args): do not expand destdir.
34908         * ext/extmk.rb (relative_from): treat mere drive letter as an absolute
34909           path.
34911 Sat Apr 16 17:01:16 2005  Kouhei Sutou  <kou@cozmixng.org>
34913         * sample/rss/tdiary_plugin/rss-recent.rb (rss_recent_cache_rss):
34914           use the first date information of items as site date information
34915           if channel doesn't have date information.
34917 Sat Apr 16 15:27:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34919         * configure.in (RUBY_PROG_INSTALL): not add -p option to INSTALL.
34920           files need timestamps to be kept are only ar-archive on a few
34921           platforms, and be installed by instruby.rb but not INSTALL.
34922           fixed: [ruby-core:04721]
34924         * mkconfig.rb: purge autoconf value variables.
34926 Sat Apr 16 10:33:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34928         * bcc32/Makefile.sub: quick hack... prepend DESTDIR.
34929           still have restriction on DESTDIR ("", "/", "e:")
34931 Sat Apr 16 03:59:42 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34933         * ext/openssl/extconf.rb: check for OPENSSL_cleanse.
34935         * ext/openssl/openssl_missing.h: ditto.
34937 Fri Apr 15 22:40:19 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
34939         * ext/win32ole/tests/testWIN32OLE.rb: add test for WIN32OLE.codepage=
34941         * ext/win32ole/tests/testOLETYPELIB.rb: correct expected message.
34943 Fri Apr 15 22:04:07 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
34945         * ext/win32ole/win32ole.c(ole_invoke): retry after converting Qnil
34946           to VT_EMPTY.
34948 Thu Apr 14 19:05:06 2005  Minero Aoki  <aamine@loveruby.net>
34950         * parse.y [ripper] (regexp): dispatch regexp option.
34951           [ruby-Bugs:1688]
34953         * ext/ripper/lib/core.rb: regenerated (interface changed).
34955 Thu Apr 14 18:59:43 2005  Minero Aoki  <aamine@loveruby.net>
34957         * lib/fileutils.rb (remove_file): ignore exceptions caused by
34958           chmod.
34960         * lib/fileutils.rb (remove_dir): try to get rights to rmdir.
34961           [ruby-Bugs:1502]
34963 Thu Apr 14 18:51:02 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
34965         * lib/irb/ruby-lex.rb, lib/irb/slex.rb: bug fix of [ruby-Bugs-1745]
34967         * lib/irb/ext/loader.rb, lib/irb/ext/save-history.rb:
34968           fix location of @RCS_ID
34970         * lib/irb/cmd/help.rb: a lost of release IRB 0.9.5.
34972 Thu Apr 14 15:10:30 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
34974         * lib/irb/notifier.rb, lib/irb/output-method.rb, lib/irb/ext/history.rb
34975           fixed warning of 'ruby -w'
34977 Thu Apr 14 05:35:45 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
34979         * doc/irb/irb.rd.ja: a lost  of release IRB 0.9.5.
34981         * lib/irb/slex.rb: bug fix by [ruby-core:04707].
34983 Thu Apr 14 00:20:31 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
34985         * bin/irb lib/irb.rb lib/irb/...: IRB 0.9.5.
34987 Wed Apr 13 23:40:21 2005  Kouhei Sutou  <kou@cozmixng.org>
34989         * lib/rss/rss.rb (RSS::VERSION): 0.1.3 -> 0.1.4.
34991         * lib/rss/rss.rb (RSS::Element#converter): fixed converter
34992           transmission bug.
34994 Wed Apr 13 22:12:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34996         * lib/optparse.rb (OptionParser#order!): call handlers iff matches
34997           non-switch.
34999 Wed Apr 13 21:20:35 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
35001         * configure.in (mingw32): extract msvcr*.dll from objdump result.
35003 Wed Apr 13 19:25:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35005         * configure.in (mingw32): use actual runtime DLL name as ruby DLL
35006           name and default load path.
35008         * win32/Makefile.sub, win32/setup.mak: ditto.
35010 Tue Apr 12 19:30:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35012         * lib/optparse.rb (OptionParser#make_switch, OptionParser#order!):
35013           added non-option and end-of-args handler.  [ruby-talk:136878]
35014           [EXPERIMENTAL]
35016 Tue Apr 12 15:33:09 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35018         * ext/tk/tcltklib.c (ip_finalize): better modification than the
35019           previous commit [ruby-dev:26029].
35021 Tue Apr 12 12:38:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35023         * ext/tk/tcltklib.c (ip_finalize): fix SEGV when Tcl_GlobalEval()
35024           modifies the argument string to eval.
35026 Tue Apr 12 02:21:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35028         * ext/tk/tcltklib.c (ip_finalize): add existence check of
35029           Tcl commands before calling Tcl_GlobalEval().
35031 Mon Apr 11 23:36:04 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35033         * lib/drb/drb.rb: [druby-ja:123] fix: When reference of my object is
35034           loaded, the object is tainted.
35036         * test/drb/test_drb.rb: ditto.
35038 Mon Apr 11 22:18:23 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
35040         * dir.c, file.c (lstat): avoid warnings for mingw.
35042 Mon Apr 11 20:11:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35044         * ext/tk/tcltklib.c (ip_finalize): adhoc patch to avoid SEGV when exit
35045           on Tcl/Tk8.3.x.
35047 Mon Apr 11 15:24:20 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35049         * lib/mkmf.rb (configuration): shouldn't output hdrdir twice.
35051 Sat Apr  9 18:20:31 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35053         * ext/tk/lib/tk/image.rb: support to create TkImage object without
35054           creating a new image object on Tk.
35056         * ext/tk/lib/tk/menu.rb: use TkCommandNames on create_self()
35058         * ext/tk/lib/tk/root.rb: TkRoot.to_eval() returns '.'.
35060         * ext/tk/lib/tk/text.rb: add methods to create a TkText::IndexString
35061           from (x, y) coords.
35063         * ext/tk/lib/tkextlib/tile/: add demo and update support status.
35065 Sat Apr  9 14:42:29 2005  Kouhei Sutou  <kou@cozmixng.org>
35067         * sample/rss/tdiary_plugin/rss-recent.rb: supported configuration
35068           via Web browser.
35070 Fri Apr  8 20:17:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35072         * ext/extmk.rb (extmake): hdrdir needs to be defined also in
35073           Config::CONFIG.
35075         * lib/mkmf.rb (configuration, create_makefile): get rid of recursive
35076           macro reference.
35078 Fri Apr  8 01:55:20 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35080         * ext/tk/sample/demos-{en,jp}/goldberg.rb: reduced window size.
35081           [ruby-dev:25992]
35083 Thu Apr  7 23:58:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35085         * ext/extmk.rb (extmake): keep directory names in Makefile as macros.
35087         * lib/mkmf.rb (configuration, create_makefile): ditto.
35089         * lib/mkmf.rb (CXX_EXT): separate C++ extensions.
35091 Thu Apr  7 17:24:17 2005  Shugo Maeda  <shugo@ruby-lang.org>
35093         * eval.c (rb_call0): "return" event hook should be always executed
35094           if event_hooks is set.
35096 Thu Apr  7 14:33:09 2005  Kouhei Sutou  <kou@cozmixng.org>
35098         * test/rss/test_maker_dc.rb (test_date): added a test for #date=
35099           and #dc_date=.
35101 Thu Apr  7 11:49:53 2005  Kouhei Sutou  <kou@cozmixng.org>
35103         * lib/rss/maker/dublincore.rb: _really_ supported multiple Dublin
35104           Core items.
35106         * test/rss/rss-assertions.rb (assert_multiple_dublin_core): added
35107           an assertion for testing multiple Dublin Core items.
35109         * test/rss/test_maker_dc.rb (test_rss10_multiple): added a test
35110           for making multiple Dublin Core items.
35112 Wed Apr  6 16:06:30 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35114         * test/ruby/test_env.rb (test_key): should test ENV.key instead of
35115           ENV.index. [ruby-dev:25994]
35117 Tue Apr  5 16:01:12 2005  Kouhei Sutou  <kou@cozmixng.org>
35119         * lib/rss/*: refactored.
35120           - gave a name to 'x'.
35121           - undef_method -> remove_method for avoiding a warning in ruby 1.6.
35123 Tue Apr  5 15:45:33 2005  Kouhei Sutou  <kou@cozmixng.org>
35125         * sample/rss/tdiary_plugin/rss-recent.rb:
35126           new option: @options['rss-recent.use-image-link']:
35127           use image as link instread of text if available.
35129         * sample/rss/tdiary_plugin/rss-recent.rb (RSS_RECENT_VERSION):
35130           0.0.5 -> 0.0.6.
35132 Tue Apr  5 15:15:26 2005  Kouhei Sutou  <kou@cozmixng.org>
35134         * lib/rss/dublincore.rb: supported multiple Dublin Core items.
35136         * lib/rss/parser.rb: added class name registry for complex model
35137           elements. (ex. have childlen elements, have some attributes and
35138           a child element and so on.)
35140         * lib/rss/maker/base.rb: added default current_element implementation.
35142         * lib/rss/maker/dublincore.rb: supported multiple Dublin Core
35143           items.
35145         * lib/rss/maker/image.rb: supproted new Dublin Core API.
35148         * lib/rss/trackback.rb (RSS::TrackBackUtils.new_with_value_if_need):
35149           moved to RSS::Utils.
35151         * lib/rss/utils.rb (RSS::Utils.new_with_value_if_need):
35152           moved from RSS::TrackBackUtils.
35155         * lib/rss/maker/image.rb: fixed invalid argument of
35156           add_need_initialize_variable bug.
35158         * lib/rss/maker/trackback.rb: ditto.
35161         * lib/rss/rss.rb (Hash#merge): added for ruby 1.6.
35163         * lib/rss/rss.rb (RSS::BaseModel.date_writer): changed to accept nil
35164           for date value.
35167         * test/test_dublincore.rb: added tests for plural accessor and
35168           multiple Dublin Core items.
35170         * test/test_setup_maker_1.0.rb: fixed swapped actual and expected
35171           values.
35173 Mon Apr  4 23:17:52 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35175         * ext/tk/lib/tk.rb (TkComm#array2tk_list): accept enc-mode argument to
35176           decide whether convert encoding of each element or not.
35178         * ext/tk/lib/tk/variable.rb (TkVariable#value=): fail to convert the
35179           encoding of array elements when assign an array to an TkVariable
35180           object.
35182 Mon Apr  4 10:26:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35184         * ext/tk/lib/tk/dialog.rb: fixed typo.
35186 Sat Apr  2 23:38:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35188         * configure.in (CP, INSTALL): get rid of less portable options.
35190         * lib/mkmf.rb (configuration, create_makefile): correct configuration
35191           variable.
35193         * wince/configure.bat, wince/setup.mak: add prefix, extstatic and
35194           rdoc options.
35196         * lib/mkmf.rb (create_makefile): ensure library directories get made
35197           before copying libraries there.
35199 Sat Apr  2 16:59:46 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35201         * ext/tk/lib/tk.rb: forgot to update RELEASE_DATE
35203         * ext/tk/lib/tk/variable.rb: fix namespace trouble when autoloading
35205         * ext/tk/lib/tk/palette.rb: define Tcl variable 'tkPalette' as global
35207         * ext/tk/lib/tk/dialog.rb: use array2tk_list method when calling
35208           Tk.ip_eval.
35210         * ext/tk/lib/tk/autoload.rb: add autoload entry 'TkDialogObj' and
35211           'TkWarningObj'
35213 Sat Apr  2 13:23:17 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35215         * hash.c (env_key): ENV.index is deprecated as well as Hash#index.
35216           use ENV.key instead. [ruby-dev:25974]
35218 Sat Apr  2 02:19:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35220         * ext/tk/lib/tk.rb (TkWindow.initialize): accept 'without_creating'
35221           option without 'widgetname' option to allow creating a widget object
35222           which is used as an argument of Tcl/Tk's widget allocation commands.
35224         * ext/tk/lib/tk/image.rb (TkImage.initialize): accept 'imagename'
35225           option to create a image object by the given name.
35227 Thu Mar 31 22:23:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35229         * lib/mkmf.rb (SRC_EXT): exclude just case different suffixes on case
35230           insensitive file system platforms.
35232         * README.EXT, README.EXT.ja (Appendix C): utility functions.
35234 Thu Mar 31 14:08:43 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35236         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should return
35237           value. [ruby-dev:25971]
35239 Thu Mar 31 11:07:50 2005  Kouhei Sutou  <kou@cozmixng.org>
35241         * lib/rss/parser.rb: @@setter -> @@setters.
35243         * lib/rss/parser.rb
35244           (RSS::BaseListener.register_uri)
35245           (RSS::BaseListener.uri_registered?)
35246           (RSS::BaseListener.install_get_text_element):
35247           swapped the first argument and the second argument.
35249         * lib/rss/taxonomy.rb: swapped the first argument and the second
35250           argument for RSS::BaseListener.install_get_text_element.
35251         * lib/rss/image.rb: ditto.
35252         * lib/rss/syndication.rb: ditto.
35253         * lib/rss/dublincore.rb: ditto.
35254         * lib/rss/parser.rb: ditto.
35255         * lib/rss/1.0.rb: ditto.
35256         * lib/rss/2.0.rb: ditto.
35257         * lib/rss/0.9.rb: ditto.
35258         * lib/rss/content.rb: ditto.
35260 Thu Mar 31 11:00:36 2005  Kouhei Sutou  <kou@cozmixng.org>
35262         * lib/rss/parser.rb
35263           (RSS::BaseListener.install_setter)
35264           (RSS::BaseListener.register_uri): changed fallback way.
35266 Thu Mar 31 08:25:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35268         * common.mk (RUBYOPT): clear for the environment RubyGems installed.
35270         * common.mk (clean-local): keep $(PREP) files till distclean.
35272         * common.mk (check): do all tests.
35274 Thu Mar 31 06:00:20 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35276         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should not raise
35277           error even if the specified engine could not be loaded. (Dynamic
35278           engines don't have fixed name to load.)
35280 Wed Mar 30 17:41:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35282         * ext/tk/tcltklib.c: add TclTkIp#_create_console() method to create
35283           a Tcl/Tk's console window.
35285         * ext/tk/lib/multi-tk.rb: support TclTkIp#_create_console() method.
35287         * ext/tk/lib/remote-tk.rb: ditto.
35289         * ext/tk/lib/tk/console.rb: ditto.
35291         * ext/tk/lib/tk.rb: update RELEASE_DATE
35293         * ext/tk/sample/demo-*/check2.rb: use 'return' in the Proc object.
35295         * ext/tk/sample/tkextlib/**: ditto.
35297 Tue Mar 29 22:20:49 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35299         * test/rinda/test_rinda.rb: use DRbObject.new_with instead of reinit.
35300           [ruby-dev:25961]
35302 Tue Mar 29 00:04:57 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35304         * lib/drb/drb.rb: move method DRbObject#reinit to DRbObject.new_with.
35305           extract method DRbObject.prepare_backtrace. add DRb.regist_server,
35306           remove_server, fetch_server. change server in thread variable if
35307           in-proc server. [druby-ja:113]
35309         * lib/drb/gw.rb: ditto.
35311 Mon Mar 28 20:53:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35313         * ext/extmk.rb (extract_makefile): nothing to be removed when no file
35314           was deleted.
35316         * ext/extmk.rb (extmake): restore srcdir.
35318 Mon Mar 28 08:39:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35320         * ext/iconv/iconv.c (iconv_create): Iconv::Failure requires 3
35321           arguments.  (pointed out by NaHi)
35323 Sun Mar 27 00:56:58 2005  Minero Aoki  <aamine@loveruby.net>
35325         * lib/fileutils.rb (remove_file): ignore Errno::E* if force option
35326           is set. [ruby-dev:25944]
35328 Sat Mar 26 22:51:33 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35330         * ext/tk/lib/tk.rb (_callback_entry_class?): add for checking whether
35331           a class is available for a callback entry.
35333         * ext/tk/lib/tk.rb (after_cancel): add Tk.after_cancel(afterID) method.
35335         * ext/tk/lib/tk.rb (array2tk_list): change from private module method
35336           of TkComm to public module method.
35338         * ext/tk/lib/tk.rb (cget): add check that slot argument is not
35339           empty string.
35341         * ext/tk/lib/tk.rb (configinfo): ditto.
35343         * ext/tk/lib/tk/itemconfig.rb (itemcget): add check that slot argument
35344           is not empty string.
35346         * ext/tk/lib/tk/itemconfig.rb (itemconfiginfo): ditto.
35348         * ext/tk/lib/tk/entry.rb: add TkEntry#icursor and icursor= (alias of
35349           cursor and cursor= method).
35351         * ext/tk/lib/tk/font.rb: improve font treatment when the font name is
35352           empty string.
35354         * ext/tk/lib/tk/variable.rb: add :variable, :window and :procedure
35355           type.
35357         * ext/tk/lib/tk/variable.rb: improve treatment of array-type
35358           tkvariable.
35360         * ext/tk/lib/tkextlib/blt.rb: add commands for zooming.
35362         * ext/tk/lib/tkextlib/blt/*: bug fix.
35364         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: bug fix and add methods
35365           to call TreeCtrl commands for bindings.
35367         * ext/tk/sample/tkextlib/blt/*: new sample scripts.
35369         * ext/tk/sample/tkextlib/treectrl/*: ditto.
35371 Fri Mar 25 10:53:16 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
35373         * configure.in (WIN32_LEAN_AND_MEAN): removed because a lot of
35374           troubles.  [ruby-list:40721]
35376 Thu Mar 24 23:10:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35378         * lib/mkmf.rb (macro_defined?): try to compile for an old compiler
35379           which doesn't bail out at #error directive.  [ruby-dev:25818]
35381         * lib/mkmf.rb (check_sizeof): refine logging messages.
35383 Wed Mar 23 19:08:10 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35385         * lib/webrick/utils.rb (WEBrick::Utils.create_listeners):
35386           - should raise ArgumentError if no port is specified.
35387           - even if the specified port is 0, all TCPServers should be
35388             initialized with the port given to the first one.
35390         * lib/webrick/server.rb (WEBrick::GenericServer#initialize): if :Port
35391           parameter is 0, it should be updated with the port number which
35392           ectually listened.
35394 Wed Mar 23 16:12:40 2005  Shugo Maeda  <shugo@ruby-lang.org>
35396         * parse.y (primary): fix lineno of rescue and ensure.
35398 Wed Mar 23 00:39:05 2005  Shugo Maeda  <shugo@ruby-lang.org>
35400         * test/ruby/test_settracefunc.rb (test_event): added tests for
35401           "class" and "end" and "raise".
35403 Sun Mar 20 22:51:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35405         * lib/mkmf.rb (mkmf_failed): check if Makefile is created without
35406           create_makefile.
35408 Sat Mar 19 23:48:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35410         * misc/ruby-mode.el (ruby-expr-beg): returned true always.
35411           fixed: [ruby-list:40683]
35413 Sat Mar 19 00:41:02 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35415         * ext/tk/lib/tk/font.rb: add some TkFont class methods to get font
35416           information without creating a TkFont object.
35418         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: bug fix and define some
35419           classes for components of Tk::TreeCtrl
35421 Thu Mar 17 17:42:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35423         * struct.c (make_struct): allow non local-id field
35424           names. [ruby-core:04575]
35426         * struct.c (inspect_struct): ditto.
35428 Wed Mar 16 23:39:13 2005  Shugo Maeda  <shugo@ruby-lang.org>
35430         * test/ruby/test_settracefunc.rb: added test for c-return.
35432 Wed Mar 16 22:57:43 2005  Shugo Maeda  <shugo@ruby-lang.org>
35434         * eval.c (rb_call0): call_cfunc() should be protected.
35436         * eval.c (rb_add_event_hook): use K&R style.
35438         * eval.c (rb_remove_event_hook): ditto.
35440 Wed Mar 16 22:03:15 2005  Shugo Maeda  <shugo@ruby-lang.org>
35442         * eval.c (rb_add_event_hook): new function to add a hook function for
35443           interpreter events.
35445 Wed Mar 16 18:08:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35447         * eval.c (rb_call0): reorganize "return" event post.
35449         * eval.c (return_jump): no need to post "return" event here.
35451 Tue Mar 15 23:49:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35453         * ext/iconv/iconv.c (Init_iconv): InvalidEncoding also should include
35454           Iconv::Failure.
35456 Tue Mar 15 23:12:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35458         * eval.c (recursive_check, recursive_push): more restrictive check.
35459           fixed: [ruby-dev:25916]
35461 Tue Mar 15 16:38:31 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35463         * ext/tk/tkutil/tkutil.c (ary2list): give wrong arguments to hash2kv()
35465 Mon Mar 14 19:39:33 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35467         * ext/tk/lib/tk/timer.rb (TkTimer): forgot to clear @return_value
35468           when restarting
35470         * ext/tk/lib/tk/sample/cd_timer.rb: new sample of TkRTTimer
35472 Mon Mar 14 12:21:03 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35474         * ext/tk/lib/tk/timer.rb (TkRTTimer): forgot to reset the callback
35475           time. So, 'continue' do all callbacks between 'stop' and 'continue'.
35477 Mon Mar 14 08:14:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35479         * object.c (str_to_id): raise ArgumentError for NUL containing
35480           strings.
35482 Mon Mar 14 00:13:49 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35484         * ext/tk/lib/tk/timer.rb (TkRTTimer): correct calculation of offset
35485           value. get a little better accuracy.
35487         * ext/tk/sample/demos-en/widget: use a binding with no local variables
35488           when eval a sample script.
35490         * ext/tk/sample/demos-en/bind.rb: ditto.
35492         * ext/tk/sample/demos-en/tcolor: ditto.
35494         * ext/tk/sample/demos-jp/widget: ditto.
35496         * ext/tk/sample/demos-jp/bind.rb: ditto.
35498         * ext/tk/sample/demos-jp/tcolor: ditto.
35500 Sun Mar 13 22:19:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35502         * eval.c (recursive_pop): raise TypeError instead of fatal error.
35503           fixed: [ruby-dev:25843]
35505 Sun Mar 13 10:09:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35507         * test/rinda/test_rinda.rb: remove test_gc. [ruby-dev:25871]
35509 Sun Mar 13 02:32:54 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35511         * ext/openssl/ossl_ssl.c (ossl_tmp_dh_callback): should get DH
35512           parameter from the current SSL object.
35514 Sun Mar 13 02:09:03 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35516         * ext/openssl/ossl_pkey_dh.c (ossl_create_dh): fix typo.
35517           patch from IWATSUKI Hiroyuki. [ruby-dev:25867]
35519         * ext/openssl/ossl_ssl.c (ossl_tmp_dh_callback): ditto.
35520           (ossl_call_tmp_dh_callback): ditto
35522 Fri Mar 11 03:24:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35524         * parse.y (primary): wrong var node was set for NODE_LAMBDA.
35525           [ruby-core:04555]
35527 Thu Mar 10 19:10:29 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35529         * ext/tk/tcltklib.c (lib_eventloop_ensure): mis-delete a timer handler
35530           when exit from a recursive called eventloop
35532         * ext/tk/lib/tk/timer.rb: new TkRTTimer class, which can works for a
35533           realtime operation
35535         * ext/tk/sample/tkrttimer.rb: sample of TkRTTimer class
35537         * ext/tk/lib/tk/textmark.rb: move  TkTextMark#+ and TkTextMark#- to
35538           TkText::IndexModMethods
35540         * ext/tk/lib/tk/text.rb: improve TkTextMark#+ and TkTextMark#-, and
35541           add them to TkText::IndexModMethods module
35543         * ext/tk/sample/tktextio.rb: add test part of "seek by text index
35544           modifiers"
35546 Thu Mar 10 08:10:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35548         * re.c (make_regexp): need to free internal regexp structure when
35549           compilation fails.  [ruby-talk:133228]
35551 Thu Mar 10 01:08:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35553         * parse.y (bv_decl): remove initialize rule from block local
35554           variable declaration.
35556 Wed Mar  9 23:55:34 2005  Tanaka Akira  <akr@m17n.org>
35558         * lib/pp.rb (PP::PPMethods#guard_inspect_key): support
35559           __recursive_key__.  [ruby-dev:25821]
35561 Wed Mar  9 19:42:21 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35563         * ext/openssl/ossl_ssl.c: OpenSSL::SSL::SSLContexts suports callbacks:
35564           - SSLContext#client_cert_cb is a Proc. it is called when a client
35565             certificate is requested by a server and no certificate was yet
35566             set for the SSLContext. it must return an Array which includes
35567             OpenSSL::X509::Certificate and OpenSSL::PKey::RSA/DSA objects.
35568           - SSLContext#tmp_dh_callback is called in key exchange with DH
35569             algorithm. it must return an OpenSSL::PKey::DH object.
35571         * ext/openssl/ossl_ssl.c:
35572           (ossl_sslctx_set_ciphers): ignore the argument if it's nil.
35573           (ossl_start_ssl, ossl_ssl_write): call rb_sys_fail if errno isn't 0.
35574           [ruby-dev:25831]
35576         * ext/openssl/ossl_pkey.c
35577           (GetPrivPKeyPtr, ossl_pkey_sign): should call rb_funcall first.
35578           (DupPrivPKeyPtr): new function.
35580         * ext/openssl/ossl_pkey_dh.c: add default DH parameters.
35582         * ext/openssl/ossl_pkey.h: ditto.
35584         * ext/openssl/lib/openssl/cipher.rb: fix typo. [ruby-dev:24285]
35586 Wed Mar  9 18:09:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35588         * parse.y (gettable_gen): warns if VCALL name is used as
35589           out-of-scope block local variable.  [EXPERIMENTAL]
35591         * parse.y (opt_bv_decl): add explicit block local variable
35592           declaration.  raises error for name conflicts.  [EXPERIMENTAL]
35594 Wed Mar  9 13:37:57 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35596         * ext/tk/sample/tktextio.rb: fix bug of handling 'end' position.
35597           support initial text, overwrite setting and pos_gravity control.
35599 Tue Mar  8 18:16:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35601         * ext/tk/sample/tktextio.rb: New sample script. TkTextIO class in this
35602           sample supports to use a text widget as if it is a I/O stream (such
35603           like as StringIO class).
35605 Tue Mar  8 13:39:25 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35607         * ext/socket/mkconstants.rb: workaround for some of 4.4BSD-Lite
35608           derived OSs.
35610 Tue Mar  8 12:36:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35612         * ext/socket/socket.c: document from Sam Roberts
35613           <sroberts@uniserve.com> for getsockopt and setsockopt is merged.
35614           [ruby-doc:824]
35616 Tue Mar  8 10:48:53 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35618         * eval.c (rb_exec_recursive): declaration should precede statements
35619           before C99.
35621 Tue Mar  8 10:05:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35623         * error.c (errno_missing): Errno.const_missing to allow references
35624           to SyscallError exceptions not defined on the platform.
35625           [ruby-core:04522]
35627         * error.c (Init_syserr): Errno::NOERROR(0) for fallback exception.
35629 Tue Mar  8 01:19:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
35631         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.66
35632           fixed: [ruby-dev:25828]
35634 Mon Mar  7 21:29:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35636         * lib/webrick/server.rb (WEBrick::GenericServer#start): should
35637           restore @token if accept failure. suggested by Dominique Brezinski.
35638           [ruby-core:04518]
35640         * sample/webrick/httpsd.rb: fix typo in comment. suggested by
35641           Kazuhiko Shiozaki.
35643 Mon Mar  7 21:01:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35645         * eval.c (rb_require_safe): get actual path string under safe level
35646           when requested.  fixed: [ruby-dev:25815]
35648 Mon Mar  7 16:46:02 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35650         * ext/openssl/ossl_ssl.c (ossl_start_ssl, ossl_ssl_read,
35651           ossl_ssl_write): need to set errno on Win32 platform.
35653 Mon Mar  7 14:55:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35655         * eval.c (block_pass): should not push unique number if a block is
35656           not an orphan.  [ruby-dev:25808]
35658 Mon Mar  7 14:13:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35660         * ext/openssl/lib/openssl/buffering.rb (Buffering#initialize):
35661           should set @eof and @rbuffer.
35663 Mon Mar  7 10:28:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35665         * object.c (inspect_obj): unintended space removal.
35666           [ruby-dev:25810]
35668         * eval.c (rb_exec_recursive): should not use NODE in disclosed
35669           context.  [ruby-dev:25812]
35671         * io.c (rb_f_open): need not to check if to_open value is a
35672           T_FILE.  [ruby-dev:25812]
35674 Mon Mar  7 01:21:01 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35676         * ext/tk/tkutil/tkutil.c: follow the change of st.c (committed
35677           at Fri, 4 Mar 2005 15:47:47 +0900 by matz)
35679 Mon Mar  7 00:01:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35681         * ext/tk/tcltklib.c: fail to call TclTkLib.mainloop when $SAFE==4
35683 Sun Mar  6 13:04:10 2005  Dee Zsombor  <zsombor@ruby-lang.org>
35685         * misc/ruby-electric.el: added.
35686         * misc/Readme: updated.
35688 Sun Mar  6 11:47:10 2005  Sam Roberts  <sroberts@uniserve.com>
35690         * lib/pp.rb: rdoced.  [ruby-core:4490]
35692 Sun Mar  6 11:36:37 2005  Tanaka Akira  <akr@m17n.org>
35694         * lib/pp.rb (File::Stat#pretty_print): Etc.getpwuid and Etc.getgrgid
35695           may return nil.  [ruby-talk:129826]
35696           reported by Daniel Berger.
35698 Sun Mar  6 06:34:31 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35700         * ext/openssl/ossl_ssl.c (ossl_start_ssl): should wait for that
35701           the underlying IO become readable or writable if the error was
35702           SSL_ERROR_WANT_READ or SSL_ERROR_WANT_WRITE. [ruby-dev:25795]
35704         * ext/openssl/ossl_ssl.c (ossl_ssl_read, ossl_ssl_write): ditto.
35706         * ext/openssl/lib/openssl/buffering.rb
35707           (Buffering#consume_rbuf): pointless eof flag resetting is deleted.
35708           (Buffering#read): should return an empty string if the specified
35709           size is zero.
35710           (Buffering#readpartial): new method.
35711           (Buffering#readline): fix typo.
35712           (Buffering#getc): return the first character of string correctly.
35713           (Buffering#readchar): fix typo.
35714           (Buffering#eof?): should read again it the input buffer is empty.
35715           (Buffering#do_write): should rescue Errno::EAGAIN.
35716           (Buffering#puts): use "\n" as the output field separator.
35718         * ext/openssl/extconf.rb: get rid of GNUmakefile generation.
35720         * text/openssl/test_pair.rb: test for IO like methods.
35722         * test/ruby/ut_eof.rb: test about empty file.
35724 Sat Mar  5 17:48:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35726         * dir.c (rb_glob): fixed mismatch of argument.
35728         * dir.c (fnmatch): removed unnecessary code. (by string.c 1.219)
35730         * win32/win32.c (NtInitialize): ditto. (by numeric.c 1.117)
35732 Sat Mar  5 16:50:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
35734         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.65
35736 Sat Mar  5 16:29:26 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35738         * ext/tk/lib/multi-tk.rb: freeze callback-entry objects
35740         * ext/tk/lib/tkextlib/tile.rb: support tile-0.6
35742 Sat Mar  5 12:52:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35744         * lib/mkmf.rb (create_makefile): allow putting spaces between target
35745           and colon in depend file.
35747 Sat Mar  5 02:41:00 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35749         * file.c (eaccess): workaround for VC++8 runtime.
35751         * win32/win32.c (ioinfo): VC++8 support.
35753 Fri Mar  4 19:39:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35755         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#do_includes): replace
35756           also locally defined modules.
35758         * ext/iconv/iconv.c: rdocified.
35760         * ext/strscan/strscan.c: moved misplaced rdoc.
35762 Fri Mar  4 16:11:20 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35764         * eval.c (rb_exec_recursive): matched the declaration to prototype.
35766         * ext/curses/curses.c: don't need to check HAVE_WCOLOR_SET excluding
35767           window_color_set().
35769         * ext/tk/tcltklib.c: fixed commit mistakes.
35771 Fri Mar  4 12:45:17 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
35773         * lib/rdoc/parsers/parse_c.rb: allow whitespace after function names.
35774           [ruby-core:4296]
35776         * lib/rdoc/parsers/parse_simple.rb: adds support for private comments
35777           in the "simple" parser. [ruby-core:4301]
35779 Fri Mar  4 12:45:17 2005  Charles Mills  <cmills@freeshell.org>
35781         * lib/rdoc/parsers/parse_c.rb: adds support for constants
35782           (rb_define_const), accessors (rb_define_attr), and makes a
35783           couple fixes. [ruby-core:4307]
35785 Fri Mar  4 12:45:17 2005  Florian Gross  <florgro@gmail.com>
35787         * lib/rdoc/parsers/parse_rb.rb: Logic for def Builtin.method() end
35788           [ruby-core:4302]
35790 Fri Mar  4 12:45:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35792         * array.c: replace rb_protect_inspect() and rb_inspecting_p() by
35793           rb_exec_recursive() in eval.c.
35795         * eval.c (rb_exec_recursive): new function.
35797         * array.c (rb_ary_join): use rb_exec_recursive().
35799         * array.c (rb_ary_inspect, rb_ary_hash): ditto.
35801         * file.c (rb_file_join): ditto.
35803         * hash.c (rb_hash_inspect, rb_hash_to_s, rb_hash_hash): ditto.
35805         * io.c (rb_io_puts): ditto.
35807         * object.c (rb_obj_inspect): ditto
35809         * struct.c (rb_struct_inspect): ditto.
35811 Fri Mar  4 10:15:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35813         * lib/set.rb (SortedSet::setup): a hack to shut up warning.
35814           [ruby-talk:132866]
35816 Fri Mar  4 09:37:12 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35818         * common.mk (install-nodoc, pre-install-doc, post-install-doc):
35819           fix some omissions.
35821 Fri Mar  4 08:09:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35823         * lib/time.rb (Time::strptime): add new function.  inspired by
35824           [ruby-talk:132815].
35826         * lib/parsedate.rb (ParseDate::strptime): ditto.
35828 Fri Mar  4 07:07:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
35830         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.63
35832 Thu Mar  3 23:24:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
35834         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.62
35836 Thu Mar  3 18:47:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35838         * {bcc32,win32,wince}/Makefile.sub (config.h): check if affected
35839           when makefiles are modified.
35841         * {bcc32,win32,wince}/Makefile.sub (config.status): add variables
35842           for tests.
35844         * win32/ifchange.bat: try to update a file only if modified.
35846         * win32/resource.rb: more descriptions.
35848         * common.mk: add {pre,post}-install targets.
35850         * instruby.rb (install?): install particular part.
35852         * bcc32/Makefile.sub (post-install-ext): remove debug information
35853           files after installation.
35855         * ext/tk/tcltklib.c (ip_rbUpdateCommand, ip_rb_threadUpdateCommand):
35856           get rid of warnings with Tcl/Tk 8.3 or former.
35858 Thu Mar  3 11:49:51 2005  Kouhei Sutou  <kou@cozmixng.org>
35860         * sample/rss/tdiary_plugin/rss-recent.rb: added site information.
35862 Wed Mar  2 19:53:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35864         * ext/extmk.rb (parse_args): return false if nothing matched.
35866 Wed Mar  2 17:15:08 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35868         * ext/tk/tcltklib.c (lib_eventloop_core): fix typo
35870 Wed Mar  2 16:59:50 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35872         * eval.c (ruby_native_thread_kill): call pthread_kill() to send a
35873           signal to ruby's native thread
35875         * ruby.h: add definition of ruby_native_thread_kill()
35877         * signal.c (sigsend_to_ruby_thread): send the signal to ruby's
35878           native thread ([ruby-dev:25744], [ruby-dev:25754]), and set
35879           signal mask to the current native thread
35881 Wed Mar  2 16:03:08 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35883         * ext/tk/tcltklib.c: enforce thread-check and exception-handling to
35884           avoid SEGV trouble.
35886         * ext/tk/tkutil/tkutil.c; fix a bug on converting a SJIS string array
35887           to a Tcl's list string.
35889         * ext/tk/tcltklib.c: wrap Tcl's original "namespace" command to
35890           protect from namespace crash.
35892         * ext/tk/lib/multi-tk.rb: enforce exception-handling.
35894         * ext/tk/lib/multi-tk.rb: catch IRB_EXIT to work on irb.
35896         * ext/tk/lib/tk.rb: ditto.
35898         * ext/tk/tcltklib.c: add TclTkLib.mainloop_thread?
35900         * ext/tk/lib/multi-tk.rb: (bug fix) callback returns a value.
35902         * ext/tk/lib/tk/canvas.rb (delete): bug fix when multiple arguments.
35904         * ext/tk/lib/clock.rb: fix 'no method error'.
35906         * ext/tk/lib/clock.rb (self.clicks): accept a Symbol argument.
35908         * ext/tk/lib/variable.rb: be able to set default_value_type; :numeric,
35909           :bool, :string, :symbol, :list, :numlist or nil (default; same to
35910           :string). If set a type, TkVariable#value returns a value of the
35911           type.
35913         * ext/tk/lib/tkextlib/tclx/tclx.rb: add Tk::TclX.signal to warn the
35914           risk of using TclX extension's 'signal' command.
35916         * ext/tk/sample/irbtk.rb: irb with Ruby/Tk.
35918         * ext/tk/sample/demos-*/anilabel.rb: bug fix on 'show code'
35920         * ext/tk/sample/demos-*/aniwave.rb: new Ruby/Tk animation demo.
35922         * ext/tk/sample/demos-*/pendulum.rb: ditto.
35924         * ext/tk/sample/demos-*/goldberg.rb: ditto.
35926         * ext/tk/sample/demos-*/widget: add entries of animation demos.
35928 Wed Mar  2 12:21:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35930         * eval.c (rb_eval): [EXPERIMENTAL] NODE_LAMBDA implemented.
35931           [ruby-dev:25780]
35933         * node.h (NODE_LAMBDA): for literal Proc object.
35935         * parse.y (expr): interpret mere do...end block as proc object.
35937         * parse.y (primary): ditto, for brace block.
35939 Tue Mar  1 21:16:54 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
35941         * regcomp.c (optimize_node_left): uninitialized member
35942           (OptEnv.backrefed_status) was used. [ruby-dev:25778]
35944 Tue Mar  1 16:50:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35946         * regparse.c: move st_*_strend() functions from st.c.  fixed some
35947           potential memory leaks.
35949 Tue Mar  1 00:40:35 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35951         * lib/rinda/tuplespace.rb (Rinda::TupleSpace): improved keeper thread.
35953         * test/rinda/test_rinda.rb: ditto.
35955 Mon Feb 28 23:10:13 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35957         * ext/socket/socket.c (Init_socket): IPv6 is not supported although
35958           AF_INET6 is defined on bcc32. (rev1.108 again)
35960         * ext/socket/mkconstants.rb: ditto.
35962 Mon Feb 28 21:55:49 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
35964         * ext/strscan/strscan.c (strscan_s_allocate):
35965           use onig_region_init().
35967         * ext/strscan/strscan.c (adjust_registers_to_matched):
35968           use onig_region_set().
35970 Mon Feb 28 15:12:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35972         * ext/socket/socket.c (Init_socket): ported more Socket::Constants
35973           from ruby_1_8, and made it easy to add new constants.
35974           [ruby-dev:25771]
35976         * ext/socket/depend: ditto.
35978         * ext/socket/mkconstants.rb: ditto. (added)
35980 Mon Feb 28 11:42:23 2005  Ian Macdonald  <ian@caliban.org>
35982         * exception error messages updated.  [ruby-core:04497]
35984 Mon Feb 28 09:03:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35986         * ext/socket/socket.c (Init_socket): add bunch of Socket
35987           constants.  Patch from Sam Roberts <sroberts@uniserve.com>.
35988           [ruby-core:04409]
35990 Sun Feb 27 05:55:38 2005  Minero Aoki  <aamine@loveruby.net>
35992         * parse.y [ripper]: fix typo. [ruby-core:04494]
35994 Sat Feb 26 16:58:20 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
35996         * parse.y, re.c, regex.h, LEGAL, ext/strscan/strscan.c:
35997           remove oniggnu.h (GNU regex API).
35999 Wed Feb 23 22:08:16 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36001         * st.c, st.h: imported additional file changes on
36002           Oniguruma 3.7.0.
36004 Wed Feb 23 21:45:29 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36006         * ascii.c, euc_jp.c, oniggnu.h, oniguruma.h, regcomp.c,
36007           regenc.c, regenc.h, regerror.c, regexec.c, regint.h,
36008           regparse.c, regparse.h, sjis.c, utf8.c: imported Oni Guruma
36009           3.7.0.
36011 Wed Feb 23 15:04:32 2005  akira yamada  <akira@ruby-lang.org>
36013         * lib/uri/generic.rb (split_userinfo): should split ":pass" into ""
36014           and "pass".  [ruby-dev:25667]
36016 Wed Feb 23 08:00:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36018         * array.c (rb_ary_s_create): no need for negative argc check.
36019           [ruby-core:04463]
36021         * array.c (rb_ary_unshift_m): ditto.
36023 Wed Feb 23 01:53:29 2005  Shugo Maeda  <shugo@ruby-lang.org>
36025         * lib/net/imap.rb (initialize): handle certs correctly. Thanks,
36026           NABEYA Kenichi.
36028 Wed Feb 23 00:37:34 2005  Kouhei Sutou  <kou@cozmixng.org>
36030         * lib/mkmf.rb (mkmf_failed): fixed typo.
36032 Tue Feb 22 23:52:45 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36034         * configure.in, lib/mkmf.rb: use simple commands if available.
36036         * mkconfig.rb: remove autoconf internal variables from rbconfig.rb.
36038         * lib/mkmf.rb (create_makefile): substitute implicit rules in depend
36039           file.
36041         * {bcc32,win32,wince}/Makefile.sub (COMPILE_RULES, RULE_SUBST):
36042           include $(topdir) and $(hdrdir) to search path.
36044 Tue Feb 22 23:51:45 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36046         * ext/syck/rubyext.c: get rid of warnings caused by a bug of VC.
36048 Tue Feb 22 23:50:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36050         * signal.c (ruby_signal, ruby_nativethread_signal): must be valid as
36051           expressions, not only statements.
36053 Tue Feb 22 12:54:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36055         * eval.c (rb_thread_start_0): update curr_thread before raising
36056           TAG_THREAD.  [ruby-dev:25712]
36058 Tue Feb 22 07:24:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36060         * parse.y (parser_yylex): identifier after dot must not be a variable.
36062 Mon Feb 21 18:31:12 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36064         * signal.c: Standard signal handlers ignore signals on non-Ruby native
36065           threads. When a handler is entried with ruby_signal() (like as the
36066           standard signal handlers), the handler for the signal is marked as
36067           it cannot accept non-Ruby native threads. If a handler can treat all
36068           signals on all native threads, please use ruby_nativethread_signal()
36069           to entry it.
36071 Sun Feb 20 00:48:48 2005  Tanaka Akira  <akr@m17n.org>
36073         * lib/open-uri.rb (URI::FTP#buffer_open): access mechanism
36074           re-implemented according to RFC 1738.
36075           reported by Guillaume Marcais.  [ruby-talk:131650]
36077 Sat Feb 19 18:46:56 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36079         * lib/drb/drb.rb (DRbObject#respond_to?): take two arguments.
36080           [ruby-dev:25722]
36082         * test/drb/drbtest.rb: ditto.
36084 Sat Feb 19 13:52:02 2005  Tanaka Akira  <akr@m17n.org>
36086         * lib/open-uri.rb: call OpenSSL::SSL::SSLSocket#post_connection_check
36087           after connection is made.
36089 Sat Feb 19 13:31:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36091         * ext/extmk.rb (extract_makefile): remove no longer existing installed
36092           files.
36094         * lib/mkmf.rb (install_dirs): return installation directory list.
36096         * lib/mkmf.rb (create_makefile): reverted wrongly removed lines.
36098 Sat Feb 19 01:28:56 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36100         * ext/bigdecimal/lib/bigdecimal/newton.rb: resolved LoadError.
36101           [ruby-dev:25685]
36103         * ext/bigdecimal/sample/linear.rb: ditto.
36105         * ext/bigdecimal/sample/nlsolve.rb: ditto.
36107         * ext/bigdecimal/lib/bigdecimal/nlsolve.rb: removed because this file
36108           is sample script and same file exists in ext/bigdecimal/sample.
36110 Fri Feb 18 17:14:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36112         * lib/xmlrpc/parser.rb (XMLRPC::FaultException): make it subclass
36113           of StandardError class, not Exception class.  [ruby-core:04429]
36115 Fri Feb 18 04:06:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36117         * parse.y (fcall_gen): lvar(arg) will be evaluated as
36118           lvar.call(arg) when lvar is a defined local variable. [new]
36120 Thu Feb 17 22:15:34 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
36122         * ext/strscan/strscan.c: calls Oniguruma API directly.
36124 Thu Feb 17 21:53:12 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
36126         * common.mk, LEGAL: remove reggnu.c.
36128 Thu Feb 17 21:53:12 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36130         * gc.c, re.c: now ruby calls Oniguruma API directly, bypassing
36131           GNU compatible APIs.
36133 Thu Feb 17 20:09:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36135         * lib/drb/drb.rb (DRbServer.default_safe_level): fix typo.
36137 Thu Feb 17 20:09:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36139         * test/digest/test_digest.rb: separate test case for each algorithms.
36140           [ruby-dev:25412]
36142 Thu Feb 17 14:31:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36144         * object.c (rb_class_initialize): call inherited method before
36145           calling initializing block.
36147         * eval.c (rb_thread_start_1): initialize newly pushed frame.
36148           fixed: [ruby-dev:25707]
36150 Thu Feb 17 13:46:00 2005  Nathaniel Talbott  <ntalbott@ruby-lang.org>
36152         * lib/test/unit/collector.rb (collect_file): now deletes paths added
36153           to $LOAD_PATH instead of restoring it verbatim.
36155         * lib/test/unit/autorunner.rb (AutoRunner.run): fixed so that
36156           'ruby -rtest/unit -rtest1 -rtest2 -e0' will use the objectspace
36157           collector again. Also tried to simplify the calling convention.
36159         * test/runner.rb: adjusted for new AutoRunner semantics.
36161         * lib/test/unit.rb: ditto.
36163 Thu Feb 17 04:21:47 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36165         * lib/open3.rb (Open3::popen3): $? should not be EXIT_FAILURE.
36166           fixed: [ruby-core:04444]
36168 Thu Feb 17 00:31:21 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36170         * test/drb/test_drb.rb, ut_safe1.rb: port from 1.8
36172 Thu Feb 17 00:02:27 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36174         * eval.c (is_defined): NODE_IASGN is an assignment.
36176 Wed Feb 16 23:54:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36178         * eval.c (rb_thread_start_1): outer block variables wasn't linked to
36179           threads.  fixed: [ruby-dev:25700]
36181 Wed Feb 16 15:11:43 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36183         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::Nonblock#initialize):
36184           native win32 platform doesn't have F_GETFL.
36186 Wed Feb 16 02:47:45 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36188         * ext/openssl/ossl_ssl.c (ossl_ssl_read, ossl_ssl_write): should
36189           call rb_sys_fail instead of raising SSLError if SSL_ERROR_SYSCALL
36190           occurred.
36192         * ext/openssl/lib/openssl/buffering.rb (Buffering#fill_rbuff):
36193           should rescue Errno::EAGAIN.
36195         * ext/openssl/lib/openssl/buffering.rb (Buffering#each): fix typo.
36196           suggested by Brian Ollenberger.
36198         * ext/openssl/lib/openssl/ssl.rb: set non-blocking flag to the
36199           underlying IO.
36201 Tue Feb 15 22:14:34 2005  sheepman  <sheepman@tcn.zaq.ne.jp>
36203         * ext/readline/readline.c (Readline.readline): use rl_outstream
36204           and rl_instream.  [ruby-dev:25699]
36206 Mon Feb 14 23:58:17 2005  Kouhei Sutou  <kou@cozmixng.org>
36208         * lib/rss/parser.rb (RSS::ListenerMixin::tag_end):
36209           fixed invalid namespace handling bug.
36211 Mon Feb 14 13:12:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36213         * ext/openssl/lib/openssl/ssl.rb
36214           (OpenSSL::SSL::SSLSocket#post_connection_check): new method.
36216 Mon Feb 14 00:10:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36218         * lib/drb/drb.rb (DRbServer): add default_safe_level, safe_level,
36219           config[:safe_level] ([druby-ja:120])
36221         * test/drb/test_drb.rb, ut_eval.rb, ut_safe1.rb: ditto.
36223 Sun Feb 13 23:13:46 2005  Kouhei Sutou  <kou@cozmixng.org>
36225         * lib/rss/dublincore.rb (RSS::DublicCoreModel#date{,=}): added
36226           convenient methods.
36228         * lib/rss/0.9.rb (RSS::Rss::Channel#date{,=}): ditto.
36230         * lib/rss/2.0.rb (RSS::Rss::Channel::Item#date{,=}): ditto.
36232         * test/rss/: added tests for the convenient methods.
36234 Sun Feb 13 23:12:47 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36236         * eval.c (rb_thread_start_0): restore prot_tag before rewinding.
36238 Sun Feb 13 16:56:52 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36240         * lib/webrick/cgi.rb (WEBrick::CGI.start): should set reason-phrase
36241           to the value of status header field. ([ruby-dev:40617])
36243 Sun Feb 13 11:38:40 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36245         * regparse.c (type_cclass_hash): (Thanks Nobu) fixed
36246           overrun. ([ruby-dev:25676]).
36248 Sun Feb 13 10:53:08 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36250         * oniggnu.h, oniguruma.h, regcomp.c, st.c: imported
36251           Oni Guruma 3.6.0.
36253 Sun Feb 13 01:33:19 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36255         * lib/erb.rb (ERB::Util.h, u): make it module_function.
36257 Sat Feb 12 22:17:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36259         * eval.c (TAG_THREAD): to start a new thread.
36261         * eval.c (ruby_init, ruby_options, ruby_cleanup, rb_protect,
36262           rb_load_protect, rb_thread_start_0): make thread anchor.
36264         * eval.c (proc_alloc): clone proc object if klass is not Proc or
36265           created in different thread.
36267         * eval.c (rb_block_pass): call a function with a block.  [new]
36269         * eval.c (rb_f_throw): raise NameError in main thread.
36271 Sat Feb 12 17:29:19 2005  Tanaka Akira  <akr@m17n.org>
36273         * lib/open-uri.rb (OpenURI.open_loop): send authentication only for
36274           the URI directly specified.
36276 Sat Feb 12 15:07:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36278         * random.c (rand_init): suppress warning.
36280 Sat Feb 12 14:10:24 2005  Tanaka Akira  <akr@m17n.org>
36282         * lib/open-uri.rb (OpenURI.open_http): reject userinfo explicitly.
36284 Sat Feb 12 13:54:03 2005  Tanaka Akira  <akr@m17n.org>
36286         * lib/open-uri.rb: support https if the platform provides CA
36287           certificates.
36289 Sat Feb 12 06:18:28 2005  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
36291         * ext/etc/etc.c (Init_etc): sGroup needs HAVE_ST_GR_PASSWD check
36292           [ruby-dev:25675]
36294 Fri Feb 11 17:37:50 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36296         * ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths):
36297           new method OpenSSL::X509::Store#set_default_paths.
36299 Fri Feb 11 11:33:53 2005  Tanaka Akira  <akr@m17n.org>
36301         * lib/open-uri.rb (URI::HTTP#proxy_open): new option supported:
36302           :http_basic_authentication.
36303           suggested by Kent Sibilev.  [ruby-core:4392]
36305 Fri Feb 11 06:30:07 2005  George Ogata  <g_ogata@optushome.com.au>
36307         * misc/ruby-mode.el: ignore parenthesis inside heredoc.
36308           [ruby-core:04415]
36310 Fri Feb 11 04:54:13 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
36312         * lib/rdoc/generators/html_generator.rb: [ruby-core:04412]
36314         * lib/rdoc/generators/ri_generator.rb: ditto.
36316 Thu Feb 10 13:52:42 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36318         * configure.in, win32/Makefile.sub (LIBS, COMMON_HEADERS): use
36319           winsock2 on mswin32/mingw.
36321         * ext/socket/extconf.rb: ditto.
36323         * win32/win32.c (StartSockets): ditto.
36325         * win32/win32.h: ditto.
36327 Thu Feb 10 12:09:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36329         * ext/extmk.rb (extract_makefile): default to true if not compiled
36330           previously.
36332         * ext/extmk.rb (extmake): create dummy makefile if extconf failed.
36334 Thu Feb 10 12:07:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36336         * win32/win32.c (init_stdhandle): assign standard file handles.
36338         * bcc32/Makefile.sub (COMMON_LIBS): add libraries included in
36339           import32.lib.
36341         * lib/mkmf.rb (create_makefile): restrict prefixing with srcdir to
36342           rule lines, add search path to implicit rules, and set Borland make
36343           special macros for search path.
36345         * win32/win32.c, win32/win32.h (read): avoid a BCC runtime bug.
36347 Thu Feb 10 00:47:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36349         * struct.c (make_struct): fixed: [ruby-core:04402]
36351 Wed Feb  9 16:33:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36353         * ext/socket/socket.c (wait_connectable): fixed wrong condition.
36355 Wed Feb  9 14:42:28 2005  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
36357         * eval.c (scope_dup): add volatile not to optimize tbl.
36359 Wed Feb  9 10:02:02 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36361         * ext/tk/make-tkutil, ext/tk/tkutil/subconf.rb: no longer used.
36363         * ext/tk/tkutil/extconf.rb: need to compile tkutil. [ruby-dev:25607]
36365 Wed Feb  9 08:07:08 2005  Paul Duncan  <pabs@pablotron.org>
36367         * ext/curses/curses.c (window_color_set): [ruby-core:04393]
36369 Tue Feb  8 23:48:36 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36371         * lib/drb/drb.rb: reject :instance_eval, :class_eval, :module_eval
36372           [druby-ja:117]
36374 Tue Feb  8 22:38:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36376         * keywords, parse.y: separate EXPR_VALUE from EXPR_BEG.
36377           fixed: [ruby-core:04310], [ruby-core:04368]
36379 Tue Feb  8 13:06:12 2005  Sam Roberts  <sroberts@uniserve.com>
36381         * ext/socket/socket.c (Init_socket): SO_REUSEPORT added.
36382           [ruby-talk:130092]
36384 Tue Feb  8 00:19:02 2005  Tanaka Akira  <akr@m17n.org>
36386         * lib/resolv.rb (Resolv::DNS::Name#subdomain_of?): new method.
36387           (Resolv::DNS::Name#inspect): ditto.
36388           Suggested by Sam Roberts.  [ruby-talk:129086]
36390 Mon Feb  7 23:14:11 2005  Tanaka Akira  <akr@m17n.org>
36392         * io.c (io_getc): flush rb_stdout before read from stdin, which is
36393           connected to a tty.  [ruby-core:4378]
36395         * rubyio.h (FMODE_TTY): renamed from FMODE_LINEBUF.
36397 Mon Feb  7 10:06:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36399         * object.c: [ruby-doc:818]
36401 Mon Feb  7 02:13:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36403         * ext/socket/extconf.rb (sockaddr_storage): winsock2.h have the
36404           definition of struct sockaddr_storage, but socket.c doesn't
36405           include it because this version of ruby still has binary level
36406           compatibility with winsock1.
36408 Mon Feb  7 01:22:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36410         * ext/extmk.rb (extract_makefile): extract previously collected
36411           informations from existing Makefile.
36413         * ext/socket/extconf.rb: check if getaddrinfo() works fine only when
36414           wide-getaddrinfo option is not given.  fixed: [ruby-dev:25422]
36416         * ext/tk/extconf.rb: separate tkutil configuration.
36418         * lib/mkmf.rb ($extmk): check if under ext directory.
36420         * lib/mkmf.rb (Logging.postpone): allow recursive operation.
36422         * lib/mkmf.rb (try_constant): make sure if really a constant, reduce
36423           the number of times of compile.
36425         * lib/mkmf.rb (have_macro, have_var, byte_order): new functions.
36427         * lib/mkmf.rb (find_library): allow directory list with separators.
36429         * lib/mkmf.rb (arg_config): manage provided configuration options.
36431         * lib/mkmf.rb (dir_config): accept arrays of directory names as
36432           default values.
36434         * lib/mkmf.rb (with_cppflags, with_cflags, with_ldflags): keep flags
36435           modified if the block returned true.
36437 Sun Feb  6 19:20:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36439         * eval.c (stack_extend): add prototype because VC++8 doesn't
36440           accept __declspec(noinline) with K&R style function definitions.
36442 Sun Feb  6 13:56:19 2005  Tadayoshi Funaba  <tadf@dotrb.org>
36444         * lib/date.rb (new_with_hash): changed messages of exception.
36446         * lib/date/format.rb (str[fp]time): undocumented conversion
36447           specifications %[1-3] are now deprecated.
36449 Sun Feb  6 11:27:37 2005  Tanaka Akira  <akr@m17n.org>
36451         * ext/dl/dl.c (Init_dl): function declaration should precede
36452           statements before C99.
36454 Sun Feb  6 03:24:20 2005  Tanaka Akira  <akr@m17n.org>
36456         * lib/resolv.rb (Resolv::DNS::Resource::TXT): multiple strings was not
36457           handled.
36458           (Resolv::DNS::Resource::TXT#strings): new method to return all
36459           strings.
36460           (Resolv::DNS::Message::MessageEncoder#put_string_list): new method.
36461           (Resolv::DNS::Message::MessageDecoder#get_string_list): ditto.
36462           based on [ruby-talk:129732] by Sam Roberts.
36464 Sat Feb  5 02:24:06 2005  Minero Aoki  <aamine@loveruby.net>
36466         * test/ripper/test_scanner_events.rb: fix test.
36468 Fri Feb  4 18:44:35 2005  Minero Aoki  <aamine@loveruby.net>
36470         * ext/ripper/lib/ripper/lexer.rb: last Lexer fix was incomplete;
36471           test all green.
36473 Fri Feb  4 15:57:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36475         * parse.y (open_args): fix too verbose warnings for the space
36476           before argument parentheses.  [ruby-dev:25492]
36478         * parse.y (parser_yylex): ditto.
36480 Fri Feb  4 14:33:25 2005  Minero Aoki  <aamine@loveruby.net>
36482         * ext/ripper/lib/ripper/filter.rb: ripper/tokenizer ->
36483           ripper/lexer. [ruby-dev:25632]
36485 Fri Feb  4 00:24:15 2005  Kouhei Sutou  <kou@cozmixng.org>
36487         * lib/rss: supported Image module.
36488           http://web.resource.org/rss/1.0/modules/image/
36490 Thu Feb  3 23:42:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36492         * ext/stringio/stringio.c (strio_close, strio_close_read, strio_close_write):
36493           should return nil instead of self as well as IO.  [ruby-dev:25623]
36495         * ext/stringio/stringio.c (strio_extend, strio_putc): fill with zero
36496           extended portion.  [ruby-dev:25626]
36498 Thu Feb  3 16:12:57 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36500         * parse.y (parser_yylex): the first expression in the parentheses
36501           should not be a command.  [ruby-dev:25492]
36503 Thu Feb  3 03:31:20 2005  NARUSE, Yui  <naruse@ruby-lang.org>
36505         * ext/nkf/nkf-utf8/nkf.c: follow original v 1.57
36507         * ext/nkf/nkf-utf8/utf8tbl.c: follow original v 1.8
36509         * ext/nkf/nkf-utf8/config.h: follow original v 1.7
36511 Wed Feb  2 23:52:53 2005  sheepman  <sheepman@tcn.zaq.ne.jp>
36513         * ext/stringio/stringio.c (strio_truncate): should MEMZERO an extended
36514           part.  [ruby-dev:25618]
36516 Wed Feb  2 21:56:01 2005  Kouhei Sutou  <kou@cozmixng.org>
36518         * lib/rss/rss.rb (RSS::Element#convert): added.
36520         * lib/rss/rss.rb: convert -> need_convert.
36522         * lib/rss/1.0.rb: ditto.
36524         * lib/rss/0.9.rb: ditto.
36526         * lib/rss/2.0.rb: ditto.
36528         * lib/rss/trackback.rb: ditto.
36530 Wed Feb  2 03:30:58 2005  Minero Aoki  <aamine@loveruby.net>
36532         * ext/ripper/lib/ripper/tokenizer.rb -> lexer.rb.
36534         * ext/ripper/lib/ripper/lexer.rb: new method Ripper.slice.
36535           [experimental]
36537         * ext/ripper/lib/ripper/sexp.rb: new file. [experimental]
36539         * ext/ripper/lib/ripper.rb: require ripper/lexer and ripper/sexp.
36541 Tue Feb  1 21:49:24 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36543         * lib/drb/drb.rb (DRb::DRbObject#respond_to?): check marshal_dump and
36544           _dump.
36546 Tue Feb  1 00:20:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36548         * Makefile.in, configure.in: made EXTOUT configurable.
36550         * ext/extmk.rb (extmake), lib/mkmf.rb: keep topdir as relative style.
36552         * lib/mkmf.rb: make extensions in depth order.  [ruby-dev:25522]
36554         * configure.in (aix): fix linker flags on AIX.  [ruby-talk:125460]
36556 Mon Jan 31 13:16:39 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36558         * ext/tk/extconf.rb: add tkutil configuration step (remove old schema)
36560         * ext/tk/depend: remove the information of tkutil
36562         * ext/tk/make-tkutil: sub-part of Makefile to compile tkutil
36564         * ext/tk/tkutil/tkutil.c: move tkutil.c to subdirectory
36566         * ext/tk/tkutil/subconf.rb: configuration file for tkutil.c
36568         * ext/tk/tkutil/depend: ditto
36570 Mon Jan 31 13:13:35 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36572         * ext/tk/tcltklib.c: add invalid namespace check
36574         * ext/tk/lib/multi-tk.rb: add invalid_namespace? method
36576         * ext/tk/lib/remote-tk.rb: ditto
36578 Mon Jan 31 10:29:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36580         * lib/irb/context.rb (IRB::Context::initialize): [ruby-core:04330]
36582 Mon Jan 31 09:44:03 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36584         * object.c (Init_Object): remove Object#type.  [ruby-core:04335]
36586 Sat Jan 29 09:42:12 2005  Sam Roberts  <sroberts@uniserve.com>
36588         * lib/resolv.rb (Resolv::DNS::Resource::IN::SRV): Added RFC2782 SRV
36589           resource record for specifying location of services.
36591 Sat Jan 29 00:10:33 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36593         * ascii.c, euc_jp.c, hash.c, oniggnu.h, oniguruma.h, regcomp.c,
36594           regenc.c, regenc.h, regerror.c, regexec.c, reggnu.c, regint.h,
36595           regparse.c, regparse.h, sjis.c, st.c, st.h, utf8.c: imported
36596           Oni Guruma 3.5.4.
36598 Fri Jan 28 17:16:55 2005  Tanaka Akira  <akr@m17n.org>
36600         * lib/resolv.rb (Resolv::DNS::Config.parse_resolv_conf):
36601           parse options line for ndots option.
36602           (Resolv::Hosts#lazy_initialize): return self.
36603           (Resolv::DNS#lazy_initialize): ditto.
36604           (Resolv::DNS::Config#lazy_initialize): ditto.
36605           Suggested by Sam Roberts.
36607 Thu Jan 27 17:15:03 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36609         * ext/tk/extconf.rb: support new tk scheme on bccwin32.
36610           fixed: [ruby-dev:25546]
36612 Thu Jan 27 13:18:03 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36614         * st.c (st_foreach): report success/failure by return value.
36615           [ruby-Bugs-1396]
36617 Thu Jan 27 00:12:19 2005  Minero Aoki  <aamine@loveruby.net>
36619         * test/fileutils/test_fileutils.rb (setup): support BSD style
36620           directory group inheritance (again).
36622 Thu Jan 27 00:02:40 2005  Minero Aoki  <aamine@loveruby.net>
36624         * test/fileutils/test_fileutils.rb (setup): support BSD style
36625           directory group inheritance. [ruby-dev:25440]
36627         * test/fileutils/fileasserts.rb (assert_same_entry): show entry
36628           difference.
36630 Wed Jan 26 17:12:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36632         * parse.y: forgot to initialize parser struct.  [ruby-dev:25492]
36634         * parse.y (parser_yylex): no tLABEL on EXPR_BEG.
36635           [ruby-talk:127711]
36637 Wed Jan 26 14:12:58 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36639         * ext/Setup*: remove tcltklib.
36641 Wed Jan 26 12:45:16 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36643         * ext/tk/extconf.rb: support new tk scheme on mswin32.
36644          fixed: [ruby-dev:25535]
36646 Wed Jan 26 10:45:19 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36648         * win32/win32.c (flock_winnt, flock_win95): unlock file even if
36649           LOCK_NB is specified.
36651 Tue Jan 25 23:10:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36653         * ext/tk: merge tcltklib for Ruby/Tk installation control
36655         * ext/tcltklib: remove
36657 Tue Jan 25 17:05:15 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36659         * ruby.c (proc_options): correct -T option in RUBYOPT.
36660           fixed: [ruby-dev:25512]
36662 Tue Jan 25 14:05:52 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36664         * ext/tcltklib/tcltklib.c: fix SEGV bug; trouble on canceling remained
36665           after scripts [ruby-dev:25479]: NULL current namespace when deleting
36666             Tk interpreter [ruby-talk:126225]
36668         * ext/tcltklib/extconf.rb: bug fix; TCL_ENABLE_THREAD flag is inverted
36669           [ruby-talk:126360]
36671         * ext/tcltklib/extconf.rb: add yet another native-thread check
36673         * ext/tk/tkutil.c: fix SEGV bug; NULL string pointer when finalize
36674           Ruby interpreter
36676         * ext/tk/lib/multi-tk.rb: avoid warning for deleted safeTk ip frame
36678         * ext/tk/lib/tk/bindtag.rb: bug fix; new method of named bindtag
36679           doesn't return the created object [ruby-dev:25479]
36681         * ext/tk/lib/tk/menu.rb: bug on treating arguments [ruby-dev:25479]
36683         * ext/tk/lib/tk.rb: bug fix; cannot accept a callback ID string for
36684           a command argument [ruby-dev:25479]
36686         * ext/tk/lib/multi-tk.rb: ditto
36688         * ext/tk/lib/tk/*.rb: ditto
36690         * ext/tk/lib/tkextlib/*.rb: ditto
36692         * ext/tk/sample/demos-jp/anilabel.rb: new demo script
36694         * ext/tk/sample/demos-en/anilabel.rb: ditto
36696         * ext/tk/sample/tkHTML/ss.rb: local variable scope bug fix
36697           [ruby-dev:25479]
36699 Mon Jan 24 16:00:53 2005  NARUSE, Yui  <naruse@ruby-lang.org>
36701         * ext/nkf/lib/kconv.rb (guess_old): not use NKF.guess_old
36702           but NKF.guess1. fixed: [ruby-dev:25491]
36704 Mon Jan 24 15:44:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36706         * document updates - [ruby-core:04296], [ruby-core:04301],
36707           [ruby-core:04302], [ruby-core:04307]
36709 Sun Jan 23 12:38:01 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
36711         * lib/soap/wsdlDriver.rb: from 1.5.3-ruby1.8.2, operation which has
36712           capitalized name (such as KeywordSearchRequest in AWS) is defined as
36713           a method having uncapitalized name. (converted with
36714           GenSupport.safemethodname to handle operation name 'foo-bar').  it
36715           introduced serious incompatibility; in the past, it was defined as a
36716           capitalized.
36718           define capitalized method as well under that circumstance.
36720 Sun Jan 23 05:24:42 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36722         * ext/openssl/ossl_ocsp.c (ossl_ocspreq_to_der): should call
36723           GetOCSPReq at first.
36725 Sat Jan 22 22:59:08 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36727         * lib/drb/ssl.rb (accept): rescue SSLError. [druby-ja:110]
36729 Sat Jan 22 22:27:28 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36731         * lib/drb/unix.rb: fail if UNIXFileOwner is set. [druby-ja:111]
36733 Fri Jan 21 20:07:02 2005  Tanaka Akira  <akr@m17n.org>
36735         * lib/resolv.rb (Resolv::DNS::Config.resolv): don't raise ResolvError.
36736           reported by Sam Roberts.  [ruby-talk:127133]
36738 Fri Jan 21 17:09:44 2005  Shugo Maeda  <shugo@ruby-lang.org>
36740         * lib/net/imap.rb (decode_utf7): use pack("U*") to encode UTF-8.
36742         * lib/net/imap.rb (encode_utf7): use unpack("U*") to decode UTF-8.
36744         * test/net/imap/test_imap.rb: added tests for Net::IMAP.
36746 Fri Jan 21 16:58:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36748         * dir.c (rb_push_glob): should work for NUL delimited patterns.
36750         * dir.c (rb_glob2): should aware of offset in the pattern.
36752 Fri Jan 21 13:58:37 2005  Shugo Maeda  <shugo@ruby-lang.org>
36754         * lib/net/imap.rb (u8tou16): fixed typo. fixed: [ruby-list:40546]
36756 Fri Jan 21 00:37:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36758         * ext/syck/rubyext.c (syck_parser_bufsize_set): avoid VC++ warning
36759           "local variable 'size' used without having been initialized".
36761 Thu Jan 20 11:42:02 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36763         * string.c (rb_str_new4): should propagate taintedness.
36765         * env.h: rename member names in struct FRAME; last_func -> callee,
36766           orig_func -> this_func, last_class -> this_class.
36768         * struct.c (rb_struct_set): use original method name, not callee
36769           name, to retrieve member slot.  [ruby-core:04268]
36771         * time.c (time_strftime): protect from format modification from GC
36772           finalizers.
36774 Thu Jan 20 02:01:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36776         * object.c (Init_Object): remove rb_obj_id_obsolete()
36778 Wed Jan 19 18:02:19 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36780         * lib/ipaddr.rb (to_s, test_to_s): too many colons with some cases.
36782 Wed Jan 19 01:16:30 2005  Tanaka Akira  <akr@m17n.org>
36784         * lib/resolv.rb (Resolv::DNS::Config.parse_resolv_conf): ignore
36785           domain and search directive without an argument.
36786           reported by Sam Roberts.  [ruby-talk:126781]
36788 Mon Jan 17 23:33:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36790         * configure.in (aix): fix typo.  [ruby-talk:126401]
36792 Mon Jan 17 07:08:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36794         * ext/readline/readline.c: suppress warnings.
36796         * lib/irb/extend-command.rb (IRB::ContextExtender.def_extend_command):
36797           ditto.
36799         * lib/irb/ext/history.rb (IRB::Context::set_last_value): ditto.
36801         * lib/irb/ext/history.rb (IRB::Context::eval_history): ditto.
36803         * lib/irb/locale.rb (IRB::Locale::real_load): ditto.
36805         * lib/irb/slex.rb (SLex::Node::create_subnode): remove garbage.
36807 Mon Jan 17 00:09:42 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
36809         * lib/uri/common.rb (PORT): typo fix. fixed: [ruby-core:04256]
36811 Sat Jan 15 14:57:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36813         * ruby.c (proc_options): ignore trailing CRs at the end of short
36814           options as well as long options.  fixed: [ruby-core:04232]
36816 Sat Jan 15 13:44:22 2005  Kouhei Sutou  <kou@cozmixng.org>
36818         * lib/rss/rss.rb (RSS::VERSION): 0.1.2 -> 0.1.3.
36820         * lib/rss/rss.rb: accept inheritance. [ruby-talk:126104]
36822 Wed Jan 12 12:29:28 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36824         * eval.c (rb_mod_define_method): incomplete subclass check.
36825           [ruby-dev:25464]
36827         * class.c (rb_make_metaclass): class of metaclasses should be
36828           plain Class.  [ruby-list:40524]
36830 Tue Jan 11 20:58:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36832         * io.c (remain_size): use buffered data instead of unreading to avoid
36833           inconsistency of text mode.  fixed: [ruby-dev:25446]
36835 Tue Jan 11 09:37:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36837         * numeric.c (Init_Numeric): turn off floating point exceptions
36838           on bcc32. "1e300".to_f had crashed by overflow.
36840 Mon Jan 10 15:28:51 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36842         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line): should
36843           escape SCRIPT_NAME and PATH_INFO before being parsed as a URI.
36845         * lib/webrick/httputils.rb (WEBrick::HTTPUtils#escape_path): add
36846           new method to escape URI path component.
36848         * lib/webrick/ssl.rb (WEBrick::Config::SSL): the default value
36849           of :SSLEnable is false.
36851         * test/webrick/{test_cgi.rb,webrick.cgi}: new file.
36853         * test/webrick/utils.rb: require "webrick/https.h".
36855 Mon Jan 10 01:22:55 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36857         * gc.c (rb_data_object_alloc): klass may be NULL.
36858           [ruby-list:40498]
36860 Sun Jan  9 14:12:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36862         * io.c (rb_f_select): IO list could be altered.  [ruby-dev:25312]
36864 Sun Jan  9 04:08:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36866         * test/webrick/test_server.rb (test_daemon): delete an assertion
36867           which has possibility to fail by race condition.
36869 Sun Jan  9 03:22:46 2005  Minero Aoki  <aamine@loveruby.net>
36871         * test/fileutils/test_fileutils.rb (test_copy_entry): copy_entry
36872           copies only file type, not mtime. [ruby-dev:25383]
36874 Sat Jan  8 04:38:47 2005  why the lucky stiff  <why@ruby-lang.org>
36876         * lib/yaml.rb: Kernel#y requires an argument.
36878 Fri Jan  7 21:12:29 2005  TAMURA Takashi  <sheepman@tcn.zaq.ne.jp>
36880         * random.c (rand_init): use ALLOC_N instead of ALLOCA_N
36881           [ruby-dev:25426]
36883 Fri Jan  7 20:01:31 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36885         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_service):
36886           should delete trailing LF from the result of pack("m*").
36888         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_connect):
36889           - should delete trailing LF from the result of pack("m*").
36890           - clear Request-Line not to send the response by HTTPServer#run.
36892         * lib/webrick/httputils (WEBrick::HTTPUtils.parse_qvalues):
36893           refine regexp (and change the name of a local variable).
36895         * lib/webrick/server.rb (WEBrick::Daemon.start): prepared stdio
36896           don't allow changing its mode.
36898         * test/webrick/*, sample/webrick/httpproxy.rb: add new files.
36900 Fri Jan  7 18:03:35 2005  Tanaka Akira  <akr@m17n.org>
36902         * gc.c (mark_locations_array): avoid core dump with -O3.
36903           [ruby-dev:25424]
36905 Thu Jan  6 20:29:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36907         * ext/zlib/zlib.c (zstream_end): should return value.
36909 Thu Jan  6 19:59:03 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36911         * win32/win32.c (rb_w32_close): didn't close socket handle.
36912           [ruby-dev:25414]
36914         * win32/win32.c (rb_w32_open_osfhandle): bcc32's _open_osfhandle
36915           never set EMFILE.
36917 Thu Jan  6 17:22:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36919         * random.c (random_seed): O_NONBLOCK isn't defined on some
36920           platforms. [ruby-dev:25417]
36922 Thu Jan  6 13:45:35 2005  Tanaka Akira  <akr@m17n.org>
36924         * lib/time.rb: recognize +00:00 and GMT as a localtime.
36926 Thu Jan  6 07:58:28 2005  Dave Thomas  <dave@pragprog.com>
36928         * lib/rdoc/usage.rb (RDoc::RDoc.usage_no_exit): Allow for colons
36929           in path names on DOS machines. (thanks to Johan Nilsson)
36931 Thu Jan  6 00:02:35 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36933         * test/rinda/test_rinda.rb: use MockClock.sleep instead of Kernel.sleep
36934           [ruby-dev:25387]
36936 Wed Jan  5 20:16:32 2005  Tanaka Akira  <akr@m17n.org>
36938         * random.c (limited_big_rand): didn't work if SIZEOF_BDIGITS == 2.
36939           [ruby-dev:25408]
36941         * random.c (random_seed): refined.
36943 Wed Jan  5 16:39:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36945         * parse.y (BITSTACK_POP): workaround for bcc32 compiler's bug.
36946           shift assignment operator '>>=' for __int64 in struct may
36947           generate collapsed code. [ruby-dev:25342]
36949         * win32/win32.[ch]: failed to compile on bcc32 (and probably wince)
36950           [ruby-dev:25306]
36952 Wed Jan  5 12:49:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36954         * eval.c (rb_thread_initialize): Thread objects cannot be initialized
36955           again.  fixed: [ruby-core:04067]
36957 Wed Jan  5 02:30:11 2005  Tanaka Akira  <akr@m17n.org>
36959         * random.c (init_by_array): imported from mt19937ar-cok.tgz.
36960           (genrand_int32): ditto.
36961           (genrand_real): replaced with genrand_res53 in mt19937ar-cok.
36962           (rand_init): support bignum for longer seed.
36963           (random_seed): generate longer seed.
36964           (make_mask): new function.
36965           (limited_rand): ditto.
36966           (limited_big_rand): ditto.
36967           (rb_f_rand): call limited_rand and limited_big_rand.
36968           [ruby-dev:25403]
36970 Tue Jan  4 23:25:29 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36972         * bignum.c (rb_big_rand): should return positive random number.
36973           [ruby-dev:25401]
36975 Tue Jan  4 21:25:43 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36977         * test/drb/{test_drbssl.rb,test_drbunix.rb,ut_drb.rb}: use
36978           DRbService.ext_service. reduce sleep.
36980 Mon Jan  3 14:01:54 2005  Tanaka Akira  <akr@m17n.org>
36982         * random.c (random_seed): don't use /dev/urandom if it is not
36983           character device.
36985 Mon Jan  3 11:37:42 2005  Tanaka Akira  <akr@m17n.org>
36987         * random.c (random_seed): use /dev/urandom if available.
36988           [ruby-dev:25392]
36990 Tue Jan  4 11:15:29 2005  TAMURA Takashi  <sheepman@tcn.zaq.ne.jp>
36992         * bignum.c (rb_big_rand): do not use rb_big_modulo to generate
36993           random bignums.  [ruby-dev:25396]
36995 Mon Jan  3 11:03:37 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36997         * test/drb/test_drb.rb: move TestDRbReusePort to new file.
36998           [ruby-dev:25238]
37000         * test/drb/drbtest.rb: change timeout.
37002         * test/drb/ignore_test_drb.rb: new file.
37004 Mon Jan  3 07:27:46 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37006         * lib/webrick/httpauth/htpasswd.rb (WEBrick::Htpasswd#reload):
37007           raise NotImplementedError if password is encrypted by digest
37008           algorithms. This patch is contributed by sheepman. [ruby-list:40467]
37010         * lib/webrick/httpauth/digestauth.rb
37011           (WEBrick::HTTPAuth::DigestAuth#_authenticate): fix digest calculation.
37012           This patch is contributed by sheepman. [ruby-list:40482]
37014         * lib/webrick/{httpauth.rb,httpauth/basicauth.rb,httpproxy.rb}: use
37015           pack/unpack-template char "m" instead of lib/base64.rb to do base64
37016           encoding/decoding. fixed: [ruby-dev:25336]
37018         * test/webrick/test_httpauth.rb: new file.
37020 Sun Jan  2 15:42:10 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37022         * lib/drb/drb.rb: add lazy stop_service.
37024         * lib/drb/extserv.rb: ditto.
37026 Sun Jan  2 01:17:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37028         * test/drb/drbtest.rb: add method DRbService.ext_service.
37030         * test/drb/test_drb.rb: ditto.
37032         * test/drb/test_drbssl.rb: ditto.
37034 Sat Jan  1 20:23:02 2005  Tanaka Akira  <akr@m17n.org>
37036         * io.c (argf_readpartial): new method ARGF.readpartial.
37037           (io_getpartial): extracted from io_readpartial.
37038           (io_readpartial): call io_getpartial.
37040 Sat Jan  1 17:44:54 2005  Minero Aoki  <aamine@loveruby.net>
37042         * lib/net/http.rb (each_capitalized): should join header field
37043           value.  This patch is contributed sheepman [ruby-list:40478]
37045         * test/net/http/test_httpheader.rb: test it.
37047 Sat Jan  1 16:21:29 2005  Minero Aoki  <aamine@loveruby.net>
37049         * lib/fileutils.rb (copy_stream): use read/write instead of
37050           sysread/syswrite, which allows duck typing. [ruby-dev:25369]
37052         * lib/fileutils.rb (copy_stream): does NOT support nonblocking IO.
37053           [ruby-dev:25370]
37055         * lib/fileutils.rb (copy_entry): could not copy symlink.
37057         * test/fileutils/test_fileutils.rb: test copy_entry, copy_file,
37058           copy_stream.
37060 Sat Jan  1 04:20:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37062         * ext/openssl/ossl_ns_spki.c (ossl_spki_set_challenge): should call
37063           StringValue before GetSPKI. fixed: [ruby-dev:25359].
37065 Sat Jan  1 01:13:28 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
37067         * variable.c (rb_autoload): [ruby-dev:25373]
37069 Fri Dec 31 14:10:43 2004  Dave Thomas  <dave@pragprog.com>
37071         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::display_flow_item):
37072           Fix problem if heading contains formatting.
37074 Fri Dec 31 00:08:02 2004  Tanaka Akira  <akr@m17n.org>
37076         * configure.in (HAVE_RLIM_T): removed because not used.
37078 Thu Dec 30 22:45:39 2004  Tanaka Akira  <akr@m17n.org>
37080         * rubyio.h: don't deprecate rb_read_check.
37082         * io.c (STDIO_READ_DATA_PENDING): reverted from old READ_DATA_PENDING
37083           to check stdio read buffer.
37084           (rb_read_check): use STDIO_READ_DATA_PENDING.
37085           (rb_read_pending): ditto.
37086           (rb_getc): ditto.
37088 Thu Dec 30 05:39:35 2004  Minero Aoki  <aamine@loveruby.net>
37090         * parse.y: eliminate unused members in struct parser_params.
37091           [ruby-dev:25258] (again)
37093         * parse.y: make parser_new() static.
37095 Thu Dec 30 00:41:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37097         * eval.c (svalue_to_avalue): [ruby-dev:25366]
37099         * string.c (rb_str_justify): [ruby-dev:25367]
37101 Wed Dec 29 11:07:07 2004  Dave Thomas  <dave@pragprog.com>
37103         * lib/rdoc/generators/template/html/kilmer.rb: Update to use new
37104           sections.
37106 Tue Dec 28 22:31:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37108         * string.c (rb_str_justify): create buffer string after argument type
37109           conversion.  fixed: [ruby-dev:25341]
37111 Tue Dec 28 17:18:17 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37113         * lib/net/telnet.rb (preprocess): remove NULL unless binmode.
37114           fixed: [ruby-list:40320]
37116 Tue Dec 28 15:41:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37118         * ext/nkf/nkf-utf8/nkf.c (reinit): should initialize all static
37119           variables.  fixed: [ruby-list:40445]
37121 Tue Dec 28 15:25:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37123         * ext/nkf/lib/kconv.rb (Kconv::RegexpEucjp): second byte is up to
37124           0xfe.
37126         * ext/nkf/lib/kconv.rb (Kconv#kconv): should handle UTF8 and UTF16
37127           properly.
37129 Tue Dec 28 13:35:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37131         * ext/zlib/zlib.c (rb_deflate_s_deflate, rb_inflate_s_inflate): ensure
37132           freeing internal zstreams.  fixed: [ruby-dev:25309]
37134         * ext/zlib/zlib.c (rb_deflate_init_copy): replace rb_deflate_clone.
37136 Mon Dec 27 20:02:14 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37138         * ext/tcltklib/tcltklib.c: fix SEGV bug when deleting Tk interp
37140         * ext/tk/lib/multi-tk.rb: ditto
37142 Mon Dec 27 16:54:05 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37144         * ext/openssl/ossl_x509name.c (Init_ossl_x509name): should use
37145           rb_hash_new to get exactly a Hash. fix [ruby-dev:25325].
37147 Mon Dec 27 15:29:12 2004  Minero Aoki  <aamine@loveruby.net>
37149         * test/fileutils/test_fileutils.rb (cp_r): tested wrong file name.
37150           [ruby-dev:25339]
37152 Mon Dec 27 15:15:18 2004  Minero Aoki  <aamine@loveruby.net>
37154         * lib/fileutils.rb (mv): should raise error when moving a
37155           directory to the (empty) directory. [ruby-talk:124368]
37157         * lib/fileutils.rb (mv): wrongly did not overwrite file on Win32
37158           platforms.
37160 Mon Dec 27 14:36:20 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37162         * process.c (NUM2RLIM, RLIM2NUM): Without SIZEOF_RLIM_T is not error.
37163           fixed: [ruby-dev:25346]
37165 Sun Dec 26 16:21:39 2004  Shugo Maeda  <shugo@ruby-lang.org>
37167         * lib/net/imap.rb (Net::IMAP::PlainAuthenticator): added a new class
37168           to support the PLAIN authentication mechanism. Thanks, Benjamin
37169           Stiglitz.
37171 Sat Dec 25 01:28:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37173         * io.c (rb_f_select): [ruby-dev:25312]
37175 Fri Dec 24 23:27:18 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37177         * ext/tk/lib/tk/image.rb: TkPhotoImage#cget bug fix
37179 Fri Dec 24 03:06:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37181         * io.c (io_reopen, rb_io_reopen): prohibit to change access mode for
37182           special IO ports.  [ruby-dev:25225]
37184         * io.c (next_argv): reduce use of stdio.
37186 Fri Dec 24 02:22:53 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37188         * ext/syck/rubyext.c (syck_loader_transfer): check type conversion.
37190         * ext/syck/rubyext.c (syck_parser_assign_io, rb_new_syck_node): duck
37191           typing.
37193         * ext/syck/rubyext.c (syck_parser_s_alloc, syck_parser_initialize):
37194           allocation framework.
37196         * ext/syck/rubyext.c (syck_emitter_s_alloc, syck_emitter_initialize):
37197           ditto.
37199 Fri Dec 24 01:21:00 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37201         * ext/tk/lib/tkextlib/blt.rb: add BLT extension support
37203         * ext/tk/lib/tkextlib/blt/*.rb: ditto
37205         * ext/tk/lib/tkextlib/blt/tile/*.rb: ditto
37207 Thu Dec 23 23:43:24 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37209         * process.c (proc_setgroups): check if the argument length is
37210           modified.  fixed: [ruby-dev:25285]
37212         * process.c (SIZEOF_RLIM_T): err if size of rlim_t is not set.
37214 Thu Dec 23 19:08:41 2004  Tanaka Akira  <akr@m17n.org>
37216         * rubyio.h: rename FMODE_UNSEEKABLE to FMODE_DUPLEX.
37218         * io.c (io_check_tty): extracted function to set FMODE_LINEBUF and
37219           FMODE_DUPLEX.
37221 Thu Dec 23 13:13:33 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37223         * ext/tcltklib/tcltklib.c: define TclTkLib::COMPILE_INFO and
37224           RELEASE_DATE
37226         * ext/tcltklib/extconf.rb: ditto
37228         * ext/tk/tkutil.c: define TkUtil::RELEASE_DATE
37230         * ext/tk/lib/tk.rb: define Tk::RELEASE_DATE
37232 Thu Dec 23 00:16:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37234         * configure.in (bsdi): use $(CC) for LDSHARED.  fixed [ruby-dev:25270]
37236 Wed Dec 22 11:14:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37238         * io.c (rb_io_mode_modenum): replace O_ACCMODE with O_RDWR.
37239           fixed: [ruby-dev:25273]
37241 Wed Dec 22 08:34:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37243         * ext/dl/sym.c (rb_dlsym_initialize): extract internal pointers after
37244           all argument conversion.  fixed: [ruby-dev:25271]
37246 Tue Dec 21 16:15:21 2004  Michael Neumann  <mneumann@ruby-lang.org>
37248         * lib/xmlrpc/client.rb: use "" instead of "." if prefix argument is
37249           nil in proxy methods. nil is default value.
37251         * test/xmlrpc/test_webrick_server.rb, test/xmlrpc/webrick_testing.rb:
37252           use threads instead of forking. this should fix issue #1208
37253           (http://rubyforge.org/tracker/?func=detail&atid=1698&aid=1208&group_id=426).
37254           removed testing of SSL enabled servlet as this hangs.
37256 Wed Dec 22 00:05:10 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37258         * lib/soap/*, test/soap/*, sample/soap/authheader/*: eval cleanup.
37260 Tue Dec 21 22:07:41 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37262         * ext/openssl/ossl_asn1.c (ossl_asn1_decode_all): use rb_str_new4
37263           to avoid SEGV.
37265         * ext/openssl/ossl_asn1.c (ossl_asn1_traverse, ossl_asn1_decode,
37266           ossl_asn1_decode_all): temporary value should be marked volatile.
37268 Tue Dec 21 12:42:34 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37270         * ext/openssl/ossl_asn1.c (ossl_asn1_traverse, ossl_asn1_decode):
37271           use rb_str_new4 to avoid SEGV. fix [ruby-dev:25261]
37273         * test/openssl/test_asn1.rb: add tests for OpenSSL::ASN1.
37275 Tue Dec 21 12:10:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37277         * ext/tk/lib/tk/grid.rb: rescue bug of 'grid configure' on Tcl/Tk8.3-
37279 Mon Dec 20 22:52:29 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37281         * added samples for the previous soap4r's commit.
37283 Mon Dec 20 22:56:39 2004  Tanaka Akira  <akr@m17n.org>
37285         * gc.c (set_stack_end): gcc noinline attribute is available since
37286           gcc-3.1.
37288 Mon Dec 20 22:40:31 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37290         * added files:
37291           * lib/soap/mapping/wsdl*.rb
37292           * lib/wsdl/soap/element.rb
37293           * lib/wsdl/xmlSchema/simpleContent.rb
37295         * modified files:
37296           * lib/soap/*
37297           * lib/wsdl/*
37298           * lib/xsd/*
37299           * test/soap/*
37300           * test/wsdl/*
37301           * test/xsd/*
37303         * summary
37304           * imported from the soap4r repository.  Version: 1.5.3-ruby1.8.2
37306           * added several XSD basetype support: nonPositiveInteger,
37307             negativeInteger, nonNegativeInteger, unsignedLong, unsignedInt,
37308             unsignedShort, unsignedByte, positiveInteger
37310           * HTTP client connection/send/receive timeout support.
37312           * HTTP client/server gzipped content encoding support.
37314           * improved WSDL schema definition support; still is far from
37315             complete, but is making step by step improvement.
37317 Mon Dec 20 14:45:19 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37319         * lib/net/https.rb: delete descriptions about key_file and cert_file.
37320           fixed: [ruby-dev:25243]
37322         * ext/openssl/lib/net/telnets.rb: ditto.
37324 Mon Dec 20 14:07:02 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37326         * ext/tk/lib/multi-tk.rb: supports new features of Tcl/Tk8.5a2
37328         * ext/tk/lib/tk/clock.rb: ditto
37330         * ext/tk/lib/tk/text.rb: ditto
37332         * ext/tk/lib/tk/panedwindow.rb: ditto
37334 Mon Dec 20 13:51:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37336         * ext/socket/socket.c (sock_s_getservbyport): [ruby-talk:124072]
37338 Mon Dec 20 10:51:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37340         * parse.y (special_local_set): prevent the parser object from GC.
37341           fixed: [ruby-dev:25252]
37343 Mon Dec 20 03:30:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37345         * lib/cgi/session.rb (CGI::Session#initialize): empty session id was
37346           used if request had no session key.  fixed: [ruby-core:03981]
37348 Mon Dec 20 01:51:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37350         * struct.c (make_struct): [ruby-dev:25249]
37352 Mon Dec 20 00:16:54 2004  Kouhei Sutou  <kou@cozmixng.org>
37354         * lib/rexml/encodings/SHIFT_JIS.rb: fixed LoadError bug.
37355           [ruby-core:3958]
37357 Sun Dec 19 17:24:59 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37359         * configure.in (enable_rpath): use rpath flag to embed the library
37360           path into extensions on ELF environment.  [ruby-dev:25035]
37362 Sun Dec 19 11:01:25 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37364         * lib/test/unit.rb: use standalone runner for -e.
37366         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner#options): accept
37367           multiple -p and -x options.
37369         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#recursive_collect):
37370           ditto.
37372 Sat Dec 18 16:36:23 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37374         * ext/zlib/zlib.c (rb_deflate_s_deflate, rb_inflate_s_inflate):
37375           disallow interrupt by type conversion.  fixed: [ruby-dev:25226]
37377 Sat Dec 18 15:09:02 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37379         * lib/webrick/httpauth.rb,
37380           lib/webrick/httpauth/{basicauth.rb,digestauth.rb}: use
37381           pack/unpack-template char "m" instead of lib/base64.rb to do base64
37382           encoding/decoding.
37384 Sat Dec 18 10:51:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37386         * dir.c (dir_open_dir): new function.  [ruby-dev:25242]
37388         * io.c (rb_f_open): add type check for return value from to_open.
37390 Fri Dec 17 16:44:26 2004  Tanaka Akira  <akr@m17n.org>
37392         * configure.in (ac_cv_sizeof_rlim_t): set 8 for BSD/OS.
37393           Reported by OHARA Shigeki.  [ruby-dev:25236]
37395 Fri Dec 17 16:28:12 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37397         * ext/tk/lib/tk.rb: fix bug on setting up system encoding
37399         * ext/tk/lib/tk/event.rb: fix error on require process
37401         * ext/tk/lib/tk/font.rb: fix abnormal termination error on Windows
37403         * ext/tk/lib/tk/virtevent.rb: TkVirtualEvent::PreDefVirtEvent.new()
37404           accepts event-sequence arguments
37406         * ext/tk/lib/tk/text.rb: fail to dump embedded images
37408         * ext/tk/lib/tk/text.rb: tag_nextrange and tag_prevrange returns wrong
37409           types of values
37411         * ext/tk/lib/tk/texttag.rb: nextrange and prevrange returns wrong
37412           types of values
37414         * ext/tk/lib/tk/text.rb: add TkText::IndexModMethods module and
37415           TkText::IndexString class to treat text index modifiers
37417         * ext/tk/lib/tk/texttag.rb: use TkText::IndexModMethods module
37419         * ext/tk/lib/tk/textmark.rb: ditto
37421         * ext/tk/lib/tk/textimage.rb: ditto
37423         * ext/tk/lib/tk/textwindow.rb: ditto
37425         * ext/tk/lib/tk/textimage.rb: wrong gravity of text mark for embedded
37426           image
37428         * ext/tk/lib/tk/textwindow.rb: wrong gravity of text mark for
37429           embedded window
37431 Fri Dec 17 13:33:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37433         * lib/cgi/session.rb (CGI::Session#initialize): control adding
37434           session_id hidden fields.  fixed: [ruby-talk:123850]
37436 Fri Dec 17 00:01:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37438         * eval.c (rb_proc_arity, rb_node_arity, rb_mod_method_arity,
37439           rb_obj_method_arity): new functions to obtain method arity.
37440           [ruby-dev:25143]
37442 Thu Dec 16 23:31:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37444         * lib/mkmf.rb (create_makefile): create RUBYARCHDIR also when no extension
37445           is installed.  fixed: [ruby-dev:25215]
37447 Thu Dec 16 22:36:57 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37449         * test/drb/test_drb.rb: adjust and reduce sleep.
37451 Thu Dec 16 18:37:08 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37453         * ext/openssl/ossl.c (ossl_raise): refine message format.
37455 Thu Dec 16 16:29:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37457         * ext/tk/sample/demos-en/widget: modify version check for
37458           supporting features
37460 Thu Dec 16 16:03:50 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37462         * ext/tk/lib/tk/bindtag.rb: bug fix [ruby-talk: 123667]
37464         * ext/tk/lib/tk/timer.rb: accept :idle for the interval argument
37466         * ext/tk/lib/tk.rb: add TkComm._callback_entry?()
37468         * ext/tk/lib/multi-tk.rb: add MultiTkIp.cb_entry_class
37470         * ext/tk/lib/tk/canvas.rb: use TkComm._callback_entry?()
37472         * ext/tk/lib/tk/canvastag.rb: ditto
37474         * ext/tk/lib/tk/dialog.rb: ditto
37476         * ext/tk/lib/tk/optiondb.rb: ditto
37478         * ext/tk/lib/tk/text.rb: ditto
37480         * ext/tk/lib/tk/texttag.rb: ditto
37482         * ext/tk/lib/tk/textwindow.rb: ditto
37484         * ext/tk/lib/tk/timer.rb: ditto
37486         * ext/tk/lib/tk/validation.rb: ditto
37488         * ext/tk/lib/tkextlib/*: ditto
37490 Thu Dec 16 04:02:28 2004  Minero Aoki  <aamine@loveruby.net>
37492         * ext/ripper/extconf.rb: bison is not needed if ripper.c exists.
37493           [ruby-dev:25191]
37495 Thu Dec 16 03:27:10 2004  Minero Aoki  <aamine@loveruby.net>
37497         * lib/net/http.rb: remove junk.
37499 Thu Dec 16 00:57:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37501         * ext/syck/rubyext.c (rb_syck_io_str_read): [ruby-core:03973]
37503 Thu Dec 16 00:43:29 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37505         * lib/drb/drb.rb: changed default binded address family to use an
37506           available address family of host name. [druby-ja:101]
37508         * lib/drb/ssl.rb: ditto
37510 Wed Dec 15 17:47:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37512         * lib/webrick/server.rb (WEBrick::GenericServer#start_thread):
37513           should log about all accepted socket. [ruby-core:03962]
37515         * lib/webrick/accesslog.rb (WEBrick::AccessLog#setup_params):
37516           "%%" and "%u" are supported. [webricken:135]
37518         * lib/webrick/httpservlet/filehandler.rb
37519           (WEBrick::HTTPServlet::FileHandler#check_filename):
37520           :NondisclosureName is acceptable if it is Enumerable.
37522         * lib/webrick/config.rb (WEBrick::Config::FileHandler):
37523           default value of :NondisclosureName is [".ht*", "*~"].
37525 Wed Dec 15 16:10:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37527         * object.c (rb_obj_id_obsolete): warn always.
37529 Wed Dec 15 15:31:02 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37531         * lib/set.rb (Set#==): [ruby-dev:25206]
37533 Wed Dec 15 14:32:18 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37535         * win32/win32.c (rb_w32_fdisset): check whether the handle is valid.
37537 Wed Dec 15 10:30:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37539         * ext/openssl/ossl_digest.c (ossl_digest_initialize): [ruby-dev:25198]
37541 Tue Dec 14 19:17:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37543         * utf8.c (utf8_is_mbc_ambiguous): [ruby-talk:123561]
37545         * utf8.c (utf8_mbc_to_normalize): ditto.
37547 Tue Dec 14 17:08:15 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37549         * win32/win32.c (rb_w32_close): need to reset osfhnd().
37551 Tue Dec 14 14:03:57 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37553         * ext/openssl/ossl.c (ossl_raise): avoid buffer overrun.
37554           [ruby-dev:25187]
37556 Tue Dec 14 12:36:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37558         * lib/cgi/session.rb (CGI::Session::initialize): generate new
37559           session if given session_id does not exist.  [ruby-list:40368]
37561 Tue Dec 14 08:47:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37563         * eval.c (Init_eval): should mark ruby_eval_tree.  [ruby-dev:25189]
37565 Mon Dec 13 18:13:52 2004  Tanaka Akira  <akr@m17n.org>
37567         * gc.c (set_stack_end): new function to obtain stack end address.
37568           set_stack_end obtains a stack end address by an address of local
37569           variable in the function.
37570           (SET_STACK_END, STACK_END): use set_stack_end.  don't use alloca.
37571           This makes the conservative garbage collector to scan a stack frame
37572           of the garbage_collect function itself.  This is required because
37573           callee-save registers may be stored in the frame.
37574           [ruby-dev:25158]
37576 Mon Dec 13 02:45:51 2004  Shugo Maeda  <shugo@ruby-lang.org>
37578         * ext/curses/curses.c (window_subwin): call NUM2INT() before
37579           GetWINDOW(). fixed: [ruby-dev:25161]
37581 Mon Dec 13 00:58:02 2004  Tanaka Akira  <akr@m17n.org>
37583         * lib/pathname.rb (cleanpath_aggressive): make it private.
37584           (cleanpath_conservative): ditto.
37585           Suggested by Daniel Berger.  [ruby-core:3914]
37587 Sun Dec 12 21:32:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37589         * test/ruby/test_super.rb (TestSuper#test_define_method): now methods
37590           from procs can call super.
37592 Sun Dec 12 10:35:10 2004  Dave Thomas  <dave@pragprog.com>
37594         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Don't
37595           show an accessor's r/w flag if none was specified
37597 Sun Dec 12 10:14:03 2004  Dave Thomas  <dave@pragprog.com>
37599         * lib/rdoc/rdoc.rb (RDoc::RDoc::parse_files): Never exclude files
37600           explicitly given on the command line.
37602 Sat Dec 11 21:10:16 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37604         * lib/drb/drb.rb: add DRbRemoteError. [ruby-list:40348],
37605           [ruby-list:40390]
37607         * test/drb/drbtest.rb: ditto.
37609         * test/drb/ut_drb.rb: ditto.
37611 Sat Dec 11 13:08:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37613         * sample/optparse/subcommand.rb: a sample for sub commands like
37614           cvs.  contributed by Minero Aoki.
37616 Fri Dec 10 08:39:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37618         * ext/socket/socket.c (sock_listen): get OpenFile just before calling
37619           listen(2).
37621 Thu Dec  9 16:28:35 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37623         * ext/sdbm/init.c (GetDBM): typo.
37625 Thu Dec  9 16:21:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37627         * lib/webrick/cgi.rb (WEBrick::CGI#setup_header): avoid
37628           SecurityError. [ruby-dev:24970]
37630         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should wait
37631           for reading request till data arrive. [ruby-talk:121068]
37633 Thu Dec  9 14:38:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37635         * string.c (rb_str_inspect): escape # which starts an expression
37636           substitution.  fixed: [ruby-core:03922]
37638         * string.c (rb_str_dump): not escape # which isn't a substitution.
37640 Thu Dec  9 12:31:53 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37642         * io.c (pipe_open): should set prog if argc != 0.
37644 Thu Dec  9 10:54:36 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37646         * ext/dbm/dbm.c (fdbm_select): [ruby-dev:25132]
37648         * ext/sdbm/init.c: ditto.
37650         * ext/gdbm/gdbm.c: ditto.
37652 Thu Dec  9 10:19:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37654         * test/socket/test_socket.rb (test_setsockopt): use SO_LINGER instead
37655           of SO_BINDTODEVICE.  fixed: [ruby-dev:25133]
37657 Thu Dec  9 03:08:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37659         * ext/tcltklib/tcltklib.c (ip_init): set root-win title to "ruby" when
37660           the running script is '-e one-liner' or '-' (stdin).
37662         * ext/tcltklib/extconf.rb: add find_library("#{lib}#{ver}",..) for
37663           stub libs
37665         * ext/tk/lib/tk/textmark.rb: TkTextMarkCurrent and TkTextMarkAnchor
37666           have a wrong parent class.
37668         * ext/tk/lib/tk/dialog.rb: rename TkDialog2 --> TkDialogObj and
37669           TkWarning2 --> TkWarningObj (old names are changed to alias names)
37671         * ext/tk/lib/tk/dialog.rb: bug fix of treatment of 'prev_command'
37672           option and hashes for configuration
37674         * ext/tk/lib/tk/dialog.rb: add TkDialogObj#name to return the
37675           button name
37677         * ext/tk/lib/tk/radiobutton.rb: rename enbugged method value() ==>
37678           get_value() and value=(val) ==> set_value(val).
37680         * ext/tk/lib/tk/menu.rb: add TkMenu.new_menuspec
37682         * ext/tk/lib/tk/menu.rb: add alias (TkMenuButton = TkMenubutton,
37683           TkOptionMenuButton = TkOptionMenubutton)
37685         * ext/tk/lib/tk/event.rb: new method aliases (same as option keys of
37686           event_generate) for Event object
37688         * ext/tk/lib/tk/font.rb: configinfo returns proper types of values
37690         * ext/tk/lib/tk.rb: bind methods accept subst_args + block
37692         * ext/tk/lib/tk/canvas.rb: ditto
37694         * ext/tk/lib/tk/canvastag.rb: ditto
37696         * ext/tk/lib/tk/frame.rb: ditto
37698         * ext/tk/lib/tk/text.rb: ditto
37700         * ext/tk/lib/tk/texttag.rb: ditto
37702         * ext/tk/lib/tk/toplevel.rb: ditto
37704         * ext/tk/lib/tkextlib/*: ditto and bug fix
37706 Wed Dec  8 23:54:29 2004  Dave Thomas  <dave@pragprog.com>
37708         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Typo
37709           meant that h2 tag was invisible.
37711 Wed Dec  8 22:10:02 2004  Tanaka Akira  <akr@m17n.org>
37713         * rubyio.h, io.c, ext/dl/dl.c, ext/pty/pty.c, ext/socket/socket.c:
37714           create FILE object only when required: popen(3) and DL's IO#to_ptr.
37715           [ruby-dev:25122]
37717         * io.c (rb_io_binmode): use setmode for Human68k.  [ruby-dev:25121]
37719 Wed Dec  8 20:13:06 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37721         * process.c (rb_spawn): support for DJGPP.
37723         * lib/mkmf.rb (VPATH): specify the implicit path separator for DJGPP.
37725 Wed Dec  8 17:48:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37727         * eval.c (proc_invoke): merge Guy Decoux's argument preserve
37728           patch in [ruby-core:03874].
37730 Wed Dec  8 17:37:33 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37732         * win32/win32.c (rb_w32_pipe_exec): need to close original socket
37733           handle.
37735 Wed Dec  8 14:31:36 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37737         * sprintf.c (rb_f_sprintf): [ruby-dev:25104]
37739 Wed Dec  8 13:49:46 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37741         * win32/win32.c (rb_w32_pipe_exec): must close original handle
37742           before exec. fixed: [ruby-dev:25112]
37744 Wed Dec  8 11:46:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37746         * parse.y (string_content): get rid of segfault at empty evstr.
37747           fixed: [ruby-dev:25113]
37749 Wed Dec  8 03:26:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37751         * ext/openssl/ossl_bio.c (ossl_obj2bio): should not use fptr->f.
37752           [ruby-dev:25101]
37754 Wed Dec  8 03:26:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37756         * runruby.rb: prepend LIBRUBY_SO to LD_PRELOAD as well as rubytest.rb.
37758 Wed Dec  8 01:35:44 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37760         * win32/win32.c (is_socket): reorder of function definitions.
37762 Wed Dec  8 00:44:31 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37764         * io.c (pipe_open): win32 bidirectional pipe support.
37766         * win32/win32.[ch] (rb_w32_pipe_exec): ditto.
37768         * win32/win32.[ch] (socketpair): new function. POSIX socketpair
37769           emulation.
37771         * win32/win32.c (socketpair_internal): ditto.
37773 Wed Dec  8 00:25:07 2004  Kouhei Sutou  <kou@cozmixng.org>
37775         * test/rss/test_version.rb: added version check test.
37776           [ruby-dev:25053]
37778 Tue Dec  7 15:40:38 2004  Tanaka Akira  <akr@m17n.org>
37780         * io.c (io_fwrite): avoid context switch before writing to stderr.
37781           [ruby-dev:25080]
37783         * rubyio.h: refine deprecated declaration.
37785         * configure.in, file.c, io.c: remove useless check: fseeko, etc.
37787 Tue Dec  7 13:42:07 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37789         * dir.c (dir_s_mkdir): win32 special processing doesn't need any
37790           longer.
37792         * win32/win32.[ch] (rb_w32_mkdir): new function. POSIX.1 compatible
37793           interface.
37795         * win32/win32.[ch] (rb_w32_rmdir): new function.
37797 Tue Dec  7 00:27:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37799         * process.c (proc_setgroups): [ruby-dev:25081]
37801 Mon Dec  6 23:07:57 2004  Tanaka Akira  <akr@m17n.org>
37803         * configure.in: check -lsocket for socketpair and shutdown.
37804           reported by Ville Mattila.  [ruby-core:03903]
37806 Mon Dec  6 23:00:45 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37808         * configure.in (ac_cv_sizeof_rlim_t): setup for DJGPP.
37810         * io.c (is_socket, shutdown): define dummy macros for DJGPP.
37812         * process.c: use SIZEOF_RLIM_T instead of HAVE_RLIM_T for DJGPP.
37814 Mon Dec  6 21:19:40 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37816         * io.c (is_socket): fix typos. [ruby-core:03900]
37818 Mon Dec  6 20:13:28 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37820         * io.c (is_socket): new function.
37822         * io.c (rb_io_close_read, rb_io_close_write): use is_socket().
37824         * io.c (rb_io_fptr_finalize): need to check fptr->f before calling
37825           rb_io_fptr_cleanup().
37827         * io.c (pipe_open): win32 pipe support (experimental).
37829         * win32/win32.[ch] (rb_w32_pipe_exec): return file descriptors
37830           instead of FILE structure objects.
37832         * win32/win32.[ch] (rb_w32_is_socket): new function.
37834 Mon Dec  6 19:40:40 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37836         * Makefile.in (.y.c): simplify the rule.
37838 Mon Dec  6 18:08:10 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37840         * re.c (rb_reg_eqq): document fix.  [ruby-talk:122541]
37842 Mon Dec  6 17:49:30 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37844         * eval.c (run_trap_eval): add prototype for Microsoft compiler.
37846 Mon Dec  6 17:32:38 2004  Tanaka Akira  <akr@m17n.org>
37848         * rubyio.h, intern.h, io.c, file.c, process.c, ext/socket/socket.c,
37849           ext/pty/pty.c, ext/io/wait/wait.c, ext/openssl/ossl_ssl.c:
37850           Use own buffering mechanism instead of stdio.  [ruby-dev:25056]
37852         * io.c, ext/stringio/stringio.c, test/ruby/ut_eof.rb:
37853           EOF flag removed.
37855 Mon Dec  6 17:15:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37857         * test/socket/test_socket.rb (TestBasicSocket#test_setsockopt):
37858           BasicSocket#setsockopt dumps core.  [ruby-dev:25039]
37860         * test/socket/test_tcp.rb (TestTCPSocket#test_recvfrom):
37861           TCPSocket#recvfrom dumps core.  [ruby-dev:24705]
37863         * test/socket/test_udp.rb (TestUDPSocket#test_connect):
37864           UDPSocket#connect dumps core.  [ruby-dev:25045]
37866         * test/socket/test_udp.rb (TestUDPSocket#test_bind):
37867           UDPSocket#bind dumps core.  [ruby-dev:25057]
37869 Mon Dec  6 09:59:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37871         * io.c (io_fread): take VALUE argument.
37873         * ext/socket/socket.c (sock_connect): use rb_str_new4().
37874           [ruby-dev:25052]
37876         * eval.c (rb_yield_0): [ruby-dev:25051]
37878 Mon Dec  6 01:32:31 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37880         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_public_encrypt,
37881           ossl_rsa_public_decrypt, ossl_rsa_private_encrypt,
37882           ossl_rsa_private_decrypt): should take an optional argument
37883           to specify padding mode. [ruby-talk:122539]
37885         * ext/openssl/ossl_pkey_rsa.c (Init_ossl_rsa): add new constants
37886           PKCS1_PADDING, SSLV23_PADDING, NO_PADDING and PKCS1_OAEP_PADDING
37887           under OpenSSL::PKey::RSA.
37889         * test/openssl/test_pkey_rsa.rb: new file.
37891 Sun Dec  5 19:39:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37893         * lib/optparse.rb (OptionParser::Completion#complete): new parameter
37894           to direct case insensitiveness.
37896         * lib/optparse.rb (OptionParser#order!): ignore case only for long
37897           option.  [ruby-dev:25048]
37899 Sun Dec  5 00:54:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37901         * mkconfig.rb: setup library paths before requiring library.
37902           [ruby-core:03892]
37904 Sat Dec  4 22:54:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37906         * io.c (io_write): remove rb_str_locktmp().  [ruby-dev:25050]
37908         * io.c (io_fwrite): takes VALUE string as an argument.
37909           [ruby-dev:25050]
37911         * ext/socket/socket.c (sock_connect): remove rb_str_locktmp().
37912           [ruby-dev:25050]
37914         * ext/socket/socket.c (udp_connect): [ruby-dev:25045]
37916         * ext/socket/socket.c (udp_bind): ditto.
37918         * ext/socket/socket.c (udp_send): ditto.
37920         * ext/socket/socket.c (bsock_send): ditto.
37922         * ext/socket/socket.c (s_recvfrom): ditto.
37924         * hash.c (rb_hash_hash): should provide "hash" method where "eql?"
37925           is redefined.  [ruby-talk:122482]
37927 Sat Dec  4 21:29:05 2004  Minero Aoki  <aamine@loveruby.net>
37929         * lib/fileutils.rb: (In previous commit) new method chown.
37931         * lib/fileutils.rb: (In previous commit) new method chown_R.
37933         * lib/fileutils.rb: (In previous commit) new method chmod_R
37934           wrongly added.  Removed now.
37936 Sat Dec  4 20:45:52 2004  Minero Aoki  <aamine@loveruby.net>
37938         * lib/fileutils.rb (mkdir, mkdir_p): should chmod explicitly.
37939           [ruby-core:03881]
37941 Sat Dec  4 18:54:09 2004  Kouhei Sutou  <kou@cozmixng.org>
37943         * lib/rss/rss.rb: removed empty lines from output.
37945 Sat Dec  4 18:49:09 2004  Kouhei Sutou  <kou@cozmixng.org>
37947         * lib/rss/rss.rb (RSS::VERSION): 0.1.1 -> 0.1.2
37949         * lib/rss/rss.rb: #item=/#set_item and so on are obsolete.
37951 Sat Dec  4 14:28:56 2004  Dave Thomas  <dave@pragprog.com>
37953         * lib/rdoc/code_objects.rb (RDoc::Context::Section::set_comment):
37954           Section comments may now be bracketed by lines which are
37955           ignored. You can now write
37956               # -----------
37957               # :section: Dave's Section
37958               # comment material
37959               # -----------
37960            The lines before :section: are removed, and identical lines at the end are
37961            also removed if present.
37963 Sat Dec  4 00:35:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37965         * ext/socket/socket.c (bsock_setsockopt): [ruby-dev:25039]
37967 Fri Dec  3 12:25:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37969         * st.h: fix prototype for C++.
37971 Fri Dec  3 01:55:24 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37973         * ext/tk/lib/tk.rb: widget configuration by TkWindow#method_missing
37974           returns proper object. "widget.option = val" returns val, and
37975           "widget.option(val)" returns self.
37977         * ext/tk/lib/tk/font.rb: TkFont#replace accepts only one font argument.
37979         * ext/tk/lib/tk/radiobutton.rb: add TkRadiobutton#value and
37980           TkRadiobutton#value=(val).
37982         * ext/tk/lib/tk/spinbox.rb: callback substitution support on
37983           command option.
37985         * ext/tk/sample/demos-en/widget: bug fix (wrong image height)
37987         * ext/tk/sample/demos-jp/widget: ditto.
37989 Fri Dec  3 00:21:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37991         * eval.c (proc_invoke): prepare to pass a block from "call" method
37992           to a Proc generated by Method#to_proc.  [ruby-dev:25031]
37994         * eval.c (rb_yield_0): actually passes a block given to "call".
37996         * object.c (convert_type): use rb_respond_to() again.  this fix is
37997           based on [ruby-dev:25021]
37999         * eval.c (rb_respond_to): funcall respond_to? if it's redefined.
38000           [ruby-dev:25021]
38002 Thu Dec  2 15:13:53 2004  Michael Neumann  <mneumann@ruby-lang.org>
38004         * test/xmlrpc/test_parser.rb, test/xmlrpc/data/*.expected: Expected
38005           values are now stored in YAML instead of using #inspect. This fixes
38006           false hash order.
38008 Fri Dec  3 00:11:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38010         * io.c (rb_file_initialize): [ruby-dev:25032]
38012 Thu Dec  2 16:41:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38014         * eval.c (rb_protect): prevent continuations created inside from being
38015           called from the outside.  [ruby-dev:25003]
38017         * eval.c (rb_callcc, rb_cont_call): prohibit calling from different
38018           signal contexts.  [ruby-dev:25022]
38020 Thu Dec  2 10:45:02 2004  Shugo Maeda  <shugo@ruby-lang.org>
38022         * test/readline/test_readline.rb: fix for NetBSD.
38024 Thu Dec  2 09:57:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38026         * lib/ostruct.rb (OpenStruct::Marshaler): OpenStruct can be
38027           marshaled again.  [ruby-core:03862]
38029 Thu Dec  2 09:30:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38031         * eval.c (thread_mark): mark thread group.  [ruby-dev:25020]
38033         * eval.c (thgroup_add): check whether the argument is really a Thread.
38035 Thu Dec  2 07:57:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38037         * io.c (rb_io_ctl): [ruby-dev:25019]
38039 Wed Dec  1 06:13:00 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38041         * ext/nkf/nkf.c: add constant NKF::VERSION
38043         * ext/nkf/nkf.c(guess): this becomes an alias of guess2
38045         * ext/nkf/test.rb: add --no-cp932
38047         * ext/nkf/nkf-utf8/nkf.c: original nkf2 revision 1.47
38049 Wed Dec  1 02:21:02 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38051         * signal.c (sighandler): call handler immediately only for default
38052           handlers.  [ruby-dev:25003]
38054 Tue Nov 30 23:49:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38056         * io.c (pipe_open): errno should be preserved for rb_sys_fail() when
38057           fork failed.
38059 Tue Nov 30 16:18:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38061         * io.c (io_fread): need not to null terminate.  [ruby-dev:24998]
38063         * eval.c (rb_eval): should check previous frame for ZSUPER.
38065         * io.c (read_all): remove unnecessary rb_str_resize().
38066           [ruby-dev:24996]
38068         * io.c (io_readpartial): ditto.
38070         * io.c (io_read): ditto.
38072 Tue Nov 30 14:58:33 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38074         * instruby.rb (install): add arguments explicitly to "super".
38076 Tue Nov 30 00:49:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38078         * eval.c (PUSH_FRAME): flags should have been initialized.
38080         * eval.c (rb_eval): [ruby-core:03856]
38082         * io.c (rb_io_sysread): use temporary lock.  [ruby-dev:24992]
38084 Tue Nov 30 00:12:57 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
38086         * regparse.c: now handles many alternatives (over 500000)
38087           in regexp. [ruby-dev:24773]
38089 Mon Nov 29 16:06:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38091         * ext/stringio/stringio.c (strio_write): insufficiently filled string
38092           being extended when overwriting.  [ruby-core:03836]
38094 Mon Nov 29 15:59:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38096         * lib/ostruct.rb (OpenStruct::method_missing): check method
38097           duplication for -d.
38099         * lib/ostruct.rb (OpenStruct::initialize): ditto.
38101 Mon Nov 29 15:22:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38103         * test/io/nonblock/test_flush.rb: abandon tests when io/nonblock is
38104           not supported.
38106 Mon Nov 29 13:37:54 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38108         * io.c (fptr_finalize): must not use FILE after fclose().
38109           [ruby-dev:24985]
38111 Mon Nov 29 13:13:13 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38113         * win32/win32.c (CreateChild): push back the last space before next
38114           loop because CharNext() eats it.
38116 Mon Nov 29 03:08:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38118         * object.c (convert_type): [ruby-core:03845]
38120         * eval.c (rb_funcall_rescue): new function.
38122         * object.c (rb_Array): avoid using rb_respond_to().
38124         * object.c (rb_Integer): ditto.
38126         * eval.c (get_backtrace): no conversion for nil.
38128         * parse.y (reduce_nodes): empty body should return nil.
38130 Mon Nov 29 01:18:18 2004  Tanaka Akira  <akr@m17n.org>
38132         * io.c (rb_io_check_writable): call io_seek regardless of
38133           NEED_IO_SEEK_BETWEEN_RW.  [ruby-dev:24986]
38135 Sun Nov 28 15:57:58 2004  Kouhei Sutou  <kou@cozmixng.org>
38137         * lib/rss/rss.rb (RSS::Element#tag): not use block_given? for
38138           working with ruby 1.6 again.
38140         * lib/rss/{0.9,2.0,trackback}.rb, lib/rss/maker/base.rb:
38141           undef -> remove_method for working with ruby 1.6 again.
38143 Sun Nov 28 15:51:40 2004  Kouhei Sutou  <kou@cozmixng.org>
38145         * lib/rss/rss.rb (RSS::NotSetError): added.
38147         * lib/rss/maker/{1.0,0.9,2.0}.rb: changed RSS Maker to raise
38148           RSS::NotSetError if required values of maker.channel are not
38149           set. [ruby-talk:120061]
38151         * test/rss/test_maker_{1.0,0.9,2.0}.rb: changed tests to check RSS
38152           Maker raises or not.
38154 Sun Nov 28 12:14:47 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
38156         * regparse.c (fetch_token): fixed test failure on HP-UX ia64
38157           ([ruby-dev:24859]).
38159 Sun Nov 28 12:08:15 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
38161         * regparse.c, test/ruby/test_regexp.rb: fixed problem with UTF-8
38162           characters that have U+00FE or invalid characters.
38164 Sun Nov 28 12:07:04 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
38166         * regexec.c, test/ruby/test_regexp.rb: fixed segmentation fault
38167           ([ruby-dev:24887]).
38169 Sun Nov 28 12:05:48 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
38171         * regcomp.c, regint.h: fixed PLATFORM_UNALIGNED_WORD_ACCESS
38172           problem ([ruby-dev:24802] and [ruby-core:3733])
38174 Sat Nov 27 23:43:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38176         * io.c (rb_io_initialize): [ruby-dev:24972]
38178 Sat Nov 27 21:43:39 2004  Tanaka Akira  <akr@m17n.org>
38180         * io.c: avoid data lost with nonblocking fd and
38181           stdio buffering in sync mode.  [ruby-dev:24966]
38182           based on matz's patch [ruby-dev:24967]
38183           (io_fwrite): new primitive writing function which writes
38184           directly if sync mode.
38185           (rb_io_fwrite): wrapper for io_fwrite now.
38186           (io_write): call io_fwrite instead of rb_io_fwrite.
38188 Sat Nov 27 17:43:21 2004  Kouhei Sutou  <kou@cozmixng.org>
38190         * lib/rss/{0.9,1.0,2.0,trackback,xml-stylesheet}.rb: added
38191           #setup_maker.
38193         * test/rss/test_setup_maker_*.rb: added tests for #setup_maker.
38195         * lib/rss/maker/base.rb(RSS::Maker::Items#max_size=): supported
38196           output item size limitation.
38198         * sample/rss/blend.rb: added sample for RSS Maker.
38200 Sat Nov 27 17:41:35 2004  Kouhei Sutou  <kou@cozmixng.org>
38202         * lib/rss/maker/0.9.rb: supported RSS::Maker.make("0.91"). Now,
38203           "0.9" is just alias of "0.91."
38205         * test/rss/test_maker_0.9.rb: make("0.9") -> maker("0.91").
38207         * test/rss/test_to_s.rb: ditto.
38209 Sat Nov 27 17:21:30 2004  Kouhei Sutou  <kou@cozmixng.org>
38211         * sample/rss/list_description.rb: untabified.
38213         * sample/rss/rss_recent.rb: ditto.
38215 Sat Nov 27 14:44:15 2004  Kent Sibilev  <ksibilev@bellsouth.net>
38217         * lib/cgi/session.rb (CGI::Session::initialize): [ruby-core:03832]
38219 Sat Nov 27 09:41:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38221         * io.c (io_fread): old rb_io_fread with file closing checking.
38222           (rb_io_fread): wrapper for io_fread now.
38223           [ruby-dev:24964]
38225 Fri Nov 26 18:02:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38227         * ext/tk/lib/tk.rb: Tk.destroy uses TkWindow#epath
38229         * ext/tk/lib/tk/image.rb: bug fix
38231         * ext/tk/lib/tk/wm.rb: add 'iconphoto' method(Windows only)
38233         * ext/tk/lib/tkextlib/*: some methods uses TkWindow#epath
38235 Fri Nov 26 14:29:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38237         * io.c (rb_io_initialize): uninitialized fd was checked to see open
38238           mode.  [ruby-dev:24963]
38240         * io.c (rb_io_initialize): uninitialized fd was used.  [ruby-dev:24962]
38242 Fri Nov 26 13:49:06 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38244         * io.c (rb_io_initialize): should retrieve flags from copying file
38245           descriptor. [ruby-dev:24961]
38247         * eval.c (method_missing): raise TypeError for classes do not
38248           have allocators.  [ruby-core:03752]
38250         * lib/erb.rb: add RDoc by James Edward Gray II.  [ruby-core:03786]
38252 Fri Nov 26 13:29:02 2004  Dave Thomas  <dave@pragprog.com>
38254         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::look_for_directives_in): Break
38255           out of preprocessing when we find a :section: directive (previously cleared out the
38256           comment, but this apparently now generates an error in gsub!)
38258 Fri Nov 26 00:17:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38260         * io.c (io_read): move StringValue() check before GetOpenFile().
38261           [ruby-dev:24959]
38263 Thu Nov 25 20:14:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38265         * lib/thwait.rb (ThreadsWait#join_nowait): abnormally terminated
38266           threads should be also processed.  [ruby-talk:121320]
38268 Thu Nov 25 18:06:37 2004  Tanaka Akira  <akr@m17n.org>
38270         * configure.in: AC_CHECK_SIZEOF(rlim_t) to include stdio.h to fix
38271           problem with autoconf 2.52 or earlier.
38272           revert AC_PREREQ to 2.50.
38273           [ruby-core:3809]
38275 Thu Nov 25 07:59:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38277         * configure.in: AC_PREREQ(2.53) [ruby-core:03800]
38279         * io.c (read_all): stringify non-nil buffer argument, and always
38280           taint the result.  [ruby-dev:24955]
38282 Wed Nov 24 01:01:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38284         * io.c (io_read): integer conversion should be prior to
38285           GetOpenFile().  [ruby-dev:24952]
38287         * configure.in, io.c: cancel [ ruby-Patches-1074 ].
38289 Tue Nov 23 08:09:50 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38291         * ext/tk/lib/tk/menu.rb: improve usability of TkOptionMenubutton
38293 Tue Nov 23 02:00:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38295         * file.c (rb_file_chown): integer conversion should be prior to
38296           GetOpenFile().  [ruby-dev:24949]
38298 Tue Nov 23 00:10:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38300         * file.c (rb_file_chown): integer conversion should be prior to
38301           GetOpenFile().  [ruby-dev:24947]
38303         * file.c (rb_file_truncate): ditto.
38305         * file.c (rb_file_s_truncate): ditto.
38307         * dir.c (dir_seek): use NUM2OFFT().
38309         * misc/ruby-mode.el (ruby-non-block-do-re): [ruby-core:03719]
38311 Mon Nov 22 22:33:02 2004  Dave Thomas  <dave@pragprog.com>
38313         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_require): Don't use names
38314           of variables or constants when parsing 'require'
38316 Mon Nov 22 00:13:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38318         * dir.c (dir_seek): should retrieve dir_data after NUM2INT().
38319           [ruby-dev:24941]
38321 Sat Nov 20 23:57:33 2004  Dave Thomas  <dave@pragprog.com>
38323         * lib/rdoc/README (et al): Add a new directive, :section:, and
38324           change the output format to accommodate. :section: allows to to
38325           group together methods, attributes, constants, etc under
38326           headings in the output. If used, a table of contents is
38327           generated.
38329 Sat Nov 20 23:56:54 2004  Dave Thomas  <dave@pragprog.com>
38331         * lib/rdoc/options.rb (Options::parse): Force --inline-source if
38332           --one-file option given
38334 Sat Nov 20 23:55:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38336         * string.c (rb_str_splice): should place index wrapping after
38337           possible modification.  [ruby-dev:24940]
38339 Sat Nov 20 23:25:12 2004  Minero Aoki  <aamine@loveruby.net>
38341         * io.c (rb_io_getline): f.gets("") did not work. [ruby-core:03771]
38343         * test/ruby/test_io.rb (test_gets_rs): test it.
38345 Sat Nov 20 22:55:09 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38347         * test/runner.rb (CROSS_COMPILING): need to require rbconfig.rb before
38348           using CROSS_COMPILNG.
38350 Sat Nov 20 20:42:42 2004  Minero Aoki  <aamine@loveruby.net>
38352         * ext/ripper/depend: fix ripper.o dependency.
38354 Sat Nov 20 17:48:29 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38356         * io.c (io_reopen): work around problem with Cygwin fseeko
38357           returning ESPIPE.
38359 Sat Nov 20 05:34:24 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38361         * ext/nkf/nkf-utf8/nkf.c: original nkf.c rev:1.40
38363         * ext/nkf/test.rb: add test for mime encode/decode
38365 Sat Nov 20 01:45:04 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38367         * test/xmlrpc/test_webrick_server.rb: move `requrie "webrick/https"'
38368           into #setup_http_server method to avoid soap test errors.
38370 Sat Nov 20 01:37:34 2004  Johan Holmberg  <holmberg@iar.se>
38372         * eval.c (error_print): nicer traceback at interrupt.
38373           [ruby-core:03774]
38375 Sat Nov 20 00:07:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38377         * string.c (str_gsub): internal buffer should not be listed by
38378           ObjectSpace.each_object() by String#gsub.  [ruby-dev:24931]
38380 Fri Nov 19 22:44:43 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38382         * lib/test/unit/collector/dir.rb: better support for -p/-x option.
38384 Fri Nov 19 17:46:56 2004  Kouhei Sutou  <kou@cozmixng.org>
38386         * lib/rss/maker/0.9.rb (RSS::Maker::RSS09::Image#have_required_values):
38387           changed /rss/channel/image to be optional. [ruby-Bugs:1047]
38389         * test/rss/test_maker_0.9.rb: added tests for the above.
38391 Fri Nov 19 17:18:17 2004  Kouhei Sutou  <kou@cozmixng.org>
38393         * lib/rss/rss.rb (RSS::VERSION): 0.1.0 -> 0.1.1.
38395         * lib/rss: #to_s used #tag.
38397         * test/rss/test_to_s.rb: added.
38399         * lib/rss/maker.rb (RSS::Maker.make): changed API. It's not
38400           received modules which is used as the second argument.
38402         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#alternate):
38403           changed return value type which is not String but Boolean.
38405         * lib/rss/2.0.rb (RSS::Rss::Channel#ttl): changed return value
38406           type which is not String but Integer.
38408         * lib/rss/0.9.rb (RSS::Rss::Channel): <skipDays> has <day>s and
38409           <skipHours> has <hour>s.
38411         * lib/rss/maker/0.9.rb (RSS::Maker::RSS09::Channel): ditto.
38413         * lib/rss/0.9.rb (RSS::Rss::Channel::Item): <item> has <category>s.
38415         * lib/rss/maker/2.0.rb (RSS::Maker::Rss20::Channel::Item): ditto.
38417         * lib/rss/2.0.rb (RSS::Rss::Channel): <channel> has <category>s.
38419         * lib/rss/maker/2.0.rb (RSS::Maker::RSS20::Channel): ditto.
38421         * lib/rss/trackback.rb: parent element has <trackback:about>s.
38423         * lib/rss/maker/trackback.rb: ditto.
38425 Fri Nov 19 11:10:16 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38427         * lib/test/unit/collector/dir.rb: add support for directory name
38428           with -p/-x options.
38430         * test/testunit/collector/test_dir.rb: ditto.
38432         * lib/xmlrpc/datetime.rb (XMLRPC::DateTime#==): should use Array()
38433           instead of to_a.
38435 Fri Nov 19 10:32:36 2004  Shugo Maeda  <shugo@ruby-lang.org>
38437         * ext/readline/readline.c (readline_s_set_completion_append_character):
38438           accept nil.  [ruby-core:03765]
38440 Fri Nov 19 01:20:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38442         * lib/cgi/session.rb (CGI::Session::FileStore::initialize): raise
38443           exception if data corresponding to session specified from the
38444           client does not exist.
38446 Fri Nov 19 00:59:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38448         * string.c (str_gsub): internal buffer should not be listed by
38449           ObjectSpace.each_object().  [ruby-dev:24919]
38451 Thu Nov 18 23:42:36 2004  Minero Aoki  <aamine@loveruby.net>
38453         * ext/ripper/depend: Never regenerate lib/ripper/core.rb
38454           automatically. [ruby-dev:24911]
38456 Thu Nov 18 20:47:24 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38458         * win32/win32.[ch] (rb_w32_isatty): new function to replace MSVCRT's
38459           isatty because it never sets errno.
38461 Thu Nov 18 18:41:08 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
38463         * test/ruby/test_stringchar.rb (test_bang): added.
38465         * string.c (rb_str_upcase_bang, rb_str_capitalize_bang)
38466           (rb_str_swapcase_bang): missing rb_str_modify().
38468 Thu Nov 18 17:05:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38470         * parse.y (f_rest_arg): store rest args into invisible local variable
38471           in order to get rid of SEGV at ZSUPER.  [ruby-dev:24913]
38473 Thu Nov 18 15:39:52 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38475         * hash.c (rb_f_getenv): prohibit for $SAFE=4. [ruby-dev:24908]
38477 Thu Nov 18 14:58:42 2004  Shugo Maeda  <shugo@ruby-lang.org>
38479         * ext/readline/readline.c: check $SAFE.
38481         * test/readline/test_readline.rb: added tests for readline.
38483 Thu Nov 18 00:21:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38485         * process.c (proc_getpgrp): prohibit for $SAFE=2.
38486           [ruby-dev:24899]
38488         * process.c (get_pid): ditto.  [ruby-dev:24904]
38490         * process.c (get_ppid): ditto.
38492         * array.c (rb_ary_delete): defer rb_ary_modify() until actual
38493           modification.  [ruby-dev:24901]
38495 Thu Nov 18 10:10:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38497         * io.c, rubyio.h (rb_io_modenum_flags): exported.
38499         * ext/stringio/stringio.c (strio_initialize): allow Fixnum as mode as
38500           well as IO.new does.  [ruby-dev:24896]
38502 Wed Nov 17 23:47:30 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38504         * test/ruby/test_settracefunc.rb: added.  [ruby-dev:24884]
38506 Wed Nov 17 18:59:16 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
38508         * process.c (proc_getrlimit, proc_setrlimit): add rb_secure(2) to
38509           methods of Process.{getrlimit,setrlimit}
38511 Wed Nov 17 13:56:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38513         * parse.y (newline_node): should not use FL_SET. [ruby-dev:24874]
38515         * parse.y (string_content): should not use FL_UNSET.
38517         * node.h (NODE_NEWLINE): remove unused bit to utilize flag field
38518           in nodes.
38520 Wed Nov 17 13:05:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38522         * dir.c (rb_push_glob): fix overrun.  [ruby-dev:24886]
38524 Wed Nov 17 11:48:17 2004  Michael Neumann  <mneumann@ruby-lang.org>
38526         * lib/xmlrpc/parser.rb, test/xmlrpc/test_features.rb: fixed "assigning
38527           to constants" warnings
38529 Wed Nov 17 09:38:18 2004  Johan Holmberg  <holmberg@iar.se>
38531         * re.c (rb_reg_initialize_m): should raise exception instead of
38532           compile error.  [ruby-core:03755]
38534 Wed Nov 17 03:42:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38536         * string.c (rb_str_splice): move rb_str_modify() after
38537           StringValue(), which may alter the receiver.  [ruby-dev:24878]
38539         * error.c (rb_error_frozen): now raise RuntimeError instead of
38540           TypeError.
38542 Tue Nov 16 21:22:47 2004  Michael Neumann  <mneumann@ruby-lang.org>
38544         * lib/xmlrpc/server.rb (CGIServer): fixed bug when client sends
38545           "Content-typ: text/xml; ..."
38547 Tue Nov 16 23:45:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38549         * numeric.c (flo_divmod): protect float values from GC by
38550           assignment to local variables.  [ruby-dev:24873]
38552 Tue Nov 16 14:31:54 2004  Michael Neumann  <mneumann@ruby-lang.org>
38554         * test/xmlrpc/*: imported and refactored original test cases.
38556         * test/xmlrpc/test_webrick_server.rb, test/xmlrpc/webrick_testing.rb:
38557           added test case that starts up a WEBrick XML-RPC server and performs
38558           some tests on it (both http and https servers are started).
38560         * lib/xmlrpc/create.rb (XMLWriter::each_installed_writer),
38561           lib/xmlrpc/parser.rb (XMLParser::each_installed_parser):
38562           added methods to simply original test cases
38564         * lib/xmlrpc/parser.rb, lib/xmlrpc/datetime.rb: applied patch by
38565           MoonWolf <moonwolf@moonwolf.com> to allow parsing datetime.iso8601
38566           (e.g. 20041105T01:15:23Z).
38568         * lib/xmlrpc/server.rb: fixed issue #998
38569           (http://rubyforge.org/tracker/?func=detail&atid=1700&aid=998&group_id=426)
38571         * lib/xmlrpc/create.rb, lib/xmlrpc/utils.rb: when marshalling/loading
38572           user-defined data structures, use Class#allocate instead of defining
38573           an empty #initialize method. module XMLRPC::Marshallable is now only
38574           used for tagging.
38576         * lib/xmlrpc/.document, lib/xmlrpc/README.rdoc: added howto
38578 Tue Nov 16 16:26:12 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38580         * {bcc32,win32,wince}/setup.mak (-epilogue-): remove config.h and
38581           config.status to force updating them.
38583 Tue Nov 16 16:20:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38585         * ext/stringio/stringio.c (strio_read): position was ignored when a
38586           buffer was passed.  http://www.yo.rim.or.jp/~nov/d/?date=20041116#p03
38588 Tue Nov 16 13:35:54 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38590         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::options): add
38591           new option --exclude (-x) to skip some tests. [ruby-core:3363],
38592           [ruby-dev:24865]
38594         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir.exclude):
38595           ditto.
38597 Tue Nov 16 11:19:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38599         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::options): use
38600           Regexp conversion.
38602 Tue Nov 16 01:41:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38604         * string.c (str_mod_check): frozen check should be separated.
38605           [ruby-core:3742]
38607         * array.c (rb_ary_update): pedantic check to detect
38608           rb_ary_to_ary() to modify the receiver.  [ruby-dev:24861]
38610 Mon Nov 15 18:58:05 2004  Tanaka Akira  <akr@m17n.org>
38612         * configure.in: check rlim_t more portably. [ruby-core:3735]
38614 Mon Nov 15 11:50:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38616         * misc/ruby-mode.el (ruby-special-char-p, ruby-parse-partial): handle
38617           operator symbols.  [ruby-talk:120177]
38619 Mon Nov 15 08:58:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38621         * eval.c (Init_Proc): make proc as an alias to Proc.new.
38622           [ruby-dev:24848]
38624 Mon Nov 15 00:46:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38626         * eval.c (rb_yield_0): lambda{}.call(1) should raise exception.
38627           [ruby-talk:120253]
38629 Mon Nov 15 00:33:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38631         * string.c (rb_str_clear): avoid revealing NULL pointer.
38632           [ruby-dev:24766]
38634         * string.c (str_gsub): add paranoid check. [ruby-dev:24827]
38636         * string.c (str_mod_check): check frozen status as well.
38637           [ruby-dev:24801]
38639 Sun Nov 14 18:59:03 2004  Tanaka Akira  <akr@m17n.org>
38641         * process.c (proc_getrlimit): new function for Process.getrlimit.
38642           (proc_setrlimit): new function for Process.setrlimit.
38643           [ruby-dev:24834]
38645         * configure.in: check rlim_t and its size.  check setrlimit.
38647         * ruby.h (NUM2ULL): new macro.
38649 Sun Nov 14 13:27:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38651         * lib/pp.rb (PP#object_address_group): remove odd number of 'f'
38652           prefixed to negative address.
38654 Sun Nov 14 10:48:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38656         * lib/mathn.rb (Integer::gcd2): faster implementation by
38657           <erlercw@siu.edu>. [ruby-talk:120232]
38659 Sun Nov 14 08:46:33 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38661         * test/logger/test_logger.rb: Logger just expects
38662           Logger#datetime_format to be used for Time#strftime independently of
38663           locale. [ruby-dev:24828]
38665 Fri Nov 12 17:32:07 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38667         * bcc32/README.bcc32, win32/README.win32: need bison instead of
38668           byacc.
38670 Fri Nov 12 15:15:06 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38672         * eval.c (ruby_options): now we cannot call rb_glob() before
38673           ruby_init(), so call rb_w32_cmdvector() at ruby_options().
38675         * win32/win32.{c,h} (rb_w32_cmdvector): rename make_cmdvector() and
38676           export it.
38678 Fri Nov 12 14:08:01 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38680         * ext/tk/lib/tk/event.rb: remove $LOADED_FEATURES trick
38682         * ext/tk/lib/tk.rb: ditto
38684 Fri Nov 12 00:31:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38686         * ext/gdbm/gdbm.c (fgdbm_store): StringValue() may alter string
38687           pointer.  [ruby-dev:24783]
38689 Thu Nov 11 17:58:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38691         * dir.c (rb_glob): should have called rb_glob_caller().
38692           [ruby-dev:24773]
38694 Thu Nov 11 16:56:10 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38696         * test/ruby/test_file.rb (test_truncate_wbuf): we want to test
38697           only File#truncate, not behavior of seek(2).
38699 Thu Nov 11 01:52:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38701         * error.c (syserr_initialize): use stringified object.
38702           [ruby-dev:24768]
38704 Wed Nov 10 22:49:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38706         * lib/delegate.rb (SimpleDelegator::dup): wrong number of
38707           arguments.
38709         * lib/delegate.rb (DelegateClass::dup): ditto.
38711 Wed Nov 10 19:47:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38713         * dir.c (glob_helper): path is a string object now.
38715 Wed Nov 10 12:31:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38717         * README.EXT (Example): extconf.rb is indispensable now.
38719 Wed Nov 10 03:33:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38721         * ext/tcltklib/tcltklib.c: fix SEGV when compiled with Tcl/Tk8.3.x
38722           or older
38724         * ext/tk/lib/tkextlib/tile/style.rb: bug fix
38726 Tue Nov  9 22:24:07 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38728         * ext/nkf: original nkf.c rev:1.38
38730         * ext/nkf/nkf.c: fix bug: can't parse long-name options
38732         * ext/nkf/test.rb: fix bug: mime tests fail
38734 Tue Nov  9 14:27:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38736         * lib/optparse.rb (OptionParser::Officious): moved from DefaultList.
38738 Tue Nov  9 00:50:06 2004  Dave Thomas  <dave@pragprog.com>
38740         * lib/rdoc/rdoc.rb: Change version numbering of RDoc and ri
38742 Tue Nov  9 01:05:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38744         * dir.c (rb_glob2): do not allocate buffer from heap to avoid
38745           memory leaks.  use string object for buffering instead.
38746           [ruby-dev:24738]
38748         * dir.c (join_path): ditto.
38750         * io.c (io_read): external input buffer may be modified even after
38751           rb_str_locktmp().  [ruby-dev:24735]
38753         * dir.c (fnmatch): p or s may be NULL.  [ruby-dev:24749]
38755 Tue Nov  9 00:36:26 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
38757         * lib/drb/extservm.rb: add DRb::ExtServManager#uri=.
38758           [ruby-dev:24743]
38760 Mon Nov  8 22:20:19 2004  Dave Thomas  <dave@pragprog.com>
38762         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
38763           Fix bug where parent class wasn't being detected if the
38764           child class was defined using the A::B notation.
38766 Mon Nov  8 00:14:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38768         * configure.in: add setup for mignw32 cross compiling.
38769           [ruby-talk:119413]
38771 Sun Nov  7 23:49:26 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38773         * ext/tk/lib/tk.rb: bind-event methods accept multi substitution
38774           arguments.
38776         * ext/tk/lib/tk/canvas.rb: ditto.
38778         * ext/tk/lib/tk/canvastag.rb: ditto.
38780         * ext/tk/lib/tk/text.rb: ditto.
38782         * ext/tk/lib/tk/texttag.rb: ditto.
38784         * ext/tk/lib/tkextlib: ditto.
38786 Sat Nov  6 20:40:16 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
38788         * ext/win32ole/win32ole.c: rename WIN32OLE#ole_obj_help to
38789           WIN32OLE#ole_type. alias ole_obj_help to ole_type.
38791         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
38793 Sat Nov  6 11:18:59 2004  Tadayoshi Funaba  <tadf@dotrb.org>
38795         * lib/date.rb (_parse): checks whether zone was given.
38797 Sat Nov  6 00:46:27 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38799         * string.c (rb_str_locktmp): check STR_TMPLOCK flag before
38800           locking.  [ruby-dev:24727]
38802 Fri Nov  5 19:07:16 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38804         * ext/nkf: follow CVS Head of original nkf.
38806 Fri Nov  5 18:12:42 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38808         * ext/tk/lib/tk/scrollable.rb: divide Scrollable module into
38809           X_Scrollable and Y_Scrollable
38811         * ext/tk/lib/tk/entry.rb: include X_Scrollable instead of Scrollable
38813         * ext/tk/lib/tk/autoload.rb: define autoload for X_Scrollable and
38814           Y_Scrollable
38816 Fri Nov  5 16:05:32 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38818         * ext/tk/lib/tk.rb: TkComm._at() supprts both of "@x,y" and "@x"
38820 Fri Nov  5 13:22:58 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38822         * ext/tk/lib/tk/text.rb: sorry. bug fix again.
38824 Fri Nov  5 13:17:54 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38826         * ext/tk/lib/tk/text.rb: bug fix
38828 Fri Nov  5 08:52:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38830         * gc.c (gc_mark): stricter GC stack check.
38832 Fri Nov  5 08:34:43 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38834         * string.c (str_gsub): should have removed rb_str_unlocktmp(str).
38835           [ruby-dev:24708]
38837         * ext/socket/socket.c (s_recvfrom): buffer modification check.
38838           [ruby-dev:24708]
38840 Thu Nov  4 23:54:21 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
38842         * regexec.c, regparse.c, regint.h: fixed conflicts between
38843           vendor branch.
38845 Thu Nov  4 23:41:55 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
38847         * ascii.c, euc_jp.c, oniggnu.h, oniguruma.h, regcomp.c,
38848           regenc.c, regenc.h, regerror.c, regexec.c, reggnu.c,
38849           regint.h, regparse.c, regparse.h, sjis.c, utf8.c:
38850           imported Oni Guruma 3.4.0.
38852         * parse.y, re.c: Now mbclen() takes unsigned char as
38853           its argument.
38855 Thu Nov  4 21:25:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38857         * string.c (str_gsub): string modify check no longer based on
38858           tmplock.  [ruby-dev:24706]
38860 Thu Nov  4 21:13:48 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
38862         * ext/win32ole/win32ole.c(typelib_file_from_typelib): search "win16"
38863           entry to get library path.
38865         * ext/win32ole/win32ole.c(oletypelib_path): ditto.
38867         * ext/win32ole/win32ole.c(ole_typedesc2val): add VT_LPWSTR, VT_LPSTR,
38868           VT_ERROR case.
38870 Thu Nov  4 15:02:14 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38872         * ext/tk/lib/tk/variable.rb: forget to initialize instance_variables
38873           of TkVarAccess objects
38875 Thu Nov  4 09:11:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38877         * gc.c (gc_mark): enable GC stack checking.
38879 Thu Nov  4 03:11:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38881         * string.c (str_gsub): lock strings temporarily.  [ruby-dev:24687]
38883         * ext/socket/socket.c (s_recvfrom): tmplock input buffer.
38884           [ruby-dev:24705]
38886 Wed Nov  3 22:24:17 2004  Daigo Moriwaki  <techml@sgtpepper.net>
38888         * lib/webrick/httpauth/digestauth.rb: use Base64.encode64 to
38889           avoid warnings.
38891 Wed Nov  3 17:19:59 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38893         * array.c (rb_ary_uniq_bang): do not push frozen string from hash
38894           table.  [ruby-dev:24695]
38896         * array.c (rb_ary_and): ditto.
38898         * array.c (rb_ary_or): ditto.
38900 Wed Nov  3 17:02:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38902         * ext/tk/lib/tk.rb: support to use different Tcl commands between
38903           configure and configinfo
38905         * ext/tk/lib/font.rb: ditto.
38907         * ext/tk/lib/itemconfig.rb: support to use different Tcl commands
38908           between item_configure and item_configinfo
38910         * ext/tk/lib/itemfont.rb: ditto.
38912         * ext/tk/extconf.rb: install SUPPORT_STATUS
38914         * ext/tk/lib/tkextlib: some bug fixes (see ext/tk/ChangeLog.tkextlib)
38916 Wed Nov  3 15:38:28 2004  Kouhei Sutou  <kou@cozmixng.org>
38918         * test/rss/*.rb: removed tab width configuration headers.
38920         * test/rss/test_maker_{0.9,1.0}.rb: sort -> do_sort.
38922         * lib/rss/maker/*.rb: changed API to RSS version independence.
38924         * lib/rss/maker/base.rb
38925           (RSS::Maker::XMLStyleSheets::XMLStyleSheet): checked required
38926           (pseudo) attributes.
38928         * lib/rss/maker/base.rb (RSS::Maker::Items): sort -> do_sort.
38930         * lib/rss/rss.rb (RSS::BaseModel.install_date_element): avoided
38931           warning.
38933         * lib/rss/0.9.rb (RSS::Rss#textinput): added convenience method.
38935 Tue Nov  2 16:35:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38937         * ext/enumerator/enumerator.c (each_cons_i): pass copy of an
38938           internal consequent array.  [ruby-talk:118691]
38940 Tue Nov  2 14:54:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38942         * io.c (pipe_open): need to set cmd if argc == 0 (win32).
38944 Tue Nov  2 01:20:09 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38946         * io.c (pipe_open): IO.popen should take array as 1st argument for
38947           a command line.  [ruby-dev:24678]
38949         * eval.c (proc_invoke): nail down dyna_var node when Proc object
38950           or continuation is created.  [ruby-dev:24671]
38952         * io.c (rb_io_s_popen): do not expand argv array.  [ruby-dev:24670]
38954 Mon Nov  1 22:25:56 2004  Kouhei Sutou  <kou@cozmixng.org>
38956         * lib/rss/maker/base.rb: changed xml-stylesheet's API of RSS Maker
38957           like to item's one.
38959         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#guess_type): fixed
38960           regular expression bug.
38962         * test/rss/test_maker_xml-stylesheet.rb: updated tests for
38963           xml-stylesheet.
38965 Mon Nov  1 13:59:28 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38967         * ext/extmk.rb (MANIFEST): do not use anymore, use extconf.rb instead.
38969         * ext/enumerator/extconf.rb, ext/fcntl/extconf.rb,
38970           ext/stringio/extconf.rb: added.
38972         * MANIFEST, ext/**/MANIFEST: removed.
38974         * README.EXT, README.EXT.ja: remove MANIFEST stuff.
38976 Mon Nov  1 11:52:18 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38978         * io.c (pipe_open): avoid conflict of variable name. [ruby-dev:24662]
38980 Mon Nov  1 11:46:19 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38982         * process.c (rb_f_exec): should check whether prog is NULL.
38984 Mon Nov  1 09:37:19 2004  Kouhei Sutou  <kou@cozmixng.org>
38986         * lib/rss/maker.rb: added entry point of RSS Maker.
38988 Mon Nov  1 03:14:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38990         * eval.c (rb_get_method_body): store ICLASS in the cache.
38991           [ruby-core:03672]
38993         * eval.c (rb_provided): should return true for loading library
38994           too for autoloading.  [ruby-core:03655]
38996 Mon Nov  1 01:14:52 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38998         * io.c (rb_f_open): create copy of popen specifier.  [ruby-dev:24656]
39000         * string.c (rb_str_locktmp): lock string temporarily.
39002         * string.c (str_independent): add tmplock check.
39004         * io.c (io_write): lock output string temporarily.
39005           [ruby-dev:24649]
39007         * io.c (io_write): use rb_str_locktmp().
39009         * io.c (read_all): ditto.
39011 Sun Oct 31 23:37:00 2004  NARUSE, Yui  <naruse@ruby-lang.org>
39013         * process.c: on NetBSD don't use setruid() and setrgid().
39015 Sun Oct 31 23:12:10 2004  Kouhei Sutou  <kou@cozmixng.org>
39017         * lib/rss/maker/*.rb: added RSS Maker.
39019         * test/rss/test_maker_*.rb: added tests for RSS Maker.
39021 Sun Oct 31 16:58:12 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
39023         * ext/win32ole/win32ole.c: add WIN32OLE.codepage, WIN32OLE.codepage=.
39025         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
39027 Sun Oct 31 14:35:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39029         * ext/nkf/nkf-utf8/nkf.c: add "\075?UTF-8?Q?" for Gmail.
39031 Sun Oct 31 14:18:56 2004  Minero Aoki  <aamine@loveruby.net>
39033         * parse.y [ripper]: emit lexer-event values to the parser
39034           (still incomplete).
39036 Sat Oct 30 15:24:41 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
39038         * ext/win32ole/win32ole.c: add WIN32OLE_TYPELIB class. add
39039           WIN32OLE#ole_typelib method.
39041         * ext/win32ole/tests/testOLETYPELIB.rb: add WIN32OLE_TYPELIB class.
39043 Sat Oct 30 06:53:24 2004  Peter Vanbroekhoven  <peter.vanbroekhoven@cs.kuleuven.ac.be>
39045         * eval.c (rb_eval): NODE_XSTR should pass copy of literal string.
39047 Sat Oct 30 00:19:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39049         * array.c (rb_ary_update): a[n,m]=nil no longer works as element
39050           deletion.
39052         * enum.c (enum_sort_by): protect continuation jump in.
39053           [ruby-dev:24642]
39055         * eval.c (rb_eval), gc.c (gc_mark_children), node.h (NEW_ALIAS,
39056           NEW_VALIAS), parse.y (fitem): allow dynamic symbols to
39057           NODE_UNDEF and NODE_ALIAS.
39059 Fri Oct 29 21:27:51 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39061         * io.c (rb_io_check_initialized): new function to check uninitialized
39062           object.  [ruby-talk:118234]
39064         * file.c (rb_file_path), io.c (rb_io_closed): check if initialized.
39066 Fri Oct 29 19:05:33 2004  NARUSE, Yui  <naruse@ruby-lang.org>
39068         * ext/nkf: follow nkf2.0.
39070 Fri Oct 29 17:18:22 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39072         * parse.y (ripper_s_allocate): add prototype for Microsoft compiler.
39074         * range.c (range_step, range_each): need cast.
39076 Fri Oct 29 16:34:19 2004  Daiki Ueno  <ueno@unixuser.org>
39078         * misc/ruby-mode.el (ruby-parse-partial): Parse the rest of the
39079           line after opening heredoc identifier.  [ruby-dev:24635]
39081 Fri Oct 29 11:35:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39083         * parse.y (rb_parser_append_print, rb_parser_while_loop): body node
39084           can be empty.  [ruby-dev:24628]
39086 Fri Oct 29 10:00:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39088         * eval.c (rb_thread_start_0): forget to free some memory chunks.
39089           [ruby-core:03611]
39091         * eval.c (ruby_cleanup): ruby_finalize_1 may cause exception,
39092           should be wrapped by PUSH_TAG/POP_TAG().  [ruby-dev:24627]
39094 Thu Oct 28 08:42:02 2004  Tanaka Akira  <akr@m17n.org>
39096         * io.c (argf_forward): use ANSI style.
39097           (argf_read): call argf_forward with argv argument.
39098           [ruby-dev:24624]
39100 Wed Oct 27 09:17:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39102         * string.c (str_gsub): use a string object for exception safeness.
39103           [ruby-dev:24601]
39105 Wed Oct 27 07:38:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39107         * node.h (NODE_TYPESHIFT): allow 4 more bits for line numbers.
39108           [ruby-talk:117841]
39110         * ruby.h (FL_ABLE): nodes are not subject for flag operations.
39112         * io.c (ARGF_FORWARD): should have specified argv explicitly,
39113           since we no longer have frame->argv saved.  [ruby-dev:24602]
39115 Tue Oct 26 23:30:39 2004  Dave Thomas  <dave@pragprog.com>
39117         * lib/rdoc/code_objects.rb (RDoc::Context::add_class_or_module):
39118           Restore correct :nopdoc: behavior with nested classes and modules.
39120 Tue Oct 26 18:21:29 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39122         * string.c (RESIZE_CAPA): check string attribute before modifying
39123           capacity member of string structure.  [ruby-dev:24594]
39125 Tue Oct 26 11:33:26 2004  David G. Andersen  <dga@lcs.mit.edu>
39127         * ext/zlib/zlib.c (gzreader_gets): use memchr() to to gain
39128           performance.  [ruby-talk:117701]
39130 Tue Oct 26 10:56:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39132         * sprintf.c (rb_f_sprintf): raise ArgumentError for extra
39133           arguments, unless (digit)$ style used.
39135 Mon Oct 25 18:35:39 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39137         * win32/win32.c (isUNCRoot): should check NUL after '.'.
39138           [ruby-dev:24590]
39140         * win32/win32.c (isUNCRoot): fixed buffer overrun.
39142 Mon Oct 25 08:03:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39144         * eval.c (get_backtrace): ignore illegal backtrace.  [ruby-dev:24587]
39146 Sun Oct 24 00:40:50 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39148         * eval.c (rb_load, search_required, rb_require_safe, rb_require): use
39149           frozen shared string to avoid outside modification.  [ruby-dev:24580]
39151 Sat Oct 23 23:40:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39153         * io.c (rb_io_fptr_finalize): leave stdin/stdout/stderr open in
39154           interpreter termination.  [ruby-dev:24579]
39156 Sat Oct 23 22:18:32 2004  Guy Decoux  <ts@moulon.inra.fr>
39158         * eval.c (frame_free): Guy Decoux solved the leak problem.
39159           Thanks.  [ruby-core:03549]
39161 Sat Oct 23 00:20:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39163         * ext/zlib/zlib.c (zstream_append_input): clear klass for z->input
39164           to avoid potential vulnerability.
39166         * ext/zlib/zlib.c (zstream_run): always use zstream_append_input()
39167           to avoid SEGV.  [ruby-dev:24568]
39169 Fri Oct 22 12:02:28 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39171         * eval.c (rb_alias): was warning for wrong condition.
39172           [ruby-dev:24565]
39174 Fri Oct 22 10:36:37 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39176         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#meta_vars):
39177           should check if path_info is not nil.
39179 Fri Oct 22 00:22:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39181         * ext/zlib/zlib.c (zstream_shift_buffer): should restore class
39182           field of a buffer.  [ruby-dev:24562]
39184 Fri Oct 22 00:20:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39186         * string.c (rb_str_include): should not treat char as negative value.
39187           [ruby-dev:24558]
39189 Thu Oct 21 21:32:30 2004  IWATSUKI Hiroyuki  <don@na.rim.or.jp>
39191         * lib/pstore.rb (PStore#transaction): Use the empty content when a
39192           file is not found.  [ruby-dev:24561]
39194 Thu Oct 21 19:06:15 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39196         * lib/webrick/httpresponse.rb (WEBrick::HTTPResponse#send_body_io):
39197           ensure to close @body. (http://bugs.debian.org/277520)
39199 Thu Oct 21 13:11:31 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39201         * io.c (pipe_open): variable name "fpw" is conflicted.
39203 Thu Oct 21 00:36:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39205         * eval.c (rb_alias): should warn on method discarding.
39206           [ruby-dev:24546]
39208         * ext/zlib/zlib.c (zstream_expand_buffer_into): hide internal
39209           string buffer by clearing klass.  [ruby-dev:24548]
39211         * parse.y (lex_getline): should not touch ruby_debug_lines if
39212           RIPPER is defined.  [ruby-dev:24547]
39214 Wed Oct 20 19:45:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39216         * string.c (str_gsub):  reentrant check.  [ruby-dev:24432]
39218 Wed Oct 20 12:42:53 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39220         * io.c (rb_io_getline): rs modification check should not interfere
39221           in the loop.
39223 Wed Oct 20 10:31:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39225         * parse.y (lex_getline): should update ruby_debug_lines.
39227 Wed Oct 20 04:17:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39229         * ext/dbm/dbm.c (fdbm_delete_if): should check if deleting element
39230           is a string.  [ruby-dev:24490]
39232         * ext/sdbm/init.c (fsdbm_delete_if): ditto.
39234 Wed Oct 20 01:37:18 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39236         * array.c (rb_ary_times): Array#* should return an instance of
39237           the class of right operand.  [ruby-dev:24526]
39239         * ext/zlib/zlib.c (zstream_detach_buffer): should not expose
39240           class-less object to Ruby world. [ruby-dev:24530]
39242         * eval.c (proc_dup): provide Proc#dup as well.  [ruby-talk:116915]
39244         * eval.c (ruby_exec): stack marking position may be higher than
39245           expected.  thanks to Guy Decoux.  [ruby-core:03527]
39247 Wed Oct 20 00:25:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39249         * eval.c (search_required): required name must not be changed before
39250           loading.  [ruby-dev:24492]
39252 Tue Oct 19 23:59:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39254         * eval.c (rb_require_safe): provide the feature after loaded.
39255           [ruby-list:40085]
39257 Tue Oct 19 22:43:12 2004  Dave Thomas  <dave@pragprog.com>
39259         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_attr): If
39260           we come across 'attr' in a context where it isn't
39261           followed by a symbol, just issue a warning.
39263 Tue Oct 19 20:32:50 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
39265         * ext/win32ole.c(ole_invoke): retrieve the result value when
39266           retrying the IDispatch::invoke.
39268 Tue Oct 19 17:24:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39270         * io.c (read_all): block string buffer modification during
39271           rb_io_fread() by freezing it temporarily. [ruby-dev:24479]
39273         * dir.c (rb_push_glob): block call at once the end of method.
39274           [ruby-dev:24487]
39276         * ext/enumerator/enumerator.c (enum_each_slice): remove
39277           rb_gc_force_recycle() to prevent potential SEGV.
39278           [ruby-dev:24499]
39280         * ext/zlib/zlib.c (zstream_expand_buffer): hide internal string
39281           buffer by clearing klass.  [ruby-dev:24510]
39283 Tue Oct 19 08:47:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39285         * string.c (rb_str_upto): method result must be checked.  [ruby-dev:24504]
39287         * eval.c (error_print): ditto.  [ruby-dev:24519]
39289 Mon Oct 18 23:37:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39291         * marshal.c (r_object0): check inheritance by the internal function.
39292           [ruby-dev:24515]
39294 Mon Oct 18 11:29:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39296         * io.c (rb_io_flags_mode, rb_io_mode_flags): distinguish whether file
39297           not existing is created.  [ruby-dev:24505]
39299 Mon Oct 18 07:26:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39301         * file.c (rb_file_truncate): discard read buffer before truncation.
39302           [ruby-dev:24197]
39304 Mon Oct 18 01:56:03 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39306         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#initialize):
39307           initial value of accpet-* should be array.
39309 Mon Oct 18 00:42:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39311         * ext/socket/socket.c (sock_s_getservbyaname): protocol string
39312           might be altered.  [ruby-dev:24503]
39314         * string.c (rb_str_upto): check if return value from succ is a
39315           string.  [ruby-dev:24504]
39317 Sun Oct 17 23:03:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39319         * ext/tk/lib/tk/timer.rb: TkTimer#start and restart accept a block
39321 Sun Oct 17 12:53:46 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
39323         * ext/win32ole/win32ole.c (fole_func_methods): correct argument mismatch.
39324         * ext/win32ole/win32ole.c (fole_get_methods): ditto.
39325         * ext/win32ole/win32ole.c (fole_put_methods): ditto.
39326         * ext/win32ole/tests/testWIN32OLE.rb: add test for WIN32OLE#ole_func_methods
39327           WIN32OLE#ole_get_methods, WIN32OLE#ole_put_methods
39329 Sat Oct 16 14:45:28 2004  Kouhei Sutou  <kou@cozmixng.org>
39331         * lib/rss/0.9.rb (RSS::Rss#to_s): removed garbage.
39333 Sat Oct 16 13:42:49 2004  Kouhei Sutou  <kou@cozmixng.org>
39335         * lib/rss/: untabified.
39336         * test/rss/: untabified.
39337         * lib/rss/0.9.rb (RSS::Rss#to_s): inent -> indent.
39339 Sat Oct 16 13:34:56 2004  Kouhei Sutou  <kou@cozmixng.org>
39341         * lib/rss: supported prety print.
39342         * test/rss/test_1.0.rb: added test for calculating default indent size.
39344 Sat Oct 16 10:56:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39346         * lib/mkmf.rb (create_makefile): install-rb is needed for statically
39347           linked extensions.  [ruby-dev:24491]
39349 Fri Oct 15 18:07:08 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39351         * ext/openssl/ossl_x509store.c
39352           (ossl_x509stctx_initialize): setup OpenSSL::X509::StoreContext with
39353           ossl_x509stctx_* functions instead of X509_STORE_CTX_*.
39354           (ossl_x509store_set_time): add OpenSSL::X509::Store#time=.
39355           (ossl_x509stctx_set_time): add OpenSSL::X509::StoreContext#time=.
39357         * test/openssl/ossl_x509store.rb: test certificate validity times.
39359 Fri Oct 15 18:04:35 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39361         * ext/tk/lib/tk/timer.rb: TkTimer.new(interval, loop){ ... } is
39362           acceptable. Add TkTimer.start ( == new + start ).
39364 Fri Oct 15 12:43:09 2004  Tanaka Akira  <akr@m17n.org>
39366         * eval.c (Init_stack): make prototype declaration consistent with
39367           the definition in gc.c.
39369 Thu Oct 14 13:33:59 2004  Kouhei Sutou  <kou@cozmixng.org>
39371         * lib/rss/rss.rb: added link to Tutorial.
39373 Tue Oct 12 21:22:50 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39375         * lib/webrick/config.rb:
39376           add WEBrick::Config::FileHandler[:AcceptableLanguages].
39378         * lib/webrick/httpservlet/filehandler.rb
39379           (WEBrick::HTTPServlet::FileHandler#set_filename): search files
39380           having suffix of language-name which Accept-Language header field
39381           includes if :AcceptableLanguages options is present.
39383         * lib/webrick/httpservlet/filehandler.rb
39384           (WEBrick::HTTPServlet::FileHandler#get_servlet): new method to
39385           search servlet correspond to the suffix of filename.
39387         * lib/webrick/httprequest.rb: add attributes access methods: accept,
39388           accept_charset, accept_encoding, accept_language, content_length
39389           and content_type.
39391         * lib/webrick/httpresponse.rb: add attribute access methods:
39392           content_length, content_length=, content_type and content_type=.
39394         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.mime_types):
39395           use the second suffix to detect media type. (the first suffix
39396           may be a language name.)
39398         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_qvalues):
39399           add method to parse Accept header field. it returns an Array of
39400           values sorted by the qvalues.
39402 Tue Oct 12 15:05:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39404         * io.c (MODE_BINMODE, MODE_BINARY): fixed reversed condition.
39406 Mon Oct 11 17:51:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39408         * io.c (rb_io_popen): get mode string via rb_io_flags_mode() to
39409           avoid mode string modification.  [ruby-dev:24454]
39411         * io.c (rb_io_getline_fast): should take delim as unsigned char to
39412           distinguish EOF and '\377'.  [ruby-dev:24460]
39414         * io.c (rb_io_getline): add check for RS modification.
39415           [ruby-dev:24461]
39417         * enum.c (enum_sort_by): use qsort() directly instead using
39418           rb_iterate().  [ruby-dev:24462]
39420         * enum.c (enum_each_with_index): remove rb_gc_force_recycle() to
39421           prevent access to recycled object (via continuation for
39422           example).  [ruby-dev:24463]
39424 Mon Oct 11 13:48:20 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39426         * ext/tk/lib/tk/*: untabify
39428 Sun Oct 10 12:32:08 2004  Dave Thomas  <dave@pragprog.com>
39430         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_require): Allow 'require'
39431           to be used as a variable name
39433 Sun Oct 10 02:49:14 2004  Minero Aoki  <aamine@loveruby.net>
39435         * ext/ripper/lib/ripper/filter.rb: require ripper/tokenizer.
39437         * ext/ripper/lib/ripper/filter.rb (parse): argument is optional.
39439 Sun Oct 10 02:43:13 2004  Minero Aoki  <aamine@loveruby.net>
39441         * parse.y [ripper]: \n between two comments disappeared.
39443 Sat Oct  9 21:23:37 2004  Kouhei Sutou  <kou@cozmixng.org>
39445         * lib/rss/converter.rb: changed to try to use Iconv for default
39446           conversion.
39448         * lib/rss/rss.rb: 0.0.9 -> 0.1.0.
39450 Sat Oct  9 19:50:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39452         * io.c (rb_io_getline): should not treat char as negative value.
39453           [ruby-dev:24460]
39455 Sat Oct  9 00:25:39 2004  Tanaka Akira  <akr@m17n.org>
39457         * io.c (rb_io_fread): rb_thread_wait_fd() was lost.
39458           [ruby-dev:24457]
39460 Fri Oct  8 21:36:56 2004  Minero Aoki  <aamine@loveruby.net>
39462         * lib/fileutils.rb (fu_traverse): return value of Dir.entries is
39463           reliable. (pass $SAFE=1)
39465         * lib/fileutils.rb (remove_dir): return value of Dir.foreach is
39466           reliable. (pass $SAFE=1)
39468 Fri Oct  8 09:49:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39470         * pack.c (pack_pack): pointer modification check before each
39471           iteration.  [ruby-dev:24445]
39473 Fri Oct  8 01:13:05 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39475         * ext/tk/lib/tk/optiondb.rb: make it more secure
39477 Thu Oct  7 23:47:57 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39479         * ext/tk/lib/tk/scrollbar.rb: When 'set' operation, a scrollbar
39480           cannot propagate view port information from the source widget
39481           (that calls 'set') to other assigned widgets.
39483 Thu Oct  7 17:36:25 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39485         * ext/tk/lib/tk.rb: When CHILDKILLED and so on, Tk.errorCode returns
39486           a Fixnum for 2nd element (it's pid) of the return value.
39488 Thu Oct  7 12:55:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39490         * io.c (io_read): should freeze buffer before thread context
39491           switch. [ruby-dev:24442]
39493         * pack.c (pack_unpack): string conversion should at the top of the
39494           method.  [ruby-dev:24439]
39496         * io.c (io_read): buffer should be frozen only after the length
39497           check.  [ruby-dev:24440]
39499 Thu Oct  7 02:56:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39501         * ext/stringio/stringio.c: use FMODE_APPEND.
39503 Thu Oct  7 01:05:33 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39505         * ext/tk/lib/tk.rb: add Tk.errorInfo and Tk.errorCode
39507 Thu Oct  7 00:08:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39509         * io.c (rb_io_s_sysopen): preserve path in the buffer allocated by
39510           ALLOCA_N() to prevent modification.  [ruby-dev:24438]
39512 Wed Oct  6 09:21:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39514         * io.c (rb_io_mode_flags): preserve append mode flag.
39515           [ruby-dev:24436]
39517         * io.c (rb_io_modenum_mode): do not use external output buffer.
39519         * string.c (rb_str_justify): differ pointer retrieval to prevent
39520           padding string modification.  [ruby-dev:24434]
39522         * range.c (range_each_func): allow func to terminate loop by
39523           returning RANGE_EACH_BREAK.
39525         * range.c (member_i): use RANGE_EACH_BREAK. [ruby-talk:114959]
39527 Tue Oct  5 09:53:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39529         * io.c (rb_fopen): mode string copy at the lowest level.
39531         * io.c (rb_io_flags_mode): requires output buffer no more.  no
39532           allocation needed.
39534         * array.c (rb_ary_index): takes a block to compare items in an
39535           array.  [ruby-talk:113069] [Ruby2]
39537         * array.c (rb_ary_rindex): ditto.
39539 Mon Oct  4 14:03:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39541         * io.c (rb_file_open_internal, rb_io_reopen): fname might be altered
39542           while GC.  [ruby-dev:24408]
39544 Mon Oct  4 12:53:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39546         * ext/tk/lib/tk/optiondb.rb: support definition of command
39547           resources on widgets
39549         * ext/tk/lib/tk/image.rb: bug fix
39551 Sun Oct  3 21:16:05 2004  Shugo Maeda  <shugo@ruby-lang.org>
39553         * lib/net/imap.rb (TEXT_REGEXP): allow 8-bit characters for the german
39554           version of Microsoft Exchange Server.
39556         * lib/net/imap.rb (RTEXT_REGEXP): ditto.
39558         * lib/net/imap.rb (CTEXT_REGEXP): ditto.
39560 Sat Oct  2 20:34:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39562         * parse.y (local_vars): moved to struct parser_params.
39563           [ruby-dev:24391]
39565         * parser.y (stmts): remove suspicious NODE_BEGIN.  [ruby-dev:24390]
39567         * node.h (NEW_DVAR): extra semicolon.
39569 Sat Oct  2 00:42:20 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39571         * marshal.c (r_byte): retrieve pointer from string value for each
39572           time.  [ruby-dev:24404]
39574         * marshal.c (r_bytes0): ditto.
39576         * enum.c (sort_by_i): re-entrance check added.  [ruby-dev:24399]
39578         * io.c (io_read): should freeze all reading buffer.
39579           [ruby-dev:24400]
39581         * string.c (rb_str_sum): should use bignums when bits is greater
39582           than or equals to sizeof(long)*CHAR_BITS. [ruby-dev:24395]
39584         * eval.c (specific_eval): defer pointer retrieval to prevent
39585           unsafe sourcefile string modification.  [ruby-dev:24382]
39587         * string.c (rb_str_sum): wrong cast caused wrong result.
39588           [ruby-dev:24385]
39590         * enum.c (enum_sort_by): hide temporary array from
39591           ObjectSpace.each_object.  [ruby-dev:24386]
39593         * string.c (rb_str_sum): check was done with false pointer.
39594           [ruby-dev:24383]
39596         * string.c (rb_str_sum): string may be altered.  [ruby-dev:24381]
39598 Fri Oct  1 11:40:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39600         * eval.c (rb_f_eval): defer pointer retrieval to prevent unsafe
39601           sourcefile string modification.  [ruby-dev:24373]
39603         * io.c (io_read): block string buffer modification during
39604           rb_io_fread() by freezing it temporarily. [ruby-dev:24366]
39606         * io.c (rb_io_s_popen): mode argument may be altered.
39607           [ruby-dev:24375]
39609         * file.c (rb_file_s_basename): ext argument may be altered.
39610           [ruby-dev:24377]
39612         * enum.c (enum_sort_by): use NODE instead of 2 element arrays.
39613           [ruby-dev:24378]
39615         * string.c (rb_str_chomp_bang): StringValue() may change the
39616           receiver.  [ruby-dev:24371]
39618 Fri Oct  1 11:25:20 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39620         * ext/tk/lib/tk/grid.rb: revive TkGrid.grid
39622         * ext/tk/lib/tk/pack.rb: revive TkPack.pack
39624         * ext/tk/lib/tk/place.rb: revive TkPlace.place
39626 Thu Sep 30 00:50:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39628         * ext/tcltklib/tcltklib.c (ip_init): bug fix
39630         * ext/tk/tkutil.c (get_eval_string_core): accept a Regexp object
39632         * ext/tk/lib/multi-tk.rb: fix bug on 'exit' operation
39634         * ext/tk/lib/tk/text.rb: 'tksearch' accepts a Regexp object as a
39635           matting pattern argument
39637 Wed Sep 29 10:58:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39639         * enum.c (sort_by_i): internally used object must not be changed
39640           outside.  [ruby-dev:24368]
39642 Mon Sep 27 21:25:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39644         * eval.c (rb_call0): invoke finalizers periodically.
39646         * gc.c (gc_sweep): defer running finalizers.  [ruby-dev:24354]
39648         * gc.c (rb_gc_finalize_deferred): run deferred finalizers.
39650 Mon Sep 27 15:01:59 2004  Minero Aoki  <aamine@loveruby.net>
39652         * parse.y [ripper]: missing ';'.
39654 Mon Sep 27 13:46:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39656         * intern.h, struct.c (rb_struct_s_members, rb_struct_members): public
39657           accessors.  [ruby-dev:24342]
39659         * marshal.c (w_object, r_object0): use accessors.
39661 Mon Sep 27 09:14:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39663         * array.c (rb_ary_delete): comparison may change the capacity.
39664           [ruby-dev:24348]
39666         * array.c (rb_ary_fill): fill should honor length argument.
39667           [ruby-dev:24346]
39669         * array.c (rb_ary_replace): should not use ptr from shared array.
39670           [ruby-dev:24345]
39672         * ext/socket/socket.c (s_accept): don't retry for EWOULDBLOCK.
39673           [ruby-talk:113807]
39675 Sun Sep 26 08:05:10 2004  Tadayoshi Funaba  <tadf@dotrb.org>
39677         * lib/date.rb: provides {Time,Date,DateTime}#to_{time,date,datetime}.
39679         * sample/cal.rb: uses getoptlong instead of getopts.
39681 Sat Sep 25 18:39:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39683         * array.c (flatten): element size might change during comparison.
39684           [ruby-dev:24343]
39686 Sat Sep 25 01:52:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39688         * struct.c (rb_struct_s_members): wrong call of struct_members.
39689           [ruby-dev:24333]
39691 Fri Sep 24 16:09:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39693         * eval.c (proc_invoke): propagate DVAR_DONT_RECYCLE on termination
39694           to avoid double call to rb_gc_force_recycle(). [ruby-dev:24311]
39696 Fri Sep 24 08:29:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39698         * parse.y (rb_parser_append_print): should handle prelude.
39699           [llama@u01.gate0]
39701         * parse.y (rb_parser_while_loop): ditto.
39703         * array.c (rb_ary_subseq): original object might be modified after
39704           sharing data creation.  [ruby-dev:24327]
39706         * array.c (rb_ary_replace): ditto.
39708         * array.c (ary_make_shared): freeze shared array. [ruby-dev:24325]
39710         * struct.c (struct_members): always check struct size and size of
39711           members list in the class.  [ruby-dev:24320]
39713 Thu Sep 23 19:48:14 2004  Minero Aoki  <aamine@loveruby.net>
39715         * ext/ripper/Makefile.dev: removed.
39717         * ext/ripper/ripper.rb.in: moved to lib/ripper/core.rb.in.
39719         * ext/ripper/lib/ripper/core.rb: new file.
39721         * ext/ripper/lib/ripper/core.rb.in: new file.
39723         * ext/ripper/tools/generate-ripper_rb.rb: change comment.
39725         * test/ripper/*.rb: on__scan event removed.
39727         * test/ripper/*.rb: event name is changed: on__XXX -> on_XXX.
39729 Thu Sep 23 09:29:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39731         * string.c (rb_str_sub_bang): check if string is not modified
39732           during iteration.  [ruby-dev:24315]
39734         * hash.c (rb_hash_rehash): replace st_foreach() by its deep
39735           checking counterpart.  [ruby-dev:24310]
39737 Wed Sep 22 14:21:54 2004  Minero Aoki  <aamine@loveruby.net>
39739         * parse.y [ripper]: on__scan event removed.
39741         * parse.y [ripper]: event name is changed: on__XXX -> on_XXX.
39743         * ext/ripper/eventids2.c: ditto.
39745         * ext/ripper/ripper.rb.in: ditto.
39747         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
39749         * ext/ripper/lib/ripper/tokenizer: ditto.
39751         * ext/ripper/lib/ripper/filter: new file.
39753         * sample/ripper/colorize.rb: new file.
39755         * sample/ripper/strip-comment.rb: new file.
39757 Wed Sep 22 13:50:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39759         * hash.c (hash_alloc): was using tbl pointer without
39760           initialization.
39762 Wed Sep 22 13:38:12 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39764         * hash.c (rb_hash_rehash): add iteration check.  [ruby-dev:24301]
39766         * st.c (st_foreach): add deep check.
39768         * hash.c (rb_hash_fetch): returns KeyError instead of IndexError.
39770         * hash.c (env_fetch): ditto.
39772 Wed Sep 22 13:02:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39774         * win32/win32.c (rb_w32_call_handler): workaround for Ctrl-C.
39776 Wed Sep 22 09:04:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39778         * parse.y: remove global variables ruby_eval_tree and
39779           ruby_eval_tree_begin.
39781         * array.c (rb_ary_collect_bang): element size might change during
39782           comparison.  [ruby-dev:24300]
39784         * array.c (rb_ary_reject_bang): ditto. [ruby-dev:24300]
39786         * array.c (rb_ary_eql): ditto. [ruby-dev:24300]
39788 Wed Sep 22 00:11:12 2004  Dave Thomas  <dave@pragprog.com>
39790         * process.c: Add documentation for fork()
39792 Tue Sep 21 18:29:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39794         * array.c (rb_ary_uniq_bang): element size might change during
39795           comparison.  [ruby-dev:24298]
39797 Mon Sep 20 17:46:51 2004  Minero Aoki  <aamine@loveruby.net>
39799         * ext/ripper/lib/ripper/tokenizer.rb: fix typo.
39801 Mon Sep 20 17:38:43 2004  Minero Aoki  <aamine@loveruby.net>
39803         * test/ripper/test_scanner_events.rb: tokens must be reordered.
39805         * ext/ripper/lib/ripper/tokenizer.rb: ditto.
39807 Mon Sep 20 16:58:16 2004  Minero Aoki  <aamine@loveruby.net>
39809         * parse.y [ripper]: do not delay dispatching.
39811         * ext/ripper/lib/ripper/tokenizer.rb: sort tokens by right order.
39813 Mon Sep 20 15:17:47 2004  Minero Aoki  <aamine@loveruby.net>
39815         * ext/ripper/lib/ripper/tokenizer.rb: new file.
39817 Mon Sep 20 15:13:52 2004  Minero Aoki  <aamine@loveruby.net>
39819         * test/ripper/test_scanner_events.rb: test #lineno and #column.
39821 Mon Sep 20 14:50:17 2004  Minero Aoki  <aamine@loveruby.net>
39823         * parse.y [ripper]: delayed heredocument events should be
39824           dispatched after EOF.
39826 Mon Sep 20 14:39:42 2004  Minero Aoki  <aamine@loveruby.net>
39828         * parse.y [ripper]: adjust lineno and columns for multi-line
39829           strings.
39831         * parse.y [ripper]: delay heredocument events until seeing
39832           end-of-line.
39834         * parse.y [ripper]: event on__heredoc_contentn ->
39835           on__tstring_content.
39837         * ext/ripper/eventids2.c: ditto.
39839         * ext/ripper/lib/ripper.rb: sync with eventids2.c.
39841         * test/ripper/test_scanner_events.rb: test it.
39843         * ext/ripper/tools/generate-ripper_rb.rb: show basename of input.
39845         * ext/ripper/Makefile.dev: support objdir build.
39847 Mon Sep 20 13:22:55 2004  Minero Aoki  <aamine@loveruby.net>
39849         * parse.y [ripper]: remove Ripper#pos.
39851         * parse.y [ripper]: Ripper#column should return the column of the
39852           current token.
39854 Mon Sep 20 12:02:41 2004  Minero Aoki  <aamine@loveruby.net>
39856         * parse.y [ripper]: unify old_lex_p and token_head.
39858         * test/ripper/test_scanner_events.rb: now \r\n is saved correctly.
39860         * parse.y: new macro lex_goto_eol() for next change.
39862 Mon Sep 20 11:01:55 2004  Minero Aoki  <aamine@loveruby.net>
39864         * parse.y [ripper]: adjust line number for heredoc.  [ruby-dev:24272]
39866 Mon Sep 20 04:49:22 2004  Minero Aoki  <aamine@loveruby.net>
39868         * ext/ripper/ripper.rb.in: new const Ripper::PARSER_EVENT_TABLE.
39870         * ext/ripper/ripper.rb.in: new const Ripper::SCANNER_EVENT_TABLE.
39872         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
39874 Mon Sep 20 04:13:00 2004  Minero Aoki  <aamine@loveruby.net>
39876         * test/ripper/test_scanner_events.rb: test spaces before heredoc
39877           mark.
39879 Mon Sep 20 03:46:54 2004  Minero Aoki  <aamine@loveruby.net>
39881         * parse.y [ripper]: spaces before heredoc marker was lost.
39882           [ruby-dev:24272]
39884         * keywords: rb_reserved_word() should be defined only in ruby
39885           core.  [ruby-dev:24272]
39887         * lex.c: sync with keywords.
39889         * ext/ripper/ripper.rb.in (parse): fix typo.
39891         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
39893 Mon Sep 20 03:37:59 2004  Tanaka Akira  <akr@m17n.org>
39895         * ext/zlib/zlib.c (gzfile_read_raw): call readpartial at first.
39896           (Zlib::GzipReader#readpartial): new method.
39898 Mon Sep 20 00:24:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39900         * enum.c (enum_sort_by): do not use qsort directly.  use
39901           rb_ary_sort_bang() instead.  [ruby-dev:24291]
39903         * enum.c (enum_sort_by): pedantic type check added.
39904           [ruby-dev:24291]
39906         * hash.c (rb_hash_foreach_iter): check iter_lev after each
39907           iteration.  [ruby-dev:24289]
39909         * array.c (rb_ary_and): element size might change during
39910           comparison.  [ruby-dev:24290]
39912         * array.c (rb_ary_or): ditto. [ruby-dev:24292]
39914         * array.c (rb_ary_equal): wrong fix. [ruby-dev:24286]
39916 Sat Sep 18 15:02:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39918         * array.c (rb_ary_equal): element size might change during
39919           comparison.  [ruby-dev:24254]
39921         * array.c (rb_ary_diff): ditto. [ruby-dev:24274]
39923         * array.c (rb_ary_select): ditto. [ruby-dev:24278]
39925         * array.c (rb_ary_delete): ditto. [ruby-dev:24283]
39927         * array.c (rb_ary_rindex): ditto. [ruby-dev:24275]
39929         * array.c (rb_ary_initialize): element size might change during
39930           initializing block.  [ruby-dev:24284]
39932 Sat Sep 18 14:10:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39934         * dir.c (dir_s_chdir): avoid memory leak and unnecessary chdir to
39935           the original directory when exception has caused in changing
39936           direcotry or within block.  thanks to Johan Holmberg
39937           <holmberg@iar.se> [ruby-core:03446]
39939 Fri Sep 17 20:29:33 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39941         * parse.y: add prototypes for Microsoft compiler.
39943         * ext/ripper/depend (parse.obj): lex.c exists at hdrdir.
39945         * {bcc32,win32,wince}/Makefile.sub (YACC, YFLAGS, parse.c):
39946           use bison.
39948 Fri Sep 17 17:11:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39950         * array.c (rb_ary_delete): element comparison might change array
39951           size. [ruby-dev:24273]
39953         * parse.y: make ruby parser reentrant. merge ripper parser to the
39954           real one.  this change makes ruby require bison.
39956         * file.c (rb_file_truncate): clear stdio buffer before truncating
39957           the file.  [ruby-dev:24191]
39959         * ext/digest/digest.c: use rb_obj_class() instead of CLASS_OF
39960           which might return singleton class.  [ruby-dev:24202]
39962 Fri Sep 17 16:07:09 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39964         * ext/tk/lib/multi-tk.rb: improve exit operation
39966 Fri Sep 17 15:01:57 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39968         * ext/tcltklib/tcltklib.c: fix SEGV when (thread_)vwait or
39969           (thread_)tkwait
39971         * ext/tk/lib/tk.rb: add alias wait_window to wait_destroy
39973         * ext/tk/lib/multi-tk.rb: support calling 'mainloop' on slave
39974           interpreters (however, the 'real' eventloop must be run on the
39975           Default Master IP)
39977         * ext/tk/lib/remote-tk.rb: follow the changes of ext/tk/lib/multi-tk.rb
39979         * ext/tk/sample/remote-ip_sample2.rb: ditto
39981         * ext/tk/sample/tkoptdb-safeTk.rb: ditto
39983 Thu Sep 16 18:12:13 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39985         * lib/webrick/cgi.rb (WEBrick::CGI#start): should set REMOTE_USER
39986           to request.user attribute.
39988         * lib/webrick/httpservlet/filehandler.rb
39989           (WEBrick::HTTPServlet::FileHandler#initialize): should expand
39990           the pathname of document root directory.
39992 Thu Sep 16 15:49:28 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39994         * string.c (rb_str_intern): protect string argument from GC.
39995           [ruby-core:03411]
39997 Wed Sep 15 20:22:23 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39999         * ext/tk/sample/tkoptdb-safeTk.rb: fix a bug depend on the changes
40000           of MultiTkIp
40002 Tue Sep 14 23:54:11 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40004         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string was en-bugged by
40005           the previous changes.
40007 Tue Sep 14 23:45:44 2004  Dave Thomas  <dave@pragprog.com>
40009         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::TextFormatter.for):
40010           Add Eric Hodel's simpleformatter.
40012 Tue Sep 14 22:11:08 2004  Minero Aoki  <aamine@loveruby.net>
40014         * parse.y [ripper]: Add rdoc.
40016 Tue Sep 14 20:24:49 2004  Minero Aoki  <aamine@loveruby.net>
40018         * parse.y [ripper]: space event is on__sp, not on__lwsp.
40019           [ruby-dev:24257]
40021         * ext/ripper/eventids2.c: ditto.
40023         * ext/ripper/lib/ripper.rb: ditto.
40025         * ext/ripper/depend (ripper.o): No action is needed.
40026           [ruby-dev:24260]
40028         * ext/ripper/depend: Borland make does not accept pipes in
40029           Makefile rules. [ruby-dev:24589]
40031         * ext/ripper/depend: separate rules for developpers.
40033         * ext/ripper/Makefile.dev: new file.
40035         * ext/ripper/MANIFEST: add Makefile.dev.
40037         * ext/ripper/tools/generate-eventids1.rb: read from file, not
40038           stdin.
40040         * ext/ripper/extconf.rb: clean ripper.E.
40042         * ext/ripper/tools/generate-ripper_rb.rb: #include ids1/ids2
40043           function was lost.
40045         * ext/ripper/tools/generate-ripper_rb.rb: SCANNER_EVENTS wrongly
40046           contained parser events.
40048         * ext/ripper/lib/ripper.rb: ditto.
40050 Tue Sep 14 16:59:37 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40052         * ext/tcltklib/tcltklib.c: fix SEGV
40054         * ext/tk/lib/multi-tk.rb: improve safe-level handling of argument proc
40056         * ext/tk/sample/multi-ip_sample.rb: rename of old 'safe-tk.rb'
40058         * ext/tk/sample/safe-tk.rb: new sample script
40061 Mon Sep 13 21:33:40 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40063         * ext/openssl/ossl_x509name.c (ossl_x509name_to_s): add optional
40064           second argument to specify the output format (see also
40065            X509_NAME_print_ex).
40067         * ext/openssl/ossl_x509name.c (ossl_x509name_init): new constants:
40068           OpenSSL::X509::Name::COMPAT, OpenSSL::X509::Name::RFC2253,
40069           OpenSSL::X509::ONELINE, OpenSSL::X509::MULTILINE.
40071         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name::RFC2253DN):
40072           new module to provide the parse for RFC2253 DN format.
40074         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name.parse_rfc2253):
40075           new method to parse RFC2253 DN format.
40077 Mon Sep 13 19:16:33 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40079         * eval.c (blk_copy_prev): need frame_dup().  [ruby-dev:24103]
40081 Mon Sep 13 16:23:27 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40083         * ext/tk/lib/multi-tk.rb: MultiTkIp.new_master and new_slave accept
40084           safe-level value argument
40086 Mon Sep 13 10:48:37 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40088         * win32/win32.c (rb_w32_getpid): don't need to use _getpid() on
40089           mswin32 and mingw32.
40091 Mon Sep 13 10:22:05 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40093         * object.c (nil_inspect): fix typo.
40095 Mon Sep 13 09:29:58 2004  Minero Aoki  <aamine@loveruby.net>
40097         * ext/ripper/depend: (nmake hack) prepend "./" to ripper.c to
40098           avoid {$(srcdir)}.
40100 Mon Sep 13 06:43:42 2004  Minero Aoki  <aamine@loveruby.net>
40102         * ext/ripper/tools/list-parse-event-ids.rb: does not use getopts.
40104         * ext/ripper/tools/list-scan-event-ids.rb: ditto.
40106 Mon Sep 13 02:42:28 2004  Minero Aoki  <aamine@loveruby.net>
40108         * ext/Setup: add ripper.
40110         * ext/Setup.atheos: ditto.
40112         * ext/Setup.dj: ditto.
40114         * ext/Setup.emx: ditto.
40116         * ext/Setup.nt: ditto.
40118         * ext/Setup.x68: ditto.
40120 Mon Sep 13 02:26:31 2004  Minero Aoki  <aamine@loveruby.net>
40122         * ext/ripper: ripper extention added.
40124         * ext/ripper/MANIFEST: new file.
40126         * ext/ripper/README: new file.
40128         * ext/ripper/depend: new file.
40130         * ext/ripper/extconf.rb: new file.
40132         * ext/ripper/eventids2.c: new file.
40134         * ext/ripper/ripper.rb.in: new file.
40136         * ext/ripper/lib/ripper.rb: new file.
40138         * ext/ripper/test/check-event-arity.rb: new file.
40140         * ext/ripper/test/check-event-coverage.sh: new file.
40142         * ext/ripper/test/check-scanner-event-coverage.rb: new file.
40144         * ext/ripper/test/list-called-events.rb: new file.
40146         * ext/ripper/test/src_rb: new file.
40148         * ext/ripper/test/validate.rb: new file.
40150         * ext/ripper/tools/generate-eventids1.rb: new file.
40152         * ext/ripper/tools/generate-param-macros.rb: new file.
40154         * ext/ripper/tools/generate-ripper_rb.rb: new file.
40156         * ext/ripper/tools/list-parse-event-ids.rb: new file.
40158         * ext/ripper/tools/list-scan-event-ids.rb: new file.
40160         * ext/ripper/tools/preproc.rb: new file.
40162         * ext/ripper/tools/strip.rb: new file.
40164         * test/ripper: ripper tests added.
40166         * test/ripper/dummyparser.rb: new file.
40168         * test/ripper/test_parser_events.rb: new file.
40170         * test/ripper/test_scanner_events.rb: new file.
40172 Mon Sep 13 01:03:02 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40174         * ext/tcltklib/tcltklib.c: improve control of preserv/release tcltkip
40176         * ext/tcltklib/tcltklib.c: store original 'exit' command
40178         * ext/tk/tkutil.c: fix(?) SEGV
40180 Mon Sep 13 00:22:53 2004  Minero Aoki  <aamine@loveruby.net>
40182         * parse.y: fix file header.
40184 Mon Sep 13 00:20:39 2004  Minero Aoki  <aamine@loveruby.net>
40186         * parse.y: ripper merged.
40188         * lex.c: ditto.
40190         * keywords: ditto.
40192 Sun Sep 12 23:53:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40194         * util.c (ruby_strdup): remove unnecessary code. (xmalloc never
40195           returns NULL.)
40197         * util.c (ruby_getcwd): fix memory leak on failure.
40199 Sun Sep 12 02:41:58 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40201         * ext/tcltklib/tcltklib.c: add TclTkIp#allow_ruby_exit? and
40202           allow_ruby_exit=
40204         * ext/tk/lib/multi-tk.rb: ditto.
40206         * ext/tk/lib/remote-tk.rb: ditto.
40208         * ext/tcltklib/MANUAL.euc: ditto.
40210         * ext/tcltklib/MANUAL.eng: ditto.
40212         * ext/tcltklib/tcltklib.c: fix some reasons of SEGV
40214         * ext/tk/tkutil.c: ditto.
40216         * ext/tk/lib/multi-tk.rb: ditto.
40218         * ext/tk/lib/tk/timer.rb: ditto.
40220 Sat Sep 11 16:09:46 2004  Dave Thomas  <dave@pragprog.com>
40222         * lib/rdoc/parsers/parse_rb.rb: Fix up cross-file class merging.
40224 Fri Sep 10 20:18:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40226         * ext/tcltklib/tcltklib.c (lib_merge_tklist): fix suspicious
40227           pointer conversion.
40229 Fri Sep 10 19:16:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40231         * bcc32/Makefile.sub: bccwin32 port starts to use RTL dll.
40232           (need to rebuild all) [ruby-dev:24138]
40234         * win32/win32.{h,c}: ditto.
40236 Fri Sep 10 15:55:59 2004  Minero Aoki  <aamine@loveruby.net>
40238         * lib/fileutils.rb (mkdir_p): should pass mode argument to
40239           Dir.mkdir. [ruby-dev:24242]
40241         * test/fileutils/test_fileutils.rb: test it.
40243 Fri Sep 10 02:43:54 2004  Dave Thomas  <dave@pragprog.com>
40245         * lib/rdoc/generators/template/kilmer.rb: James Buck's
40246           patch for call-seq.
40248 Thu Sep  9 13:58:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40250         * ext/tcltklib/tcltklib.c (ip_init): change flag value for setting
40251           'argv' and 'argv0' variable
40253         * ext/tk/lib/remote-tk.rb: follow changes of multi-tk.rb
40255 Thu Sep  9 11:46:18 2004  Dave Thomas  <dave@pragprog.com>
40257         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_classes): Allow
40258           spaces aroun parameter to define_method_under (James Buck)
40260 Wed Sep  8 18:44:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40262         * ext/stringio/stringio.c (strio_write): zero fill a gap if exsts.
40263           [ruby-dev:24190]
40265 Wed Sep  8 15:19:49 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40267         * ext/tcltklib/tcltklib.c (ip_init): cannot create a IP at level 4
40269         * ext/tk/lib/multi-tk.rb: improve 'exit' operation, security check,
40270           and error treatment
40272         * ext/tk/lib/multi-tk.rb: allow a trusted slave IP to create slave IPs
40274         * ext/tk/lib/tk/listbox.rb: add TkListbox#value, value=, clear, and
40275           erase
40277         * ext/tk/lib/tk/text.rb: add TkText#clear and erase
40279 Tue Sep  7 15:17:49 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40281         * ext/socket/socket.c (ruby_connect): break immediately if a
40282           socket is non-blocking.  [ruby-talk:111654]
40284 Tue Sep  7 12:48:22 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40286         * {bcc32,win32,wince}/Makefile.sub (config.h): add fcntl.
40288         * win32/win32.[ch] (fcntl): ditto.
40290         * win32/win32.c (rb_w32_connect): support nonblocking mode.
40292         * ext/socket/socket.c (wait_connectable, ruby_connect): support
40293           nonblocking connect on various platforms.
40295 Mon Sep  6 11:00:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40297         * dir.c (dir_s_chdir): the patch to shut up false warning when
40298           exception occurred within a block.  a patch was given from Johan
40299           Holmberg <holmberg at iar.se>.  [ruby-core:03292]
40301 Mon Sep  6 10:57:40 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40303         * ext/tk/lib/tk/menu.rb(TkOptionMenubutton#insert): call correct method
40305 Mon Sep  6 07:51:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40307         * eval.c (cvar_cbase): singletons should refer outer cvar scope.
40308           [ruby-dev:24223]
40310         * eval.c (rb_load): should preserve previous ruby_wrapper value.
40311           [ruby-dev:24226]
40313 Sat Sep  4 01:14:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40315         * eval.c (cvar_cbase): class variables cause SEGV in
40316           instance_eval() for fixnums and symbols. [ruby-dev:24213]
40318 Fri Sep  3 17:47:58 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40320         * struct.c (make_struct): remove redefining constant when
40321           conflict.  [ruby-dev:24210]
40323 Fri Sep  3 11:31:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40325         * ext/tk/lib/tk.rb: Tk.after makes TkCore::INTERP.tk_cmd_tbl grow
40326           [ruby-dev:24207]
40328 Fri Sep  3 02:12:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40330         * ext/tcltklib/tcltklib.c: fix typo [ruby-talk:111266]
40332         * ext/tk/lib/tk/text.rb: fix typo
40334         * ext/tk/lib/multi-tk.rb: improve safe-level treatment on slave IPs
40336 Fri Sep  3 01:54:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40338         * ext/extmk.rb (extmake): extact target prefix from Makefiles.
40340         * ext/extmk.rb: already built-in libraries satisfy dependencies.
40341           [ruby-dev:24028]
40343 Wed Sep  1 21:16:50 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40345         * ext/tk/lib/tk/spinbox.rb: fix typo
40347 Wed Sep  1 19:28:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40349         * process.c (rb_proc_exec): label cannot precede variable declarations.
40351 Tue Aug 31 18:20:49 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40353         * ext/tk/tkutil.c (cbsubst_init): fix memory leak
40355         * ext/tk/tkutil.c (cbsubst_get_all_subst_keys): fix SEGV
40357 Tue Aug 31 16:04:22 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40359         * ext/tcltklib/tcltklib.c (ip_delete): when a tcltkip is deleted,
40360           destroy its root widget
40362 Tue Aug 31 12:30:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40364         * ext/tcltklib/tcltklib.c (del_root): fix SEGV
40366 Mon Aug 30 21:50:14 2004  Dave Thomas  <dave@pragprog.com>
40368         * object.c: Add RDoc for Module.included.
40370 Mon Aug 30 23:11:06 2004  Dave Thomas  <dave@pragprog.com>
40372         * lib/rdoc/ri/ri_driver.rb (and others): ri now merges documentation
40373           if it finds the same class in multiple places.
40375 Mon Aug 30 22:40:30 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40377         * ext/tk/lib/multi-tk.rb: 'restart' method accepts arguments
40379 Mon Aug 30 15:10:46 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40381         * configure.in (GNU/k*BSD): fixed FTBFS on GNU/k*BSD. [ruby-dev:24051]
40383 Sun Aug 29 14:08:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40385         * ext/tcltklib/tcltklib.c: compile error on bcc32 [ruby-dev:24081]
40387         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string does not work
40389 Sat Aug 28 23:04:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40391         * bignum.c (rb_big_and): protect parameters from GC.
40392           [ruby-talk:110664]
40394 Fri Aug 27 12:13:50 2004  Tanaka Akira  <akr@m17n.org>
40396         * ext/stringio/stringio.c (Init_stringio): add StringIO#readpartial as
40397           an alias for StringIO#sysread.
40399 Fri Aug 27 10:14:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40401         * process.c (rb_proc_exec): strip trailing spaces.  [ruby-dev:24143]
40403         * win32/win32.c (CreateChild): ditto.
40405 Thu Aug 26 04:38:29 2004  Dave Thomas  <dave@pragprog.com>
40407         * eval.c (return_jump): Minor typo in error message. Now reads
40408           "return can't jump across threads".
40410 Wed Aug 25 15:18:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40412         * eval.c (rb_longjmp): Exception#to_str is no longer defined.
40414 Wed Aug 25 11:39:10 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40416         * error.c (exc_equal): exceptions are equal if they share same
40417           class, message and backtrace. [ruby-talk:110354]
40419         * error.c (name_err_mesg_equal): ditto.
40421 Tue Aug 24 16:41:48 2004  Shugo Maeda  <shugo@ruby-lang.org>
40423         * lib/cgi/session.rb (CGI::Session::FileStore#initialize): do not
40424           use a session id as a filename.
40426         * lib/cgi/session/pstore.rb (CGI::Session::PStore#initialize): ditto.
40428         * lib/cgi/session/pstore.rb (CGI::Session::PStore#initialize): use
40429           Dir::tmpdir.
40431 Tue Aug 24 14:32:17 2004  Shugo Maeda  <shugo@ruby-lang.org>
40433         * lib/cgi/session.rb (CGI::Session::FileStore#initialize): untaint
40434           session id after check.
40436 Tue Aug 24 08:57:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40438         * ext/openssl/ossl_x509attr.c (ossl_x509attr_initialize): d2i
40439           functions may replace the pointer indicated by the first argument.
40441         * ext/openssl/ossl_x509ext.c (ossl_x509ext_initialize): ditto.
40443         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): ditto.
40445 Mon Aug 23 12:43:32 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40447         * lib/resolv.rb (Config.default_config_hash): when multiple domains
40448           are set, Win32::Resolv.get_resolv_info returns Array.
40450 Sun Aug 22 16:27:38 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40452         * ext/openssl/ossl_ssl.c (ossl_ssl_read):
40453           - should return an empty string if specified length to read is 0.
40454           - should check for pending data and wait for fd before reading.
40455           - call underlying IO's sysread if SSL session is not started.
40456           [ruby-dev:24072], [ruby-dev:24075]
40458         * ext/openssl/ossl_ssl.c (ossl_ssl_write):
40459           - call underlying IO's syswrite if SSL session is not started.
40461         * ext/openssl/ossl_ssl.c (ossl_ssl_pending): new method
40462           OpenSSL::SSL#pending.
40464         * ext/openssl/lib/openssl/buffering.rb: should not use select.
40466 Sun Aug 22 01:10:36 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40468         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_connect):
40469           should call :ProxyContentHandler before finishing CONNECT.
40471 Sat Aug 21 06:41:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40473         * ext/tcltklib/extconf.rb (find_tcl, find_tk): find stub library.
40475         * lib/mkmf.rb (arg_config, with_config): deal with '-' and '_'
40476           uniformly.  [ruby-dev:24118]
40478 Fri Aug 20 14:49:42 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40480         * io.c (rb_io_check_writable): no need to check read buffer if
40481           already changed to write mode.
40483 Fri Aug 20 11:46:43 2004  UENO Katsuhiro  <katsu@blue.sky.or.jp>
40485         * ext/zlib/zlib.c: GzipReader#ungetc caused crc error.
40487 Thu Aug 19 16:29:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40489         * ext/tk/lib/tk.rb: Fail to treat a hash value of 'font' option.
40491         * ext/tk/lib/tk.rb: bindinfo cannot return '%' substiturion infomation.
40493         * ext/tk/lib/menu.rb: typo bug.
40495 Thu Aug 19 15:15:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40497         * dir.c (free_dir): fix memory leak.  reported by yamamoto
40498           madoka.
40500 Thu Aug 19 09:19:27 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40502         * configure.in, win32/Makefile.sub (LIBS): need to link shell32
40503           library for SH* functions on mswin32 and mingw32.
40505         * wince/Makefile.sub (LIBS): need to link ceshell library for SH*
40506           functions on mswince.
40508 Thu Aug 19 03:07:00 2004  why the lucky stiff  <why@ruby-lang.org>
40510         * lib/yaml/baseemitter.rb: folding now handles double-quoted strings,
40511           fixed problem with extra line feeds at end of folding, whitespace
40512           opening scalar blocks.
40514         * lib/yaml/rubytypes.rb: subtelties in handling strings with
40515           non-printable characters and odd whitespace patterns.
40517 Wed Aug 18 23:44:20 2004  Minero Aoki  <aamine@loveruby.net>
40519         * lib/net/protocol.rb (rbuf_fill): OpenSSL::SSLSocket has its own
40520           buffer, select(2) might not work. [ruby-dev:24072]
40522 Wed Aug 18 17:10:12 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40524         * ext/tcltklib/stubs.c (ruby_tcltk_stubs): need to call
40525           Tcl_FindExecutable() for Tcl/Tk 8.4.
40527 Wed Aug 18 12:52:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40529         * eval.c (rb_obj_instance_eval): evaluates under special singleton
40530           classes as for special constants.
40532 Wed Aug 18 11:22:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40534         * win32/win32.c (init_env): initialize HOME and USER environment
40535           variables unless set.
40537 Wed Aug 18 10:17:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40539         * eval.c (bind_eval): new method. [RCR 251]
40541         * string.c (rb_str_clear): new method. [ruby-dev:24104]
40543 Tue Aug 17 17:20:59 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40545         * io.c (rb_io_reopen): should clear allocated OpenFile.  pointed
40546           out by Guy Decoux. [ruby-core:03288]
40548 Tue Aug 17 01:36:32 2004  Dave Thomas  <dave@pragprog.com>
40550         * lib/rdoc/usage.rb: Remove extra indent. Tidy 'ri' option
40551           parsing so RDoc::usage plays better with OptionParser.
40553 Sat Aug 14 02:48:16 2004  Dave Thomas  <dave@pragprog.com>
40555         * lib/rdoc/usage.rb: Added. Allows command line programs
40556           to report usage using their initial RDoc comment.
40558 Sat Aug 14 01:25:48 2004  why the lucky stiff  <why@ruby-lang.org>
40560         * ext/syck/token.c: re2c no longer compiled with bit vectors.  caused
40561           problems for non-ascii characters. [ruby-core:03280]
40562         * ext/syck/implicit.c: ditto.
40563         * ext/syck/bytecode.c: ditto.
40565 Fri Aug 13 12:55:20 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40567         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_range_header):
40568           fix regex for range-spec.
40570         * lib/webrick/httpservlet/filehandler.rb
40571           (WEBrick::HTTPServlet::DefaultFileHandler#make_partial_content):
40572           multipart/byteranges response was broken.
40574         * lib/xmlrpc/server.rb: refine example code.
40576 Thu Aug 12 10:54:17 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40578         * rubyio.h (rb_eof_error): should mark as NORETURN.
40580         * win32/win32.c (make_cmdvector): adjust escaped successive
40581           double-quote handling.
40583 Thu Aug 12 01:53:10 2004  Tanaka Akira  <akr@m17n.org>
40585         * io.c (read_buffered_data): extracted from rb_io_fread.
40586           (io_readpartial): new method IO#readpartial.
40587           [ruby-dev:24055]
40589 Wed Aug 11 17:17:50 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40591         * configure.in (RPATHFLAG): stop setting RPATHFLAG on Interix.
40593 Mon Aug  9 15:03:20 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40595         * lib/webrick/httpservlet/erbhandler.rb
40596           (WEBrick::HTTPServlet::ERBHandler#do_GET): should select media type
40597           by suffix of script filename.
40599 Mon Aug  9 12:51:43 2004  Dave Thomas  <dave@pragprog.com>
40601         * dir.c (dir_s_glob): Roll in Austin Ziegler's Dir.glob and
40602           fnmatch updates.
40604 Mon Aug  9 06:33:06 2004  Minero Aoki  <aamine@loveruby.net>
40606         * lib/fileutils.rb (cp_r): copies symlink to symlink, except
40607           root entries of cp_r.
40609         * lib/fileutils.rb: new method FileUtils.copy_entry.
40611         * test/fileutils/test_fileutils.rb: more cp_r tests.
40613 Sun Aug  8 00:43:31 2004  why the lucky stiff  <why@ruby-lang.org>
40615         * lib/implicit.c: added sexagecimal float#base60.
40617         * ext/syck/rubyext.c (yaml_org_handler): ditto.
40619         * lib/token.c: indentation absolutely ignored when processing flow
40620           collections.  plain scalars are trimmed if indentation follows in
40621           an ambiguous flow collection.
40623 Sat Aug  7 03:08:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40625         * process.c (proc_daemon): new method.  should be modified for
40626           platforms without /dev/null.
40628 Sat Aug  7 00:50:01 2004  Tanaka Akira  <akr@m17n.org>
40630         * ext/zlib/zlib.c: Zlib::GzipReader#read(0) returns "" instead of nil.
40632 Wed Aug  4 13:26:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40634         * marshal.c (r_bytes0): optimize out read(0). [ruby-talk:108276]
40636 Tue Aug  3 13:49:12 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40638         * ext/tk/lib/tk/namespace.rb: bug fix
40640         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: add Tk::TreeCtrl.loupe
40642 Mon Aug  2 23:33:48 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40644         * test/ruby/test_file.rb (test_fnmatch): added more tests.
40646 Mon Aug  2 18:04:21 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40648         * ext/tk/lib/tk/msgcat.rb (set_translation): bug fix (fail to set
40649           trans_str to the same as src_str when trans_str is not given.)
40651 Mon Aug  2 17:40:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40653         * eval.c (blk_free): fixed serious memory leak. [ruby-dev:24013]
40655 Mon Aug  2 11:53:06 2004  Dave Thomas  <dave@pragprog.com>
40657         * lib/rdoc/code_objects.rb (RDoc::Context::find_symbol): Fix infinite recursion
40658           looking up some top level symbols (batsman)
40660 Mon Aug  2 11:48:29 2004  Dave Thomas  <dave@pragprog.com>
40662         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods): Allow '.'s in
40663           variable names to support SWIG generated files (Hans Fugal)
40665 Sat Jul 31 23:08:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40667         * eval.c (is_defined): stupid mistakes fixed. [ruby-dev:24006]
40669 Sat Jul 31 17:39:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40671         * misc/ruby-mode.el (ruby-expr-beg, ruby-parse-partial,
40672           ruby-calculate-indent, ruby-move-to-block, ruby-forward-sexp,
40673           ruby-backward-sexp): keywords must match word-wise.
40675 Sat Jul 31 13:37:51 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40677         * eval.c (is_defined): avoid unnecessary method invocations.
40679 Sat Jul 31 05:35:37 2004  why the lucky stiff  <why@ruby-lang.org>
40681         * lib/yaml/rubytypes.rb: exceptions were using an older
40682           YAML.object_maker. [ruby-core:03080]
40684         * ext/syck/token.c (sycklex_yaml_utf8): using newline_len to
40685           handline CR-LFs.  "\000" was showing up on folded blocks which
40686           stopped at EOF.
40688 Sat Jul 31 01:25:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40690         * eval.c (is_defined): call is_defined() before invoking
40691           rb_eval().  [ruby-talk:107867]
40693 Fri Jul 30 16:10:54 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40695         * ext/tcltklib/tcltklib.c (lib_fromUTF8_core): raise ArgumentError when
40696           the unknown encoding name is given.
40698         * ext/tcltklib/tcltklib.c (lib_toUTF8_core): ditto.
40700         * ext/tk/lib/tk.rb (Tk::Encoding.encoding_convertfrom): bug fix.
40702         * ext/tk/lib/tk.rb (Tk::Encoding.encoding_convertto): ditto.
40704 Wed Jul 28 18:59:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40706         * lib/cgi.rb (CGI::initialize): remove at_exit code for CGI_PARAMS
40707           and CGI_COOKIES.  they will no longer be used.
40709 Wed Jul 28 15:44:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40711         * eval.c (rb_call0): should call rb_call_super() directly for
40712           visibility overriding.  [ruby-dev:23989]
40714 Wed Jul 28 01:04:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40716         * env.h: remove argv from ruby_frame.
40718         * eval.c (rb_eval): no more copy on write.
40720         * eval.c (assign): ditto.
40722         * eval.c (rb_call0): can receive *rest by specifying negative
40723           argc.  (-1 means 0 arg and *rest, -2 means 1 arg and *rest...)
40725         * eval.c (rb_call0): properly set frame's argc counter.
40727         * gc.c (rb_gc_mark_frame): need not to mark frame's argv
40729         * gc.c (run_final): wrong order of data. [ruby-dev:23984]
40731 Tue Jul 27 07:05:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40733         * eval.c (rb_eval): copy on write for argument local variable
40734           assignment.
40736         * eval.c (assign): ditto.
40738         * eval.c (rb_call0): update ruby_frame->argv with the default
40739           value used for the optional arguments.
40741         * object.c (Init_Object): "===" calls rb_obj_equal() directly.
40742           [ruby-list:39937]
40744 Mon Jul 26 11:22:55 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40746         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.escape): should
40747           escape space.
40749 Sun Jul 25 10:56:28 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40751         * win32/win32.{h,c} (rb_w32_{f,fd,fs}open): workaround for bcc32's
40752           {f,fd,fs}open bug. set errno EMFILE and EBADF. [ruby-dev:23963]
40754         * test/drb/drbtest.rb: fix method duplication.
40756 Sat Jul 24 13:32:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40758         * range.c (rb_range_beg_len): returns Qnil only when "beg" points
40759           outside of a range.  No boundary check for "end".
40761 Fri Jul 23 16:40:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40763         * gc.c (define_final): should not disclose NODE* to Ruby world.
40764           [ruby-dev:23957]
40766 Fri Jul 23 08:52:22 2004  Shugo Maeda  <shugo@ruby-lang.org>
40768         * lib/net/imap.rb (disconnected?): new method.
40770 Thu Jul 22 16:41:54 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40772         * lib/cgi/session.rb (CGI::Session::FileStore#update): sets the
40773           permission of the session data file to 0600.
40775         * lib/cgi/session/pstore.rb (CGI::Session::Pstore#initialize):
40776           ditto.
40778 Mon Jul 19 00:53:46 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40780         * lib/webrick/httpservlet/cgihandler.rb
40781           (WEBrick::HTTPServlet::CGIhandler#do_GET): set SystemRoot environment
40782           variable to CGI process on Windows native platforms. [ruby-dev:23936]
40784 Sun Jul 18 16:14:29 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40786         * ext/tk/lib/tk/msgcat.rb (TkMsgCatalog.callback): bug fix
40787           ( wrong number of argument )
40789 Sun Jul 18 08:13:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40791         * sprintf.c (rb_f_sprintf): remove extra sign digit.
40793 Sun Jul 18 03:19:14 2004  Akinori MUSHA  <knu@iDaemons.org>
40795         * dir.c (bracket): use NULL instead of 0.
40797 Sun Jul 18 02:35:30 2004  Shugo Maeda  <shugo@ruby-lang.org>
40799         * lib/net/imap.rb (receive_responses): return if a LOGOUT response
40800           received.
40802 Sat Jul 17 23:59:01 2004  Shugo Maeda  <shugo@ruby-lang.org>
40804         * lib/net/imap.rb (send_string_data): wait command continuation
40805           requests before sending octet data of literals.
40807 Sat Jul 17 23:54:59 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40809         * ext/tk/lib/tk/variable.rb: TkVariable#ref returns a TkVariable object
40811 Sat Jul 17 22:04:44 2004  akira yamada  <akira@ruby-lang.org>
40813         * lib/uri/ldap.rb: method hierarchical? should be in URI::LDAP.
40815 Sat Jul 17 18:29:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40817         * parse.y (stmt): not to show same error messages twice.
40819 Sat Jul 17 14:18:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40821         * string.c (rb_str_match_m): String#match should also take
40822           optional argument.  [ruby-core:03205]
40824         * re.c (rb_reg_match_m): add optional second argugment "pos" to
40825           specify match start point.  [ruby-core:03203]
40827 Sat Jul 17 13:13:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40829         * lib/irb/ruby-lex.rb (RubyLex::identify_string): %s string do not
40830           process expression interpolation.  [ruby-talk:106691]
40832 Sat Jul 17 05:26:27 2004  Dave Thomas  <dave@pragprog.com>
40834         * lib/rdoc/diagram.rb: Incorporate Micheal Neumann's
40835           client-side imagemao patch
40837 Sat Jul 17 01:57:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40839         * eval.c (THREAD_ALLOC): th->thread should be initialized to NULL.
40840           [ruby-talk:106657]  The solution was found by Guy Decoux.
40842 Fri Jul 16 22:30:28 2004  Michael Neumann  <mneumann@ntecs.de>
40844         * file.c (rb_stat_dev_major): new methods File::Stat#dev_major and
40845           #dev_minor. [ruby-core:03195]
40847 Fri Jul 16 11:17:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40849         * error.c (exit_initialize): use EXIT_SUCCESS instead of 0.
40850           [ruby-dev:23913]
40852         * error.c (exit_success_p): new method SystemExit#success?.
40853           [ruby-dev:23912]
40855         * error.c (syserr_initialize): initialization for subclasses.
40856           [ruby-dev:23912]
40858 Thu Jul 15 23:53:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40860         * lib/optparse.rb (OptionParser#warn, OptionParser#abort): Exception
40861           no longer has to_str method.
40863 Thu Jul 15 22:59:48 2004  Shugo Maeda  <shugo@ruby-lang.org>
40865         * ext/readline/extconf.rb: added dir_config for curses, ncurses,
40866           termcap.
40868 Thu Jul 15 20:44:46 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40870         * class.c: rdoc patch
40872 Thu Jul 15 14:12:34 2004  why the lucky stiff  <why@ruby-lang.org>
40874         * lib/yaml.rb (YAML::load_file, YAML::parse_file): added.
40876         * ext/syck/token.c: re2c compiled with bit vectors now.
40877         * ext/syck/implicit.c: ditto.
40878         * ext/syck/bytecode.c: ditto.
40880 Thu Jul 15 10:15:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40882         * ext/tk/, ext/tcltklib/: bug fix
40884         * ext/tk/lib/tk.rb: better operation for SIGINT when processing
40885           callbacks.
40886         * ext/tk/lib/tk/msgcat.rb: ditto.
40887         * ext/tk/lib/tk/variable.rb: ditto.
40888         * ext/tk/lib/tk/timer.rb: ditto.
40890         * ext/tk/lib/tk/validation.rb: add Tk::ValidateConfigure.__def_validcmd
40891           to define validatecommand methods easier
40893         * ext/tk/lib/tk.rb (_genobj_for_tkwidget): support autoload Tk ext
40894           classes
40896         * ext/tk/lib/tk/canvas.rb and so on: remove the parent widget type
40897           check for items (e.g. canvas items; depends on the class) to
40898           avoid some troubles on Tk extension widget class definition.
40900         * ext/tk/lib/tkextlib/: add Iwidget and TkTable extension support
40902         * ext/tk/sample/tkextlib/: add samples of Iwidget and TkTable
40905 Wed Jul 14 23:49:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40907         * enum.c (enum_min_by): new method Enum#min_by.  added Enum#max_by
40908           as well.
40910 Wed Jul 14 18:05:21 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40912         * ext/openssl/ossl_asn1.c (ossl_asn1cons_to_der): fix type of
40913           argument. [ruby-dev:23891]
40915         * test/openssl/test_x509store.rb: prune tests for CRL checking
40916           unless X509::V_FLAG_CRL_CHECK is defined.
40918 Wed Jul 14 12:20:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40920         * util.c (ruby_strtod): should not convert string in the form of
40921           "-I.FE-X" which both "I" and "F" are ommitted. [ruby-dev:23883]
40923         * test/ruby/test_float.rb (test_strtod): add test for bug fix.
40925 Wed Jul 14 00:33:48 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40927         * array.c: rdoc patch. merged patch from Johan Holmberg
40928           <holmberg@iar.se> [ruby-core:3170]
40930 Tue Jul 13 19:39:12 2004  akira yamada  <akira@ruby-lang.org>
40932         * lib/uri/generic.rb (URI::Generic#merge_path):
40933           "URI('http://www.example.com/foo/..') + './'" should return
40934           "URI('http://www.example.com/')".  [ruby-list:39838]
40935           "URI('http://www.example.com/') + './foo/bar/..'" should return
40936           "URI('http://www.example.com/foo/')".  [ruby-list:39844]
40938         * test/uri/test_generic.rb (TestGeneric#test_merge): added tests.
40940 Tue Jul 13 15:48:56 2004  Akinori MUSHA  <knu@iDaemons.org>
40942         * lib/mkmf.rb (init_mkmf): Do not add $(libdir) to $LIBPATH in
40943            extmk mode.
40945         * lib/mkmf.rb (dir_config): Prepend a new library path instead of
40946           appending so it is tried first.
40948 Tue Jul 13 00:50:48 2004  Dave Thomas  <dave@pragprog.com>
40950         * lib/rdoc/parsers/parse_rb.rb: Support call-seq: for Ruby files.
40952 Mon Jul 12 21:20:51 2004  Dave Thomas  <dave@pragprog.com>
40954         * html_generator.rb: Support hyperlinks of the form {any text}[xxx]
40955           as well as stuff[xxx]
40957 Sat Jul 10 09:30:24 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40959         * test/soap/marshal/test_struct.rb: use qualified built-in class name
40960           (::Struct) to avoid name crash.
40962 Sat Jul 10 04:21:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40964         * ext/tk/lib/tk.rb: better operation for SIGINT when processing
40965           callbacks.
40966         * ext/tk/lib/tk/msgcat.rb: ditto.
40967         * ext/tk/lib/tk/variable.rb: ditto.
40968         * ext/tk/lib/tk/timer.rb: ditto.
40970         * ext/tk/lib/tk/validation.rb (__def_validcmd):  add a module
40971           function of Tk::ValidateConfigure to define validatecommand
40972           methods easier
40974 Fri Jul  9 22:18:59 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40976         * array.c, enum.c, pack.c: rdoc patch from Johan Holmberg
40977           <holmberg@iar.se> [ruby-core:3132] [ruby-core:3136]
40979         * numeric.c: rdoc patch.
40981 Fri Jul  9 19:26:39 2004  Tanaka Akira  <akr@m17n.org>
40983         * lib/open-uri.rb (URI::HTTPS#proxy_open): raise ArgumentError to
40984           notice https is not supported.
40986 Fri Jul  9 14:28:54 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40988         * eval.c (rb_thread_raise): accept third argument as well as
40989           Kernel#raise, and evaluate the arguments to create an exception in
40990           the caller's context.  [ruby-talk:105507]
40992 Fri Jul  9 01:47:08 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40994         * ext/tk/lib: bug fix
40995         * ext/tk/lib/tkextlib/itcl: add [incr Tcl] support
40996         * ext/tk/lib/tkextlib/itk: add [incr Tk] support
40997         * ext/tk/lib/tkextlib/iwidgets: midway point of [incr Widgets] support
40998         * ext/tk/sample/tkextlib/iwidgets: very simple examples of
40999           [incr Widgets]
41001 Thu Jul  8 19:27:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41003         * configure.in (rb_cv_stack_end_address): detect stack end address
41004           variable supplied by system.  [ruby-core:03115]
41006         * gc.c (Init_stack): use system provided address if possible.
41008 Thu Jul  8 00:05:23 2004  akira yamada  <akira@ruby-lang.org>
41010         * lib/tempfile.rb (Tempfile::initialize): got out code of
41011           generating tmpname.  [ruby-dev:23832][ruby-dev:23837]
41013 Wed Jul  7 02:31:41 2004  Kouhei Sutou  <kou@cozmixng.org>
41015         * lib/rss/{rss,parser,0.9,1.0,2.0}.rb: supported RSS 0.9x/2.0
41016           validation and validation which disregard order of elements.
41017         * test/rss/test_parser.rb: added tests for RSS 0.9x/2.0
41018           validation.
41019         * test/rss/{test_trackback,rss-testcase}.rb: fixed no good method
41020           name.
41022 Wed Jul  7 00:48:34 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41024         * ext/tk/lib/tkextlib/tktrans.rb,
41025           ext/tk/lib/tkextlib/treectrl.rb: fix syntax errors.
41027 Tue Jul  6 18:38:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41029         * ext/tk/lib: improve framework of developping Tcl/Tk extension
41030           wrappers
41032 Mon Jul  5 23:56:42 2004  Kouhei Sutou  <kou@cozmixng.org>
41034         * lib/rss/{trackback,syndication,dublincore,content}.rb: worked
41035           with ruby 1.6 again.
41037         * test/rss/rss-assertions.rb: ditto.
41039 Mon Jul  5 22:54:39 2004  Tanaka Akira  <akr@m17n.org>
41041         * lib/uri/common.rb (Kernel#URI): new global method for parsing URIs.
41043 Mon Jul  5 09:02:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41045         * eval.c (rb_thread_yield, rb_f_catch): 4th argument to rb_yield_0()
41046           is a set of bit flags.  [ruby-dev:23859]
41048 Mon Jul  5 01:20:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41050         * lib/drb/drb.rb(DRbConn self.open): If socket pool is full, close
41051           the socket whose last-access-time is oldest. (and add new one)
41052           [ruby-dev:23860]
41054 Sun Jul  4 12:24:50 2004  Kouhei Sutou  <kou@cozmixng.org>
41056         * lib/rss/rss.rb: added copyright header.
41058 Sat Jul  3 22:25:27 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41060         * added files:
41061           * lib/soap/header/*
41062           * lib/soap/rpc/httpserver.rb
41063           * lib/wsdl/soap/cgiStubCreator.rb
41064           * lib/wsdl/soap/classDefCreator.rb
41065           * lib/wsdl/soap/classDefCreatorSupport.rb
41066           * lib/wsdl/soap/clientSkeltonCreator.rb
41067           * lib/wsdl/soap/driverCreator.rb
41068           * lib/wsdl/soap/mappingRegistryCreator.rb
41069           * lib/wsdl/soap/methodDefCreator.rb
41070           * lib/wsdl/soap/servantSkeltonCreator.rb
41071           * lib/wsdl/soap/standaloneServerStubCreator.rb
41072           * lib/wsdl/xmlSchema/enumeration.rb
41073           * lib/wsdl/xmlSchema/simpleRestriction.rb
41074           * lib/wsdl/xmlSchema/simpleType.rb
41075           * lib/xsd/codegen/*
41076           * lib/xsd/codegen.rb
41077           * sample/soap/authheader/*
41078           * sample/soap/raa2.4/*
41079           * sample/soap/ssl/*
41080           * sample/soap/swa/*
41081           * sample/soap/whois.rb
41082           * sample/wsdl/raa2.4/*
41083           * test/soap/header/*
41084           * test/soap/ssl/*
41085           * test/soap/struct/*
41086           * test/soap/swa/*
41087           * test/soap/wsdlDriver/*
41088           * test/wsdl/multiplefault.wsdl
41089           * test/wsdl/simpletype/*
41090           * test/wsdl/test_multiplefault.rb
41092         * modified files:
41093           * lib/soap/baseData.rb
41094           * lib/soap/element.rb
41095           * lib/soap/generator.rb
41096           * lib/soap/netHttpClient.rb
41097           * lib/soap/parser.rb
41098           * lib/soap/property.rb
41099           * lib/soap/soap.rb
41100           * lib/soap/streamHandler.rb
41101           * lib/soap/wsdlDriver.rb
41102           * lib/soap/encodingstyle/handler.rb
41103           * lib/soap/encodingstyle/literalHandler.rb
41104           * lib/soap/encodingstyle/soapHandler.rb
41105           * lib/soap/mapping/factory.rb
41106           * lib/soap/mapping/mapping.rb
41107           * lib/soap/mapping/registry.rb
41108           * lib/soap/mapping/rubytypeFactory.rb
41109           * lib/soap/mapping/wsdlRegistry.rb
41110           * lib/soap/rpc/cgistub.rb
41111           * lib/soap/rpc/driver.rb
41112           * lib/soap/rpc/proxy.rb
41113           * lib/soap/rpc/router.rb
41114           * lib/soap/rpc/soaplet.rb
41115           * lib/soap/rpc/standaloneServer.rb
41116           * lib/wsdl/data.rb
41117           * lib/wsdl/definitions.rb
41118           * lib/wsdl/operation.rb
41119           * lib/wsdl/parser.rb
41120           * lib/wsdl/soap/definitions.rb
41121           * lib/wsdl/xmlSchema/complexContent.rb
41122           * lib/wsdl/xmlSchema/complexType.rb
41123           * lib/wsdl/xmlSchema/data.rb
41124           * lib/wsdl/xmlSchema/parser.rb
41125           * lib/wsdl/xmlSchema/schema.rb
41126           * lib/xsd/datatypes.rb
41127           * lib/xsd/qname.rb
41128           * sample/soap/sampleStruct/server.rb
41129           * sample/wsdl/amazon/AmazonSearch.rb
41130           * sample/wsdl/amazon/AmazonSearchDriver.rb
41131           * test/soap/test_property.rb
41132           * test/soap/calc/test_calc_cgi.rb
41133           * test/wsdl/test_emptycomplextype.rb
41135         * summary
41136           * add SOAP Header mustUnderstand support.
41138           * add HTTP client SSL configuration and Cookies support (works
41139             completely with http-access2).
41141           * add header handler for handling sending/receiving SOAP Header.
41143           * map Ruby's anonymous Struct to common SOAP Struct in SOAP Object
41144             Model.  it caused error.
41146           * add WSDL simpleType support to restrict lexical value space.
41148 Sat Jul  3 17:19:44 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41150         * ext/tk/lib/tkextlib/tkDND.rb: fix syntax error.
41152 Thu Jul  1 18:36:08 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41154         * ext/tk/lib/tcltklib: bug fix
41156         * ext/tk/lib/tk: bug fix and add Tcl/Tk extension support libraries
41158 Thu Jul  1 18:31:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41160         * lib/pstore.rb (PStore#transaction): get rid of opening in write mode
41161           when read only transaction.  [ruby-dev:23842]
41163 Thu Jul  1 00:44:42 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41165         * ext/openssl/ossl_cipher.c (ossl_cipher_encrypt, ossl_cipher_decrypt):
41166           re-implemnt (the arguments for this method is ).
41168         * ext/openssl/ossl_cipher.c (ossl_cipher_pkcs5_keyivgen): new method
41169           OpenSSL::Cipher::Cipher#pkcs5_keyivgen. it calls EVP_BytesToKey().
41171         * ext/openssl/ossl_cipher.c (ossl_cipher_set_key_length): new method
41172           OpenSSL::Cipher::Cipher#key_len=.
41174 Wed Jun 30 19:48:09 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41176         * ext/openssl/extconf.rb: check for EVP_CIPHER_CTX_copy, ENGINE_add,
41177           EVP_CIPHER_CTX_set_padding, EVP_CipherFinal_ex, EVP_CipherInit_ex,
41178           EVP_DigestFinal_ex and EVP_DigestInit_ex.
41180         * ext/openssl/openssl_missing.c (EVP_CIPHER_CTX_copy): new function.
41182         * ext/openssl/openssl_missing.h (EVP_DigestInit_ex, EVP_DigestFinal_ex,
41183           EVP_CipherInit_ex, EVP_CipherFinal_ex, HMAC_Init_ex): new macro for
41184           OpenSSL 0.9.6.
41186         * ext/openssl/ossl_cipher.c (ossl_cipher_alloc, ossl_cipher_initialize,
41187           ossl_cipher_copy, ossl_cipher_reset, ossl_cipher_encrypt,
41188           ossl_cipher_decrypt, ossl_cipher_final, ossl_cipher_set_key,
41189           ossl_cipher_set_iv): replace all EVP_CipherInit and
41190           EVP_CipherFinal into EVP_CipherInit_ex and EVP_CipherFinal_ex.
41191           and EVP_CIPHER_CTX_init should only be called once.
41193         * ext/openssl/ossl_cipher.c (ossl_cipher_set_padding): check for
41194           EVP_CIPHER_CTX_set_padding.
41196         * ext/openssl/ossl_cipher.c (Init_ossl_cipher): Cipher#<< is deprecated.
41198         * ext/openssl/ossl_digest.c: replace all EVP_DigestInit and
41199           EVP_DigestFinal into EVP_DigestInit_ex and EVP_DigestFinal_ex.
41200           and EVP_MD_CTX_init should only be called once.
41202         * ext/openssl/ossl_digest.c (digest_final): should call
41203           EVP_MD_CTX_cleanup to avoid memory leak.
41205         * ext/openssl/ossl_hmac.c (ossl_hmac_initialize): repalce HMAC_init
41206           into HMAC_init_ex. and HMAC_CTX_init is moved to ossl_hmac_alloc.
41208         * ext/openssl/ossl_hmac.c (hmac_final): should call
41209           HMAC_CTX_cleanup to avoid memory leak.
41211         * test/openssl/test_cipher.rb, test/openssl/test_digest.rb,
41212           test/openssl/test_hmac.rb: new file.
41214 Wed Jun 30 16:59:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41216         * test/ruby/test_file.rb (test_fnmatch): some tests for File.fnmatch
41217           are added.
41219 Wed Jun 30 11:38:51 2004  Mikael Brockman  <phubuh@phubuh.org>
41221         * parse.y (primary): should not be NULL.  [ruby-core:03098]
41223 Wed Jun 30 02:41:10 2004  why the lucky stiff  <why@ruby-lang.org>
41225         * ext/syck/rubyext.c (syck_emitter_new): set buffer after
41226           Data_Wrap_Struct to avoid possible GC. [ruby-talk:104835]
41228 Tue Jun 29 10:31:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41230         * eval.c (rb_eval_cmd, rb_thread_trap_eval): restore safe level.
41232         * gc.c (define_final, run_final): preserve and restore safe level for
41233           finalizers.  [ruby-core:03058]
41235         * signal.c (signal_exec, rb_trap_exit, trap): preserve and restore
41236           safe level for signal handlers.  [ruby-dev:23829]
41238 Mon Jun 28 14:57:56 2004  Jeff Mitchell  <quixoticsycophant@yahoo.com>
41240         * configure.in, lib/mkmf.rb (LIBPATHFLAG): use double quotes due to
41241           DOSISH compilers.  [ruby-core:03107]
41243 Mon Jun 28 00:35:29 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41245         * sample/drb/*.rb: using 'DRb.thread.join' instead of 'gets'
41247 Sun Jun 27 22:36:47 2004  Kouhei Sutou  <kou@cozmixng.org>
41249         * sample/rss/tdiary_plugin/rss-recent.rb: supported Hiki.
41251 Sat Jun 26 15:17:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41253         * variable.c (rb_mod_class_variables): class variables are no longer
41254           inherited.  [ruby-dev:23808]
41256 Sat Jun 26 11:07:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41258         * configure.in (aix): -b must come at the start of the command line,
41259           and -e must not appear while testing libraries.  [ruby-talk:104501]
41261         * lib/mkmf.rb (find_header, dir_config): quote directory names if
41262           necessary.  [ruby-talk:104505]
41264 Sat Jun 26 00:13:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41266         * io.c (rb_fopen, rb_fdopen, rb_io_reopen): setvbuf() may return
41267           positive value on failure.  [ruby-dev:23792]
41269 Fri Jun 25 18:07:15 2004  Michal Rokos  <michal@ruby-lang.org>
41271         * gc.c: bring back _stklen for DJGPP [ruby-core:3084]
41273 Fri Jun 25 15:33:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41275         * ext/iconv/extconf.rb: check stricter.  [ruby-talk:104501]
41277 Fri Jun 25 01:58:01 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41279         * {bcc32,win32,wince}/setup.mak: remove RUBY_EXTERN lines when
41280           including version.h. [ruby-talk:104456]
41282 Thu Jun 24 14:23:29 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41284         * io.c (rb_io_fread): return already read data when system call is
41285           interrupted.  [ruby-talk:97206]
41287 Thu Jun 24 01:25:21 2004  Shugo Maeda  <shugo@ruby-lang.org>
41289         * version.h: added declarations of ruby_version,
41290           ruby_release_date, ruby_platform.
41292 Thu Jun 24 01:07:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41294         * ext/socket/socket.c (sock_sockaddr): Socket#gethostbyname()
41295           should give us packed address, not struct sockaddr.
41296           [ruby-core:03053]
41298 Wed Jun 23 22:19:10 2004  Dave Thomas  <dave@pragprog.com>
41300         * ext/socket/socket.c (sock_s_gethostbyaddr): Work around problem
41301           with OS X not returning 'from' parameter to recvfrom for
41302           connection-oriented sockets.
41304 Wed Jun 23 22:16:16 2004  Michal Rokos  <michal@ruby-lang.org>
41306         * io.c: io_seek()'s retval should be checked [ruby-core:03045]
41308 Wed Jun 23 21:48:27 2004  Michal Rokos  <michal@ruby-lang.org>
41310         * time.c: Fix indentation.
41312         * main.c: Remove _stklen, and _CRT_glob. Move _stacksize for
41313           __human68k__ to gc.c where the others are.
41315         * gc.c: put _stacksize in place and clean the #ifdefs macros.
41317 Wed Jun 23 17:37:54 2004  Shugo Maeda  <shugo@ruby-lang.org>
41319         * lib/net/imap.rb: added new option --ssl.
41321 Wed Jun 23 01:45:27 2004  Dave Thomas  <dave@pragprog.com>
41323         * lib/rdoc/parsers/parse_rb.rb (RubyLex::identify_quotation):
41324           Fix problem with the 'r' being dropped from %r{xxx}
41326 Wed Jun 23 00:10:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41328         * ext/win32ole/win32ole.c (ole_hresult2msg): remove trailing
41329           CRs and LFs. (doesn't depend on CR+LF) [ruby-dev:23749]
41331 Wed Jun 23 00:00:25 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41333         * eval.c (return_jump, break_jump): raise unexpected local jump
41334           exception directly.  [ruby-dev:23740]
41336         * io.c (rb_io_initialize): should check fcntl result.  [ruby-dev:23742]
41338 Tue Jun 22 23:35:43 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41340         * sprintf.c (rb_f_sprintf): support FZERO and FSPACE with NaN/Inf.
41342         * test/ruby/test_sprintf.rb (test_nan, test_inf): add tests.
41344 Tue Jun 22 21:11:36 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
41346         * ext/win32ole/win32ole.c (OLE_FREE): should not call CoFreeUnuse-
41347           dLibraries().
41349         * ext/win32ole/win32ole.c (ole_event_free): ditto.
41351         * ext/win32ole/win32ole.c (ole_hresult2msg): truncate error message
41352           before CR.
41354 Tue Jun 22 19:24:59 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41356         * sprintf.c (rb_f_sprintf): unify output of NaN, Inf and -Inf with
41357           "%f" or etc on all platform. [ruby-dev:23704], [ruby-dev:23747]
41359 Tue Jun 22 15:28:12 2004  Michal Rokos  <michal@ruby-lang.org>
41361         * compar.c: Remove explicit NIL_P() checks since rb_cmpint() does it
41362           again in the exactly same manner.
41364 Tue Jun 22 01:32:40 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41366         * ext/openssl/ossl_pkey_dh.c (ossl_dh_initialize): should create
41367           empty pkey object if no argument is passed. [ruby-talk:103328]
41369         * ext/openssl/ossl_pkey_dsa.c (ossl_dsa_initialize): ditto.
41371         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_initialize): ditto.
41373         * ext/openssl/ossl_pkey_dh.c: add new methods: OpenSSL::PKey::DH#p,
41374           OpenSSL::PKey::DH#p=, OpenSSL::PKey::DH#g, OpenSSL::PKey::DH#g=,
41375           OpenSSL::PKey::DH#pub_key, OpenSSL::PKey::DH#pub_key=,
41376           OpenSSL::PKey::DH#priv_key and OpenSSL::PKey::DH#priv_key=.
41378         * ext/openssl/ossl_pkey_dsa.c: add new methods: OpenSSL::PKey::DSA#p,
41379           OpenSSL::PKey::DSA#p=, OpenSSL::PKey::DSA#q, OpenSSL::PKey::DSA#q=,
41380           OpenSSL::PKey::DSA#g, OpenSSL::PKey::DSA#g=,
41381           OpenSSL::PKey::DSA#pub_key, OpenSSL::PKey::DSA#pub_key=,
41382           OpenSSL::PKey::DSA#priv_key and OpenSSL::PKey::DSA#priv_key=.
41384 Mon Jun 21 09:24:51 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41386         * win32/win32.c (rb_w32_opendir): should set errno if error occurs
41387           when calling OS API.
41389 Sun Jun 20 21:12:54 2004  Shugo Maeda  <shugo@ruby-lang.org>
41391         * lib/net/ftp.rb (binary=): send TYPE commands only once.
41393 Sat Jun 19 13:27:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41395         * eval.c (method_call): allow changing $SAFE.  [ruby-dev:23713]
41397         * eval.c (proc_set_safe_level, proc_invoke, rb_mod_define_method): not
41398           set $SAFE for methods defined from Proc.  [ruby-dev:23697]
41400 Sat Jun 19 01:10:12 2004  Kouhei Sutou  <kou@cozmixng.org>
41402         * sample/rss/tdiary_plugin/rss-recent.rb: added more information.
41404 Fri Jun 18 23:12:22 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41406         * eval.c (proc_save_safe_level, rb_set_safe_level, safe_setter): limit
41407           safe level.
41409 Wed Jun 16 23:05:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41411         * object.c (rb_mod_freeze): prepare string representation before
41412           freezing. [ruby-talk:103646]
41414 Wed Jun 16 19:57:24 2004  Michal Rokos  <michal@ruby-lang.org>
41416         * test/ruby/test_array.rb: extend testcase to check #first, #last,
41417           #shift, #unshift, #pop, #push
41419 Wed Jun 16 16:05:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41421         * array.c (ary_new): move alloc behind checks.  [ruby-core:02982]
41423         * array.c (rb_ary_pop_m, rb_ary_shift_m): take arg to behave as push
41424           and unshift.
41426         * array.c (rb_ary_first, rb_ary_last): make shared array for result
41427           array, and correct doc for Array#first(n) and Array#last(n)
41429         * array.c (rb_ary_select): not accept any arg.
41431 Wed Jun 16 16:03:59 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41433         * object.c (rb_class_inherited_p): singleton class inherits Class
41434           rather than its object's class.  [ruby-dev:23690]
41436 Wed Jun 16 16:01:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41438         * gc.c (stack_grow_direction): memoize the direction.
41440         * gc.c (Init_stack): should always move to end of VALUE.
41442 Tue Jun 15 12:10:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41444         * ext/tk/lib/tk.rb: bug fix (TkWindow#grab)
41446 Mon Jun 14 18:23:27 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41448         * ext/tk/lib/remote-tk.rb: bug fix
41450 Sun Jun 13 00:23:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41452         * ext/tcltklib/extconf.rb: [EXPERIMENTAL] MacOS X (darwin) support
41454         * ext/tcltklib/tcltklib.c: fix thread trouble on callback proc, and
41455           eliminate warning about instance variable access
41457         * ext/tk/lib/tk/menubar.rb: improve supported menu_spec
41459         * ext/tk/lib/tk/menuspec.rb: [add] menu_spec support library
41461         * ext/tk/lib/tk/root.rb: add menu_spec support
41463         * ext/tk/lib/tk/text.rb: bug fix
41465         * ext/tk/lib/tk/toplevel.rb: add menu_spec support
41467         * ext/tk/sample/menubar?.rb: [add] sample of menu_spec usage
41469 Sat Jun 12 14:15:20 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41471         * dir.c: RDOC for File::FNM_CASEFOLD was missed.
41473 Sat Jun 12 11:15:53 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41475         * configure.in (target_os): strip -gnu suffix on Linux.
41477 Fri Jun 11 22:08:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41479         * array.c: remove #indexes, #indices.
41481         * hash.c: ditto.
41483         * ext/dbm/dbm.c: remove #indexes, #indices, "values_at" warning
41484           from #select.
41486         * ext/gdbm/gdbm.c: ditto.
41488         * ext/sdbm/init.c: ditto.
41490         * ext/dbm/dbm.c (Init_dbm): set VERSION constant as "unknown" when
41491           DB_VERSION_STRING is not available.
41493 Thu Jun 10 19:19:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41495         * ext/sdbm/init.c (fsdbm_store): sdbm should use StringValue().
41496           [ruby-talk:103062]
41498 Wed Jun  9 16:09:01 2004  akira yamada  <akira@ruby-lang.org>
41500         * lib/uri/generic.rb (URI::Generic::merge,
41501           URI::Generic::route_from): accepts non-hierarchical URI.
41502           [ruby-dev:23631]
41504         * test/uri/test_generic.rb (TestGeneric::test_route,
41505           TestGeneric::test_merge): added tests for above changes.
41507 Wed Jun  9 15:39:55 2004  Akinori MUSHA  <knu@iDaemons.org>
41509         * configure.in: Add support for DragonFly BSD.
41511 Wed Jun  9 15:07:06 2004  Akinori MUSHA  <knu@iDaemons.org>
41513         * config.guess, config.sub: Update to a more recent version as of
41514           2004-01-20.
41516 Wed Jun  9 11:20:05 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41518         * win32/win32.c: remove unused functions and variables.
41520 Wed Jun  2 20:16:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41522         * string.c (str_new4): should share shared instance if it already
41523           exists.  [ruby-dev:23665]
41525 Wed Jun  2 12:41:53 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41527         * io.c (rb_io_gets_m): set lastline ($_) even when read line is
41528           nil.  [ruby-dev:23663]
41530 Fri May 28 11:20:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41532         * eval.c (rb_eval): bad influence on frame node.
41534         * eval.c (eval): reverted wrongly removed condition.  [ruby-dev:23638]
41536 Thu May 27 21:37:50 2004  Tanaka Akira  <akr@m17n.org>
41538         * lib/pathname.rb (Pathname#initialize): fix pathname initialization
41539           by pathname.
41541 Thu May 27 20:02:09 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41543         * io.c (rb_io_fwrite): check all case errno != 0 [ruby-dev:23648]
41545 Thu May 27 15:54:02 2004  Shugo Maeda  <shugo@ruby-lang.org>
41547         * lib/net/ftp.rb (MDTM_REGEXP): fix for demon's ftp server.
41548           Thanks, Rutger Nijlunsing.
41550 Thu May 27 14:53:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41552         * io.c (rb_io_fwrite): workaround for bcc32's fwrite bug.
41553           add errno checking.  [ruby-dev:23627]
41555         * io.c (rb_io_fwrite): should check if errno == ENOENT, too.
41557 Thu May 27 11:25:03 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41559         * test/csv/test_csv.rb: illegal require module name (../lib/csv.rb).
41561 Wed May 26 23:12:13 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41563         * lib/csv.rb (CSV.read, CSV.readlines): added.  works as IO.read and
41564           IO.readlines in CSV format.
41566         * lib/csv.rb (CSV.parse): [CAUTION] behavior changed.  in the past,
41567           CSV.parse accepts a filename to be read-opened (it was just a
41568           shortcut of CSV.open(filename, 'r')).  now CSV.parse accepts a
41569           string or a stream to be parsed e.g.
41570           CSV.parse("1,2\n3,r") #=> [['1', '2'], ['3', '4']]
41572         * test/csv/test_csv.rb: follow above changes.
41574 Wed May 26 14:19:42 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41576         * eval.c (rb_eval, eval): make line number consistent on eval with
41577           Proc.  [ruby-talk:101253]
41579 Wed May 26 13:59:17 2004  Dave Thomas  <dave@pragprog.com>
41581         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::skip_for_variable): Allow for
41582           'do' after for statement
41584 Wed May 26 13:56:03 2004  Dave Thomas  <dave@pragprog.com>
41586         * lib/rdoc/generators/html_generator.rb (Generators::MarkUp::style_url): Fix
41587           relative path to code CSS file
41589 Wed May 26 13:14:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41591         * io.c (rb_io_init_copy): copy also positions.  [ruby-talk:100910]
41593 Wed May 26 00:00:00 2004  why the lucky stiff  <why@ruby-lang.org>
41595         * ext/syck/syck.c (syck_new_parser): clear parser on init.
41596           thanks, ts. [ruby-core:02931]
41598         * ext/syck/token.c (sycklex_yaml_utf8): buffer underflow.
41599           thanks, ts. [ruby-core:02929]
41601         * lib/yaml/baseemitter.rb (indent_text): simpler flow block code.
41603 Tue May 25 11:54:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41605         * eval.c (rb_yield_0, proc_invoke, proc_arity): allow passing a block
41606           to a Proc.  [ruby-dev:23533]
41608         * parse.y (block_par, block_var): ditto.
41610 Tue May 25 01:50:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41612         * ext/openssl/ossl_asn1.c (ossl_i2d_ASN1_TYPE, ossl_ASN1_TYPE_free):
41613           workaround for the versions earlier than OpenSSL-0.9.7.
41615 Mon May 24 10:46:26 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
41617         * lib/rdoc/generators/template/html/html.rb: SYSTEM identifiers
41618           must be absolute URIs
41620 Sun May 23 04:53:50 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
41622         * lib/pstore.rb (transaction): allow overriding dump and load.
41623           [ruby-dev:23567]
41625         * lib/yaml/store.rb: follow lib/pstore.rb's change.
41627 Sat May 22 11:54:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41629         * MANIFEST: add test/openssl/test_x509store.rb.
41631         * ext/tk/MANIFEST: add recent files.
41633 Sat May 22 05:37:11 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41635         * ext/tk/lib/remote-tk.rb: (NEW library) controll Tk interpreters
41636           on the other processes by Tcl/Tk's 'send' command
41638 Fri May 21 09:22:05 2004  Dave Thomas  <dave@pragprog.com>
41640         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_parameters):
41641           Add ()'s around parameters that don't have them
41643 Fri May 21 02:21:11 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41645         * lib/csv.rb: fixed a few bugs around multi char record/field separator.
41647         * test/csv/test_csv.rb: added boundary test for above feature.
41649 Thu May 20 17:02:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41651         * lib/mkmf.rb (check_sizeof): define result size.  [ruby-core:02911]
41653         * lib/mkmf.rb (create_header): macro name should not include equal
41654           sign.
41656 Thu May 20 14:35:52 2004  Tanaka Akira  <akr@m17n.org>
41658         * ext/socket/socket.c: check SCM_RIGHTS macro addition to
41659           the msg_control field to test existence of file descriptor passing
41660           by msg_control.
41662 Thu May 20 12:38:06 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41664         * numeric.c (flo_eq): always check if operands are NaN.
41665           [ruby-list:39685]
41667 Thu May 20 12:34:39 2004  Dave Thomas  <dave@pragprog.com>
41669         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_visibility):
41670           At Ryan Davis' suggestion, honor visibility modifers if guarded by a
41671           statement modifier
41673 Thu May 20 12:22:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41675         * lib/mkmf.rb (have_type): do not check pointer to incomplete type,
41676           which always get compiled.
41677           [ruby-list:39683]
41679 Wed May 19 23:45:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41681         * test/inlinetest.rb (InlineTest::loadtest): requiring library with
41682           replaced $0 can make $0 == __FILE__ block be evaluated twice.
41684         * test/ruby/envutil.rb (EnvUtil::rubybin): give priority to
41685           environment variable.  [ruby-dev:23538]
41687 Wed May 19 11:08:10 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41689         * ext/tk/lib/tk.rb: change permition of TkObject#tk_send from
41690           private to public
41692 Wed May 19 02:29:36 2004  Minero Aoki  <aamine@loveruby.net>
41694         * lib/net/http.rb: support TRACE.
41696 Wed May 19 02:21:53 2004  Minero Aoki  <aamine@loveruby.net>
41698         * lib/net/http.rb: do not use class variables.
41700 Tue May 18 21:21:43 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41702         * lib/csv.rb: writes lines with "\n" when row separator is not given.
41703           formerly it was "\r\n".
41705         * lib/csv.rb: [CAUTION] API change
41707           * CSV::Row removed.  a row is represented as just an Array.  since
41708             CSV::Row was a subclass of Array, it won't hurt almost all programs
41709             except one which depended CSV::Row#match.
41711           * CSV::Cell removed.  a cell is represented as just a String or
41712             nil(NULL).  this change will cause widespread destruction.
41714               CSV.open("foo.csv", "r") do |row|
41715                 row.each do |cell|
41716                   if cell.is_null       # Cell#is_null
41717                     p "(NULL)"
41718                   else
41719                     p cell.data         # Cell#data
41720                   end
41721                 end
41722               end
41724             must be just;
41726               CSV.open("foo.csv", "r") do |row|
41727                 row.each do |cell|
41728                   if cell.nil?
41729                     p "(NULL)"
41730                   else
41731                     p cell
41732                   end
41733                 end
41734               end
41736         * lib/csv.rb: [CAUTION] record separator(CR, LF, CR+LF) behavior
41737           change.  CSV.open, CSV.parse, and CSV,generate now do not force
41738           opened file binmode.  formerly it set binmode explicitly.
41740           with CSV.open, binmode of opened file depends the given mode
41741           parameter "r", "w", "rb", and "wb".  CSV.parse and CSV.generate open
41742           file with "r" and "w".
41744           setting mode properly is user's responsibility now.
41746         * lib/csv.rb: accepts String as a fs (field separator/column separator)
41747           and rs (record separator/row separator)
41749         * lib/csv.rb: added CSV.foreach(path, rs = nil, &block).  CSV.foreach
41750           now does not handle "| cmd" as a path different from IO.foreach.
41751           needed?
41753         * test/csv/test_csv.rb: updated.
41755 Tue May 18 14:24:20 2004  why the lucky stiff  <why@ruby-lang.org>
41757         * lib/yaml.rb: added rdoc to beginning of lib.
41759 Tue May 18 14:00:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41761         * node.h (NEW_DSTR): adjust list length.
41763         * parse.y (literal_concat): ditto.
41765 Tue May 18 09:30:25 2004  SASADA Koichi  <ko1@atdot.net>
41767         * eval.c (rb_method_node): search cache entry first.
41769 Mon May 17 16:04:06 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41771         * numeric.c (flo_to_s): it's preferable that "p 0.0" outputs "0.0"
41772           instead of "0.0e+00". [ruby-dev:23480]
41774         * numeric.c (flo_to_s): it's preferable that "p 0.00000000000000000001"
41775           outputs "1.0e-20" instead of "9.999999999999999e-21". (the precision
41776           is considered, but there is assumption DBL_DIG == 15 in current
41777           implementation)
41779 Mon May 17 10:13:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41781         * ext/socket/socket.c (setup_domain_and_type): honor duck typing.
41782           [ruby-dev:23522]
41784         * ext/socket/socket.c (sock_s_getnameinfo): ditto.
41786 Mon May 17 00:36:21 2004  why the lucky stiff  <why@ruby-lang.org>
41788         * lib/yaml/baseemitter.rb (indent_text): was forcing a mod value
41789           of zero at times, which kept some blocks from getting indentation.
41791 Mon May 17 00:07:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
41793         * lib/drb/drb.rb: Cosmetic documentation changes.
41795 Sun May 16 20:55:49 2004  Tanaka Akira  <akr@m17n.org>
41797         * ext/dbm/dbm.c (fdbm_initialize): accept optional 3rd argument to
41798           specify an open flag.
41799           (Init_dbm): define open flags: DBM::READER, DBM::WRITER, DBM::WRCREAT
41800           and DBM::NEWDB.
41802 Sat May 15 17:52:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41804         * test/ruby/test_float.rb(test_strtod): Add test for signed 0.000...1
41806 Sat May 15 14:20:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41808         * ext/syck/depend: add ruby's headers.
41810 Sat May 15 13:38:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41812         * ext/syck/MANIFEST, ext/syck/depend: new file.
41814         * lib/yaml/rubytypes.rb: range of exponential floats.  [ruby-core:02824]
41816         * test/yaml/test_yaml.rb: tests for strings start with colon and some
41817           round trip.
41819 Sat May 15 12:04:58 2004  why the lucky stiff  <why@ruby-lang.org>
41821         * lib/yaml.rb: removed fallback to pure Ruby parser.
41823         * lib/yaml/baseemitter.rb (node_text): rewriting folded scalars.
41825         * ext/syck/syck.h: reports style of scalars now, be they plain, block
41826           single-, or double-quoted.
41828         * ext/syck/syck.c: ditto.
41830         * ext/syck/gram.c: ditto.
41832         * ext/syck/node.c: ditto.
41834         * ext/syck/token.c: ditto.
41836         * ext/syck/rubyext.c (yaml_org_handler): symbols loaded only
41837           if scalar style is plain.
41839         * test/yaml/test_yaml.rb (test_perl_regexp): updated test to
41840           match new regexp serialization.
41842 Sat May 15 01:41:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41844         * eval.c (eval): forgot to restore $SAFE value before evaluating
41845           compiled node.  [ruby-core:02872]
41847 Sat May 15 01:33:12 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41849         * range.c (range_each_func): terminates loop if generating value
41850           is same to @end.  [ruby-talk:100269]
41852 Fri May 14 22:08:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41854         * string.c (rb_str_new4): should not reuse frozen shared string if
41855           the original is not an instance of String. [ruby-talk:100193]
41857 Fri May 14 21:29:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41859         * time.c (time_mdump): preserve GMT bit in the marshal data.
41860           [ruby-talk:100213]
41862 Fri May 14 18:37:49 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41864         * ext/tk/lib/tk/canvas.rb: improve coords support for canvas
41865           items. Now, supports all of the followings.
41866                TkcLine.new(c, 0, 0, 100, 100, :fill=>'red')
41867                TkcLine.new(c, [0, 0, 100, 100], :fill=>'red')
41868                TkcLine.new(c, [0, 0], [100, 100], :fill=>'red')
41869                TkcLine.new(c, [[0, 0], [100, 100]], :fill=>'red')
41870                TkcLine.new(c, :coords=>[0, 0, 100, 100], :fill=>'red')
41871                TkcLine.new(c, :coords=>[[0, 0], [100, 100]], :fill=>'red')
41873 Fri May 14 13:30:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41875         * test/ruby/test_float.rb: Add test for util.c revision 1.42.
41877 Fri May 14 12:13:46 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41879         * util.c (ruby_strtod): strtod("0", &end); => end should point '\0'.
41880          [ruby-dev:23498]
41882 Thu May 13 15:47:30 2004  akira yamada  <akira@ruby-lang.org>
41884         * lib/net/telnet.rb (Net::Telnet::login): "options" can specify
41885           regexps for login prompt and/or password prompt.
41887 Thu May 13 14:17:57 2004  why the lucky stiff  <why@ruby-lang.org>
41889         * ext/syck/rubyext.c (yaml_org_handler): some empty strings were
41890           loaded as symbols.
41892 Thu May 13 11:04:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41894         * pack.c (pack_pack): always add with null for 'Z'.
41896         * pack.c (pack_unpack): terminated by null for 'Z'.  [ruby-talk:98281]
41898 Wed May 12 19:59:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41900         * lib/mkmf.rb (have_type, check_sizeof): replace unusable characters.
41901           [ruby-talk:99788]
41903 Wed May 12 17:41:42 2004  Tanaka Akira  <akr@m17n.org>
41905         * lib/resolv.rb (Resolv::DNS::Config): make it configurable without
41906           external file such as /etc/resolv.conf.
41908 Wed May 12 14:37:27 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41910         * ext/openssl/ossl_x509name.c: attribute value of DC (short name of
41911           domainComponent) should be IA5String.
41913 Wed May 12 13:20:19 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41915         * ext/tk/lib/tk/composite.rb: improve configure methods (based on
41916           the proposal of [ruby-talk:99671]).
41918 Wed May 12 11:51:08 2004  Dave Thomas  <dave@pragprog.com>
41920         * class.c (rb_obj_singleton_methods): fix rdoc
41922 Tue May 11 07:09:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41924         * eval.c (is_defined): do not protect exception during receiver
41925           evaluation.
41927 Mon May 10 22:28:14 2004  Minero Aoki  <aamine@loveruby.net>
41929         * lib/net/protocol.rb (each_crlf_line): remove junk line.
41931 Mon May 10 21:44:42 2004  Dave Thomas  <dave@pragprog.com>
41933         * lib/rdoc/generators/html_generator.rb: Change scheme for
41934           looking up symbols in  HTML generator.
41936 Mon May 10 16:45:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41938         * eval.c (eval): warning during eval should not cause deadlock.
41939           [ruby-talk:98651]
41941         * eval.c (rb_eval): raise TypeError exception for superclass
41942           mismatch.  [ruby-list:39567]
41944 Mon May 10 12:11:37 2004  Dave Thomas  <dave@pragprog.com>
41946         * lib/rdoc/generators/html_generator.rb: Hack to search parents
41947           for unqualified constant names.
41949 Mon May 10 01:18:15 2004  Minero Aoki  <aamine@loveruby.net>
41951         * lib/net/pop.rb (logging): append "\n".
41953 Sun May  9 23:38:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
41955         * lib/net/ftp.rb: ported documentation improvement from 1.8 branch
41957         * lib/net/imap.rb:   ditto
41959         * lib/net/pop.rb:    ditto
41961         * lib/net/smtp.rb:   ditto
41963         * lib/net/telnet.rb: ditto
41965 Sun May  9 23:34:51 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41967         * test/ruby/test_float.rb: added test_strtod to test Float("0").
41969 Sun May  9 13:24:24 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41971         * lib/yaml/store.rb: use FileUtils::copy.
41973 Sun May  9 12:34:26 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
41975         * regex.c: removed unused file.
41977 Sat May  8 10:53:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41979         * io.c (rb_f_open): open should not ignore block when "to_open"
41980           method is used.  [ruby-dev:23478]
41982 Fri May  7 22:07:39 2004  Minero Aoki  <aamine@loveruby.net>
41984         * lib/fileutils.rb (mv): new option `force'. [ruby-talk:99457]
41986         * lib/fileutils.rb: new method for command option reflection:
41987           FileUtils.commands, .options, .have_option?, .options_of,
41988           .collect_methods.
41990         * lib/fileutils.rb: module Verbose, NoWrite, DryRun do not have
41991           option flags @fileutils_verbose and @fileutils_noop, they make no
41992           sense.
41994 Fri May  7 21:50:21 2004  Dave Thomas  <dave@pragprog.com>
41996         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_include): Allow
41997           multiple arguments to 'include'
41999 Fri May  7 21:03:51 2004  Minero Aoki  <aamine@loveruby.net>
42001         * lib/fileutils.rb (fu_list): Array() breaks pathes including "\n".
42002           [ruby-core:02843]
42004         * test/fileutils/test_fileutils.rb (mkdir): test "\n" in path.
42006 Fri May  7 20:53:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42008         * ext/dbm/dbm.c (fdbm_modify): typo fixed. [ruby-dev:23473]
42010 Fri May  7 11:17:27 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42012         * util.c (ruby_strtod): "0.0000000000000000001" should be converted
42013           to 1.0e-19 instead of 0.0. (leading zeros aren't significant digits)
42014           [ruby-talk:99318] [ruby-dev:23465]
42016 Thu May  6 22:27:32 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42018         * ext/socket/socket.c (ippaddr): use NUMERICHOST if can not resolve
42019           hostname.
42021 Thu May  6 22:09:29 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
42023         * ext/tk/tkutil.c (get_eval_string_core): bug fix. [ruby-dev:23466]
42025 Thu May  6 14:22:29 2004  why the lucky stiff  <why@ruby-lang.org>
42027         * lib/yaml/rubytypes.rb (to_yaml): added instance variable handling
42028           for Ranges, Strings, Structs, Regexps.
42030         * lib/yaml/rubytypes.rb (to_yaml_fold): new method for setting a
42031           String's flow style.
42033         * lib/yaml.rb (YAML::object_maker): now uses Object.allocate.
42035         * ext/syck/gram.c: fixed transfer methods on structs, broke it
42036           last commit.
42038 Thu May  6 14:38:02 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42040         * dir.c (rb_push_glob): simplified code (not change behavior)
42042 Thu May  6 13:32:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42044         * ext/extmk.rb: get rid of side effect of Config.expand, patched by
42045           <tttt01@infoseek.jp>  (ruby-bugs:PR#597)
42047 Thu May  6 11:40:28 2004  Shugo Maeda  <shugo@ruby-lang.org>
42049         * lib/net/imap.rb (string): accept NIL.
42051         * lib/net/imap.rb (body_type_basic): allow body-fields omissions.
42053 Thu May  6 01:59:04 2004  Dave Thomas  <dave@pragprog.com>
42055         * lib/rdoc/generators/html_generator.rb (Generators::HtmlMethod::params):
42056           Don't include the &block parameter if we have explicit
42057           yield parameters.
42059 Wed May  5 03:52:31 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42061         * lib/rinda/ring.rb: use recv instead of recvfrom.
42063 Wed May  5 00:38:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42065         * lib/gserver.rb: documented
42066         * lib/xmlrpc/README.txt: introduced for documentation purposes
42068 Mon May  3 09:47:24 2004  Dave Thomas  <dave@pragprog.com>
42070         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_or_yield_parameters):
42071           Fix parsing bug if yield called within 1 line block
42073 Sun May  2 21:56:48 2004  Minero Aoki  <aamine@loveruby.net>
42075         * test/fileutils/test_fileutils.rb (rm_f, rm_r): test :force flag.
42077 Sun May  2 01:04:38 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
42079         * ext/tcltklib, ext/tk: renewal Ruby/Tk
42081 Fri Apr 30 20:08:41 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42083         * time.c (SIZEOF_TIME_T): support SIZEOF_TIME_T == SIZEOF_INT.
42085 Wed Apr 28 01:26:11 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42087         * oniguruma.h, regparse.c: imported Oni Guruma 2.2.8.
42089 Wed Apr 28 01:16:23 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42091         * oniguruma.h, regparse.c: imported Oni Guruma 2.2.7.
42093 Tue Apr 27 14:43:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42095         * common.mk: LIBURUBY_A is needed for extconf.rb even when
42096           cross-compiling.
42098 Tue Apr 27 13:33:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42100         * parse.y (string_content): turn off NODE_NEWLINE flag to avoid
42101           unnecessary line trace for inlined expression.
42102           (ruby-bugs PR#1320)
42104 Tue Apr 27 08:15:13 2004  why the lucky stiff  <why@ruby-lang.org>
42106         * lib/yaml/rubytypes.rb: passing Range tests.
42108         * ext/syck/syck.h: version 0.44.
42110         * ext/syck/gram.c: transfers no longer open an indentation.
42111           fixed transfers which precede blocks.
42113         * ext/syck/token.c: ditto.
42115         * ext/syck/syck.c: fixed segfault if an anchor has been released already.
42117         * ext/syck/node.c (syck_free_members): organized order of free'd nodes.
42119         * ext/syck/rubyext.c (syck_emitter_write_m): test for proper string with
42120           StringValue.
42122 Mon Apr 26 23:56:54 2004  Daniel Kelley  <news-1082945587@dkelley.gmp.san-jose.ca.us>
42124         * README.EXT, README.EXT.ja: fixed wrong function signature.
42125           [ruby-talk:98349]
42127 Mon Apr 26 21:40:09 2004  Dave Thomas  <dave@pragprog.com>
42129         * lib/rdoc/code_objects.rb (RDoc::Context::add_alias): Only alias
42130           to instance methods.
42132 Sun Apr 25 18:26:23 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42134         * configure.in (ac_cv_func_fork): set to no on DJGPP.
42136 Sat Apr 24 14:32:03 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42138         * re.c: applied stack error handling patch. [ruby-dev:23431]
42140 Sat Apr 24 10:38:31 2004  Dave Thomas  <dave@pragprog.com>
42142         * lib/rdoc/markup/simple_markup.rb (SM::SimpleMarkup::group_lines):
42143           Fix bug where consecutive headings are merged.
42145 Fri Apr 23 23:24:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42147         * lib/mkmf.rb: $hdrdir should not contain macros, for backward
42148           compatibility.  [bruby-dev:28]
42150         * lib/mkmf.rb (create_makefile): in the case of extout, just copy
42151           script files, without comparison.
42153 Fri Apr 23 16:38:46 2004  Tanaka Akira  <akr@m17n.org>
42155         * lib/pathname.rb: sync taint/freeze flag between
42156           a pathname object and its internal string object.
42158 Fri Apr 23 14:52:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42160         * parse.y (stmt, arg, aref_args): should not make sole splat into
42161           array, in aref_args other than aref with op_asgn.
42163 Fri Apr 23 14:14:38 2004  Tanaka Akira  <akr@m17n.org>
42165         * lib/resolv.rb: don't use Regexp#source to embed regexps.
42166           [ruby-dev:23432]
42168 Thu Apr 22 18:25:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42170         * common.mk, ext/extmk.rb: make ext and .ext get removed by distclean.
42172 Thu Apr 22 10:07:01 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42174         * */Makefile.sub (distclean-local): should remove $(RBCONFIG).
42176 Thu Apr 22 04:17:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42178         * eval.c (rb_mod_define_method): allow binding methods to modules.
42179           [ruby-dev:23410]
42181         * parse.y (aref_args): should pass expanded list.  [ruby-core:02793]
42183 Thu Apr 22 01:12:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42185         * numeric.c (flo_to_s): tweak output string based to preserve
42186           decimal point and to remove trailing zeros.  [ruby-talk:97891]
42188         * string.c (rb_str_index_m): use unsigned comparison for T_FIXNUM
42189           search.  [ruby-talk:97342]
42191 Wed Apr 21 23:04:42 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42193         * lib/rinda/rinda.rb, test/rinda/test_rinda.rb: check Hash tuple size.
42195 Wed Apr 21 20:05:00 2004  Tanaka Akira  <akr@m17n.org>
42197         * lib/open-uri.rb (URI::HTTP#proxy_open): set Host: field explicitly.
42198           [ruby-list:39542]
42200 Wed Apr 21 18:39:46 2004  Minero Aoki  <aamine@loveruby.net>
42202         * lib/net/smtp.rb: merge SMTP-TLS patch.  This patch is
42203           contributed by Daniel Hob. [ruby-core:02789]
42205 Wed Apr 21 18:23:45 2004  Minero Aoki  <aamine@loveruby.net>
42207         * lib/net/smtp.rb: change coding style: def m( a ) -> def m(a).
42209 Wed Apr 21 18:01:47 2004  Minero Aoki  <aamine@loveruby.net>
42211         * lib/net/pop.rb: do not use class variables.
42213         * lib/net/pop.rb (do_start): ensure to clean up connection when
42214           authentication failed.
42216 Wed Apr 21 17:23:59 2004  Minero Aoki  <aamine@loveruby.net>
42218         * lib/net/http.rb (HTTP#connect): CONNECT must precede SSL connect.
42219           [ruby-dev:23379]
42221         * lib/net/http.rb (HTTP.new): class variables are not inherited
42222           now.
42224 Wed Apr 21 15:56:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42226         * lib/test/unit/ui/console/testrunner.rb (test_started): restore $0
42227           after changing process title.  [ruby-talk:97426]
42229 Wed Apr 21 10:18:06 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42231         * process.c(rb_spawn): fix SEGV at "p system('command line here')"
42232          (may happen only in bccwin32) [ruby-dev:23380]
42234 Mon Apr 19 20:58:44 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42236         * dir.c: Updated RDocs.
42238 Mon Apr 19 18:11:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42240         * hash.c (rb_hash_equal): returns true if two hashes have same set
42241           of key-value set.  [ruby-talk:97559]
42243         * hash.c (rb_hash_eql): returns true if two hashes are equal and
42244           have same default values.
42246 Mon Apr 19 08:19:11 2004  Doug Kearns  <djkea2@mugca.its.monash.edu.au>
42248         * dln.c, io.c, pack.c, lib/benchmark.rb, lib/cgi.rb, lib/csv.rb,
42249           lib/date.rb, lib/ftools.rb, lib/getoptlong.rb, lib/logger.rb,
42250           lib/matrix.rb, lib/monitor.rb, lib/set.rb, lib/thwait.rb,
42251           lib/timeout.rb, lib/yaml.rb, lib/drb/drb.rb, lib/irb/workspace.rb,
42252           lib/net/ftp.rb, lib/net/http.rb, lib/net/imap.rb, lib/net/pop.rb,
42253           lib/net/telnet.rb, lib/racc/parser.rb, lib/rinda/rinda.rb,
42254           lib/rinda/tuplespace.rb, lib/shell/command-processor.rb,
42255           lib/soap/rpc/soaplet.rb, lib/test/unit/testcase.rb,
42256           lib/test/unit/testsuite.rb: typo fix.
42258 Mon Apr 19 08:14:18 2004  Dave Thomas  <dave@pragprog.com>
42260         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body): Allow for
42261           #ifdef HAVE_PROTOTYPES
42263 Fri Apr 16 17:04:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42265         * string.c (rb_str_equal): always returns true or false, never
42266           returns nil. [ruby-dev:23404]
42268 Fri Apr 16 12:38:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42270         * lib/drb/drb.rb (DRb::DRbUnknown::initialize): Exception#to_str is
42271           deprecated.
42273         * lib/drb/drb.rb (DRb::DRbServer::InvokeMethod::perform): multiple
42274           value class changed.
42276         * lib/drb/invokemethod.rb (DRb::DRbServer::InvokeMethod18Mixin::block_yield):
42277           ditto.
42279 Fri Apr 16 08:27:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42281         * ext/extmk.rb: skip linking when libraries to be preloaded not
42282           compiled.  [ruby-list:39561]
42284 Thu Apr 15 19:57:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42286         * process.c (pst_success_p): new method Process::Status#success?.
42287           [ruby-dev:23385]
42289         * rubytest.rb: do nothing while cross-compiling, return status in
42290           system independent style.
42292 Thu Apr 15 19:26:54 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42294         * dir.c (rb_push_glob): Dir.glob() should return nil if block is given.
42295           (http://www.ruby-lang.org/ja/man/index.cgi?cmd=view;name=Dir)
42297         * dir.c (push_braces): Dir.glob() should handle '{ }' nested more than
42298           3 times.
42300         * dir.c (push_braces, rb_push_glob): Dir.glob() should handle escaped
42301           '{' and '}' and ','.
42303           [ruby-dev:23376]
42305 Thu Apr 15 17:12:13 2004  Tanaka Akira  <akr@m17n.org>
42307         * ext/gdbm/gdbm.c (Init_gdbm): define GDBM::READER, GDBM::WRITER,
42308           GDBM::WRCREAT and GDBM::NEWDB.
42309           (fgdbm_initialize): use specified read/write flag.
42311 Wed Apr 14 13:06:09 2004  Doug Kearns  <djkea2@mugca.its.monash.edu.au>
42313         * array.c, enum.c, eval.c, file.c, io.c, numeric.c, object.c, prec.c,
42314           process.c, re.c, string.c: typos in RDoc comments.  [ruby-core:02783]
42316 Wed Apr 14 11:29:56 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42318         * numeric.c (flo_eq): workaround for bcc32's bug.
42319           (ruby-bugs-ja:PR#594)
42321 Wed Apr 14 11:06:38 2004  Dave Thomas  <dave@pragprog.com>
42323         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::scan): Changed
42324           behavior of :enddoc: -- it now unconditionally terminates
42325           processing of the current file.
42327 Wed Apr 14 10:57:40 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42329         * defines.h: include <net/socket.h> to get fd_set definition in BeOS.
42331 Tue Apr 13 23:00:55 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42333         * lib/rinda/rinda.rb: change pattern matching.
42334           a === b -> a == b || a === b. [druby-ja:98]
42336         * test/rinda/test_rinda.rb: ditto.
42338 Tue Apr 13 21:50:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42340         * bcc32/Makefile.sub (PHONY): Borland make disallows empty command
42341           rules.
42343 Tue Apr 13 17:55:16 2004  Minero Aoki  <aamine@loveruby.net>
42345         * lib/net/http.rb (begin_transport): should not overwrite HTTP
42346           request header. [ruby-list:39543]
42348 Tue Apr 13 16:48:00 2004  Minero Aoki  <aamine@loveruby.net>
42350         * lib/net/pop.rb: merge POP3S patch.  This patch is contributed by
42351           Daniel Hobe.
42353 Tue Apr 13 02:56:29 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42355         * common.mk: changed the order of ascii.c alphabetically.
42357 Mon Apr 12 19:11:21 2004  Eric Hodel  <drbrain@segment7.net>
42359         * gc.c (rb_gc_copy_finalizer): typo.  [ruby-core:02774]
42361 Mon Apr 12 18:45:58 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42363         * ext/openssl/ossl_x509name.c (ossl_x509name_init_i): should return
42364           a value.
42366 Mon Apr 12 10:39:50 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42368         * dir.c (rb_glob2, rb_glob, push_globs, push_braces, rb_push_glob):
42369           fix memory leak. (leaked when block was interrupted)
42371 Sun Apr 11 19:10:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42373         * ruby.c (require_libraries): restore source file/line after
42374           statically linked extensions initialized.  [ruby-dev:23357]
42376 Sun Apr 11 10:47:04 2004  Dave Thomas  <dave@pragprog.com>
42378         * lib/rdoc/code_objects.rb (RDoc::TopLevel::add_class_or_module): Toplevel
42379           classes and modules are a special case too... (handle extending existing
42380           classes with or without :enddoc:)
42382 Sat Apr 10 23:51:13 2004  Dave Thomas  <dave@pragprog.com>
42384         * lib/rdoc/code_objects.rb (RDoc::Context::add_to): Implementation of :enddoc:
42385           made one too many assumptions...
42387 Sat Apr 10 00:00:19 2004  Dave Thomas  <dave@pragprog.com>
42389         * lib/rdoc/markup/simple_markup/inline.rb: Fix problem
42390           with \_cat_<b>dog</b>
42392 Fri Apr  9 17:05:21 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42394         * dir.c (has_magic, find_dirsep): incomplete '[' matches no character
42395           in Dir.glob. (follows File.fnmatch's behavior)
42397         * dir.c (fnmatch_helper): incomplete escape is ignored in File.fnmatch.
42398           (follows Dir.glob's behavior)
42400         * dir.c (find_dirsep): '/' between '[' and ']' is ignored in Dir.glob.
42401           (follows File.fnmatch with File::FNM_PATHNAME 's behavior)
42403         * dir.c (find_dirsep): escaped slash '\/' loses its meaning as
42404           directory separator in Dir.glob.
42406           [ruby-dev:23291]
42408 Thu Apr  8 20:25:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42410         * ext/extmk.rb (extmake): skip uncompiled extensions.
42412         * lib/mkmf.rb (create_makefile): emit no rules for static library if
42413           $static is nil, e.g., outside of ext/.
42415         * lib/test/unit/ui/console/testrunner.rb (test_started): show test
42416           name via $0.
42418         * runruby.rb: set environments to use the compiled binary.
42420         * test/runner.rb: do nothing while cross-compiling.
42422         * test/drb/drbtest.rb, test/soap/calc/test_calc_cgi.rb: use envutil to
42423           know ruby binary, and restore $: after require.
42425         * test/ruby/envutil.rb: give priority to RUBY environment variable to
42426           use just compiled binary and libraries.
42428 Thu Apr  8 19:03:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42430         * io.c (rb_io_binmode): inverted condition.  [ruby-dev:23349]
42432 Thu Apr  8 18:22:00 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42434         * ext/iconv/iconv.c (iconv_s_list): return encoding list if no block
42435           is given.  [ruby-dev:23063]
42437 Wed Apr  7 15:29:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42439         * pack.c (pack_pack): use NUM2INT() instead of num2i32().
42441 Wed Apr  7 12:32:02 2004  Kouhei Sutou  <kou@cozmixng.org>
42443         * lib/rss/parser.rb, lib/rss/1.0.rb: accepted rdf:resource or
42444           resource attribute in rdf:li.
42445         * test/rss/test_parser.rb: added test for above change.
42447         * lib/rss/dublincore.rb: reverted style.
42449         * lib/rss/xmlparser.rb: normalized XMLParser class hierarchy.
42451 Wed Apr  7 10:43:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42453         * Makefile.in, common.mk, */Makefile.sub (ext/extinit.o): OUTFLAG
42454           doesn't work for object files on VC.
42456         * */Makefile.sub (config.h): need SIZEOF_TIME_T now.
42458 Wed Apr  7 00:24:34 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42460         * lib/rinda/rinda.rb: fix hash tuple bug.
42462         * lib/rinda/tuplespace.rb: ditto.
42464         * test/rinda/test_rinda.rb
42466 Tue Apr  6 18:24:18 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42468         * file.c (rb_get_path): get path string via "to_path" method if
42469           path object is not a string. [Ruby2]
42471         * gc.c (rb_gc_call_finalizer_at_exit): do not free threads in the
42472           exit finalizers.
42474         * io.c (rb_io_reopen): should use rb_io_check_io().
42476 Tue Apr  6 16:46:09 2004  Tanaka Akira  <akr@m17n.org>
42478         * configure.in: check the size of time_t.
42480         * time.c (time_add): new function.
42481           (time_plus): use time_add.
42482           (time_minus): use time_add.
42484 Tue Apr  6 13:11:48 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42486         * ext/socket/socket.c (raise_socket_error): never return.
42488         * ext/socket/socket.c (make_hostent): must return value.
42490 Tue Apr  6 00:14:43 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42492         * error.c (Init_Exception): remove Exception#to_str. [Ruby2]
42494         * eval.c (error_print): should no call "to_str" anymore use
42495           "message" method instead.
42497         * io.c (rb_f_open): Kernel#open() calls "to_open" if the first
42498           argument responds to it. [Ruby2]
42500 Tue Apr  6 00:13:43 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42502         * lib/rinda/rinda.rb: add require 'drb/drb'
42504 Mon Apr  5 22:25:32 2004  Tanaka Akira  <akr@m17n.org>
42506         * test/zlib/test_zlib.rb: new file.
42507           (TestZlibGzipWriter#test_new_nil): test for [ruby-dev:23228].
42509 Mon Apr  5 22:16:23 2004  Minero Aoki  <aamine@loveruby.net>
42511         * parse.y (assoc_list): {a: 1, b: 2} should be allowed.
42512           [ruby-dev:23328]
42514 Mon Apr  5 19:43:40 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42516         * regexec.c: imported Oni Guruma 2.2.6.
42518 Mon Apr  5 19:39:10 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42520         * regparse.c, oniguruma.h: imported Oni Guruma 2.2.6.
42522 Mon Apr  5 12:12:09 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42524         * ext/socket/socket.c (raise_socket_error): some platforms don't have
42525           EAI_SYSTEM.
42527 Mon Apr  5 08:18:23 2004  Dave Thomas  <dave@pragprog.com>
42529         * lib/rdoc/rdoc.rb: Remove leading ./ from file names so that cross
42530           references work properly.
42532 Sun Apr  4 14:01:20 2004  Dave Thomas  <dave@pragprog.com>
42534         * lib/rdoc/options.rb (Options::parse): Allow multiple -x options to
42535           RDoc. Fix bug where files weren't being excluded properly
42537 Sat Apr  3 09:36:38 2004  why the lucky stiff  <why@ruby-lang.org>
42539         * ext/syck/syck.h: version 0.43.
42541 Sat Apr  3 08:28:47 2004  why the lucky stiff  <why@ruby-lang.org>
42543         * ext/syck/lib/gram.c: allow root-level inline collections.
42544           [ruby-talk:94922]
42546         * lib/yaml/rubytypes.rb (Symbol#to_yaml): emit symbols as implicits.
42547           [ruby-talk:94930]
42549 Fri Apr  2 19:28:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42551         * bcc32/Makefile.sub (OUTFLAG): needed for static-linked-ext.
42553 Fri Apr  2 18:00:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42555         * ext/extmk.rb (extmake): extract necessary variables for static link
42556           from Makefile.
42558         * lib/mkmf.rb (create_makefile): save preload and libpath for next
42559           compile.
42561 Fri Apr  2 17:27:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42563         * eval.c (top_include): include in the wrapped load is done for
42564           the wrapper, not for a singleton class for wrapped main.
42565           [ruby-dev:23305]
42567 Fri Apr  2 15:13:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42569         * bignum.c (rb_big_eq): use temporary double variable to save the
42570           result (internal float register may be bigger than 64 bits, for
42571           example, 80 bits on x86).  [ruby-dev:23311]
42573 Fri Apr  2 14:35:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42575         * eval.c (block_pass): should generate unique identifier of the
42576           pushing block.  [ruby-talk:96363]
42578 Fri Apr  2 11:36:20 2004  Minero Aoki  <aamine@loveruby.net>
42580         * eval.c (Init_load): make $LOADED_FEATURES built-in.
42581           [ruby-dev:23299]
42583         * ruby.c (ruby_prog_init): make $PROGRAM_NAME built-in.
42585         * lib/English.rb: remove $LOADED_FEATURES and $PROGRAM_NAME.
42587 Fri Apr  2 07:31:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42589         * ext/socket/socket.c: mistakingly removed do_not_reverse_lookup.
42590           [ruby-list:39475]
42592         * ext/socket/socket.c (make_hostent): fix memory leak, based on
42593           the patch from HORIKAWA Hisashi <vzw00011@nifty.ne.jp>.
42595 Thu Apr  1 22:55:33 2004  Dave Thomas  <dave@pragprog.com>
42597         * lib/rdoc/parsers/parse_rb.rb: Allow rdoc comments in
42598           =begin rdoc/=end
42600         * lib/rdoc/parsers/parse_rb.rb: Fix problem with comment in
42601           top-level method being taken as file comment.
42603 Thu Apr  1 22:55:04 2004  Dave Thomas  <dave@pragprog.com>
42605         * lib/rdoc/ri/ri_options.rb: Fix undefined variable warning.
42607 Thu Apr  1 19:58:37 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42609         * lib/soap/mapping/{factory.rb,registry.rb}: fixed illegal mapped URI
42610           object with soap/marshal.
42611           added URIFactory class for URI mapping.  BasetypeFactory checks
42612           instance_variables when original mapping is not allowed (ivar must
42613           be empty).  Instance of URI have instance_variables but it must be
42614           llowed whenever original mapping is allowed or not.
42616 Wed Mar 31 19:06:23 2004  Tanaka Akira  <akr@m17n.org>
42618         * time.c (year_leap_p): new function.
42619           (timegm_noleapsecond): ditto.
42620           (search_time_t): use timegm_noleapsecond instead of
42621           mktime for first guess.
42623 Wed Mar 31 12:05:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42625         * lib/delegate.rb (DelegateClass): define internal methods of the
42626           result class, but not metaclass of the caller.  [ruby-talk:96156]
42628         * intern.h: provide proper prototypes.  [ruby-core:02724]
42630         * ruby.h: missing.h is now prerequisite to intern.h.
42632 Wed Mar 31 11:17:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42634         * pack.c (pack_pack): raises RangeError if uv is out of UTF8 value
42635           range.  [ruby-dev:23281]
42637         * io.c (rb_io_binmode): stdio buffer should be empty when calling
42638           IO#binmode.  [ruby-talk:96155]
42640 Tue Mar 30 20:25:34 2004  Tanaka Akira  <akr@m17n.org>
42642         * time.c (search_time_t): limit guess range by mktime if it is
42643           available.  [ruby-dev:23274]
42645 Tue Mar 30 18:19:00 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42647         * eval.c (rb_eval): fix SEGV at retry in iterator's receiver.
42648           [ruby-dev:23227]
42650 Mon Mar 29 20:17:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42652         * process.c (rb_exec): follow older behavior if close-on-exec is not
42653           available.
42655         * process.c (rb_fork): protect from exceptions while waiting failed
42656           process, if status is given.
42658 Sun Mar 28 16:25:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42660         * cygwin/GNUmakefile.in (clean-local, distclean-local): remove
42661           work files.
42663         * win32/Makefile.sub (clean-local): ditto.
42665 Sun Mar 28 14:23:02 2004  Minero Aoki  <aamine@loveruby.net>
42667         * lib/net/pop.rb: def m( arg ) -> def m(arg).
42669 Sun Mar 28 14:09:13 2004  Minero Aoki  <aamine@loveruby.net>
42671         * lib/net/pop.rb (auth): failed when account/password include "%".
42672           [ruby-talk:95933]
42674 Sat Mar 27 21:40:41 2004  Tanaka Akira  <akr@m17n.org>
42676         * lib/open-uri.rb: permit extra semicolon in content-type field.
42678 Sat Mar 27 10:40:48 2004  Tanaka Akira  <akr@m17n.org>
42680         * (lib/pp.rb, lib/prettyprint.rb): define seplist in PP::PPMethods
42681           instead of PrettyPrint.
42683 Sat Mar 27 01:47:09 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42685         * lib/logger.rb: trim tail space of each line.  no user visible change.
42687         * lib/rss/dublincore.rb: fixed class definition mismatch.
42689         * sample/openssl/gen_csr.rb: fixed wrong usage text.
42691 Thu Mar 25 23:15:24 2004  Dave Thomas  <dave@pragprog.com>
42693         * lib/rdoc/ri/ri_options.rb (RI::Options::show_version):
42694           Add --version option
42696 Thu Mar 25 21:45:00 2004  Shigeo Kobayashi  <shigek@ruby-lang.org>
42698         * ext/bigdecimal/bigdecimal.c: Bug in + and - reported by Bret Jolly
42699           fixed.
42701 Thu Mar 25 21:01:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42703         * version.c (ruby_show_copyright): obtain copyright year from
42704           RUBY_RELEASE_YEAR.
42706         * win32/resource.rb: ditto.
42708 Thu Mar 25 19:37:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42710         * win32/resource.rb: default rubyw icon to ruby.ico, and let DLL also
42711           include them.
42713         * win32/resource.rb: include winver.h for older WindowsCE.
42715 Thu Mar 25 14:01:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42717         * common.mk, */Makefile.sub (lib, dll): phony targets.
42719         * configure.in (ruby, miniruby): ditto.
42721         * cygwin/GNUmakefile.in (rubyw): ditto.
42723 Thu Mar 25 04:16:18 2004  Dave Thomas  <dave@pragprog.com>
42725         * lib/rdoc/ri/ri_options.rb (RI::Options): Add the --list-names option,
42726           which dumps our all known names
42728 Thu Mar 25 03:57:47 2004  Dave Thomas  <dave@pragprog.com>
42730         * lib/rdoc/ri/ri_util.rb (NameDescriptor::initialize): No longer
42731           allow nested classes to be designated using "."--you must
42732           now use "::"
42734 Thu Mar 25 02:00:18 2004  Dave Thomas  <dave@pragprog.com>
42736         * lib/rdoc/generators/template/html/one_page_html.rb (Page):
42737           Fix to work with C modules.
42739 Wed Mar 24 20:49:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42741         * lib/uri.rb: Documented (thanks Dmitry V. Sabanin).
42742         * lib/uri/common.rb: Ditto.
42743         * lib/uri/ftp.rb: Ditto.
42744         * lib/uri/generic.rb: Ditto.
42745         * lib/uri/http.rb: Ditto.
42746         * lib/uri/https.rb: Ditto.
42747         * lib/uri/ldap.rb: Ditto.
42748         * lib/uri/mailto.rb: Ditto.
42750 Wed Mar 24 18:48:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42752         * lib/mkmf.rb ($ruby, $topdir, $hdrdir): should not be affected by
42753           DESTDIR after installed.
42755         * lib/mkmf.rb (dummy_makefile): default file lists to be cleaned.
42757 Wed Mar 24 12:32:56 2004  Dave Thomas  <dave@pragprog.com>
42759         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::handle_class_module):
42760           Don't document methods if we don't know for sure the
42761           class or module.
42763         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
42764           Don't store documentation for singleton classes if we
42765           don't know the real class.
42767 Wed Mar 24 11:11:26 2004  Dave Thomas  <dave@pragprog.com>
42769         * lib/rdoc/generators/html_generator.rb (Generators::HTMLGenerator::load_html_template):
42770           Allow non-RDoc templates by putting a slash in the template name
42772 Wed Mar 24 10:05:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42774         * lib/tempfile.rb (Tempfile::_close): should not clear @tmpname
42775           until the file is really removed. [ruby-core:02684]
42777 Wed Mar 24 04:12:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42779         * object.c (rb_mod_cvar_get): new method Module#class_variable_get.
42781         * object.c (rb_mod_cvar_set): ditto (Module#class_variable_set).
42783 Tue Mar 23 17:45:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42785         * eval.c (rb_thread_atfork): 1.9 warns no more for thread
42786           termination.  [ruby-dev:23212]
42788 Tue Mar 23 14:46:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42790         * Makefile.in, */Makefile.sub, common.mk (clean-local, distclean-local):
42791           separate files under directories due to directory separator.
42793         * */Makefile.sub (MKFILES): common.mk and */Makefile.sub should not be
42794           removed.
42796         * win32/Makefile.sub, wince/Makefile.sub: $* cannot appear in explicit
42797           rules.
42799         * cygwin/GNUmakefile.in: some mingw stuffs were missed.
42801         * lib/mkmf.rb (create_makefile): Borland make wrongly removes braces
42802           from command lines.
42804         * bcc32/Makefile.sub: needs bcc32/mkexports.rb.
42806 Mon Mar 22 08:21:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42808         * Makefile.in, */Makefile.sub, common.mk: extract common portions.
42810         * Makefile.in, cygwin/GNUmakefile.in, */Makefile.sub (RBCONFIG):
42811           separated time stamp file for rbconfig.rb.
42813         * configure.in: append common.mk to Makefile.
42815         * mkconfig.rb: keep mtime of rbconfig.rb if unchanged.
42817         * win32/rm.bat: remove multiple files.
42819         * wince/mkconfig_wce.rb: use fake.rb instead.
42821 Sun Mar 21 22:17:35 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42823         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#virtual_host):
42824           sort @virtual_hosts in address, port, host order.
42826         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server):
42827           hostname should not be match if :ServerAlias is not given.
42829 Sun Mar 21 21:11:16 2004  Keiju Ishitsuka  <keiju@ishitsuka.com>
42831         * lib/shell/*: bug fix for Shell#system(command_line_string).
42833 Sun Mar 21 21:04:42 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42835         * ruby.1: add -width option to .Bl for old groff.
42837 Sun Mar 21 18:57:37 2004  Kouhei Sutou  <kou@cozmixng.org>
42839         * test/rss/*: Test::Unit::TestCase -> RSS::TestCase and
42840           Test::Unit::Assertions -> RSS::Assertions.
42842 Sun Mar 21 18:48:20 2004  Kouhei Sutou  <kou@cozmixng.org>
42844         * lib/rss/{rss,dublincore,syndication}.rb: handled W3CDTF correctly.
42846 Sun Mar 21 18:15:29 2004  Kouhei Sutou  <kou@cozmixng.org>
42848         * test/rss/test_xml-stylesheet.rb: added tests for xml-stylesheet.
42850         * lib/rss/xml-stylesheet.rb: added xml-stylesheet parsing
42851           function.
42853 Sat Mar 20 23:51:03 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42855         * eval.c (rb_require_safe): preserve old ruby_errinfo.
42856           [ruby-talk:95409]
42858         * eval.c (rb_f_raise): should not clear backtrace information if
42859           exception object already have one.
42861 Sat Mar 20 21:21:03 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42863         * ext/extmk.rb: rm -rf $extout, not extout.
42865 Sat Mar 20 15:25:36 2004  Dave Thomas  <dave@pragprog.com>
42867         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Force
42868           page background to white.
42870 Sat Mar 20 09:33:36 2004  Tadayoshi Funaba  <tadf@dotrb.org>
42872         * lib/date.rb, lib/date/format.rb: _parse() now accepts fractional
42873           part of second minute that follows a comma or a full stop.
42875 Fri Mar 19 21:06:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42877         * parse.y (assoc_list): allow {sym: val} style Hash. [Ruby2]
42878           this change is done by Nobuyoshi Nakada <nobu@ruby-lang.org>.
42880 Fri Mar 19 15:15:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42882         * variable.c (rb_cvar_set): class variables become private to the
42883           particular class/module. [Ruby2]
42885         * variable.c (rb_cvar_get): ditto.
42887         * variable.c (rb_cvar_defined): ditto.
42889 Fri Mar 19 11:31:32 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42891         * lib/mkmf.rb ($beos, $solaris): add OS flags.
42893         * lib/mkmf.rb (RUBY): / is not recognized as path separator on
42894            nmake/bmake. [ruby-list:39388]
42896         * lib/mkmf.rb (CLEANLIBS, CLEANOBJS): should remove *.exp with *.so.
42898 Fri Mar 19 01:55:57 2004  Mauricio Fernandez  <batsman.geo@yahoo.com>
42900         * io.c (rb_io_sync): need not to check writable. [ruby-core:02674]
42902 Thu Mar 18 19:47:44 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42904         * instruby.rb, rubytest.rb: do not depend on srcdir.
42906 Thu Mar 18 18:50:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42908         * mkconfig.rb: no longer embed srcdir and compile_dir into
42909           rbconfig.rb.
42911         * ext/extmk.rb, lib/mkmf.rb: obtain top_srcdir and topdir from library
42912           paths.
42914 Thu Mar 18 17:46:35 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42916         * lib/drb/drb.rb: do not undef :to_a.
42918 Thu Mar 18 16:22:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42920         * eval.c (proc_eq): avoid false positive by using scope and
42921           dyna_vars.  no longer use frame.uniq.
42923         * eval.c (proc_arity): arity is now defined as number of
42924           parameters that would not be ignored. i.e. Proc.new{}.arity
42925           returns zero.  update test suites too.
42927 Thu Mar 18 15:27:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42929         * eval.c: remove specialized version of rb_Array().  use simple
42930           one defined in object.c.
42932         * object.c (Init_Object): remove Kernel#to_a.
42934         * enum.c (enum_zip): use "to_a" instead of "to_ary".
42936 Wed Mar 17 00:22:03 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42938         * oniguruma.h: imported Oniguruma 2.2.5.
42939         * regparse.c: ditto.
42941 Tue Mar 16 11:14:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42943         * dir.c (fnmatch_helper): File.fnmatch('\.', '.') should return true.
42944           (Rev1.112 lost compatiblity)
42946         * dir.c (fnmatch_helper): File.fnmatch('\/', '/', File::FNM_PATHNAME)
42947           should return true. (Rev1.112 lost compatiblity)
42949         * dir.c (fnmatch): File.fnmatch('**/.boo', '.foo/.boo',
42950           File::FNM_PATHNAME) should return false because of leading period.
42952 Mon Mar 15 17:01:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42954         * error.c (exc_initialize): calling 'to_str' each time just for
42955           type checking is too heavy.  [ruby-core:02661]
42957 Mon Mar 15 10:14:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42959         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SocketForwarder):
42960           add do_not_reverse_lookup.
42962 Mon Mar 15 07:39:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42964         * eval.c (rb_yield_0): should not re-submit TAG_BREAK if this
42965           yield is not break destination. [ruby-dev:23197]
42967 Sun Mar 14 22:07:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42969         * eval.c (rb_thread_raise): err at unstarted thread.  (PR#1302)
42971 Sat Mar 13 14:56:32 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42973         * test/drb/ut_drb.rb: use 'druby://localhost:0'. [ruby-dev:23078]
42975         * test/drb/ut_eval.rb: ditto.
42977         * test/drb/ut_large.rb: ditto.
42979         * test/drb/ut_safe1.rb: ditto.
42981         * test/drb/ut_drb_drbssl.rb: use 'drbssl://localhost:0'.
42983 Fri Mar 12 23:52:56 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42985         * dir.c (fnmatch): directory recursion '**/' can be used with
42986           File::FNM_PATHNAME. [ruby-dev:22901]
42988         * dir.c (fnmatch, fnmatch_helper): only '/' is accepted as path
42989           separator even in DOSISH environment. [ruby-dev:22974]
42990           [ruby-list:39337]
42992         * dir.c (fnmatch_helper): faster '*' matching.
42994 Fri Mar 12 20:19:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42996         * configure.in (rb_cv_noreturn): default for platforms not support
42997           prototypes.
42999         * ruby.c (ruby_init_loadpath): buffer for path name should have
43000           MAXPATHLEN.
43002         * lib/mkmf.rb (configuration): include topdir and hdrdir in VPATH.
43004         * lib/mkmf.rb (create_makefile): default dependency rule.
43006 Fri Mar 12 07:35:36 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43008         * lib/webrick/config.rb (WEBrick::Config::General): add
43009           :DoNotReverseLookup.
43011         * lib/webrick/server.rb (WEBrick::GenericServer#accept): call
43012           do_not_reverse_lookup for each socket if :DoNotReverseLookup
43013           is set.  [ruby-code:02357]
43015 Wed Mar 10 22:26:25 2004  Minero Aoki  <aamine@loveruby.net>
43017         * lib/fileutils.rb (remove_dir): should handle symlink correctly.
43018           This patch is contributed by Christian Loew.  [ruby-talk:94635]
43020 Wed Mar 10 16:28:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43022         * eval.c (return_jump): set return value to the return
43023           destination.  separated from localjump_destination().
43025         * eval.c (break_jump): break innermost loop (or thread or proc).
43027         * eval.c (rb_yield_0): set exit_value for block break.
43029 Wed Mar 10 16:00:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43031         * struct.c (rb_struct_s_def): Struct::new executes block with
43032           generated struct class. [ruby-talk:02606]
43034 Wed Mar 10 15:58:43 2004  Ryan Davis  <ryand@zenspider.com>
43036         * eval.c (eval): Only print backtrace if generating the backtrace
43037           doesn't generate an exception.  [ruby-core:02621]
43039 Wed Mar 10 10:15:16 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43041         * ruby.c (opt_W_getter): get rid of warning.
43043         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
43044           fixed dependency.
43046 Tue Mar  9 13:04:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43048         * io.c (rb_io_ungetc): raise IOError instead of calling
43049           rb_sys_fail().  [ruby-talk:23181]
43051 Tue Mar  9 10:03:40 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43053         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
43054           replaced regex.c entry with Oniguruma files.
43056 Tue Mar  9 01:09:46 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
43058         * Makefile.in: replaced regex.c entry with Oniguruma files.
43060 Mon Mar  8 23:16:07 2004  Minero Aoki  <aamine@loveruby.net>
43062         * lib/net/http.rb: HTTPHeader did not initialized correctly.
43064         * lib/net/http.rb (connect): does same debug output.
43066 Mon Mar  8 21:38:18 2004  Minero Aoki  <aamine@loveruby.net>
43068         * lib/net/http.rb (add_header): remove warning. [ruby-dev:23170]
43070 Mon Mar  8 21:09:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43072         * dir.c (range): Cancel change for incomplete '['. More discussion
43073           is needed.
43075 Mon Mar  8 19:35:13 2004  akira yamada  <akira@arika.org>
43077         * lib/uri/common.rb (URI::REGEXP::PATTERN::HOSTPORT): (?:#{PORT})
43078           -> (?::#{PORT}).  [ruby-dev:23170]
43080 Mon Mar  8 15:03:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43082         * dir.c (range): treat incomplete '[' as ordinary character (like
43083           has_magic does). fix buffer overrun at incomplete escape like '[\'.
43085 Mon Mar  8 13:35:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43087         * regparse.c (parse_exp): need to separate initialization for bcc32.
43088           [ruby-dev:23169]
43090         * oniguruma.h (ONIG_EXTERN): check __GNUC__ instead of __CYGWIN__.
43092 Mon Mar  8 01:05:55 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43094         * lib/webrick/config.rb (WEBrick::Config::HTTP): rename :RequestHander
43095           to :RequestCallback and add new option :ServerAlias.
43097         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): use
43098           :RequestCallback and warn if :RequestHandler is in server's option.
43100         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should print
43101           error message for WEBrick::HTTPSataus::Error.
43103         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server):
43104           lookup for hostname from :ServerAlias if the req.host is not match
43105           to :ServerName.
43107         * lib/webrick/httpservlet.rb (WEBrick::HTTPServlet::CGIHandler#do_GET):
43108           use $?.exitstatus and refine log message.
43110 Sun Mar  7 16:22:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43112         * Makefile.in (lex.c): use $? instead of $<.
43114         * lib/pstore.rb (commit_new): use FileUtils.copy_stream for Cygwin.
43115           [ruby-dev:23157]
43117 Sun Mar  7 05:34:42 2004  Minero Aoki  <aamine@loveruby.net>
43119         * lib/net/http.rb: HTTPHeader keeps its header fields as an array.
43121         * lib/net/http.rb: new method HTTPHeader#add_header, get_fields.
43123         * lib/net/http.rb: new method HTTPHeader#content_length=.
43125         * lib/net/http.rb: new method HTTPHeader#content_type, main_type,
43126           sub_type, type_params, content_type=, set_content_type.
43128         * lib/net/http.rb (HTTPHeader#basic_encode): result of pack(m) may
43129           contain multiple LFs.
43131 Sun Mar  7 03:11:00 2004  Minero Aoki  <aamine@loveruby.net>
43133         * lib/net/http.rb: new method Net::HTTPRequest#body(=).
43135         * lib/net/http.rb: new method Net::HTTPRequest#body_stream(=).
43137 Sun Mar  7 02:06:07 2004  Minero Aoki  <aamine@loveruby.net>
43139         * lib/net/http.rb: spin off https code again.
43141         * lib/net/https.rb: new file.
43143         * ext/openssl/lib/net/https.rb: removed.  moved to net/https with
43144           slight modifications.
43146         * ext/openssl/lib/net/protocols.rb: removed.  merged with net/http.
43148         * lib/net/protocol.rb: new class BufferedIO.
43150         * lib/net/protocol.rb: InternetMessageIO < BufferedIO.
43152         * lib/net/protocol.rb: BufferedIO.new takes an IO.
43154         * lib/net/smtp.rb: follow InternetMessageIO's change.
43156         * lib/net/pop.rb: ditto.
43158 Sun Mar  7 00:55:03 2004  Minero Aoki  <aamine@loveruby.net>
43160         * lib/net/protocol.rb: remove method: InternetMessageIO#address,
43161           port, ip_address, read_timeout(=), socket.
43163         * lib/net/protocol.rb: simplify code.
43165         * lib/net/protocol.rb: apply latest coding style.
43167 Sat Mar  6 15:15:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43169         * ext/strscan/depend: depends on re.h and regex.h.
43171         * ext/strscan/strscan.c: no version check needed.
43173         * ext/strscan/strscan.c (strscan_init_copy): struct re_registers must
43174           not be bitwise copied.
43176 Sat Mar  6 11:14:33 2004  David Black  <dblack@wobblini.net>
43178         * lib/scanf.rb: refixed the previous fix in IO#block_scanf
43180 Sat Mar  6 10:49:40 2004  David Black  <dblack@wobblini.net>
43182         * lib/scanf.rb: fixed a logic glitch in IO#block_scanf
43184 Sat Mar  6 02:00:19 2004  Minero Aoki  <aamine@loveruby.net>
43186         * lib/net/http.rb: net/https is merged.
43188         * ext/openssl/lib/net/https.rb: ditto.
43190 Sat Mar  6 00:39:21 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
43192         * oniggnu.h: imported from Oniguruma library.
43193         * oniguruma.h: ditto.
43194         * regcomp.c: ditto.
43195         * regenc.c: ditto.
43196         * regenc.h: ditto.
43197         * regerror.c: ditto.
43198         * regex.c: ditto.
43199         * regexec.c: ditto.
43200         * reggnu.c: ditto.
43201         * regint.h: ditto.
43202         * regparse.c: ditto.
43203         * regparse.h: ditto.
43204         * ascii.c: ditto.
43205         * euc_jp.c: ditto.
43206         * sjis.c: ditto.
43207         * utf8.c: ditto.
43209         * MANIFEST: added Oniguruma files listed above.
43211         * LEGAL: added Oniguruma license.
43213         * regex.h: now includes oniggnu.h.
43215         * re.c: applied Oniguruma patch.
43217 Fri Mar  5 23:13:08 2004  Minero Aoki  <aamine@loveruby.net>
43219         * lib/net/http.rb: support WebDAV methods, PROPPATCH, LOCK,
43220           UNLOCK, OPTIONS, PROPFIND, DELETE, MOVE, COPY, MKCOL.
43221           This patch is contributed by Tatsuki Sugiura.
43223 Fri Mar  5 20:58:37 2004  Minero Aoki  <aamine@loveruby.net>
43225         * lib/net/http.rb: Net::HTTPResponse#response is obsolete.
43226           [ruby-core:02592]
43228         * lib/net/http.rb: Net::HTTPResponse#header is obsolete.
43230         * lib/net/http.rb: Net::HTTPResponse#read_header is obsolete.
43232 Fri Mar  5 20:10:57 2004  Minero Aoki  <aamine@loveruby.net>
43234         * ext/strscan/strscan.c: new method StringScanner#initialize_copy
43235           to allow #dup and #clone.
43237         * test/strscan/test_strscan.rb: test StringScanner#dup.
43239 Fri Mar  5 19:42:09 2004  Minero Aoki  <aamine@loveruby.net>
43241         * lib/net/http.rb (HTTPResponse#to_ary): should return an object
43242           which does not respond to #to_ary.  It causes infinite loop in
43243           puts. [ruby-core:02578]
43245 Fri Mar  5 00:51:35 2004  Dave Thomas  <dave@pragprog.com>
43247         * lib/test/unit.rb: Move RDoc documentation so that you can
43248           now say 'ri Test::Unit'
43250 Thu Mar  4 22:31:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43252         * Makefile.in: miniruby is not needed for cross compile.
43254         * configure.in (PREP): miniruby for native compile.
43256 Thu Mar  4 11:46:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43258         * lib/drb/extservm.rb (DRb::ExtServManager#invoke_service_command):
43259           detach server processes to get rid of zombies.
43261 Thu Mar  4 10:41:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43263         * ruby.h (T_MASK): save 1 bit in flags bits by shifting T_xxx
43264           values.
43266 Thu Mar  4 08:08:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43268         * ext/syck/rubyext.c: get rid of warnings.
43270         * lib/rss/taxonomy.rb: ditto.
43272         * lib/rdoc/ri/ri_formatter.rb: ditto.
43274         * test/ruby/test_assignment.rb: ditto.
43276 Thu Mar  4 01:17:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43278         * lib/rdoc/ri/ri_display.rb (DefaultDisplay::page): wait until the
43279           pager terminates.
43281 Wed Mar  3 13:10:56 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43283         * eval.c (method_hash): new method. [ruby-talk:93968]
43285         * eval.c (proc_eq): do not compare dyna_vars.
43287         * eval.c (proc_hash): new method.
43289         * eval.c (rb_yield_0): protect break/return from within orphan (or
43290           lambda) Proc object.
43292 Wed Mar  3 09:52:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43294         * lib/mkmf.rb ($topdir): use compile_dir only when not installed yet.
43295           [ruby-talk:94098]
43297 Wed Mar  3 01:18:52 2004  Kouhei Sutou  <kou@cozmixng.org>
43299         * lib/rss/converter.rb: handled Uconv::Error.
43301         * lib/rss/dublincore.rb: DublincoreModel -> DublinCoreModel
43303 Wed Mar  3 00:59:30 2004  David Black  <dblack@wobblini.net>
43305         * lib/scanf.rb: soak_up_spaces only ungetc's non-space last
43306           character
43308         * lib/scanf.rb: IO#block_scanf now returns partial last iteration
43309           array if format string matches partly
43311 Tue Mar  2 16:30:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43313         * io.c (pipe_open): erred program name should be reported by
43314           exceptions, instead of the first argument.
43316         * process.c (rb_spawn): ditto.
43318         * process.c (proc_spawn_v): use first argument as program name.
43320         * win32/win32.c (rb_w32_aspawn): ditto.
43322         * win32/win32.c (CreateChild): search executable file if no program
43323           name given.
43325         * lib/drb/extservm.rb (invoke_service_command): use Process.spawn.
43326           [ruby-dev:23103]
43328         * lib/rdoc/ri/ri_display.rb (setup_pager): use IO.popen.
43329           [ruby-dev:23086], [ruby-dev:23103]
43331         * lib/rdoc/diagram.rb (convert_to_png): ditto.
43333         * lib/rdoc/generators/chm_generator.rb (compile_project): ditto.
43335 Tue Mar  2 12:24:03 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43337         * win32/Makefile.sub, wince/Makefile.sub (config.h): shouldn't check
43338           defined? NORETURN. [ruby-dev:23100]
43340 Tue Mar  2 11:28:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43342         * test/ruby/test_iterator.rb (test_ljump): cannot use
43343           assert_nothing_raised due to passing block.
43345 Tue Mar  2 06:23:14 2004  David Black  <dblack@wobblini.net>
43347         * lib/scanf.rb: fixed Kernel#scanf to propagate code block
43349 Mon Mar  1 23:25:40 2004  David Black  <dblack@wobblini.net>
43351         * lib/scanf.rb: Partial fix so STDIN#scanf works with new
43352          STDIN#pos behavior
43354 Mon Mar  1 19:42:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43356         * bcc32/setup.mak: configure's default is "--enable-install-doc"
43358         * win32/setup.mak: ditto.
43360 Mon Mar  1 12:24:10 2004  Dave Thomas  <dave@pragprog.com>
43362         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_alias):
43363           Allow aliases to have parentheses
43365 Sun Feb 29 23:14:53 2004  Dave Thomas  <dave@pragprog.com>
43367         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
43368           Handle :nodoc: on singleton classes.
43370 Sat Feb 28 21:50:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43372         * bcc32/Makefile.sub, bcc32/README.bcc32, bcc32/configure.bat,
43373           bcc32/setup.mak: new configure scheme. use ``configure --prefix=dir''
43374           instead of ``make DESTDIR=dir install''.
43375           --with-static-linked-ext support on bccwin32. [ruby-dev:23034]
43377 Sat Feb 28 21:50:20 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43379         * bcc32/setup.mak: "configure --disable-install-doc" is now working.
43381         * win32/setup.mak: ditto.
43383 Sat Feb 28 15:09:49 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43385         * bcc32/configure.bat: append missing label ":exit".
43387         * bcc32/configure.bat: fix typo.
43389 Sat Feb 28 10:31:03 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43391         * MANIFEST: add test_erb.rb
43393         * lib/erb.rb, test/erb/test_erb.rb: don't forget filename,
43394           if both filename and safe_level given. [ruby-dev:23050]
43396 Sat Feb 28 01:08:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43398         * parse.y (yylex): should not allow symbol for invalid global
43399           variable (e.g. `:$-)`). [ruby-core:02518]
43401 Fri Feb 27 20:37:09 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43403         * eval.c (proc_invoke): no orphan block check is needed when pcall
43404           is true.
43406         * eval.c (localjump_destination): update localjump condition.
43408 Fri Feb 27 02:10:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43410         * eval.c (localjump_destination): lambda should not interfere
43411           return from the yielded block.
43413 Fri Feb 27 00:53:49 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43415         * lib/drb/drb.rb, test/drb/drbtest.rb: require drb/eq.rb by default
43417 Thu Feb 26 12:15:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43419         * win32/win32.c (make_cmdvector): adjust successive double-quote
43420           handling.
43422 Thu Feb 26 09:42:56 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43424         * hash.c (delete_if_i): use st_delete_safe() (via
43425           rb_hash_delete()) instead of returning ST_DELETE.
43427 Thu Feb 26 02:35:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43429         * process.c (rb_f_exec): get rid of SEGV when exec failed for command
43430           in single string.
43432 Wed Feb 25 21:17:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43434         * gc.c (obj_free), io.c (rb_io_fptr_finalize), rubyio.h (OpenFile):
43435           sharing OpenFile.
43437         * io.c (rb_io_initialize): accept IO instance.  [ruby-dev:22195]
43439 Wed Feb 25 21:16:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43441         * instruby.rb (with_destdir): should return the given argument if no
43442           DESTDIR is given.
43444         * instruby.rb: use path name expansion of cmd.exe.
43446 Wed Feb 25 20:44:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43448         * lib/cgi-lib.rb, lib/getopts.rb, lib/importenv.rb, lib/parsearg.rb:
43449           warn with caller position.
43451         * test/rss/test_content.rb, test/rss/test_dublincore.rb,
43452           test/rss/test_syndication.rb, test/rss/test_trackback.rb: use cgi
43453           instead of cgi-lib.
43455 Tue Feb 24 18:42:03 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43457         * dir.c (glob_helper): '**/' should not match leading period
43458           unless File::FNM_DOTMATCH is set. (like '*/') [ruby-dev:23014]
43460 Tue Feb 24 18:03:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43462         * test/ruby/test_file.rb (test_fnmatch): test for dir.c:1.108.
43464 Tue Feb 24 17:07:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43466         * dir.c (fnmatch): File.fnmatch with File::FNM_PATHNAME was broken
43467           for the pattern including '*' followed by '/'.
43469 Tue Feb 24 13:22:21 2004  Dave Thomas  <dave@pragprog.com>
43471         * lib/rdoc/rdoc.rb (RDoc::RDoc::normalized_file_list): Attempt to get better
43472           heuristics on which files to include and exclude. Now only include
43473           non-standard files if they are explicitly named in ARGV.
43475 Tue Feb 24 07:23:30 2004  Dave Thomas  <dave@pragprog.com>
43477         * lib/rdoc/generators/html_generator.rb: Deal with :stopdoc: when
43478           choosing a default main page to display (ie. don't select a page
43479           if we don't have documentation for it).
43481 Tue Feb 24 06:40:14 2004  Dave Thomas  <dave@pragprog.com>
43483         * lib/rdoc/parsers/parse_rb.rb (RubyLex::identify_identifier): Handle
43484           class variables in code listings
43486 Tue Feb 24 06:32:27 2004  Dave Thomas  <dave@pragprog.com>
43488         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_aliases): Handle
43489           aliases in C files.
43491 Tue Feb 24 06:16:22 2004  Dave Thomas  <dave@pragprog.com>
43493         * lib/rdoc/rdoc.rb (RDoc::RDoc::document): Now create op dir _before_
43494           parsing files.
43496 Tue Feb 24 06:08:47 2004  Dave Thomas  <dave@pragprog.com>
43498         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_constant):
43499           Start collecting text of constant values earlier: was missing
43500           values in output if there was no space after '='
43502 Tue Feb 24 06:08:25 2004  Dave Thomas  <dave@pragprog.com>
43504         * lib/rdoc/generators/html_generator.rb: Escape contant values.
43506 Tue Feb 24 03:45:06 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43508         * ext/openssl/ossl_config.c (ossl_config_each): add new method
43509           OpenSSL::Config#each. it iterates with section name, field name
43510           and value.
43512         * ext/openssl/ossl_config.c (Init_ossl_config): include Enumerable.
43514 Mon Feb 23 09:09:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43516         * instruby.rb (parse_args): use optparse instead of getopts.
43518         * instruby.rb (DOSISH): embedded path in batch files should not be
43519           prefixed by DESTDIR.  [ruby-core:02186]
43521 Sun Feb 22 14:58:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43523         * ext/extmk.rb: $extstatic is Array or nil now.  [ruby-talk:93383]
43525         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub: terminate options.
43527         * lib/mkmf.rb (init_mkmf): $INCFLAGS also should be lazy-evaluated.
43529 Sun Feb 22 13:05:37 2004  akira yamada  <akira@ruby-lang.org>
43531         * lib/uri/mailto.rb (URI::MailTo::to_s): should include fragment.
43533 Sun Feb 22 12:58:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43535         * ext/extmk.rb: use optparse instead of getopts.
43537         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub: ditto.
43539 Sun Feb 22 09:51:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43541         * re.c: corrected documentation format (rb_reg_initialize_m)
43543 Sat Feb 21 22:41:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43545         * ext/zlib/zlib.c: documented, but needs more effort.
43547 Sat Feb 21 14:33:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43549         * ext/extmk.rb: prefer relative path.  [ruby-talk:93037]
43551 Sat Feb 21 11:12:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43553         * missing/os2.c, missing/x68.c: typo fix.  pointed out by greentea.
43555 Fri Feb 20 19:11:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43557         * lib/ostruct.rb (OpenStruct#initialize_copy): should not share
43558           members.  [ruby-dev:22966]
43560 Fri Feb 20 18:59:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43562         * lib/irb/init.rb (IRB::IRB.parse_opts): add -I option to
43563           irb. [ruby-dev:39243]
43565 Fri Feb 20 12:55:27 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43567         * io.c (pipe_open): fix typo.
43569         * win32/win32.c (CreateChild): first argument to CreateProcess() must
43570           have path, not just basename.
43572 Thu Feb 19 23:24:16 2004  Dave Thomas  <dave@pragprog.com>
43574         * lib/rdoc/generators/html_generator.rb (Generators::HtmlClass::build_attribute_list):
43575           Support visibility modifiers for attributes
43577 Thu Feb 19 22:39:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43579         * lib/ostruct.rb: documented
43581 Thu Feb 19 22:39:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43583         * test/rinda/test_rinda.rb: DRb.start_service only once in testsuites.
43584           DRb.start_service could handle this.
43586 Thu Feb 19 22:24:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43588         * lib/soap/mapping/rubytypeFactory.rb: should not dump singleton class.
43589           [ruby-dev:22588]
43590           c = class << Object.new; class C; self; end; end; SOAPMarshal.dump(c)
43592 Thu Feb 19 18:08:18 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43594         * ext/strscan/strscan.c: improved documentation
43596 Thu Feb 19 18:08:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43598         * win32/win32.c, win32/win32.h: fixed prototypes.
43600         * win32/win32.c (wait): same as waitpid() with -1.
43602 Thu Feb 19 02:34:28 2004  Dave Thomas  <dave@pragprog.com>
43604         * lib/rdoc/markup/simple_markup/preprocess.rb (SM::PreProcess::include_file):
43605           Only strip comment markers if all lines start with comments.
43607 Thu Feb 19 03:05:49 2004  Minero Aoki  <aamine@loveruby.net>
43609         * ext/strscan/strscan.c: StringScanner#restsize is obsolete;
43610           use #rest_size instead.
43612         * ext/strscan/strscan.c: StringScanner#matchedsize is obsolete;
43613           use #matched_size instead.
43615 Thu Feb 19 02:42:19 2004  Minero Aoki  <aamine@loveruby.net>
43617         * ext/strscan/strscan.c: don't use rb_eval_string, it defines
43618           classes under the module when required in module clauses.
43619           [ruby-dev:22951]
43621 Thu Feb 19 02:37:28 2004  Minero Aoki  <aamine@loveruby.net>
43623         * ext/strscan/strscan.c: merge documentation from 1.8 branch.
43624           Thanks Gavin Sinclair.
43626 Thu Feb 19 00:20:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43628         * lib/cgi-lib.rb:   deprecated after 1.8.1
43630         * lib/getopts.rb:   ditto
43632         * lib/importenv.rb: ditto
43634         * lib/parsearg.rb:  ditto
43636 Thu Feb 19 00:11:05 2004  Dave Thomas  <dave@pragprog.com>
43638         * lib/rdoc/markup/simple_markup/preprocess.rb (SM::PreProcess::handle):
43639           Strip extraneous space from filenames in :include:
43641 Wed Feb 18 22:53:41 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43643         * lib/drb/unix.rb: remove O_NONBLOCk, thanks \ay
43645 Wed Feb 18 22:42:19 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43647         * test/rinda/test_rinda.rb: improt test_rinda.rb
43649 Wed Feb 18 22:03:11 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43651         * test/*: should not depend on $KCODE.
43653 Wed Feb 18 18:07:09 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43655         * test/ruby/test_sprintf.rb: added tests.
43657 Wed Feb 18 17:18:01 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43659         * ext/win32ole/win32ole.c: need to include <olectl.h> on Cygwin.
43661 Wed Feb 18 10:40:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43663         * sprintf.c (rb_f_sprintf): sign bit extension should not be done
43664           if FPLUS flag is specified.  [ruby-list:39224]
43666         * sprintf.c (rb_f_sprintf): do not prepend dots for negative
43667           numbers if FZERO is specified.  [ruby-dev:39218]
43669 Wed Feb 18 10:23:34 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43671         * sprintf.c (rb_f_sprintf): clean up.
43673 Tue Feb 17 23:40:34 2004  Guy Decoux  <ts@moulon.inra.fr>
43675         * sprintf.c (rb_f_sprintf): preserve original val for
43676           format_integer. [ruby-talk:92975]
43678 Tue Feb 17 23:28:45 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43680         * test/soap/marshal/test_marshal.rb, test/ruby/test_marshal.rb: do $:
43681           trick to share the testcase test/ruby/marshaltestlib.rb.
43683 Tue Feb 17 23:13:23 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43685         * test/ruby/marshaltestlib.rb: common marshal testcase added.
43687         * test/ruby/test_marshal.rb: use above testsuite.
43689         * test/soap/marshal/test_marshal.rb: ditto.
43691         * test/soap/marshal/cmarshal.rb: removed (not used).
43693 Tue Feb 17 19:34:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43695         * ext/extmk.rb (extmake): $extout_prefix doesn't vary for libraries.
43697         * ext/extmk.rb (extmake): remove compile directory if empty.
43699         * ext/extmk.rb (parse_args) lib/mkmf.rb (create_makefile): move
43700           initialization of $extout_prefix from lib/mkmf.rb.  [ruby-dev:22928]
43702         * ext/extmk.rb: clear ext and extout directory when cleaning.
43704         * lib/mkmf.rb (CLEANLIBS): should be under $(arch) directory.
43706 Tue Feb 17 18:02:10 2004  Minero Aoki  <aamine@loveruby.net>
43708         * ext/strscan/strscan.c: ScanError may be (wrongly) garbage
43709           collected. (thanks Gavin Sinclair)
43711         * ext/strscan/strscan.c: move ::ScanError to StringScanner::Error.
43712           ::ScanError is also defined for backward compatibility.
43714         * ext/strscan/strscan.c: #peep is obsolete, use #peek.
43716         * ext/strscan/strscan.c: #empty? is obsolete, use #eos?.
43718         * ext/strscan/strscan.c: #clear is obsolete, use #terminate.
43720         * ext/strscan/strscan.c: #getbyte is obsolete, use #get_byte.
43722 Tue Feb 17 12:12:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43724         * ext/extmk.rb (parse_args): delay expanding $(extout) until invoking
43725           make.
43727         * lib/mkmf.rb (CLEANLIBS): should remove files have specific
43728           extensions.
43730 Tue Feb 17 11:33:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43732         * lib/rss/rexmlparser.rb: REXML version may be 4 digits.
43734 Tue Feb 17 10:45:59 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43736         * ext/syck/rubyext.c (syck_emitter_end_object): takes only one arg.
43738 Tue Feb 17 07:48:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43740         * lib/rexml/encodings/SHIFT_JIS: wrong library name.
43742 Tue Feb 17 01:35:28 2004  Tanaka Akira  <akr@m17n.org>
43744         * eval.c (rb_eval): care that another thread replace NODE_DREGX_ONCE
43745           to NODE_LIT.  [ruby-dev:22920]
43747 Tue Feb 17 01:20:57 2004  Minero Aoki  <aamine@loveruby.net>
43749         * lib/fileutils.rb: new module FileUtils::DryRun.
43751 Mon Feb 16 23:28:14 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43753         * lib/csv.rb: document reduction.  [ruby-core:02429]
43755         * test/yaml/test_yaml.rb: added 0..1 test with "0".."1" on display.
43756           it should be defined that the specification about what kind of Range
43757           is supported in ruby's custom type in YAML.
43759 Mon Feb 16 22:22:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43761         * lib/generator.rb: corrected doc format
43763         * lib/rinda/rinda.rb: added documentation (from Hugh Sasse)
43765         * lib/rinda/tuplespace.rb: ditto
43767           [Note: rinda files actually committed Wed Feb 18 07:27:00 2004]
43769 Mon Feb 16 20:28:52 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43771         * bcc32/Makefile.sub: show more warnings. (refering to mingw)
43773         * bcc32/setup.mak: ditto.
43775 Mon Feb 16 18:35:58 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43777         * win32/Makefile.sub (config.status): should create *.pdb on ext/,
43778           not .ext/.
43780         * win32/Makefile.sub (config.status): convert the name of import
43781           library.
43783         * lib/mkmf.rb (create_makefile): now don't need to remove
43784           $(TARGET).lib.
43786 Mon Feb 16 15:45:22 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43788         * configure.in: check functions, fork spawnv.
43790         * io.c (rb_io_s_popen): accept argv not only single command line.
43792         * process.c (rb_proc_exec_n): export.
43794         * process.c (rb_check_argv): check if arguments are safe to invoke.
43796         * process.c (rb_fork): retry to fork.
43798         * process.c (rb_spawn): spawn child process asynchronously.
43800         * process.c (rb_f_system): raise an exception if the command could not
43801           execute.
43803         * win32/win32.c (rb_w32_argv_size): count necessary size for joined
43804           arguments.
43806         * win32/win32.c (rb_w32_join_argv): join arguments with quoting.
43808         * win32/win32.c (rb_w32_pipe_exec, rb_w32_spawn, rb_w32_aspawn):
43809           accept program name adding to command line.
43811 Mon Feb 16 15:18:33 2004  Minero Aoki  <aamine@loveruby.net>
43813         * lib/racc/parser.rb: add note for Racc full package.
43815 Mon Feb 16 15:13:01 2004  Minero Aoki  <aamine@loveruby.net>
43817         * ext/racc/cparse/README: new file.
43819         * ext/racc/cparse/MANIFEST: add README.
43821 Mon Feb 16 12:29:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43823         * ext/iconv/iconv.c (iconv_s_list): new method Iconv.list
43824           (libiconv only).
43826 Mon Feb 16 10:29:52 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43828         * dir.c (CompareImpl): File.fnmatch and Dir.glob get better performance
43829           in Win32. This is achived by calling downcase() for single-byte
43830           characters. (CharLower() is slower than downcase())
43832 Mon Feb 16 02:14:29 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43834         * bcc32/Makefile.sub: should warn suspicious pointer conversion.
43836         * bcc32/setup.mak: ditto.
43838 Sun Feb 15 20:56:22 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43840         * dir.c (push_braces): remove wrong const. [ruby-dev:22891]
43842 Sun Feb 15 20:41:15 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43844         * sample/soap/calc/httpd.rb, sample/soap/exchange/httpd.rb,
43845           sample/soap/sampleStruct/httpd.rb, sample/wsdl/googleSearch/httpd.rb:
43846           use soap/property instead of getopts for configuring DocumentRoot
43847           and port# of httpd.  see samplehttpd.conf below.
43849         * sample/soap/calc/samplehttpd.conf,
43850           sample/soap/exchange/samplehttpd.conf,
43851           sample/soap/sampleStruct/samplehttpd.conf,
43852           sample/wsdl/googleSearch/samplehttpd.conf: added.
43854 Sun Feb 15 19:13:33 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43856         * lib/rinda/tuplespace.rb: read(tpl,0), raise RequestExpiredError
43857           if not found.
43859 Sun Feb 15 15:48:57 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
43861         * ext/win32ole/win32ole.c: add IDispatch wrapper in val2variant.
43862           Thanks, arton.
43864 Sun Feb 15 15:23:29 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43866         * ruby.h, dir.c (rb_glob): add const.
43868 Sun Feb 15 01:46:05 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43870         * lib/mkmf.rb: absolute path of ruby is assigned to $(RUBY).
43871           [ruby-dev:22870]
43873 Sat Feb 14 23:59:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43875         * mkconfig.rb: use fileutils.rb instead of ftools.rb.
43877         * bcc32/Makefile.sub, win32/Makefile.sub (config.h): define
43878           STACK_GROW_DIRECTION.
43880         * bcc32/Makefile.sub (config.h): add newer checks.
43882         * wince/Makefile.sub (config.h): define NEED_IO_SEEK_BETWEEN_RW.
43884 Sat Feb 14 23:26:27 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43886         * lib/un.rb: use OptionParser instead of getopts.
43888 Sat Feb 14 11:28:14 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43890         * sample/drb/*: import lib/drb/sample
43892 Sat Feb 14 11:14:12 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43894         * lib/drb/drb.rb: add pretty_print, thanks gotoken.
43896 Fri Feb 13 21:51:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43898         * lib/fileutils.rb: slighly improved documentation (sync with 1.8)
43900 Fri Feb 13 19:57:01 2004  Kouhei Sutou  <kou@cozmixng.org>
43902         * test/rss/test_trackback.rb: added tests for TrackBack with RSS
43903           2.0.
43905         * test/rss/common.rb: added methods make RSS 2.0.
43907         * lib/rss/trackback.rb: TrackBack API is decided.
43909         * lib/rss/rss.rb: RSS::VERSION 0.0.7 -> 0.0.8.
43911         * lib/rss/parser.rb, lib/rss/rss.rb: replaced $DEBUG by RSS::DEBUG.
43913         * lib/rss/2.0.rb: removed RSS 2.0 URI. Because RSS 2.0 doesn't
43914           have URI.
43916 Fri Feb 13 14:41:00 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
43918         * ext/tk/lib/tk.rb: en-bugged at last commit (Feb 11 23:24:22 2004)
43920 Fri Feb 13 12:26:37 2004  Minero Aoki  <aamine@loveruby.net>
43922         * test/fileutils/test_fileutils.rb: rescue SystemCallError instead
43923           of EINVAL.  File.link may raise EACCES on network file systems.
43925 Fri Feb 13 05:18:58 2004  Minero Aoki  <aamine@loveruby.net>
43927         * test/fileutils/test_fileutils.rb: File.link raises EINVAL on
43928           Win9x. [ruby-dev:22713]
43930 Thu Feb 12 21:49:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43932         * lib/ftools.rb: documented
43934 Thu Feb 12 21:19:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43936         * lib/base64.rb: added and tidied documentation
43938 Thu Feb 12 20:45:01 2004  Minero Aoki  <aamine@loveruby.net>
43940         * lib/net/protocol.rb (WriteAdapater#puts): must append "\n" to
43941           the string, don't prepend. (ruby-bugs:PR#1280)
43943 Thu Feb 12 20:31:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43945         * lib/mkmf.rb (create_tmpsrc): cpp32 of Borland C++ ignores #error
43946           directives in DOS line-ending files at all.
43948 Thu Feb 12 15:23:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43950         * parse.y (rparen): ignore preceding newlines to right parentheses.
43951           (ruby-bugs:PR#1221) [ruby-dev:22858]
43953 Thu Feb 12 14:17:43 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43955         * configure.in: set ac_cv_func_link to yes to enable link() on MinGW.
43956           [ruby-dev:22241]
43958 Thu Feb 12 13:32:49 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43960         * win32/win32.c (link): raise NotImplementedError on Win9X.
43961           contributed by Tietew. [ruby-dev:22713]
43963         * win32/win32.c, win32/win32.h (link): add const.
43965 Thu Feb 12 09:56:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43967         * ext/tk/lib/tk.rb (TkComm::tk_split_list): suppress a warning.
43969 Thu Feb 12 02:23:56 2004  Tanaka Akira  <akr@m17n.org>
43971         * lib/pathname.rb: use assert_raise instead of assert_raises.
43973         * lib/pp.rb: ditto.
43975         * lib/time.rb: ditto.
43977         * lib/tsort.rb: ditto.
43978           use TSortHash and TSortArray instead of Hash and Array in test.
43980 Wed Feb 11 23:24:22 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
43982         * ext/tk/lib/tk.rb: properly treat a Tcl/Tk's string with escaping
43983           special characters.
43985 Tue Feb 10 20:49:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43987         * eval.c (method_proc): return bound Proc object.  [ruby-dev:22854]
43989         * eval.c (rb_mod_define_method): bind method body itself for Method
43990           object.
43992         * node.h (NODE_DMETHOD): deprecated.
43994         * object.c (rb_class_inherited_p): export.
43996 Tue Feb 10 16:43:50 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43998         * eval.c (umethod_bind): purge unused check.  [ruby-dev:22850]
44000 Tue Feb 10 14:33:08 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44002         * string.c (rb_str_match): raise TypeError when both arguments are
44003           strings. [ruby-dev:22851]
44005         * string.c (rb_str_match2): removed.
44007         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub,
44008           wince/Makefile.sub (string.c): now not depend on version.h.
44010 Mon Feb  9 17:46:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44012         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub, configure.in,
44013           runruby.rb: run rdoc, test and so on with compiled extension
44014           libraries.  [ruby-dev:22688]
44016         * ext/extmk.rb, lib/mkmf.rb: make extension libraries in separated
44017           directory, similar to the actual directory structure.
44019         * lib/fileutils.rb (FileUtils.copy_file): use the mode of the original
44020           file to create new file.
44022         * lib/rdoc/ri/ri_paths.rb (RI::Paths::SYSDIR): get rid of unexpected
44023           influence by envirionment variable.
44025         * bcc32/configure.bat, win32/configure.bat: add install-doc options.
44027         * win32/win32.c, win32/win32.h (rb_w32_fstat): fix Borland C runtime
44028           bug which returns wrong mode.  [ruby-dev:22846]
44030 Mon Feb  9 16:30:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44032         * process.c (detach_process_watcher): return the last status.
44033           [ruby-dev:22841]
44035 Sun Feb  8 16:46:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44037         * lib/pp.rb (PP::PPMethods::object_address_group): suppress negative
44038           sign for higher heap areas.
44040 Sun Feb  8 16:18:27 2004  akira yamada  <akira@ruby-lang.org>
44042         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_range_cycle):
44043           added tests.
44045 Sun Feb  8 15:51:57 2004  akira yamada  <akira@ruby-lang.org>
44047         * test/ruby/test_file.rb (TestFile::test_fnmatch): added tests for
44048           File.fnmatch. [ruby-dev:22815][ruby-dev:22819]
44050 Sun Feb  8 15:41:45 2004  akira yamada  <akira@ruby-lang.org>
44052         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_range_cycle):
44053           added tests. [ruby-core:02306] [ruby-core:02311]
44055 Sun Feb  8 14:24:35 2004  Minero Aoki  <aamine@loveruby.net>
44057         * lib/net/http.rb (HTTP#request): should not overwrite Connection
44058           header. (ruby-bugs:PR#1274)
44060 Sun Feb  8 10:11:21 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
44062         * dir.c (glob_helper): Dir.glob('**/') did not work. [ruby-dev:22832]
44064 Sun Feb  8 00:29:26 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
44066         * dir.c (fnmatch): File.fnmatch('*?', 'a') should return true.
44067           [ruby-dev:22815]
44069         * dir.c (fnmatch): File.fnmatch('\[1\]' , '[1]') should return true.
44070           [ruby-dev:22819]
44072         * dir.c: Did some styles (no change to behavior)
44074 Sat Feb  7 19:56:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44076         * lib/irb/init.rb (IRB.rc_files): yield possible rc file names.
44078         * lib/irb/input-method.rb (IRB::ReadlineInputMethod::initialize):
44079           load and save history automatically.  [ruby-core:02352]
44081 Fri Feb  6 22:48:16 2004  Dave Thomas  <dave@pragprog.com>
44083         * lib/rdoc/generators/html_generator.rb (gen_url): Support
44084           https in RDoc hyperlinks
44086 Fri Feb  6 22:41:22 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44088         * lib/pp.rb (PPInspectTest#test_to_s_with_iv): rollback the previous
44089           commit.  [ruby-dev:22813]
44091 Fri Feb  6 22:22:50 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44093         * lib/pp.rb (PPInspectTest#test_to_s_with_iv): remove instance
44094           variable which is defined in the test.
44096 Fri Feb  6 18:54:18 2004  akira yamada  <akira@ruby-lang.org>
44098         * test/ruby/test_proc.rb (TestProc::test_eq): added a
44099           test.  [ruby-dev:22599]
44101 Fri Feb  6 18:26:00 2004  akira yamada  <akira@ruby-lang.org>
44103         * test/ruby/test_proc.rb (TestProc::test_eq): added tests for
44104           Proc#==.  [ruby-dev:22592], [ruby-dev:22601]
44106 Fri Feb  6 10:12:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44108         * ext/socket/socket.c (bsock_do_not_reverse_lookup): control reverse
44109           lookup for every instance.  [ruby-core:02346]
44111 Fri Feb  6 09:15:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44113         * lib/irb/extend-command.rb: add irb_help command.  [ruby-talk:91610]
44115         * lib/irb/cmd/help.rb (IRB::ExtendCommand::Help): show RDoc.
44117 Fri Feb  6 00:48:37 2004  Tanaka Akira  <akr@m17n.org>
44119         * lib/prettyprint.rb (PrettyPrint#first?): obsoleted.
44121 Thu Feb  5 23:56:55 2004  Tanaka Akira  <akr@m17n.org>
44123         * lib/prettyprint.rb (PrettyPrint#seplist): added.
44125         * lib/pp.rb (PPMethods#pp_object): use seplist.
44126           (PPMethods#pp_hash): ditto.
44127           (Array#pretty_print): ditto.
44128           (Struct#pretty_print): ditto.
44129           (MatchData#pretty_print): ditto.
44131         * lib/set.rb (Set#pretty_print): use seplist.
44133 Wed Feb  4 22:39:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44135         * file.c (rb_stat_mode): should not sign-expand, so backout.
44137 Wed Feb  4 02:12:06 2004  Tanaka Akira  <akr@m17n.org>
44139         * file.c (test_l): fix wrong method name in document.
44140           (test_S): ditto.
44141           (test_b): ditto.
44142           (test_c): ditto.
44143           (test_suid): ditto.
44144           (test_sgid): ditto.
44145           (test_sticky): ditto.
44147 Tue Feb  3 22:36:25 2004  Kouhei Sutou  <kou@cozmixng.org>
44149         * lib/rss/2.0.rb, lib/rss/content.rb, lib/rss/dublincore.rb,
44150           lib/rss/rss.rb, lib/rss/syndication.rb: removed warnings.
44152         * lib/rss/converter.rb: removed handling load error of nkf.
44154         * test/rss/test_syndication.rb, test/rss/test_trackback.rb,
44155           test/rss/test_dublincore.rb, test/rss/test_content.rb: replaced
44156           'require "rss/parser"' by 'require "rss/1.0"'.
44158         * test/rss/test_parser.rb, test/rss/test_accessor.rb: removed
44159           'require "rss/parser"'.
44161 Tue Feb  3 11:23:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44163         * parse.y (reduce_nodes): remove tail returns.  [ruby-talk:90934]
44165 Tue Feb  3 08:04:57 2004  Tanaka Akira  <akr@m17n.org>
44167         * lib/pp.rb (Struct#pretty_print_cycle): follow 1.8 style.
44169 Mon Feb  2 22:06:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44171         * parse.y (block_append, new_evstr, void_expr0): remove no longer used
44172           labels.
44174 Mon Feb  2 18:45:50 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44176         * dln.c (dln_load): don't specify RTLD_GLOBAL on Interix,
44177           because it caused SEGV when running runner.rb.
44179 Mon Feb  2 01:54:00 2004  Tanaka Akira  <akr@m17n.org>
44181         * lib/pp.rb (Struct#pretty_print): make it 1.8 style.
44182           (Numeric#pretty_print, FalseClass#pretty_print)
44183           (TrueClass#pretty_print, Module#pretty_print): fix pp for objects
44184           with instance variables.  [ruby-talk:91157]
44186         * lib/open-uri.rb (URI::Generic#find_proxy): return nil on loopback
44187           address.
44189         * lib/resolv-replace.rb (BasicSocket#send): don't replace because
44190           it has no hostname argument.
44191           (IPSocket.getaddress): raise SocketError instead of
44192           Resolv::ResolvError for errors.
44193           (TCPSocket#initialize, UDPSocket#bind, UDPSocket#connect)
44194           (SOCKSSocket#initialize): use IPSocket.getaddress instead of
44195           Resolv.getaddress.
44196           (UDPSocket#send): recognize 3 arguments form.  try all addresses on
44197           4 arguments form.
44199 Sun Feb  1 23:00:00 2004  Shigeo Kobayashi  <shigek@ruby-lang.org>
44201         * ext/bigdecimal.c: Bug in BigDecimal("1e#{n}").add BigDecimal('.5'),n)
44202           reported and fixed by Javier Goizueta.
44204 Sun Feb  1 18:21:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
44206           From ruby_1_8 branch:
44207         * lib/test/unit.rb: rearranged documentation for RDoc's sake.
44208         * lib/matrix.rb: improved documentation.
44209         * lib/net/http.rb: slight documentation formatting improvement.
44211 Sun Feb  1 05:30:06 2004  Tanaka Akira  <akr@m17n.org>
44213         * lib/open-uri.rb (URI::Generic#find_proxy): warn HTTP_PROXY.
44214          raise an errror on non-http proxy URI.
44215          (OpenURI::Buffer#<<): make a tempfile binmode.  [ruby-talk:90793]
44217 Sun Feb  1 00:57:41 2004  Kouhei Sutou  <kou@cozmixng.org>
44219         * lib/rss/parser.rb (RSS::Parser): added @@default_parser. Used
44220           XML parser became selectable.
44221         * test/rss/test_parser.rb: added tests for
44222           RSS::Parser.default_parser.
44224 Sat Jan 31 02:28:15 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44226         * configure.in (RPATHFLAG): set to -Wl,-R like NetBSD on Interix.
44228 Sat Jan 31 01:09:41 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44230         * lib/logger.rb: leading 0 padding of timestamp usec part.
44232 Fri Jan 30 18:53:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44234         * re.c (KR_REHASH): wrong hash value on sizeof(long) > sizeof(int).
44236 Thu Jan 29 23:11:57 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44238         * configure.in (DLEXT2): removed.  Ruby does not treat
44239           ".dll" as a extention library anymore.
44241         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub (DLEXT2):
44242           ditto.
44244         * util.c (mblen): fix overrun.  [ruby-dev:22672]
44246 Thu Jan 29 22:41:53 2004  Dave Thomas  <dave@pragprog.com>
44248         * lib/rdoc/generators/html_generator.rb: Allow 'link:' in Tidylinks.
44249           THis means you can write "see f1[link:files/f1_rb.html]".
44251 Thu Jan 29 22:24:47 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44253         * sample/openssl/gen_csr.rb: follow OpenSSL::X509::Name change.
44254           ASN.1 type of subject DN elements were wrong.
44256 Thu Jan 29 22:19:51 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44258         * test/*: remove $: trick.  [ruby-dev:22763]  use test/runner.rb to
44259           run test.
44261 Thu Jan 29 19:28:16 2004  Minero Aoki  <aamine@loveruby.net>
44263         * lib/net/http.rb (Request#initialize): reject only when a path is
44264           empty. [ruby-dev:22771]
44266 Thu Jan 29 18:54:08 2004  H.Yamamoto  <ocean@m2.ccsnet.ne.jp>
44268         * dir.c (glob_helper): infinite loop bug in win32 code.
44269           [ruby-dev:22770]
44271 Thu Jan 29 17:03:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44273         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
44274           [ruby-dev:22761]
44276 Thu Jan 29 11:32:14 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44278         * test/rss/test_*: do $: trick while searching a module in the current
44279           directory.
44281         * test/xsd/test_xmlschemaparser.rb, test/wsdl/test_emptycomplextype.rb,
44282           test/soap/helloworld/test_helloworld.rb,
44283           test/soap/calc/{test_calc.rb,test_calc2.rb}: do File.expand_path
44284           before using __FILE__.
44286         * test/yaml/test_yaml.rb: assert_equals -> assert_equal.
44288 Thu Jan 29 01:56:02 2004  why the lucky stiff  <why@ruby-lang.org>
44290         * ext/syck/rubyext.c: usec round-tripping skew. [ruby-core:2305]
44292         * lib/yaml/rubytypes.rb: character Range now round-trips. [ruby-core:2306]
44294         * test/yaml/test_yaml.rb: add Time and Range tests.
44296 Thu Jan 29 00:00:46 2004  Kouhei Sutou  <kou@cozmixng.org>
44298         * lib/rss: rss/parser.rb is always required.
44300 Wed Jan 28 15:09:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44302         * test/rss/*.rb: remove "test/" prefix.
44304 Wed Jan 28 13:07:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44306         * ext/iconv/extconf.rb: include iconv.h for libiconv.  [ruby-dev:22715]
44308 Wed Jan 28 12:43:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44310         * lib/rss: rss library imported. [ruby-dev:22726]
44312 Wed Jan 28 04:29:41 2004  Eric Schwartz  <emschwar@fc.hp.com>
44314         * lib/cgi/session.rb: use LOCK_SH to read, and a few other
44315           improvements.  [ruby-core:02328]
44317 Tue Jan 27 15:00:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44319         * misc/ruby-mode.el: better support for general delimited
44320           strings.  [ruby-dev:22695]
44322 Tue Jan 27 11:04:40 2004  FUKUMOTO Atsushi  <fukumoto@nospam.imasy.or.jp>
44324         * ext/socket/socket.c (s_recvfrom): sending length should be an
44325           invariant while retrying on EAGAIN.  [ruby-talk:89962]
44327 Tue Jan 27 10:31:28 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44329         * ext/win32ole/win32ole.c (set_argv): fix condition.
44331 Tue Jan 27 02:26:31 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44333         * lib/webrick/httputils.rb (WEBrick:HTTPUtils::parse_header):
44334           refine regex for header-name.
44336 Mon Jan 26 22:53:04 2004  Dave Thomas  <dave@pragprog.com>
44338         * io.c: Remove documentation references to $defout.
44340 Mon Jan 26 14:41:46 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44342         * lib/weakref.rb (WeakRef::initialize): set up @__id before
44343           calling "super".
44345         * lib/delegate.rb (Delegator::initialize): preserve
44346           singleton_method_added method [ruby-dev:22685]
44348         * lib/delegate.rb (Delegator::initialize): use Kernel::raise
44349           instead of mere raise.  [ruby-dev:22681]
44351 Mon Jan 26 12:45:23 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44353         * ext/tcltklib/tcltklib.c: define CONST84 when TCL_MAJOR_VERSION == 7
44355 Mon Jan 26 11:30:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44357         * ext/extmk.rb: Makefiles should depend on also rbconfig.rb.
44358           (ruby-bugs:PR#1256)
44360         * ext/win32ole/win32ole.c (set_argv): set real arguments to
44361           WIN32OLE::ARGV.  [ruby-list:39073]
44363 Sun Jan 25 18:25:26 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44365         * ext/openssl/ossl_x509name.c (ossl_x509name_add_entry): third
44366           argument become optional.
44368         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): ditto.
44370         * ext/openssl/ossl_x509name.c (Init_x509name): emailAddress and
44371           domainComponent should be IA5String.
44373 Sun Jan 25 01:45:38 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44375         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): support
44376           virtual host.
44378         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#virtual_host): add
44379           new method to register virtual hosting server.
44381         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server): add
44382           new method to lookup virtual hosting server.
44384 Sat Jan 24 13:06:26 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44386         * ext/openssl/ossl_x509hame.c (ossl_x509name_initialize): change
44387           second argument. it expected to be a Hash not an Integer.
44389         * ext/openssl/ossl_x509name.c (ossl_x509name_add_entry): add new
44390           function for OpenSSL::X509::Name#add_entry.
44392         * ext/openssl/ossl_x509name.c (Init_ossl_x509name): add constants
44393           OpenSSL::X509::Name::DEFAULT_OBJECT_TYPE and OBJECT_TYPE_TEMPLATE.
44395         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name#initialize):
44396           second argument takes OBJECT_TYPE_TEMPLATE by default.
44398 Fri Jan 23 02:26:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44400         * pack.c (num2i32): pack should not raise RangeError.
44401           [ruby-dev:22654]
44403         * pack.c (pack_pack): do not auto convert nil to zero.
44405 Thu Jan 22 22:54:53 2004  Shugo Maeda  <shugo@ruby-lang.org>
44407         * lib/net/imap.rb (BEG_REGEXP): allow 8-bit characters in quoted
44408           strings for Novell GroupWise Internet Agent.
44410         * lib/net/imap.rb (DATA_REGEXP): ditto.
44412 Thu Jan 22 18:35:49 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44414         * lib/e2mmap.rb (VERSION): remove unnecessary version checking.
44416 Thu Jan 22 16:21:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44418         * parse.y (string_content): reset lexical states at the beginning of
44419           string contents.  [ruby-list:39061]
44421 Thu Jan 22 08:08:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44423         * parse.y (opt_rescue): use NODE_ERRINFO() instead of
44424           NODE_GVAR("$!"), to avoid confusion from variable aliasing.
44425           [ruby-talk:90074]
44427         * version.c (Init_version): remove obsolete constants VERSION
44428           etc.  [ruby-dev:22643]
44430 Thu Jan 22 01:46:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44432         * parse.y (newline_node): do not use NODE_NEWLINE node anymore,
44433           use NEWLINE flag instead.
44435 Thu Jan 22 01:12:12 2004  Siena.  <siena@faculty.chiba-u.jp>
44437         * missing/os2.c (chdir, getcwd):
44438           use _chdir2 and _getcwd2 supporting multiple drives in OS/2 with EMX.
44440 Thu Jan 22 00:33:52 2004  Siena.  <siena@faculty.chiba-u.jp>
44442         * configure.in: check availability of link(). [ruby-dev:22237]
44443         * file.c (rb_file_s_link): raise an exception when link() is unavailable.
44444         * missing/os2.c (link): removed. File#link isn't supported.
44445         * bcc32/Makefile.sub: define HAVE_LINK to enable link(). [ruby-dev:22241]
44446         * win32/Makefile.sub: ditto.
44448 Thu Jan 22 00:26:25 2004  Siena.  <siena@faculty.chiba-u.jp>
44450         * ChangeLog: typo: RUBY_MBCHAR_MAX was RUBY_MBCHAR_MAXSIZE.
44452 Thu Jan 22 00:12:51 2004  Siena.  <siena@faculty.chiba-u.jp>
44454         * defines.h: define RUBY_MBCHAR_MAX instead of MB_CUR_MAX.
44455         * dir.c (Next, emx_mblen): use RUBY_MBCHAR_MAX for mblen().
44456         * file.c (CharNext): ditto.
44457         * ruby.c (translate_char): ditto.
44458         * util.c (__crt0_glob_function): ditto.
44460 Thu Jan 22 00:10:01 2004  Dave Thomas  <dave@pragprog.com>
44462         * lib/base64.rb: :nodoc: the Deprecated module
44464 Wed Jan 21 23:52:39 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44466         * configure.in: Interix(SFU) support.
44468 Wed Jan 21 23:03:45 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
44470         * lib/drb/drb.rb: remove O_NONBLOCK, thanks \ay
44471         * lib/drb/extserv.rb: typo
44473 Wed Jan 21 17:57:56 2004  Shugo Maeda  <shugo@ruby-lang.org>
44475         * lib/net/imap.rb (envelope): allow NIL.
44476         * lib/net/imap.rb (body): ditto.
44477         * lib/net/imap.rb (number): ditto.
44478         * lib/net/imap.rb (ensure_nz_number): show a detailed error
44479           message.
44481 Wed Jan 21 16:44:15 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44483         * lib/mkmf.rb (merge_libs): squeeze successive same libraries.
44484           [ruby-dev:22652]
44486 Wed Jan 21 16:10:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44488         * lib/base64.rb: enclosed in a module.  [ruby-core:02285]
44490 Wed Jan 21 16:01:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44492         * ext/digest/rmd160/extconf.rb: have_library appends found library.
44494 Wed Jan 21 11:36:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44496         * ext/socket/socket.c (sock_gethostbyname): returns host if
44497           ai_canonname is NULL. (ruby-bugs PR#1243)
44499         * parse.y (block_append): update nd_end for "real" head node.
44500           [ruby-list:39058]
44502 Tue Jan 20 14:48:28 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44504         * ext/openssl/extconf.rb: should check <openssl/conf_api.h> instead
44505           of OPENSSL_VERSION_NUMBER. [ruby-list:39056]
44507 Tue Jan 20 14:43:17 2004  Dave Thomas  <dave@pragprog.com>
44509         * lib/base64.rb: Add RDoc
44511 Tue Jan 20 14:25:51 2004  Dave Thomas  <dave@pragprog.com>
44513         * lib/abbrev.rb: Add RDoc
44515 Tue Jan 20 13:22:39 2004  Dave Thomas  <dave@pragprog.com>
44517         * lib/rdoc/generators/html_generator.rb: Document aliases at
44518           top-most level.
44520         * lib/English.rb: Document English.rb.
44522 Tue Jan 20 04:41:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44524         * test/ruby/test_marshal.rb (MarshalTestLib::test_exception): test
44525           for [ruby-dev:22604].
44527         * test/ruby/test_marshal.rb (MarshalTestLibtest_singleton): test
44528           for [ruby-dev:22588].
44530 Tue Jan 20 02:38:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44532         * marshal.c (w_class): should not dump singleton class.
44533           [ruby-dev:22631]
44535 Tue Jan 20 02:49:22 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44537         * ext/openssl/extconf.rb: add check for OpenSSL version.
44538           [ruby-list:39054]
44540 Mon Jan 19 23:56:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44542         * error.c (name_err_mesg_to_str): inverted condition for result of
44543           inspection.  [ruby-dev:22628]
44545 Mon Jan 19 22:24:28 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44547         * sample/exyacc.rb: escape '}' to avoid warning.
44549         * lib/rdoc/parsers/parse_c.rb: escape '{' and '}' to avoid warnings.
44551 Mon Jan 19 21:28:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44553         * ext/digest/defs.h, win32/win3.c, win32/win32.h, file.c: remove
44554           useless casts for Borland C.
44556 Mon Jan 19 17:39:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44558         * error.c (NameError::message): internal use only.
44560         * eval.c (rb_method_missing): use hidden constant.
44562 Mon Jan 19 16:30:53 2004  akira yamada  <akira@ruby-lang.org>
44564         * test/ruby/test_time.rb: added tests for [ruby-dev:22614] and
44565           [ruby-dev:22617].
44567 Mon Jan 19 13:09:21 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44569         * ext/extmk.rb, win32/Makefile.sub, win32/configure.bat,
44570           win32/setup.mak: --with-static-linked-ext support on mswin32.
44572 Mon Jan 19 06:49:07 2004  Tadayoshi Funaba  <tadf@dotrb.org>
44574         * lib/date.rb: zone was wrong when it was behind UTC.
44575           Thanks Mark J. Reed.
44577         * lib/date/format.rb: %z is now always replaced by four digits
44578           with a leading plus or minus sign.
44580         * sample/cal.rb: added a class, anyway.
44582 Mon Jan 19 01:08:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44584         * class.c, error.c, eval.c, intern.h, object.c, variable.c:
44585           do not set path if it is a singleton class.  [ruby-dev:22588]
44587         * lib/cgi.rb (CGI::QueryExtension): give extended string, not a
44588           delegater object.
44590 Sun Jan 18 23:59:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44592         * ext/iconv/charset_alias.rb: prefer us_EN locale encodings or
44593           former.  [ruby-dev:22609]
44595         * ext/iconv/iconv.c (iconv_create): raise InvalidEncoding
44596           exception when EINVAL.
44598 Sun Jan 18 23:16:34 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44600         * class.c, error.c, file.c, io.c, numeric.c, object.c, re.c, struct.c,
44601           time.c: marked init_copy functions nodoc.
44603 Sun Jan 18 20:47:35 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44605         * ruby.c: use translate_char() on Cygwin.
44607 Sun Jan 18 20:00:16 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44609         * lib/soap/wsdlDriver.rb, lib/wsdl/soap/operation.rb: add support of
44610           "parts" attribute of soap:body element in WSDL.
44612         * lib/wsdl/xmlSchema/schema.rb: friendly warning message for
44613           simpleType element which is not supported for now.
44615         * test/wsdl/soap/{soapbodyparts.wsdl,test_soapbodyparts.wsdl}: new
44616           files.
44618 Sun Jan 18 16:46:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44620         * time.c (time_overflow_p): should return results.  [ruby-dev:22614]
44622 Sun Jan 18 12:07:24 2004  Siena.  <siena@faculty.chiba-u.jp>
44624         * test/ruby/test_time.rb: new test case to test Time#[+-].
44626         * time.c (time_plus, time_minus): fix RangeError for a negative
44627           argument in environments whose time_t is unsigned. [ruby-dev:22608]
44629 Sun Jan 18 02:33:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44631         * defines.h (_WIN32): undef _WIN32 on Cygwin before defining DOSISH.
44633 Sun Jan 18 00:23:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44635         * marshal.c (class2path): check anonymous class/module before
44636           checking referable, and allow singleton classes.
44638 Sat Jan 17 23:58:51 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44640         * error.c (NameError::Message): new class for lazy evaluation of
44641           message to ensure replaced before marshalling.  [ruby-dev:22604]
44643         * eval.c (rb_method_missing): use NameError::Message.
44645 Sat Jan 17 21:49:50 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44647         * lib/time.rb (test_rfc2822, test_rfc3339, test_encode_xmlschema):
44648           should not expect that all platforms handle negative time_t value.
44650 Fri Jan 16 23:53:09 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44652         * eval.c (proc_eq): compare also arguments and environment
44653           (including local variables).  [ruby-dev:22590]
44655 Fri Jan 16 14:33:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44657         * marshal.c (class2path): get class path and check referable.
44658           [ruby-dev:22588]
44660 Thu Jan 15 12:58:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44662         * io.c (argf_read): do not append EOF.  (ruby-bugs-ja:PR#585)
44664         * io.c (rb_io_fwrite): ad-hockery hack to get rid of HP-UX stdio
44665           weird behavior.  [ruby-dev:22424]
44667 Wed Jan 14 21:13:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44669         * test/inlinetest.rb (InlineTest::eval_part): eval under the top
44670           level environment.
44672 Wed Jan 14 17:54:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44674         * test/inlinetest.rb (InlineTest::loadtest): require instead of
44675           load, to get rid of multiple loading.
44677 Wed Jan 14 13:30:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44679         * ext/iconv/extconf.rb: wrapper iconv.rb is dependent on platform.
44681 Wed Jan 14 09:32:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44683         * MANIFEST: add test/net/test_httpheader.rb. (commit miss?)
44685 Wed Jan 14 00:58:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44687         * eval.c (Init_Proc): move SystemStackError from under
44688           StandardError to Exception.  [ruby-talk:89782]
44690 Tue Jan 13 18:03:02 2004  Ian Macdonald  <ian@caliban.org>
44692         * file.c (rb_stat_wr, rb_stat_ww): New functions
44693           implementing new methods (File::Stat#world_readable?,
44694           File::Stat#world_writable?).
44696 Tue Jan 13 16:53:25 2004  why the lucky stiff  <why@ruby-lang.org>
44698         * ext/syck/rubyext.c: omission of Date library code caused
44699           test suite failure. [ruby-core:2251]
44701 Tue Jan 13 16:50:03 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44703         * ext/tk/lib/tk.rb: use $0 as the default application class name.
44705 Tue Jan 13 14:48:00 2004  Ian Macdonald  <ian@caliban.org>
44707         * lib/pathname.rb: New methods (Pathname#world_readable?,
44708           Pathname#world_writable?).
44710 Tue Jan 13 14:48:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44712         * parse.y (primary): allow no "when" case. [ruby-dev:22578]
44714         * ruby.h (rb_class_of): reduce branch. [ruby-dev:22577]
44716         * ruby.h (rb_type): ditto.
44718 Tue Jan 13 14:26:59 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
44720         * lib/test/unit/ui/testrunnerutilities.rb (TestRunnerUtilities):
44721           moved run method which allows output level.  [ruby-dev:22554]
44723 Tue Jan 13 13:04:24 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44725         * test/test_*.rb: Pathname#parent -> Pathname#dirname.
44727 Tue Jan 13 11:38:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44729         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_spec_type_{int,float}):
44730           fix syntax error.
44732 Tue Jan 13 07:52:40 2004  why the lucky stiff  <why@ruby-lang.org>
44734         * ext/syck/bytecode.c: turn off default implicit typing.
44736         * ext/syck/implicit.c: detect base60 integers.
44738         * ext/syck/rubyext.c: handle base60, as well as hex and octal
44739           with commas.  implicit typing of ruby symbols.
44741         * test/yaml/test_yaml.rb: add test.
44743 Tue Jan 13 04:29:52 2004  Dave Thomas  <dave@pragprog.com>
44745         * lib/rdoc/ri/ri_driver.rb (RiDriver::report_method_stuff):
44746           Show fully-qualified class names in class list.
44748 Tue Jan 13 01:24:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44750         * file.c (test_wr): Rdoc fix.  [ruby-core:02225]
44752 Tue Jan 13 01:04:37 2004  Dave Thomas  <dave@pragprog.com>
44754         * lib/rdoc/ri/ri_paths.rb (RI::Paths): First attempt at
44755           incorporating DESTDIR in the rdoc installation.
44757 Mon Jan 12 23:26:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44759         * parse.y (primary): fix position after FCALL.  [ruby-dev:22574]
44761 Mon Jan 12 18:00:11 2004  Ian Macdonald  <ian@caliban.org>
44763         * file.c (test_wr, test_ww): New functions implementing new
44764           methods (File::world_readable?, File::world_writable?).
44766         * file.c (S_IRUGO, S_IGUGO): New macros.
44768 Mon Jan 12 12:07:22 2004  Dave Thomas  <dave@pragprog.com>
44770         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods):
44771           Someone changed the "// in eval.c" comments to "/*...*/" style,
44772           so the parsing of the source file name broke.
44774         * object.c: Remove spurious space in TrueClass documentation.
44776         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body): Fix
44777           bad regexp: if the code before a documented method contained
44778           a comment that wasn't terminated by whitespace, that comment
44779           and all intervening code was included in the following
44780           method's documentation.
44782         * lib/rdoc/ri/ri_formatter.rb (RI::HtmlFormatter::break_to_newline):
44783           HTML formats need explicit line breaks.
44785 Mon Jan 12 02:24:07 2004  Dave Thomas  <dave@pragprog.com>
44787         * lib/rdoc/ri/ri_formatter.rb (RI::HtmlFormatter): Add HTML
44788           generation support to ri (Elliot Hughes)
44790 Sun Jan 11 23:54:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44792         * env.h (ruby_frame, ruby_scope, ruby_in_eval, ruby_class,
44793           ruby_dyna_vars): export.  [ruby-dev:22566]
44795 Sun Jan 11 02:35:53 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44797         * ext/socket/socket.c (make_hostent): a bug in brace position.
44799         * configure.in: install rdoc by default. if you do not want to
44800           install rdoc, specify --disable-install-doc.
44802 Sun Jan 11 02:07:47 2004  Dave Thomas  <dave@pragprog.com>
44804         * lib/rdoc/ri/ri_options.rb (RI::Options::OptionList::OptionList):
44805           Also accept command line options via the 'RI' environment variable.
44807 Sat Jan 10 21:27:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44809         * eval.c (eval): need to add message delimiter. [ruby-dev:22561]
44811 Sat Jan 10 01:54:50 2004  Eric Sunshine  <sunshine@sunshineco.com>
44813         * defines.h (__NeXT__): Ensure that all standard S_IRUSR, S_IWGRP,
44814           S_IRWXO, etc. macros are defined since future code might require
44815           them (even though present code only requires a subset).
44817         * defines.h (__NeXT__): Bug fix: WORDS_BIGENDIAN was not being set
44818           correctly on Rhapsody when -arch compiler flag was used (via
44819           configure's --enable-fat-binary option).
44821 Sat Jan 10 23:01:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44823         * configure.in (LIBPATHFLAG, RPATHFLAG): enclose paths with single
44824           quotes.  [ruby-dev:22564]
44826         * lib/mkmf.rb (libpathflag): do not enclose with quotes always.
44828         * {bcc32,win32,wince}/Makefile.sub (LIBPATHFLAG): quoted.
44830 Sat Jan 10 22:46:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44832         * dir.c (dir_inspect): new method, Dir#inspect.  [ruby-dev:22562]
44834 Fri Jan  9 17:36:51 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44836         * ext/socket/socket.c (make_hostent): getaddrinfo(3) on BSD do not
44837           fill ai_canonname if serv is not supplied.  (ruby-bugs PR#1243)
44839 Fri Jan  9 13:14:59 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44841         * lib/test/unit/collector/dir.rb: do not ignore exceptions(LoadError
44842           and SystemExitError) while loading a testcase.  smell of bug.
44844         * test/testunit/collector/test_dir.rb: add new test of the LoadError.
44846         * test/drb/{test_drbssl.rb,test_drbunix.rb}: do not define testcase if
44847           openssl is not installed.
44849         * test/testunit/collector/test_dir.rb: assert_raises -> assert_raise.
44851 Fri Jan  9 11:52:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44853         * rubysig.h: <errno.h> is needed to use errno which may be a macro.
44855 Fri Jan  9 11:20:24 2004  Siena.  <siena@faculty.chiba-u.jp>
44857         * ext/extmk.rb (extmake): should not reduce necessary libraries.
44858           [ruby-dev:22440]
44860         * lib/mkmf.rb (merge_libs): merge libraries according to
44861           dependency.
44863 Fri Jan  9 10:05:23 2004  Siena.  <siena@faculty.chiba-u.jp>
44865         * lib/mkmf.rb (libpathflag): use single quotes.  [ruby-dev:22440]
44867 Thu Jan  8 23:49:21 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44869         * configure.in (RDOCTARGET): new macro.  if you want to install
44870           rdoc documentation, you need to run configure with
44871           --enable-install-doc.
44873 Thu Jan  8 21:17:43 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44875         * ext/openssl/ossl_pkey.c (ossl_pkey_to_der): removed; it returns
44876           public key only.
44878         * ext/openssl/ossl_pkey_dh.c (ossl_dh_to_der): new function for
44879           OpenSSL::PKey::DH#to_der.
44881         * ext/openssl/ossl_pkey_dsa.c (ossl_dsa_to_der): new function for
44882           OpenSSL::PKey::DSA#to_der.
44884         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_to_der): new function for
44885           OpenSSL::PKey::RSA#to_der.
44887 Thu Jan  8 18:25:29 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44889         * dir.c (glob_helper): should not recurse in exceptional status.
44891 Thu Jan  8 16:51:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44893         * test/wsdl/datetime/test_datetime.rb: fixed a stupid testcase which
44894           dumps "E" at month-end.
44896 Thu Jan  8 11:20:01 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44898         * eval.c, object.c, process.c, re.c: don't use C++ style comments.
44900 Thu Jan  8 08:46:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44902         * ext/syck/rubyext.c (yaml_org_handler): lazy-load Date for
44903           static-ext.
44905 Thu Jan  8 07:06:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44907         * ext/extmk.rb: preserve order in Setup.  [ruby-dev:22503]
44909         * ext/extmk.rb: move dependent libraries just after depended
44910           libraries.
44912         * ext/digest/*/extconf.rb: depend on digest.
44914 Thu Jan  8 04:36:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44916         * lib/webrick/cgi.rb (WEBrick::CGI#initialize): should create
44917           @config[:Logger] if it was not given.
44919 Wed Jan  7 22:28:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44921         * dir.c (glob_helper): fix memory leak.
44923 Wed Jan  7 21:15:07 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44925         * sample/webrick/*: new files.
44927         * MANIFEST: add sample/webrick/*
44929 Wed Jan  7 20:51:51 2004  Minero Aoki  <aamine@loveruby.net>
44931         * test/net/test_httpheader.rb: new file.
44933         * MANIFEST: add test/net/test_httpheader.rb.
44935 Wed Jan  7 20:42:06 2004  Minero Aoki  <aamine@loveruby.net>
44937         * lib/net/http.rb (HTTPHeader#content_length): should return nil
44938           unless header exists. [ruby-dev:22519]
44940 Wed Jan  7 14:26:05 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44942         * ext/tk/lib/tk.rb (TkPanedWindow): use epath for embedded windows.
44944         * ext/tk/lib/tktext.rb: use epath for embedded windows.
44946         * ext/tk/lib/tkcanvas.rb: use epath for window items.
44948 Wed Jan  7 14:24:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44950         * lib/soap/{attachment.rb,mimemessage.rb}: added from soap4r/1.5.2.
44952 Wed Jan  7 13:00:18 2004  Dave Thomas  <dave@pragprog.com>
44954         * lib/rdoc/ri/ri_driver.rb: Fix problem where ri was
44955           being too eager to find matches of ambiguous method
44956           names (such as "ri Thread.join" would return both
44957           Thread.join and ThreadsWait.join)
44959 Wed Jan  7 12:35:41 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44961         * lib/debug.rb: revert command parse regexps.  [ruby-list:39014] by
44962           Shirai,Kaoru.
44964 Wed Jan  7 08:21:04 2004  Dave Thomas  <dave@pragprog.com>
44966         * lib/rdoc/parsers/parserfactory.rb: Check for shebang
44967           line in files that would otherwise be treated as
44968           plain text.
44970 Tue Jan  6 22:13:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44972         * eval.c (rb_mod_modfunc): should break if m has no super class.
44973           [ruby-dev:22498]
44975 Tue Jan  6 21:51:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44977         * io.c (fptr_finalize): should save errno just after failure.
44978           [ruby-dev:22492]
44980 Tue Jan  6 20:51:10 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44982         * lib/logger.rb(Logger#msg2str): no special treatment for the object
44983           which responds to :to_str.
44985         * lib/logger.rb(LogDevice#initialize): remove type checking if the
44986           given object is a String.  Kernel.open handles it correctly.
44988         * test/logger/test_logger.rb: follow above change (ArgumentError ->
44989           TypeError.)
44991 Tue Jan  6 14:53:14 2004  Dave Thomas  <dave@pragprog.com>
44993         * bin/ri: split out the display side, making it pluggable. Added
44994           new ri_driver and ri_display files in lib/rdoc/ri.
44996 Tue Jan  6 11:29:43 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44998         * test/inlinetest.rb, test/{test_generator.rb,test_ipaddr.rb,
44999           test_pathname.rb,test_pp.rb,test_prettyprint.rb,test_set.rb,
45000           test_time.rb,test_tsort.rb: added.
45002 Tue Jan  6 09:38:27 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45004         * import soap4r/1.5.2;
45006         * lib/soap/{attachment.rb,baseData.rb,encodingstyle/soapHandler.rb}:
45007           introduce SOAPExternalReference class as a referenct to SOAPEnvelope
45008           external content.
45010         * lib/soap/{attachment.rb,mimemessage.rb}: great SwA (SOAP messages
45011           with Attachments) support code by Jamie Herre.
45013         * lib/soap/{element.rb,marshal.rb,parser.rb,processor.rb,
45014           streamHandler.rb,wsdlDriver.rb}: SwA support.
45016         * lib/soap/rpc/{cgistub.rb,driver.rb,element.rb,proxy.rb,router.rb,
45017           soaplet.rb}: SwA support and refactoring.
45019         * lib/soap/generator.rb, lib/soap/mapping/mapping.rb: follow
45020           SOAPReference#initialize signature change.
45022         * lib/soap/mapping/factory.rb: deleted unused methods.
45024         * lib/soap/mapping/rubytypeFactory.rb: do no ignore case while xsi:type
45025           string <-> Ruby class name matching.
45027         * lib/xsd/datatypes.rb: check the smallest positive non-zero
45028           single-precision float exactly instead of packing with "f".
45029           [ruby-talk:88822]
45031         * test/soap/test_basetype.rb, test/xsd/test_xsd.rb: use 1.402e-45, not
45032           1.4e-45.  1.4e-45 is smaller than 2 ** -149...
45034         * test/soap/test_basetype.rb, test/soap/marshal/test_marshal.rb,
45035           test/xsd/test_xsd.rb: use "(-1.0 / (1.0 / 0.0))" instead of "-0.0".
45037         * test/soap/test_streamhandler.rb: revert to the previous test that
45038           warns "basic_auth unsupported under net/http".
45040 Tue Jan  6 06:37:53 2004  Dave Thomas  <dave@pragprog.com>
45042         * bin/rdoc: Add --ri-system switch
45044         * lib/.document: Update with list of files that seem to have
45045           documentation
45047         * lib/test/unit.rb: Reorder comment to make it RDoc friendly.
45049         * Makefile.in: add install-nodoc target, and make it
45050           generate RDoc on default install.
45052         * lib/rdoc/ri/ri_options.rb (RI::Options::parse): Add
45053           --doc-dir option to ri.
45055 Tue Jan  6 00:04:40 2004  Dave Thomas  <dave@pragprog.com>
45057         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_or_yield_parameters):
45058           fix parsing if there are braces in a method parameter list
45060 Tue Jan  6 01:01:04 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
45062         * win32/dir.h, win32/win32.c: fix patch miss.
45064         * win32/Makefile.sub: fix file dependency.
45066 Mon Jan  5 20:32:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
45068         * lib/logger.rb: enhanced documentation.
45070 Mon Jan  5 18:58:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
45072         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
45073           [ruby-dev:22486]
45075         * pack.c (pack_unpack): unpack requires big endian offet (OFF16B
45076           and OFF32B).  The patch is from Minero Aoki in [ruby-dev:22489]
45078         * pack.c (OFF16B): add big-endian offset again.
45080 Mon Jan  5 03:00:53 2004  Minero Aoki  <aamine@loveruby.net>
45082         * test/ruby/test_pack.rb: new test test_unpack_N.
45084 Mon Jan  5 01:47:53 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
45086         * lib/mkmf.rb (create_makefile): remove duplicated object files
45087           from $objs on DOSISH platforms.
45089 Sat Jan  3 02:44:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
45091         * rubysig.h (TRAP_END): preserve errno before switching context.
45092           [ruby-core:02137]
45094 Sat Jan  3 01:18:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
45096         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
45097           [ruby-dev:22476]
45099 Fri Jan  2 14:54:11 2004  Dave Thomas  <dave@pragprog.com>
45101         * bin/ri: Add new --classes option, and arrange for
45102           help messages to be paged too.
45104         * bin/rdoc: Add statistics.
45106         * process.c: (MG) Added Process documentation
45108         * lib/rdoc/ri/ri_formatter.rb (RI::AttributeFormatter::wrap):
45109           Fix problem with labels not displaying in RI labeled
45110           lists using BS and ANSI modes.
45112 Fri Jan  2 01:50:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
45114         * io.c (argf_eof): ARGF.eof? should not have any side effect.
45115           [ruby-dev:22469]
45117 Thu Jan  1 09:03:20 2004  Dave Thomas  <dave@pragprog.com>
45119         * bin/ri (report_class_stuff): Fix problem with ambiguous nested
45120           classes not matching.
45122 Wed Dec 31 17:25:17 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45124         * io.c (argf_each_byte): should return self.  [ruby-dev:22465]
45126 Wed Dec 31 15:05:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
45128         * lib/pathname.rb: Corrected small coding error.
45130 Wed Dec 31 15:00:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
45132         * lib/pathname.rb: Completed documentation.
45134 Wed Dec 31 11:20:34 2003  Dave Thomas  <dave@pragprog.com>
45136         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods): Make
45137           file referenced in "// in sss.c" relative to current file.
45139 Wed Dec 31 11:17:37 2003  Dave Thomas  <dave@pragprog.com>
45141         * lib/rdoc/generators/html_generator.rb: Fix problem when
45142           a public method was aliased, but the alias is then
45143           made private, and hence doesn't appear in RDoc output.
45145 Wed Dec 31 01:33:05 2003  Dave Thomas  <dave@pragprog.com>
45147         * array.c, error.c, eval.c, io.c, prec.c, range.c, re.c,
45148           string.c, time.c: Add RDoc for Kernel functions, and tidy.
45150 Tue Dec 30 19:39:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45152         * io.c (rb_f_readline): should raise EOFError at the end of
45153           files.  [ruby-dev:22458]
45155         * io.c (argf_read): should concatenate input files when length
45156           argument is nil. [ruby-dev:22450]
45158         * io.c (argf_read): should update supplied string buffer (2nd
45159           argument) even when IO#read is called multiple times.
45161         * io.c: should initialize lineno by zero. [ruby-dev:22460]
45163 Tue Dec 30 12:30:30 2003  Dave Thomas  <dave@pragprog.com>
45165         * lib/rdoc/code_objects.rb (RDoc::Context::find_symbol): If a
45166           class and a method have the same name, finding Xxx.abc was trying
45167           to find 'abc' in method 'Xxx', not class 'Xxx'.
45169 Tue Dec 30 08:32:32 2003  Dave Thomas  <dave@pragprog.com>
45171         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method):
45172           Handle undoing nsting of yield parameters correctly for:
45174             def each_entry(&b) Dir.foreach(@path) {|f| yield P.new(f) } end
45176 Tue Dec 30 07:30:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
45178         * lib/pathname.rb: Added documentation.
45180 Mon Dec 29 20:08:17 2003  Minero Aoki  <aamine@loveruby.net>
45182         * lib/net/http.rb (GenericRequest#initialize): check if path
45183           begins with '/'.
45185         * lib/net/http.rb: def m( arg ) -> def m(arg)
45187 Mon Dec 29 12:51:02 2003  Dave Thomas  <dave@pragprog.com>
45189         * eval.c: Add RDoc for Kernel global functions.
45191 Mon Dec 29 11:00:16 2003  Dave Thomas  <dave@pragprog.com>
45193         * array.c: Tidy up RDoc loose ends.
45195 Mon Dec 29 05:05:51 2003  Dave Thomas  <dave@pragprog.com>
45197         * struct.c, random: Add RDoc comments
45199 Mon Dec 29 02:25:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
45201         * lib/optparse.rb: Improved documentation.
45203 Mon Dec 29 02:20:54 2003  Dave Thomas  <dave@pragprog.com>
45205         * eval.c: Add RDoc for class Proc, Method, UnboundMethod
45207 Mon Dec 29 02:20:26 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45209         * instruby.rb: fix install directory if destdir and compile_dir are
45210           not in the same drive.
45212         * ext/extmk.rb: ditto. [ruby-list:39009]
45214         * win32/Makefile.sub, win32/README.win32, win32/configure.bat,
45215           win32/setup.mak: new configure scheme. use ``configure --prefix=dir''
45216           instead of ``nmake DESTDIR=dir install''.
45218 Mon Dec 29 00:41:44 2003  Dave Thomas  <dave@pragprog.com>
45220         * math.c: Add RDoc comments
45222 Sun Dec 28 20:19:11 2003  Tanaka Akira  <akr@m17n.org>
45224         * ext/stringio/stringio.c (strio_sysread): StringIO.new.sysread didn't
45225           raise EOFError.
45227         * ext/zlib/zlib.c (gzreader_gets): don't increment lineno when
45228           gzfile_read_all returns "".
45230 Sun Dec 28 15:25:08 2003  Dave Thomas  <dave@pragprog.com>
45232         * class.c,object.c,parse.y,sprintf.c,variable.c: Document classes
45233           Object, Module, etc...
45235 Sun Dec 28 11:55:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45237         * test/csv/test_csv.rb: generate bom.csv and mac.csv files on the fly.
45238           [ruby-talk:88852]
45240         * test/csv/{bom.csv,mac.csv}: removed.
45242 Sun Dec 28 08:56:51 2003  Dave Thomas  <dave@pragprog.com>
45244         * eval.c: Thead[Group] RDoc (thanks to MG)
45246 Sun Dec 28 03:50:05 2003  Dave Thomas  <dave@pragprog.com>
45248         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_override_comment):
45249           Escape method names used in regexp
45251 Sun Dec 28 01:46:02 2003  Dave Thomas  <dave@wireless_3.local.thomases.com>
45253         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::display_flow_item):
45254           Add support for rules in 'ri' output.
45256 Sun Dec 28 01:35:35 2003  Dave Thomas  <dave@pragprog.com>
45258         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body):
45259           Sometimes the Ruby source aliases two otherwise
45260           unrelated methods (for example Kernel#object_id and
45261           Kernel#hash are both the same C function). Provide a
45262           facility to allow the methods to be documented
45263           separately.
45265 Sun Dec 28 01:05:31 2003  Dave Thomas  <dave@pragprog.com>
45267         * marshal.c, signal.c: RDoc collemts added by Elliott Hughes
45269 Sun Dec 28 00:46:25 2003  Dave Thomas  <dave@pragprog.com>
45271         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_class_comment):
45272           Some Ruby source uses lower-case class names for the
45273           Init_Xxx C function name.
45275 Sat Dec 27 23:41:46 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45277         * configure.in: fix "test: too many arguments" error.
45279 Sat Dec 27 15:32:40 2003  Dave Thomas  <dave@wireless_3.local.thomases.com>
45281         * time.c: Add RDoc comments for Time class.
45283 Sat Dec 27 15:07:26 2003  Dave Thomas  <dave@pragprog.com>
45285         * object.c: Add RDoc comments for Symbol class.
45287 Sat Dec 27 14:39:53 2003  Dave Thomas  <dave@pragprog.com>
45289         * numeric.c (Init_Numeric): Add RDoc comments.
45291 Sat Dec 27 00:44:00 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45293         * io.c (next_argv): warn always for stdin on inplace edit mode.
45295         * io.c (read_all): need to check string value.
45297         * io.c (argf_read): allow ARGF.read(nil).  [ruby-dev:22433]
45299 Fri Dec 26 23:02:09 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45301         * io.c (rb_f_backquote): need not to check nil result.
45302           [ruby-core:02078]
45304         * io.c (rb_io_getline): should return nil when read_all gives
45305           empty string, even when nil rs is specified. [ruby-core:02077]
45307 Fri Dec 26 18:33:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45309         * configure.in: check if getcontext and setcontext are available.
45311         * eval.c: use presence of getcontext/setcontext.
45313 Fri Dec 26 16:40:53 2003  Tanaka Akira  <akr@m17n.org>
45315         * lib/pathname.rb (PathnameTest#test_plus): add 2 assertions.
45317 Fri Dec 26 14:05:13 2003  Minero Aoki  <aamine@loveruby.net>
45319         * test/ruby/test_pack.rb: new test test_pack_N.
45321 Fri Dec 26 12:53:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45323         * pack.c (pack_pack): add sign check for 'i', and 'l'.
45324           [ruby-dev:22427]
45326         * bignum.c (rb_quad_pack): add range check for 'quad int'.
45328 Fri Dec 26 10:58:58 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45330         * MANIFEST: add vms/config.h and remove vms/config.h_in.
45332 Fri Dec 26 10:42:00 2003  AKIYOSHI, Masamichi  <masamichi.akiyoshi@hp.com>
45334         * io.c: [VMS] "rfm=stmlf" is specified for open() and fopen().
45336 Thu Dec 25 22:29:53 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45338         * string.c (rb_str_update): don't return any value.
45340 Thu Dec 25 15:30:17 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45342         * string.c (rb_str_update): call rb_str_modify().
45344 Thu Dec 25 05:08:09 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45346         * eval.c (search_required): search actual file name once when no
45347           extension specified.
45349 Thu Dec 25 04:00:44 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45351         * stable version 1.8.1 released.
45353 Thu Dec 25 00:17:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45355         * configure.in: check for nanosleep, -lrt if required.
45356           [ruby-core:02059]
45358         * eval.c (thread_timer): use select(2) if nanosleep(2) is not
45359           available.
45361         * eval.c: check __stub_getcontext for glibc on some platforms.
45362           [ruby-list:38984]
45364 Wed Dec 24 23:48:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45366         * test/soap/test_basetype.rb, test/soap/marshal/test_marshal.rb
45367           test/xsd/test_xsd.rb: use "(-1.0 / (1.0 / 0.0))" instead of "-0.0"
45368           to express -0.0.  [ruby-talk:88786]
45370 Wed Dec 24 23:29:30 2003  Tanaka Akira  <akr@m17n.org>
45372         * lib/tsort.rb (test_orphaned_break): removed.
45374 Wed Dec 24 20:53:06 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45376         * ext/tk/sample/tkmulticolumnlist.rb: new sample
45378         * ext/tk/sample/tkmultilistframe.rb: bug fix
45380 Wed Dec 24 20:37:37 2003  Eric Sunshine  <sunshine@sunshineco.com>
45382         * configure.in (LDSHARED): Fixed typographical error in assignment of
45383           LDSHARED for Rhapsody which caused linking of extension modules to
45384           fail.
45386 Wed Dec 24 17:51:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45388         * file.c (rb_thread_flock): enable thread support again.
45390 Wed Dec 24 16:46:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45392         * eval.c (catch_timer): do not call rb_thread_schedule() inside to
45393           avoid pthread_mutex_lock() deadlock.  interrupts to system calls
45394           are detected by TRAP_END via EINTR error.
45396         * eval.c (thread_timer): do not post signal unless it is
45397           absolutely necessary.
45399         * rubysig.h (TRAP_END): add CHECK_INTS to switch thread.
45401         * regex.c (re_compile_pattern): check if nextp is smaller than
45402           pend.  [ruby-dev:22372]
45404         * eval.c (umethod_bind): remove method overridden check.
45405           [ruby-dev:22366]
45407 Wed Dec 24 16:13:05 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45409         * ext/openssl/ossl_ssl.c (ossl_ssl_read): should check for error
45410           status by SSL_get_error().
45412         * ext/openssl/ossl_ssl.c (ossl_ssl_write): ditto.
45414 Wed Dec 24 14:23:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45416         * ext/stringio/stringio.c (strio_read): clear the buffer argument
45417           when returning nil.  [ruby-dev:22363]
45419         * test/ruby/ut_eof.rb (TestEOF::test_eof_0, TestEOF::test_eof_1):
45420           add buffer argument tests.
45422 Wed Dec 24 14:07:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45424         * lib/test/unit/assertions.rb: Modules are allowed to rescue.
45426         * lib/test/unit/autorunner.rb: show output_level in order.
45428         * lib/test/unit/collector/dir.rb: get rid of successive same
45429           directories in load path.
45431         * test/testunit/test_assertions.rb (test_assert_nothing_raised,
45432           test_assert_raise): test for modules.
45434 Wed Dec 24 13:43:34 2003  Shugo Maeda  <shugo@ruby-lang.org>
45436         * lib/net/imap.rb (authenticate): remove "\n" from base64 encoded
45437           strings.
45439 Wed Dec 24 11:26:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45441         * test/fileutils/test_fileutils.rb: should not create any
45442           files or directories in current directory.  [ruby-talk:88724]
45444 Wed Dec 24 10:29:53 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45446         * ext/stringio/stringio.c (strio_read): never return nil at
45447           unlimited read.  [ruby-dev:22334]
45449         * ext/stringio/stringio.c (strio_read): support second
45450           argument.  [ruby-dev:22350]
45452 Wed Dec 24 09:38:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45454         * parse.y (arg): should return 0 after error.  [ruby-dev:22360]
45456 Wed Dec 24 00:56:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45458         * io.c (read_all): do not return nil at the end of file.
45459           [ruby-dev:22334]
45461         * io.c (argf_read): do not depend on nil at eof behavior of
45462           IO#read().
45464         * eval.c (rb_thread_join): dup exception before re-raising it.
45466         * io.c (rb_io_eof): call clearerr() to prevent side effect.  this
45467           patch is supplied by Masahiro Sakai <sakai@tom.sfc.keio.ac.jp>.
45468           [ruby-dev:22234]
45470         * pack.c (OFF16): get offset for big endian machines.
45472         * pack.c (pack_pack): use OFF16 instead of OFF16B.
45473           [ruby-dev:22344]
45475         * pack.c (pack_unpack): ditto.
45477 Tue Dec 23 22:47:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45479         * io.c (rb_io_check_readable): set FMODE_RBUF always, even if
45480           NEED_IO_SEEK_BETWEEN_RW is not defined. [ruby-dev:22340]
45482         * io.c (rb_io_check_writable): clear FMODE_RBUF before writing
45483           something.
45485 Tue Dec 23 22:25:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
45487         * lib/optparse.rb: incomplete RDoc documentation added in place of
45488           existing RD comments.  Tabs converted to spaces.
45490 Tue Dec 23 19:44:47 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45492         * test/soap/test_streamhandler.rb (test_basic_auth): removed.
45493           soap4r + basic_auth is not officially supported in ruby/1.8.1 even
45494           though soap4r + basic_auth + http-access2 should run fine.
45496 Tue Dec 23 19:42:59 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45498         * io.c (rb_io_ungetc): raise an exception at unread stream to
45499           avoid unspecified behavior.  [ruby-dev:22330]
45501         * test/ruby/test_system.rb (test_syntax): glob relatively from
45502           __FILE__.
45504 Tue Dec 23 18:09:40 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45506         * pack.c (pack_pack): remove unnecessary negative value check.
45507           [ruby-dev:22329]
45509 Tue Dec 23 17:26:55 2003  KONISHI Hiromasa  <konishih@fd6.so-net.ne.jp>
45511         * bcc32/Makefile.sub (config.h): bcc has finite(). [ruby-list:38940]
45513 Tue Dec 23 16:08:16 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45515         * lib/rexml/encodings/US-ASCII.rb: typo.  [ruby-talk:88650]
45517         * test/ruby/test_system.rb: num of asserts depended on running dir.
45519         * test/xsd/test_noencoding.rb: rexml + without iconv/uconv cannot
45520           handle euc-jp.  install iconv, uconv or xmlscan.
45522 Tue Dec 23 14:13:51 2003  akira yamada  <akira@ruby-lang.org>
45524         * lib/uri/generic.rb (URI::Generic::check_userinfo,
45525           URI::Generic::check_user, URI::Generic::check_password): tests
45526           conflicts/depends with other components closely.
45528         * test/uri/test_generic.rb (TestGeneric::test_set_component):
45529           added tets.
45531 Tue Dec 23 11:08:34 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45533         * test/xsd/test_noencoding.rb: rescue Errno::EINVAL and do not test.
45534           "euc-jp" might not be in supported encoding name list.
45535           [ruby-talk:88650]
45537 Tue Dec 23 06:10:31 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45539         * lib/webrick/cgi.rb (CGI): add support for mod_ruby.
45541         * lib/webrick/cgi.rb (CGI::Socket): add check for existence of
45542           OpenSSL module in all HTTPS related methods.
45544         * lib/webrick/cgi.rb (CGI::Socket#cipher): should create similar
45545           value to OpenSSL::SSLSocket#cipher.
45547         * lib/webrick/httpresponse.rb (HTTPResponse#setup_header): should
45548           set "connection: close" if @keep_alive is false.
45550         * lib/webrick/https.rb (HTTPrequest#meta_vars): add supprt for
45551           SSL_PROTOCOL, SSL_CIPHER_USEKEYSIZE and SSL_CIPHER_ALGKEYSIZE.
45553 Mon Dec 22 23:00:05 2003  akira yamada  <akira@ruby-lang.org>
45555         * lib/uri/generic.rb (URI::Generic::check_opaque): fixed typo.
45557 Mon Dec 22 21:59:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45559         * ext/iconv/iconv.c (map_charset): always ensure code is a String.
45561 Mon Dec 22 21:15:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45563         * class.c (rb_mod_init_copy): always copy singleton class.
45564           [ruby-dev:22325]
45566 Mon Dec 22 20:44:36 2003  akira yamada  <akira@ruby-lang.org>
45568         * lib/uri/generic.rb (URI::Generic#route_from): accepts urls which
45569           has no host-part.
45571         * test/uri/test_generic.rb (TestGeneric::test_route): added a test.
45573 Mon Dec 22 20:38:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45575         * lib/cgi.rb: reduce eval.
45577         * lib/cgi.rb (CGI::QueryExtension::read_multipart): alias path to
45578           local_path.  [ruby-list:38883]
45580 Mon Dec 22 20:09:31 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45582         * test/soap/test_property.rb: remove duplicated test method.
45584 Mon Dec 22 18:22:04 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45586         * bcc32/Makefile.sub, win32/Makefile.sub (config.h): remove
45587           HAVE_ISINF definition to follow previous commits of missing.h
45588           and win32/win32.h.
45590 Mon Dec 22 17:23:42 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45592         * configure.in (ac_cv_func_setitimer): moved from defines.h
45594         * defines.h, rubysig.h, signal.c: removed macro handling which
45595           should be done in configure.
45597         * configure.in (intrinsics.h): check if present.
45599         * ruby.h: include intrinsics.h if available.
45601         * bignum.c, marshal.c: include ieeefp.h if available.
45603         * missing.h (isinf): define as a macro if finite() and isnan()
45604           are available.  [ruby-core:02032]
45606 Mon Dec 22 17:07:31 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45608         * configure.in (mingw): set isnan, finite and isinf to yes.
45610 Mon Dec 22 13:40:19 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45612         * lib/soap/property.rb: passing block by reference.
45614 Mon Dec 22 00:32:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45616         * eval.c (rb_with_disable_interrupt): use ENABLE_INTS instead of
45617           ALLOW_INTS which may switch context.  [ruby-dev:22319]
45619         * ext/syck/emitter.c (syck_emitter_write): str bigger than
45620           e->bufsize causes buffer overflow.  [ruby-dev:22307]
45622 Sun Dec 21 17:29:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45624         * class.c (rb_check_inheritable): new function.  [ruby-dev:22316]
45626         * intern.h: add prototype.
45628         * eval.c (superclass): use rb_check_inheritable().
45630         * object.c (rb_class_initialize): check argument validity.
45632 Sun Dec 21 16:25:10 2003  Tanaka Akira  <akr@m17n.org>
45634         * lib/pathname.rb (Pathname#+): re-implemented to resolve ".." in
45635           beginning of the argument.
45636           (Pathname#join): concatenate from the last argument.
45637           (Pathname#parent): just use Pathname#+.
45639 Sun Dec 21 00:12:37 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45641         * ext/tk/lib/tk.rb: add new methods (TkScrollbar#assign, assign_list)
45643         * ext/tk/sample/tkmultilistframe.rb: use TkScrollbar#assign method
45645 Sat Dec 20 21:59:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45647         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): refine regexp.
45649         * lib/webrick/cgi.rb (CGI#start): NPH scripts return status line
45650           instead of Status: header field.
45652         * lib/webrick/cgi.rb (CGI::Socket): refine some coditions.
45654 Sat Dec 20 16:07:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45656         * lib/optparse.rb (OptionParser::Completion::complete): wrong
45657           Regexp for word boundary.  pointed out by Gavin Sinclair.
45659         * lib/optparse.rb (OptionParser::make_switch): [no-] prefix was
45660           missing.
45662 Sat Dec 20 11:40:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45664         * lib/yaml.rb (YAML::YAML): adjust Marshal version.
45666 Sat Dec 20 03:56:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45668         * eval.c (rb_with_disable_interrupt): prohibit thread context
45669           switch during proc execution.  [ruby-dev:21899]
45671 Sat Dec 20 02:41:02 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45673         * lib/webrick/cgi.rb: add file. (yet another CGI library)
45675         * MANIFEST: add lib/webrick/cgi.rb.
45677 Sat Dec 20 02:18:31 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45679         * misc/ruby-mode.el (ruby-calculate-indent): proper indentation
45680           inside of parentheses.  [ruby-dev:22308]
45682 Fri Dec 19 21:24:22 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45684         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): should not set
45685           HTTP_CONTENT_TYPE and HTTP_CONTENT_LENGTH.
45687         * lib/webrick/https.rb (HTTPRequest#parse): should check presence
45688           of cert() method to detect SSLSocket.
45690 Fri Dec 19 22:56:46 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45692         * lib/soap/property.rb (SOAP::Property#load): new method for loading
45693           property value into existing property tree.
45695         * test/soap/test_property.rb: add test.
45697 Fri Dec 19 19:21:49 2003  akira yamada  <akira@ruby-lang.org>
45699         * lib/runit/cui/testrunner.rb (RUNIT::CUI::TestRunner::run):
45700           should use Test::Unit::UI::{PROGRESS_ONLY,VERBOSE}.
45702 Fri Dec 19 17:36:49 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45704         * ext/tk/sample/tkmultilistbox.rb: bug fix
45706         * ext/tk/sample/tkmultilistframe.rb: new sample script
45708 Fri Dec 19 03:44:27 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45710         * lib/webrick/httputils.rb (parse_form_data): should return an
45711           empty Hash if the body is empty.
45713 Thu Dec 18 21:47:35 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45715         * lib/mkmf.rb (create_makefile): should remove deffile if it's
45716           made by miniruby. based on nobu's patch.
45718 Thu Dec 18 21:44:21 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45720         * eval.c (stack_extend): ignore inline optimization on VC7.
45722         * win32/Makefile.sub (OS, RT): can override.
45724         * win32/Makefile.sub (LDFLAGS): ditto. shouldn't use pdb:none
45725           option. based on Tietew's patch [ruby-dev:22289]
45727 Thu Dec 18 16:38:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45729         * dir.c (fnmatch): unlike find_dirsep(), rb_path_next() never
45730           return NULL.
45732 Thu Dec 18 15:27:59 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45734         * lib/ipaddr.rb (IPSocket::getaddress): merge usa's patch.
45735           [ruby-dev:21678]
45737 Wed Dec 17 15:15:30 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45739         * lib/cgi.rb (CGI::QueryExtension::Value::[]): should work like
45740           String#[] if more than one arguments are specified.
45742         * lib/delegate.rb: avoid using common instance name as "@obj".
45744         * lib/cgi.rb (CGI::QueryExtension::Value): Value is no longer
45745           subclass of String, but DelegateClass(String).
45747         * ext/curses/extconf.rb: restore function check for init_color.
45748           [ruby-list:38905]
45750         * Makefile.in: need to specify $(MAINLIBS) for the miniruby
45751           generation rule.
45753         * configure.in: better FreeBSD -lc_r support.
45755 Wed Dec 17 00:16:14 2003  Minero Aoki  <aamine@loveruby.net>
45757         * ext/strscan/strscan.c: new method
45758           StringScanner#beginning_of_line? (alias #bol?)
45760         * ext/strscan/strscan.c: new method StringScanner#concat and #<<.
45762         * ext/strscan/strscan.c: StringScanner#new(str) does not duplicate
45763           nor freeze STR (allow destructive modification).
45765         * test/strscan/test_stringscanner.rb: test new methods above.
45767         * test/strscan/test_stringscanner.rb: test destructive string
45768           modification.
45770 Tue Dec 16 21:20:47 2003  Tanaka Akira  <akr@m17n.org>
45772         * lib/pp.rb: don't use local variable `pp'.
45774         * lib/prettyprint.rb: ditto.
45776 Tue Dec 16 13:20:43 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45778         * ext/tk/lib/tk.rb: condition bug of if statement on
45779           {pack,grid}_propagate methods
45781 Tue Dec 16 03:17:29 2003  why the lucky stiff  <why@ruby-lang.org>
45783         * lib/yaml/rubytypes.rb: comments in strings. [ruby-talk:88012]
45785         * test/yaml/test_yaml.rb: add test.
45787 Tue Dec 16 01:14:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45789         * eval.c (catch_timer): check rb_thread_crtical in main native
45790           thread.
45792         * eval.c (thread_timer): just sends signals periodically, to
45793           prevent main native thread from receiving them in critical
45794           section.  [ruby-core:01959]
45796 Mon Dec 15 13:32:22 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45798         * dir.c (check_dirname): check string safety and remove extraneous
45799           trailing directory separators.  [ruby-dev:22279]
45801         * file.c: renamed and externalized rb_path_next,
45802           rb_path_skip_prefix, rb_path_last_separator, rb_path_end.
45804         * intern.h: prototypes for rb_path_next, rb_path_skip_prefix,
45805           rb_path_last_separator, rb_path_end.
45807 Mon Dec 15 09:27:46 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45809         * ext/openssl/ossl_pkcs12.c (ossl_pkcs12_initialize): first argument
45810           of rb_protect should take an argument of VALUE.
45812 Sun Dec 14 18:46:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45814         * ext/socket/socket.c (Init_socket): IPv6 is not supported although
45815           AF_INET6 is defined on MinGW.
45817         * lib/ipaddr.rb (AF_INET6): workaround in the environment which does
45818           not support IPv6.
45820 Sat Dec 13 18:55:16 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45822         * ext/iconv/charset_alias.rb: preserve original order.
45824         * ext/iconv/extconf.rb: remove wrapper file at clean.
45826 Sat Dec 13 18:09:42 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45828         * eval.c (thread_timer): use timer by sub-thread and nanosleep.
45829           [ruby-talk:87519]
45831         * gc.c (Init_stack): no stack adjustment for THREAD_SAFE.
45833 Sat Dec 13 17:17:59 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45835         * eval.c (proc_alloc): cache the created object at first time.
45836           [ruby-talk:61288], [ruby-dev:22240]
45838 Sat Dec 13 09:01:23 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45840         * configure.in: check ucontext.h.
45842         * eval.c: use getcontext/setcontext() instead of setjmp/longjmp()
45843           on ia64 or with native thread enabled.  [ruby-core:01932]
45845 Sat Dec 13 03:09:14 2003  why the lucky stiff  <why@ruby-lang.org>
45847         * lib/yaml/rubytypes.rb: anonymous struct fix. [ruby-core:01946]
45849         * test/yaml/test_yaml.rb: add test.
45851 Fri Dec 12 22:36:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45853         * lib/csv.rb: add Cell#to_str and Cell#to_s for /.../ =~ aCell,
45854           "#{aCell}" and so on.
45856         * test/csv/test_csv.rb: add tests.
45858 Fri Dec 12 19:33:06 2003  Minero Aoki  <aamine@loveruby.net>
45860         * lib/fileutils.rb (mkdir): remove trailing `/' from pathes.
45862         * lib/fileutils.rb (rmdir): ditto. [ruby-dev:22238]
45864         * lib/fileutils.rb (rmdir_r): ditto.
45866         * lib/fileutils.rb (fu_copy_dir): check if it is a directory after
45867           mkdir(2).
45869 Fri Dec 12 06:06:09 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45871         * eval.c (proc_invoke): fix class name in warning message for
45872           define_method.  [ruby-dev:22235]
45874 Thu Dec 11 21:24:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45876         * ext/openssl/ossl_pkcs12.[ch]: new files. add OpenSSL::PKCS12.
45878         * ext/openssl/ossl.[ch]: ditto.
45880         * ext/openssl/MANIFEST: add ossl_pkcs12.[ch].
45882 Thu Dec 11 20:54:28 2003  Minero Aoki  <aamine@loveruby.net>
45884         * lib/fileutils.rb (mkdir_p): remove trailing `/' befere mkdir(2).
45885           mkdir("nonexistdir/") does not work on NetBSD/Alpha 1.6.1.
45887         * lib/fileutils.rb (fu_list): call to_str for all arguments.
45889 Thu Dec 11 20:07:01 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45891         * lib/ftools.rb (makedirs): sync with fileutils.
45893 Thu Dec 11 19:53:03 2003  Minero Aoki  <aamine@loveruby.net>
45895         * lib/fileutils.rb (mkdir_p): catch all SystemCallErrors.
45896           (mkdir("C:\") causes EACCESS on Windows 2000/NTFS)
45898 Thu Dec 11 19:08:02 2003  Minero Aoki  <aamine@loveruby.net>
45900         * lib/fileutils.rb (mkdir_p): check if it is a directory after
45901           mkdir(2) instead of before mkdir(2), to avoid race condition.
45902           [ruby-talk:87730]
45903           Refer: mkinstalldirs sh script, GNU mkdir(1) (coreutils 5.0)
45905 Thu Dec 11 18:49:30 2003  Minero Aoki  <aamine@loveruby.net>
45907         * lib/fileutils.rb: def m( arg ) -> def m(arg).
45909 Thu Dec 11 11:39:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45911         * configure.in (ieeefp.h), numeric.c: needed for finite() on
45912           Solaris.  [ruby-core:01921]
45914         * file.c (rb_stat_inspect): adjust format specifier.
45916         * parse.c (arg_prepend): nodetype() is for debug use.
45918         * ruby.h (ISASCII, etc): cast to int to get rid of warning.
45920         * ruby.h (alloca.h): include even in GCC.  [ruby-core:01925]
45922         * ext/bigdecimal/bigdecimal.c (GetVpValue): adjust format
45923           specifier.
45925         * ext/bigdecimal/bigdecimal.c (BigDecimal_prec, BigDecimal_coerce,
45926           BigDecimal_divmod): use rb_assoc_new() to suppress memory usage.
45928         * ext/bigdecimal/bigdecimal.c (BigDecimal_split): ditto.
45930         * ext/dl/sym.c (rb_dlsym_guardcall): guard itself should be
45931           volatile.
45933         * ext/iconv/iconv.c (iconv_convert): ensure actual parameter with
45934           format specifier.
45936         * ext/pty/pty.c (MasterDevice, SlaveDevice, deviceNo): do not
45937           define unless used.
45939         * ext/pty/pty.c (getDevice): get rid of warning.
45941         * ext/socket/socket.c (port_str, sock_s_getaddrinfo,
45942           sock_s_getnameinfo): FIX2INT() now returns long.
45944         * ext/socket/socket.c (init_inetsock_internal): uninitialized
45945           variable.
45947         * ext/syck/rubyext.c (syck_parser_assign_io): add prototype.
45949         * ext/syck/rubyext.c (rb_syck_mktime, yaml_org_handler): use
45950           ISDIGIT() instead of isdigit() to avoid warnings and for
45951           platforms which don't support non-ascii charater.
45953 Wed Dec 10 19:28:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45955         * ext/stringio/stringio.c (strio_read): set EOF flag at short read.
45956           [ruby-dev:22223], [ruby-dev:22224]
45958 Wed Dec 10 18:07:25 2003  Minero Aoki  <aamine@loveruby.net>
45960         * lib/erb.rb: new method ERB#filename(=). [ruby-dev:22208]
45962 Wed Dec 10 17:54:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45964         * ext/stringio/stringio.c (strio_read): do not set EOF flag when
45965           requested length is zero.  [ruby-dev:22214]
45967 Wed Dec 10 17:17:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45969         * io.c (read_all): should return given string even if data read is
45970           empty.  [ruby-dev:22207]
45972 Wed Dec 10 17:16:06 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45974         * ext/stringio/stringio.c (strio_read): adjust behavior at reading
45975           beyond EOF to IO.  [ruby-dev:22205]
45977         * test/ruby/ut_eof.rb (TestEOF::Seek): test behaviors at reading
45978           beyond EOF.
45980         * test/ruby/test_file.rb, test/stringio/test_stringio.rb: include
45981           TestEOF::Seek test case.
45983 Wed Dec 10 15:01:19 2003  Shugo Maeda  <shugo@ruby-lang.org>
45985         * test/monitor/test_monitor.rb (test_cond): use Queue#deq
45986           instead of sleep.
45988 Wed Dec 10 14:45:39 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45990         * ext/pty/pty.c (HAVE_SYS_IOCTL_H): need to include <sys/ioctl.h>
45991           for TIOCSCTTY on *BSD.  based on gotoyuzo's patch.
45992           (ruby-bugs:PR#1211)
45994         * ext/pty/pty.c (establishShell): should close descriptors if fork
45995           failed.
45997 Wed Dec 10 12:53:05 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45999         * win32/win32.h: define execv() using do_aspawn().
46001         * process.c (proc_exec_v): remove #ifdef's which stopped needing.
46003 Tue Dec  9 23:32:23 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46005         * ext/tk/lib/tk.rb, ext/tk/lib/tkcanvas.rb, ext/tk/lib/tkdialog.rb,
46006           ext/tk/lib/tkentry.rb, ext/tk/lib/tkscrollbox.rb, ext/tk/lib/tktext.rb,
46007           ext/tk/sample/tkalignbox.rb, ext/tk/sample/tkcombobox.rb,
46008           ext/tk/sample/tkmultilistbox.rb, ext/tk/sample/tkoptdb.rb, ext/tk/sample/tktextframe.rb,
46009           ext/tk/sample/demos-en/dialog1.rb, ext/tk/sample/demos-en/dialog2.rb,
46010           ext/tk/sample/demos-jp/dialog1.rb, ext/tk/sample/demos-jp/dialog2.rb:
46011           overrided instance methods, which are private methods on the super
46012           class, are changed to 'private'
46014 Tue Dec  9 19:53:02 2003  akira yamada  <akira@ruby-lang.org>
46016         * lib/uri/generic.rb (URI::Generic#route_from0): make case insensitive
46017           for host-part.
46019         * test/uri/test_generic.rb (test_route): added tests for the above
46020           change.
46022 Tue Dec  9 14:10:48 2003  Tanaka Akira  <akr@m17n.org>
46024         * io.c (rb_io_check_readable): don't call io_seek if EOF flag is set,
46025           to avoid clearing EOF flag.
46026           (rb_io_check_writable): ditto.
46028 Tue Dec  9 02:53:55 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46030         * ext/tk/sample/tkalignbox.rb: new sample script
46032 Tue Dec  9 00:45:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46034         * lib/test/unit/assertions.rb: renamed #assert_raises to #assert_raise
46035           and made the former call the latter. [ruby-core:01890]
46037         * test/testunit/test_assertions.rb: ditto.
46039 Tue Dec  9 00:07:35 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46041         * lib/soap/rpc/standaloneServer.rb: add 'shutdown' and 'status'
46042           methods as delegates to WEBrick.
46044         * test/soap/calc/{test_calc.rb,test_calc2.rb},
46045           test/soap/helloworld/test_helloworld.rb,
46046           test/wsdl/datetime/test_datetime.rb, test/wsdl/raa/test_raa.rb:
46047           follow the change.
46049 Mon Dec  8 22:48:03 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46051         * lib/test/unit/autorunner.rb: remove dependency to a particular
46052           runner.  [ruby-core:01901], [ruby-list:38869]
46054         * lib/test/unit/ui/testrunnerutilities.rb: moved output level
46055           constants from Console.
46057         * lib/test/unit/ui/console/testrunner.rb: ditto.
46059         * lib/test/unit/ui/{fox,gtk,gtk2,tk}/testrunner.rb (initialize):
46060           accept output_level.
46062 Mon Dec  8 15:03:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46064         * ext/syck/syck.c (syck_io_str_read): get rid of buffer overflow.
46066 Mon Dec  8 13:02:11 2003  Minero Aoki  <aamine@loveruby.net>
46068         * lib/uri/common.rb: new method URI.regexp. [ruby-dev:22121]
46070         * test/uri/test_common.rb: add test for URI.regexp.
46072 Mon Dec  8 12:44:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46074         * pack.c: define swap16 and swap32 only if they are not
46075           defined. OpenBSD defines these macros. [ruby-dev:22181]
46077 Sun Dec  7 20:54:17 2003  Tanaka Akira  <akr@m17n.org>
46079         * ext/iconv/iconv.c (map_charset): make case sensitive.
46080           ext/iconv/charset_alias.rb (charset_alias): don't ignore
46081           config.charset's information.  sort aliases.
46083 Sat Dec  6 22:58:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46085         * ext/openssl/ossl_ssl.c (ossl_start_ssl): new function to wrap
46086           SSL_connect and SSL_accept; if SSL_connect (or SSL_accept) returned
46087           but not finished the handshake process, we should retry it.
46089         * ext/openssl/ossl_ssl.c (ossl_ssl_connect): call ossl_start_ssl.
46091         * ext/openssl/ossl_ssl.c (ossl_ssl_accept): ditto.
46093         * ext/openssl/ossl_ssl.c (ossl_ssl_read): allow signal traps.
46095 Sat Dec  6 21:45:10 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46097         * io.c (flush_before_seek): flush before seek on any platform.
46099         * configure.in: ditto.
46101 Sat Dec  6 17:23:00 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46103         * lib/soap/soap.rb(SOAP::Env.getenv): allow upcase environment variable
46104           as well as downcase one.
46106         * lib/soap/netHttpClient.rb(SOAP::NetHttpClient#proxy=): check URI.
46108 Fri Dec  5 23:22:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46110         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_raises,
46111           Test::Unit::Assertions::assert_nothing_raised): use the last
46112           argument as message unless class object.
46114         * test/testunit/test_assertions.rb (test_assert_raises): test for
46115           multiple exception list.  [ruby-core:01891]
46117         * test/testunit/test_assertions.rb (test_assert_nothing_raised): test
46118           for non-exception classes.
46120 Fri Dec  5 22:23:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46122         * lib/soap/netHttpClient.rb: proxy support did not work.  fixed.
46124         * lib/soap/property.rb: add class methods for loading property from
46125           stream/file/propertyfile.  propertyfile is a file which is located at
46126           somedir in $:.
46128         * lib/soap/soap.rb, lib/soap/wsdlDriver.rb, lib/soap/rpc/driver.rb,
46129           lib/wsdl/importer.rb: load property from propertyfile 'soap/property'
46130           e.g. /usr/local/lib/ruby/site_ruby/1.8/soap/property.
46132         * test/soap/test_property.rb, test/soap/test_streamhandler.rb: new file.
46134 Fri Dec  5 17:26:23 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46136         * eval.c (rb_exec_end_proc): maintain tmp_end_procs.
46137           [ruby-dev:22154]
46139 Fri Dec  5 13:36:59 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46141         * eval.c (rb_exec_end_proc): should not clear end_procs and
46142           ephemeral_end_procs before execution. [ruby-dev:22144]
46144         * eval.c (rb_obj_extend): call Module#extended hook after
46145           extended_object.  [ruby-list:38866]
46147         * object.c (Init_Object): Module#extended defined.
46149 Fri Dec  5 13:17:30 2003  Tanaka Akira  <akr@m17n.org>
46151         * test/ruby/test_pipe.rb: use IO.pipe instead of IO.popen.
46153 Fri Dec  5 11:54:45 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46155         * ext/stringio/stringio.c (strio_read): follow IO#read.
46157         * test/ruby/ut_eof.rb, test/ruby/test_file.rb, test/ruby/test_pipe.rb,
46158           test/stringio/test_stringio.rb: add EOF test.
46160 Fri Dec  5 02:49:35 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46162         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_raises):
46163           allow multiple exception list.  [ruby-core:01884]
46165         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_nothing_raised):
46166           check whether arguments are subclass of Exception.
46168 Thu Dec  4 23:54:00 2003  Rick Ohnemus  <rick.ohnemus@systemware.com>
46170         * dln.c (aix_loaderror): should not use member named 'errno' which
46171           might be a macro (e.g. on AIX).
46173 Thu Dec  4 23:32:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46175         * io.c (read_all): do not depend on lseek position.
46176           [ruby-dev:22026]
46178 Thu Dec  4 22:37:26 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46180         * eval.c (rb_eval): preserve $! value when retry happens in the
46181           rescue clause.  [ruby-talk:86697]
46183 Thu Dec  4 21:50:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46185         * lib/drb/drb.rb (DRb::DRbMessage::send_request, send_reply):
46186           should rescue errors and re-raise DRbConnError on write too.
46187           [ruby-dev:22132]
46189 Thu Dec  4 16:41:17 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46191         * parse.y (exc_list): allow expanding list.  [ruby-dev:22134]
46193 Thu Dec  4 14:09:24 2003  Minero Aoki  <aamine@loveruby.net>
46195         * test/fileutils/test_fileutils.rb (test_cp): test if the error is
46196           kind of SystemCallError.  It is needless details that which errno
46197           is set on each systems.
46199 Thu Dec  4 13:24:13 2003  Shugo Maeda  <shugo@ruby-lang.org>
46201         * lib/monitor.rb: use Object#__send__ instead of Object#send.
46203 Thu Dec  4 13:17:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46205         * lib/soap/streamHandler.rb: support latest released version of
46206           http-access2.
46208 Thu Dec  4 13:04:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46210         * lib/soap/soap.rb: add SOAP::Env module for environment repository
46211           such as HTTP_PROXY.
46213         * lib/soap/property.rb: property implementation.
46215         * lib/soap/streamHandler.rb, lib/soap/wsdlDriver.rb,
46216           lib/soap/rpc/driver.rb: use soap/property.rb.
46218         * lib/wsdl/importer.rb, lib/soap/wsdlDriver.rb, lib/soap/rpc/driver.rb:
46219           use SOAP::Env.
46221         * lib/soap/netHttpClient.rb: add basic_auth, ssl_config, and cookie
46222           management interface, but ignored for now.
46224         * lib/xsd/charset.rb: add XSD::Charset.encoding= interface to set
46225           wiredump charset explicitly.  it was fixed to 'utf-8' when iconv or
46226           uconv module was found.
46228 Thu Dec  4 10:43:58 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46230         * ext/dl/sym.c (rb_dlsym_guardcall): __declspec(noinline) is VC7
46231           feature.
46233 Thu Dec  4 10:27:12 2003  Minero Aoki  <aamine@loveruby.net>
46235         * lib/net/http.rb: update hyperlink to the Japanese document.
46237 Thu Dec  4 09:12:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46239         * ext/openssl/ossl_asn1.c (asn1time_to_time): should check that
46240           the underlying value of ASN1_TIME isn't NULL. [ruby-core:01881]
46242 Thu Dec  4 08:29:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46244         * lib/webrick/server.rb (GenericServer#start): should rescue
46245           Exception to avoid unexpected aborting. [ruby-core:01853]
46247         * lib/webrick/server.rb (GenericServer#start_thread): should check
46248           that peeraddr isn't nil before printing.
46250         * lib/webrick/httpresponse.rb (HTTPResponse#start_thread): should
46251           rescue Exception to avoid unexpected aborting of thread.
46253 Thu Dec  4 03:48:59 2003  Tanaka Akira  <akr@m17n.org>
46255         * lib/pathname.rb (Pathname#link, Pathname#symlink): obsoleted.
46256           (Pathname#make_link, Pathname#make_symlink): new method.
46258 Thu Dec  4 01:45:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46260         * io.c (argf_read): should not terminate on empty string; wait
46261           until real EOF.  [ruby-dev:21969]
46263         * io.c (argf_read): should adjust length to read, when length is
46264           specified and read spans command line argument files.
46266 Wed Dec  3 19:38:36 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
46268         * lib/drb/drb.rb: correct fcntl parameter. [ruby-dev:22120]
46270 Wed Dec  3 13:49:07 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46272         * ext/tk/lib/tk.rb: 'format'==>'Kernel.format' (avoid override trouble)
46274         * ext/tk/lib/tkafter.rb: ditto.
46276         * ext/tk/lib/tkcanvas.rb: ditto.
46278         * ext/tk/lib/tkdialog.rb: ditto.
46280         * ext/tk/lib/tktext.rb: ditto.
46282 Wed Dec  3 13:28:13 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46284         * Makefile.in (lex.c): try gperf first, and copy from the source
46285           directory if failed.  [ruby-dev:22123]
46287         * ext/extmk.rb (MTIMES): let makefiles depend to mkmf.rb.
46289         * lib/mkmf.rb (configuration): DLDFLAGS was duplicated.
46291 Tue Dec  2 23:18:12 2003  Minero Aoki  <aamine@loveruby.net>
46293         * lib/net/http.rb: wrote the warning about HTTP_PROXY environment
46294           variable.
46296 Tue Dec  2 21:31:42 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46298         * bin/testrb: new test runner.  [ruby-core:01845]
46300         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner.run,
46301           Test::Unit::AutoRunner#process_args): take test list to run and
46302           options.
46304         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::RUNNERS,
46305           Test::Unit::AutoRunner#run): should not exit inside a library,
46306           just return the result instead.
46308         * lib/test/unit.rb: ditto.
46310         * test/runner.rb: exit with the test result.
46312 Tue Dec  2 20:18:48 2003  Eric Sunshine  <sunshine@sunshineco.com>
46314         * configure.in (AC_PROG_YACC): AC_DEFINE(OLD_YACC) if Yacc is found
46315           instead of Bison or byacc.
46317         * parse.y: If OLD_YACC is defined, ensure that YYMAXDEPTH is at least
46318           10000 (Bison's default) since some old versions of Yacc define it as
46319           low as 150 by default, which is too low for Ruby to parse some files,
46320           such as date/format.rb.  Among other issues, the parse problem causes
46321           "make test" to fail.
46323 Tue Dec  2 20:03:20 2003  Minero Aoki  <aamine@loveruby.net>
46325         * test/fileutils/test_fileutils.rb: check if Pathnames are usable
46326           for arguments.
46328 Tue Dec  2 04:22:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46330         * lib/test/unit/assertions.rb: fixed #assert_no_match message.
46332         * test/testunit/test_assertions.rb: ditto.
46334 Tue Dec  2 00:43:00 2003  why the lucky stiff  <why@ruby-lang.org>
46336         * ext/syck/syck.c: string buffering bug.  decrementing by full
46337           max_size now. [ruby-core:01834]
46339 Mon Dec  1 21:33:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46341         * numeric.c (num_sadded): prohibit singleton method definition for
46342           Numerics.  fill yet another gap between Fixnum and Bignum.
46344 Mon Dec  1 17:33:47 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46346         * pack.c (htov16): converts endian using swap16. htov32(), hton16,
46347           hton32 as well. [ruby-talk:85377]
46349         * pack.c (swap16): swap 2 bytes no matter how big short is on the
46350           platform.  swap32() is also prepared.
46352         * numeric.c (rb_num2int): returns long to preserve information.
46353           rb_fix2int(), rb_num2uint(), rb_fix2uint() as well.
46354           [ruby-talk:85377]
46356         * numeric.c (rb_num2uint): should not check for value range if the
46357           source value is negative.
46359 Mon Dec  1 17:14:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46361         * sample/optparse/opttest.rb: added.
46363 Mon Dec  1 16:10:52 2003  Dave Thomas  <dave@pragprog.com>
46365         * lib/rdoc/rdoc.rb: (etc) initial merge into main tree.
46367 Mon Dec  1 14:17:49 2003  Minero Aoki  <aamine@loveruby.net>
46369         * lib/fileutils.rb (fu_each_src_dest0): call #to_str to allow
46370           Pathname for arguments. [ruby-core:01795]
46372         * test/fileutils/test_fileutils.rb: does much strict test on
46373           "same" files detecting.
46375 Mon Dec  1 09:28:14 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46377         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46378           (XCFLAGS): re-export $(XCFLAGS).
46380         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46381           (ARCH_FLAG): export $(ARCH_FLAG) (perhaps empty value).
46383 Mon Dec  1 01:03:27 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46385         * lib/mkmf.rb (TRY_LINK, link_command): added support for DLDFLAGS
46386           and ARCH_FLAG.  [ruby-dev:22085]
46388 Sun Nov 30 20:18:07 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46390         * configure.in: keep ARCH_FLAG separate. export ARCH_FLAG.
46391           [ruby-core:01819]
46393         * Makefile.in: add ARCH_FLAG to CFLAGS.
46395         * Makefile.in: add @CPPFLAGS@ to CPPFLAGS.
46397         * lib/mkmf.rb (link_command, cc_command): use ARCH_FLAG.
46399         * lib/mkmf.rb (configuration): add ARCH_FLAG to DLDFLAGS.
46401         * Makefile.in: add ARCH_FLAG to DLDFLAGS.
46403         * configure.in: should put getcwd in AC_CHECK_FUNCS, not
46404           AC_REPLACE_FUNCS.  [ruby-core:01826]
46406 Sun Nov 30 18:22:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46408         * configure.in: do not override CCDLDFLAGS, LDFLAGS, XLDFLAGS,
46409           DLDFLAGS and LDSHARED.
46411         * configure.in: XCFLAGS for compiling ruby itself.  ARCH_FLAG is
46412           reflected in CFLAGS.
46414         * lib/mkmf.rb: ditto.  do not import XCFLAGS from config.status.
46416 Sun Nov 30 17:37:36 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46418         * ext/tk/lib/tk.rb: bug fix [ruby-talk:86746]
46420 Sun Nov 30 13:02:00 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46422         * lib/soap/encodingstyle/soapHandler.rb: refactoring - Simplifying
46423           Conditional Expressions.
46425         * lib/wsdl/soap/definitions.rb: refactoring - Move Method.
46427         * test/xsd/{test_noencoding.rb,noencoding.xml}: new files.  test for
46428           encoding unspecified XML file parsing.
46430         * test/wsdl/{test_fault.rb,map,datetime}: new files.  test of
46431           SOAPFault, dateTime and Apache's Map.
46433 Sun Nov 30 09:35:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46435         * string.c (rb_str_update): get rid of SEGV at just allocated String.
46436           [ruby-core:01812]
46438 Fri Nov 28 23:19:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46440         * gc.c (gc_mark): explicitly check mark recursion levels, instead
46441           of unreliable stack length.
46443 Fri Nov 28 22:49:56 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
46445         * lib/rinda/rinda.rb: fix TupleSpaceProxy#read, read_all.
46447 Fri Nov 28 21:44:40 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46449         * test/fileutils/test_fileutils.rb (test_ln_s): should be a file, not
46450           a directory for FreeBSD.
46452 Fri Nov 28 19:37:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46454         * hash.c (env_has_value, env_index): must match exactly.
46456         * test/ruby/test_env.rb (test_has_value, test_index): condition for
46457           aboves.
46459 Fri Nov 28 17:59:20 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46461         * test/ruby/test_env.rb: add tests for ENV.
46463 Fri Nov 28 17:47:46 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
46465         * lib/drb/drb.rb (DRbMessage#load): rescue Errno::* and raise
46466           DRbConnError.
46468 Fri Nov 28 15:41:15 2003  Tanaka Akira  <akr@m17n.org>
46470         * lib/pathname.rb (Pathname#realpath): obsolete the force_absolute
46471           argument.
46473 Fri Nov 28 14:41:52 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46475         * lib/soap/streamHandler.rb: drop unused http parameters.
46477         * lib/soap/encodingstyle/soapHandler.rb, lib/soap/mapping/factory.rb,
46478           lib/soap/mapping/mapping.rb, lib/soap/mapping/registry.rb,
46479           lib/wsdl/soap/complexType.rb: ApacheSOAP's map support was broken
46480           under WSDL dynanic client environment.  fixed.
46482         * test/wsdl/raa/*: add tests.
46484         * lib/xsd/datatypes.rb: dateTime precision bug fix (at least, I hope.)
46485           bug of soap4r.  XSDDateTimeImple.to_time passed a Float to
46486           Time.local/Time.gm as an usec, and NUM2LONG(rb_num2long for Float)
46487           causes rounding error.
46489         * test/soap/test_basetype.rb, test/xsd/test_xsd.rb: add tests.
46491 Fri Nov 28 04:15:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46493         * eval.c (method_arity): used wrong Proc object.  [ruby-talk:86504]
46495 Fri Nov 28 00:47:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46497         * eval.c (rb_f_exit), process.c (rb_f_exit_bang): treat true as
46498           success, false as failure.  [ruby-dev:22067]
46500         * eval.c (rb_f_abort, rb_thread_switch), process.c (rb_f_system): use
46501           ANSI macro instead of hard coded value.
46503         * eval.c (rb_f_exit), process.c (rb_f_exit_bang): use VALUEs not but
46504           TYPEs.
46506 Thu Nov 27 22:05:48 2003  Akinori MUSHA  <knu@iDaemons.org>
46508         * eval.c, gc.c: FreeBSD/ia64 currently does not have a way for a
46509           process to get the base address for the RSE backing store, so
46510           hardcode it for the moment.
46511           [submitted by: Marcel Moolenaar <marcel@FreeBSD.org>]
46513 Thu Nov 27 17:36:42 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46515         * ext/tk/lib/tkafter.rb: bug fix on TkTimer#cancel_on_exception=(mode).
46516           TkTimer#wait recieves the exception of the callback.
46517           The exception is kept on @return_value.
46519 Thu Nov 27 16:58:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46521         * win32/win32.c (rb_w32_stat): remove _fullpath() for NUL: device.
46523 Wed Nov 26 15:38:47 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46525         * test/fileutils/test_fileutils.rb (test_ln_s): should take the
46526           existing symbolic link for OpenBSD.
46528 Wed Nov 26 04:48:42 2003  why the lucky stiff  <why@ruby-lang.org>
46530         * ext/syck/token.c: removed YYTOKTMP references which
46531           were causing buffer overflows on large block scalars,
46532           comments, quoted scalars and plain scalars.
46534         * ext/syck/rubyext.c: dynamic changing of buffer size.
46536         * ext/syck/syck.h: default buffer size of 4k.
46538 Wed Nov 26 00:55:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46540         * lib/webrick/httpresponse.rb: add HTTPResponse#keep_alive=.
46542         * lib/webrick/httpserver.rb (HTTPServer#run): should pass the
46543           request's keep_alive flag to the response.
46545 Tue Nov 25 21:41:35 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46547         * defines.h (ENV_IGNORECASE): should define when DOSISH without
46548           human68k. [ruby-dev:22047]
46550         * hash.c (env_has_value, env_index): don't ignore case of value.
46551           [ruby-dev:22048]
46553 Tue Nov 25 21:39:37 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46555         * file.c (path_check_1): honor sticky bits always.
46556           [ruby-talk:86273]
46558 Tue Nov 25 20:02:14 2003  Minero Aoki  <aamine@loveruby.net>
46560         * test/fileutils/test_fileutils.rb: do test in more deep
46561           directory.
46563         * test/fileutils/test_nowrite.rb: ditto.
46565 Tue Nov 25 19:04:23 2003  Tanaka Akira  <akr@m17n.org>
46567         * lib/open-uri.rb (URI::Generic#find_proxy): ENV case sensitivity test
46568           refined.
46570 Tue Nov 25 18:13:30 2003  Minero Aoki  <aamine@loveruby.net>
46572         * test/fileutils/test_fileutils.rb: chdir Dir.tmpdir before each
46573           test. [ruby-dev:22045]
46575         * test/fileutils/test_nowrite.rb: ditto.
46577 Tue Nov 25 17:52:11 2003  Tanaka Akira  <akr@m17n.org>
46579         * lib/open-uri.rb (URI::Generic#find_proxy): use http_proxy under CGI
46580           if the environment variable is case sensitive.
46582 Tue Nov 25 16:41:33 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46584         * test/wsdl/multiplefault.wsdl, test/wsdl/test_multiplefault.rb:
46585           removed.  this test requires extra libraries in soap4r/1.5.*.
46587 Tue Nov 25 16:24:42 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46589         * lib/soap/**/*.rb, lib/wsdl/**/*.rb, lib/xsd/**/*.rb: changed license;
46590           GPL2 -> Ruby's.
46592         * lib/soap/rpc/driver.rb, lib/soap/wsdlDriver.rb,
46593           lib/soap/streamHandler.rb: add interface to streamhandler.
46595         * lib/soap/marshal.rb: raise error if parse fails.
46597         * lib/soap/netHttpClient.rb: add https support.  Patched by
46598           Oliver M. Bolzer.
46600         * lib/soap/netHttpClient.rb: dump HTTP response message body by itself.
46602         * lib/soap/rpc/driver.rb, lib/soap/rpc/proxy.rb,
46603           lib/soap/wsdlDriver.rb: add driver#mandatorycharset interface to foce
46604           using charset for parsing response from buggy server.
46606         * lib/soap/encodingstyle/soapHandler.rb: support Apache Axis's half
46607           typed multi-ref array.
46609         * lib/soap/mapping/factory.rb, lib/soap/mapping/registry.rb: map
46610           SOAPStruct which has multi-accessors which name are the same, to an
46611           array.
46613         * lib/soap/rpc/element.rb: fixed illegal parameter order.
46615         * lib/soap/rpc/element.rb: element name of response message could have
46616           the name other than 'return'.
46618         * lib/wsdl/operation.rb, lib/wsdl/operationBinding.rb,
46619           lib/wsdl/soap/classDefCreator.rb, lib/wsdl/soap/methodDefCreator.rb,
46620           lib/wsdl/soap/methodDefCreatorSupport.rb: WSDL/1.1 allows plural
46621           fault definition in a operation. [ruby-talk:84948]
46623         * test/wsdl/multiplefault.wsdl, test/wsdl/test_multiplefault.rb: add
46624           test for above fix.
46626         * lib/wsdl/soap/complexType.rb: support WSDL array definition with
46627           maxOccures="unbound".
46629         * lib/xsd/charset.rb: use cp932 under emx.  Patched by
46630           Siena. / SHINAGAWA, Norihide in [ruby-dev:21972]
46632         * lib/xsd/xmlparser/parser.rb: set @charset nil by default.  Nil means
46633           'follow encoding declaration in XML'.
46635         * sample/soap/digraph.rb, sample/wsdl/amazon/wsdlDriver.rb,
46636           sample/wsdl/googleSearch/sampleClient.rb,
46637           sample/wsdl/googleSearch/wsdlDriver.rb,
46638           test/wsdl/test_emptycomplextype.rb,
46639           test/wsdl/marshal/test_wsdlmarshal.rb,
46640           test/xsd/test_xmlschemaparser.rb: use File.open(...) { |f| f.read }
46641           instead of File.open(...).read. [ruby-dev:21964]
46643         * test/wsdl/emptycomplextype.wsdl, test/wsdl/test_emptycomplextype.rb:
46644           simplify the test case.
46646         * test/wsdl/axisArray/*: add tests for axis's array encoding.
46648 Tue Nov 25 16:15:29 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46650         * ruby.h: don't treat Cygwin as Windows.
46652 Tue Nov 25 15:18:28 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46654         * configure.in: change default value of --enable-pthread (default: no)
46656 Tue Nov 25 07:31:16 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46658         * parse.y (primary): allow newlines just before right argument
46659           parenthesis.  (ruby-bugs:PR#1221)
46661 Mon Nov 24 23:32:06 2003  Tanaka Akira  <akr@m17n.org>
46663         * lib/open-uri.rb (OpenURI.open_loop, URI::HTTP#proxy_open): use
46664           catch/throw for redirection instead of exception.
46665           (OpenURI.open_loop, OpenURI.redirectable?): restrict redirection.
46667 Mon Nov 24 19:59:48 2003  Tanaka Akira  <akr@m17n.org>
46669         * lib/open-uri.rb (URI::Generic#find_proxy): use CGI_HTTP_PROXY
46670           instead of HTTP_PROXY in the CGI environment.
46672 Mon Nov 24 19:32:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46674         * ext/etc/extconf.rb: check for pw_passwd in struct passwd and
46675           gr_passwd in struct group for DJGPP.
46677         * ext/etc/etc.c: ditto.
46679         * ext/Setup.dj: support for curses, etc, zlib.
46681 Mon Nov 24 17:00:00 2003  Tanaka Akira  <akr@m17n.org>
46683         * lib/open-uri.rb: validate option names.
46684           :content_length_proc and :progress_proc option implemented.
46686 Mon Nov 24 14:53:10 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46688         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46689           (XCFLAGS): output empty value instead of `-DRUBY_EXPORT'.
46691 Sat Nov 22 23:09:45 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46693         * configure.in: set enable_pthread to no on MinGW.
46695 Sat Nov 22 22:56:20 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46697         * configure.in: add --enable-pthread option (default: yes)
46699 Sat Nov 22 22:48:46 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46701         * ext/tk/lib/tk.rb: add Tk.grab_release and fix bug of TkComposite
46703         * ext/tk/lib/tkafter.rb: bug fix of TkAfter#start
46705         * ext/tk/sample/tkcombobox.rb: new sample script
46707         * ext/tcltklib/tcltklib.c: add native thread check
46709 Sat Nov 22 18:49:47 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46711         * ext/curses/curses.c (window_nodelay): nodelay() of NetBSD's
46712           libcruses returns no value, just like keypad().
46714 Sat Nov 22 17:36:36 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46716         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46717           (HAVE_GETCWD): output to config.h.
46719         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46720           (XCFLAGS): output to config.status.
46722 Sat Nov 22 13:10:10 2003  Minero Aoki  <aamine@loveruby.net>
46724         * lib/fileutils.rb (have_st_ino?): djgpp has valid st_ino.
46726 Sat Nov 22 11:28:48 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46728         * gc.c (Init_stack): stack region is far smaller than usual if
46729           pthread is used.
46731 Sat Nov 22 07:30:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46733         * lib/test/unit/util/backtracefilter.rb: fixed a bug that occurred
46734           when an exception had no backtrace.
46736         * test/testunit/util/test_backtracefilter.rb: ditto.
46738 Fri Nov 21 16:44:18 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46740         * ext/tk/lib/tkentry.rb: fix the encoding trouble of percent
46741           substitutions on validatecommand option of TkEntry widget
46743         * ext/tk/lib/tk.rb: fix bug on {pack|grid}_propagate() method
46745 Fri Nov 21 16:12:11 2003  Akinori MUSHA  <knu@iDaemons.org>
46747         * ruby.1: Fix markups and grammar.
46749 Fri Nov 21 14:49:42 2003  Minero Aoki  <aamine@loveruby.net>
46751         * ruby.1: wrote about ruby related environment variables.
46753 Fri Nov 21 12:28:03 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46755         * marshal.c (w_extended): singleton methods should not be checked
46756           when dumping via marshal_dump() or _dump(). [ruby-talk:85909]
46758 Fri Nov 21 01:40:00 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46760         * configure.in: check <pthread.h>
46762         * ruby.h: include pthread.h if existence.
46763           define is_ruby_native() macro when not HAVE_NATIVETHREAD
46765         * eval.c: undef is_ruby_native() function when not HAVE_NATIVETHREAD
46767 Fri Nov 21 00:43:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46769         * lib/test/unit/assertions.rb: use #__send__ instead of #send.
46771         * lib/test/unit/testcase.rb: ditto.
46773 Thu Nov 20 19:19:22 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46775         * configure.in: don't find the Cygwin's pthread library on MinGW.
46777 Thu Nov 20 19:15:50 2003  Minero Aoki  <aamine@loveruby.net>
46779         * lib/fileutils.rb (have_st_ino?): emx (OS/2 with EMX) does not
46780           have st_ino (always 0). [ruby-dev:21972]
46782         * lib/fileutils.rb (rename_cannot_overwrite_file?): emx does not
46783           allow overwriting files by rename(2).
46785         * test/fileutils/test_fileutils.rb: windows? ->
46786           have_drive_letter?, have_file_perm?
46788 Thu Nov 20 17:50:58 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46790         * ext/tk/sample/tkballoonhelp.rb: new sample script
46792         * ext/tk/sample/tkmultilistbox.rb: ditto
46794         * ext/tk/sample/tktextframe.rb: ditto
46796 Thu Nov 20 13:37:34 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46798         * ruby.h: define is_ruby_native_thread() for no native thread
46799           environment
46801         * eval.c: ditto
46803 Thu Nov 20 12:42:47 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46805         * configure.in: always check existence of the pthread library
46807         * ruby.h: define macros for ruby's native thread check
46809         * eval.c: add ruby's native thread check
46811         * gc.c: ditto
46813 Wed Nov 19 14:45:18 2003  Minero Aoki  <aamine@loveruby.net>
46815         * lib/net/http.rb (to_ary): print more friendly warning message.
46817 Wed Nov 19 14:32:08 2003  Minero Aoki  <aamine@loveruby.net>
46819         * lib/fileutils.rb (fu_same?): add djgpp and wince.
46821         * lib/fileutils.rb (cannot_overwrite_file?): add wince.
46823 Wed Nov 19 11:04:47 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46825         * lib/fileutils.rb (cannot_overwrite_file?, have_st_ino?): bccwin32
46826           is same as mswin32.
46828 Wed Nov 19 07:54:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46830         * lib/test/unit.rb: do not run tests if $! is set.
46832         * lib/test/unit/assertionfailederror.rb: extend StandardError instead
46833           Exception (irb catches the former but not the latter).
46835 Tue Nov 18 23:31:36 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46837         * missing/memmove.c (memmove): take void *, not char *.
46839         * missing.h (memmove): ditto.
46841         * missing.h (strchr, strrchr): return char *, not int.
46843 Tue Nov 18 22:20:10 2003  Minero Aoki  <aamine@loveruby.net>
46845         * lib/fileutils.rb (fu_same?): temporal fix for windows.
46847 Tue Nov 18 19:05:04 2003  Minero Aoki  <aamine@loveruby.net>
46849         * lib/fileutils.rb (fu_same?): check by inode instead of path
46850           name, to detect two hard links pointing to the same content.
46852         * test/fileutils.rb: did not create correctly looped symlinks.
46854 Tue Nov 18 18:23:05 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46856         * ext/stringio/stringio.c (strio_read): behave as IO at empty string.
46857           [ruby-dev:21939], [ruby-dev:21941]
46859         * ext/stringio/stringio.c (strio_getc, strio_getline): set EOF flag.
46861         * ext/stringio/stringio.c (strio_rewind, strio_seek, strio_ungetc):
46862           clear EOF flag.
46864         * test/stringio/test_stringio.rb: imported from [ruby-dev:21941].
46866 Tue Nov 18 14:06:35 2003  Minero Aoki  <aamine@loveruby.net>
46868         * lib/fileutils.rb (fu_each_src_dest): raise if src==dest.
46869           [ruby-talk:85344] [ruby-core:01699]
46871         * lib/fileutils.rb: use Object#is_a? instead of Class#=== to allow
46872           e.g. remote objects for receivers.
46874         * lib/fileutils.rb: FileTest -> File.
46876         * lib/fileutils.rb: put parentheses for arguments of File.xxxx?
46878         * test/fileutils/test_fileutils.rb (test_cp): test "cp a a".
46880         * test/fileutils/test_fileutils.rb (test_mv): test "mv a a".
46882         * test/fileutils/test_fileutils.rb (test_ln): test "ln a a".
46884         * test/fileutils/test_fileutils.rb (test_ln_s): test "ln_s a a".
46886         * test/fileutils/test_fileutils.rb (test_install): test "install a a".
46888         * test/fileutils/fileasserts.rb: new method assert_symlink.
46890         * test/fileutils/fileasserts.rb: assert_is_directory -> assert_directory.
46892 Mon Nov 17 19:38:49 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46894         * file.c (getcwdofdrv): avoid using getcwd() directly, use
46895           my_getcwd() instead.
46897         * merged NeXT, OpenStep, Rhapsody ports patch from Eric Sunshine
46898           <sunshine@sunshineco.com>.  [ruby-core:01596]
46900 Mon Nov 17 10:50:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46902         * lib/optparse.rb (OptionParser::Completion::complete): allow least
46903           common completion for three or more candidates.
46905 Mon Nov 17 09:41:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46907         * lib/test/unit/ui/tk/testrunner.rb,
46908           lib/test/unit/ui/gtk/testrunner.rb:
46909           run GUI main loop in sub thread.
46911         * lib/test/unit/ui/gtk2/testrunner.rb: imported from rough.
46913         * lib/test/unit/autorunner.rb (keyword_display): sort keywords.
46915 Sun Nov 16 18:10:57 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46917         * eval.c (rb_eval): iterator should return value from next inside
46918           begin/rescue/end.  (ruby-bugs:PR#1218)
46920 Sun Nov 16 13:26:07 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46922         * marshal.c (w_object): LINK check earlier than anything else,
46923           i.e. do not dump TYPE_IVAR for already dumped objects.
46924           (ruby-bugs:PR#1220)
46926         * eval.c (rb_eval): call "inherited" only when a new class is
46927           generated; not on reopening.
46929         * eval.c (eval): prepend error position in evaluating string to
46930           "mesg" attribute string only when it's available and is a
46931           string.
46933 Sun Nov 16 12:16:10 2003  Minero Aoki  <aamine@loveruby.net>
46935         * lib/net/protocol.rb: logging response body. [experimental]
46936           [ruby-list:38800]
46938 Sun Nov 16 10:49:38 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
46940         * lib/thread.rb (Thread.exclusive): wrap method definition in
46941           class Thread to enable rdoc to process.
46943 Sun Nov 16 09:45:23 2003  Minero Aoki  <aamine@loveruby.net>
46945         * lib/net/http.rb (set_debug_output): warn if method is called
46946           after #start.  [ruby-dev:38798]
46948 Sun Nov 16 04:41:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46950         * eval.c (eval): do not re-raise exception to avoid unnecessary
46951           exception copying, instead modify exception and internal
46952           information to adjust eval().
46954         * eval.c (backtrace): can return the current frame information
46955           only if lev < -1.
46957 Sat Nov 15 22:16:42 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46959         * /ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext):
46960           refine error message.
46962 Sat Nov 15 10:05:40 2003  Tanaka Akira  <akr@m17n.org>
46964         * lib/open-uri.rb (OpenURI.open_loop, OpenURI::HTTP#proxy_open):
46965           refactored to support options.
46966           (Buffer): maintain size by this class.
46968 Sat Nov 15 07:40:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46970         * eval.c (rb_method_node): new API to retrieve method body.
46972 Fri Nov 14 13:21:30 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46974         * ext/tcltklib/tcltklib.c: fix (en-bugged at 2003/11/07)
46976         * ext/tk/lib/tkdialog.rb: TkDialog.new accepts a parent widget
46977           argument [ruby-talk:85066]
46979 Thu Nov 13 20:53:35 2003  Tanaka Akira  <akr@m17n.org>
46981         * lib/open-uri.rb (Kernel[#.]open): hard coded URI schemes removed.
46982           [ruby-ext:02251]
46984 Thu Nov 13 19:17:00 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46986         * lib/test/unit/ui/tk/testrunner.rb: use grid and panedwindow
46987           (if available)
46989 Thu Nov 13 17:56:41 2003  Tanaka Akira  <akr@m17n.org>
46991         * lib/open-uri.rb (OpenURI.open_uri): use File::RDONLY.
46992           reported by Take_tk <ggb03124@nifty.ne.jp>.
46993           [ruby-ext:02245]
46995 Thu Nov 13 16:45:53 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46997         * ext/openssl/ossl_x509req.c (ossl_x509req_to_der): add function for
46998           X509::Request#to_der.
47000 Thu Nov 13 11:31:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47002         * lib/optparse.rb (OptionParser::Completion#complete): prior shorter
47003           name to containing longer name.
47005 Thu Nov 13 06:08:54 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47007         * ext/tk/lib/tk.rb: stop freezing some classes
47009         * ext/tk/lib/multi-tk.rb: ditto.
47011 Wed Nov 12 17:32:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47013         * lib/test/unit/assertions.rb (assert_throws, assert_nothing_thrown):
47014           uncaught throw in sub thread raises ThreadError.
47016         * lib/test/unit/ui/tk/testrunner.rb (setup_ui): "expand" is not
47017           necessary.
47019 Wed Nov 12 14:09:43 2003  Shugo Maeda  <shugo@ruby-lang.org>
47021         * test/monitor/test_monitor.rb: fix the timing problem by Queue.
47023 Wed Nov 12 12:59:44 2003  Shugo Maeda  <shugo@ruby-lang.org>
47025         * test/monitor/test_monitor.rb: added.
47027 Wed Nov 12 10:14:28 2003  Shugo Maeda  <shugo@ruby-lang.org>
47029         * lib/monitor.rb: refactored. Thanks, Gennady Bystritsky.
47031 Wed Nov 12 06:11:39 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47033         * ext/openssl/ossl.c (ossl_x509_sk2ary, ossl_x509crl_sk2ary):
47034           add functions to convert STACK into Array.
47036         * ext/openssl/ossl.h: add prototypes.
47038         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_set_certificates,
47039           ossl_pkcs7_get_certificates, ossl_pkcs7_get_crls,
47040           ossl_pkcs7_set_crls): add functions for PKCS7#certificates=
47041           PKCS7#certificates, PKCS7#crls= and PKCS7#crls.
47043 Wed Nov 12 00:47:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47045         * lib/test/unit/ui/testrunnermediator.rb: should require 'test/unit'.
47047 Tue Nov 11 23:54:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47049         * lib/test/unit/ui/gtk/testrunner.rb: added a rescue clause to handle
47050           the case when the requested font is not available.
47052 Tue Nov 11 22:44:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47054         * io.c (appendline): file may not end with newline.  a bug if
47055           READ_DATA_PENDING_PTR is defined. [ruby-talk:84925]
47057 Tue Nov 11 10:42:41 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47059         * ext/tk/lib/tk.rb: raise an exception when creating TkWindow
47060           object, because TkWindow class is an abstract class.
47062 Tue Nov 11 03:30:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47064         * lib/ext/openssl/ossl_conf.c (ossl_config_get_value): return nil
47065           if the specified value doesn't exist.
47067         * lib/ext/openssl/ossl_conf.c (ossl_config_get_section): return
47068           a empty hash if the specified section doesn't exist.
47070 Mon Nov 10 11:40:29 2003  Shugo Maeda  <shugo@ruby-lang.org>
47072         * lib/monitor.rb (wait): return true on signal/broadcastfalse and
47073           false on timeout. Thanks Gennady Bystritsky.
47075 Mon Nov 10 00:07:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47077         * parse.y (primary): primary_value may be 0 when syntax error.
47078           [ruby-talk:84893]
47080 Sun Nov  9 02:05:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47082         * lib/test/unit/assertions.rb: un-deprecated #assert_not_nil to
47083           maintain symmetry with #assert_nil. Also added better output for
47084           #assert_kind_of.
47086         * test/testunit/tc_assertions.rb: ditto.
47088 Sat Nov  8 18:50:20 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47090         * test/wsdl/raa/*: add new testcase for WSDL loading, parsing and
47091           reading.
47093         * test/soap/marshal/*: backport from soap4r/1.5.1.  all differences are
47094           for ruby/1.6.
47096         * lib/soap/*: backport from soap4r/1.5.1.  all differences are for
47097           ruby/1.6.
47099         * lib/wsdl/data.rb, lib/wsdl/xmlSchema/data.rb: move definition of
47100           ArrayTypeAttrName from ::WSDL::XMLSchema::* to ::WSDL::*.
47101           [ruby-talk:84813]
47103         * lib/wsdl/soap/definitions.rb: element name typo in custom exception
47104           struct definition which is needed for wsdlDriver; camelCase ->
47105           underscore_name.
47107 Sat Nov  8 13:49:50 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47109         * configure.in: improvement of pthread check
47111 Sat Nov  8 13:28:46 2003  Takaaki Tateishi  <ttate@ttsky.net>
47113         * ext/dl/sym.c: Add DL.win32_last_error and DL.last_error.
47114           Thanks, Kaoru Shirai.
47116 Sat Nov  8 06:19:38 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47118         * ext/tcltklib/tcltklib.c: To fix 'pthread-enabled Tcl/Tk' problem,
47119           TclTkIp#_eval calls Tcl_Eval() on the mainloop thread only
47120           (queueing a handler to the EventQueue).
47122         * ext/tcltklib/README.1st: edit the description of '--with-pthread-ext'
47124 Fri Nov  7 23:23:04 2003  Tanaka Akira  <akr@m17n.org>
47126         * lib/pathname.rb (Pathname#+): if self or the argument is `.', return
47127           another.
47128           (Pathname#parent): if self is `.', return `..'.
47129           (Pathname#children): if self is `.', don't prepend self for a
47130           pathname in a result.
47131           (Pathname#join): re-implemented using Pathname#+.
47132           (Pathname#find): if self is `.', remove `./' prefix of yielding
47133           pathname.
47135 Fri Nov  7 10:23:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47137         * ext/socket/socket.c (make_hostent): get rid of SEGV on aliases
47138           lookup failure.  (ruby-bugs:PR#1215)
47140 Fri Nov  7 04:08:05 2003  UENO Katsuhiro  <katsu@blue.sky.or.jp>
47142         * ext/zlib/zlib.c (Init_zlib): define Zlib::GzipReader#each_line as
47143           an alias of Zlib::GzipReader#each.
47145 Fri Nov  7 01:03:16 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47147         * eval.c (rb_load): save and restore rb_prohibit_interrupt.
47148           [ruby-dev:21857]
47150 Thu Nov  6 18:05:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47152         * io.c (rb_io_inspect): show the path also at a closed file.
47153           [ruby-dev:21851]
47155 Thu Nov  6 11:42:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47157         * ext/stringio/stringio.c (strio_set_string, strio_reopen): check
47158           tainted.
47160         * ext/stringio/stringio.c (strio_copy, strio_ungetc, strio_write,
47161           strio_putc): add infection.
47163         * ext/stringio/stringio.c (strio_path): just nil.  [ruby-dev:21846]
47165         * ruby.c (proc_options): reserve searched script path in the
47166           source file name table.  [ruby-list:38765]
47168         * lib/optparse.rb (OptionParser::Completion#complete): default not to
47169           ignore case on completion.  [ruby-talk:84726]
47171         * win32/win32.c (make_cmdvector): process backslashes even if a quote
47172           is not enclosed.
47174 Wed Nov  5 23:49:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47176         * sample/openssl/gen_csr.rb: there (at least) is a CA which does not
47177           accept DN in UTF8STRING format.  it's a sample.
47179 Wed Nov  5 22:55:16 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47181         * configure.in, eval.c, signal.c: : add '--with-pthread-ext'
47182           option to fix the pthread trouble on 'tcltklib'
47184         * ext/tcltklib/README.1st: add the description of '--with-pthread-ext'
47186         * ext/tk/lib/tktext.rb: add TkText#text_copy, text_cut, text_paste
47187           to support Tcl/Tk8.4's tk_textCopy, tk_textCut, tk_textPaste
47189         * ext/tk/lib/tk.rb: add TkMenu#set_focus support Tcl/Tk's
47190           tk_menuSetFocus
47192 Wed Nov  5 17:33:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47194         * eval.c (rb_load): allow interrupt during loaded program
47195           evaluation.  [ruby-dev:21834]
47197         * hash.c (rb_hash_fetch): always warn if default argument and a
47198           block are supplied at the same time. [ruby-dev:21842]
47200         * hash.c (env_fetch): ditto.
47202         * array.c (rb_ary_fetch): ditto.
47204 Wed Nov  5 19:08:47 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47206         * lib/optparse.rb (OptionParser::Switch::PlacedArgument::parse):
47207           do not remove next argument if empty value is placed.
47209         * test/optparse: added.
47211 Wed Nov  5 17:05:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47213         * lib/test/unit/ui/gtk/testrunner.rb: typo.
47215 Wed Nov  5 11:13:32 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47217         * string.c: add #include "version.h". this file still depends on it.
47219         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub,
47220           wince/Makefile.sub: add version.h dependency to string.c.
47222 Wed Nov  5 09:14:23 2003  Shugo Maeda  <shugo@ruby-lang.org>
47224         * lib/monitor.rb: revert to the previous revision.
47226 Wed Nov  5 08:39:51 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47228         * lib/webrick/https.rb (HTTPRequest#parse): set @client_cert_chain.
47230         * lib/webrick/https.rb (HTTPRequest#meta_vars): create
47231           SSL_CLIENT_CERT_CHAIN_n from @client_cert_chain.
47233         * ext/openssl/ossl_ssl.c (ossl_ssl_get_peer_cert_chain): return nil
47234           if no cert-chain was given.
47236 Tue Nov  4 23:44:48 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47238         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
47239           remove needless version.h dependency.
47241 Tue Nov  4 23:38:43 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47243         * class.c, hash.c, string.c: remove #include "version.h".
47245         * Makefile.in: remove needless version.h dependency.
47247 Tue Nov  4 06:54:52 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47249         * io.c (read_all): fptr->f may be NULL, if IO is closed in the
47250           signal handler.
47252         * io.c (io_read): ditto.
47254         * string.c (get_pat): remove 1.8.0 warning code.
47256         * string.c (rb_str_match): extend warning until 1.8.2.
47258         * string.c (rb_str_match2): ditto.
47260         * class.c (class_instance_method_list): remove 1.8.0 warnings.
47261           method_list now recurs.  [ruby-dev:21816]
47263         * class.c (rb_obj_singleton_methods): ditto.
47265         * array.c (rb_ary_select): remove select with block.
47266           [ruby-dev:21824]
47268         * hash.c (rb_hash_select): ditto.
47270         * hash.c (env_select): ditto.
47272         * re.c (match_select): ditto.
47274         * struct.c (rb_struct_select): ditto.
47276 Mon Nov  3 22:53:21 2003  Minero Aoki  <aamine@loveruby.net>
47278         * lib/racc/parser.rb: synchronize with Racc 1.4.4.
47280         * ext/racc/cparse/cparse.c: ditto.
47282         * ext/racc/cparse/cparse.c (parse_main): should abort when
47283           the length of LR state stack <=1, not ==0.
47285 Mon Nov  3 08:50:47 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47287         * process.c (check_uid_switch): remove duplicated error messages.
47289         * process.c (check_gid_switch): ditto.
47291 Sun Nov  2 02:28:33 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47293         * lib/webrick/ssl.rb: new option :SSLExtraChainCert.
47295 Sun Nov  2 01:02:04 2003  Akinori MUSHA  <knu@iDaemons.org>
47297         * string.c (rb_str_hash): Update the HASH_PERL alternative hash
47298           algorithm in sync with Perl 5.8.
47300         * st.c (strhash): Ditto.
47302 Sat Nov  1 18:21:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47304         * ext/openssl/ossl_ssl.c (ossl_ssl_peer_cert_chain): add new method
47305           SSLSocket#peer_cert_chain.
47307         * ext/openssl/ossl_x509req.c (GetX509ReqPtr): new function
47308           which returns underlying X509_REQ.
47310         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_issuer_cert,
47311           ossl_x509extfactory_set_subject_cert, ossl_x509extfactory_set_crl,
47312           ossl_x509extfactory_set_subject_req, ossl_x509extfactory_set_config):
47313           use underlying C struct without duplication not to leak momory.
47315 Sat Nov  1 01:49:03 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47317         * lib/soap/mapping/factory.rb: mark marshalled basetype objects when
47318           @allow_original_mapping is true.  multi-referencing basetype node is
47319           prohibited in SOAP/1.1 encoding but soap4r's original ruby object
47320           mapping requires basetype to be marked to detect self referencing
47321           loop.  e.g. o = 1; o.instance_eval { @iv = o }  soap4r's original
47322           mapping is only used through soap/marshal API.
47324         * test/soap/marshal/test_marshal.rb: add tests for self referencing
47325           immutable objects.
47327         * test/soap/calc/test_calc_cgi.rb: fix test name.
47329 Fri Oct 31 22:26:29 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
47331         * wince/string_wce.c (strrchr): should decrement pointer.
47333         * wince/Makefile.sub: correct a range of isdigit().
47335 Fri Oct 31 12:55:24 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47337         * configure.in, lib/mkmf.rb: add RPATHFLAG for NetBSD.
47338           [ruby-dev:21791]
47340         * bcc32/Makefile.sub, win32/Makefile.sub, win32/Makefile.sub: ditto.
47342 Fri Oct 31 01:38:14 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47344         * wince/Makefile.sub, win32/Makefile.sub (.y.c): allow white spaces
47345           at the beginning of line to remove by sed. (ruby-bugs-ja:PR#580)
47347 Fri Oct 31 01:02:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47349         * compar.c (cmp_equal): protect exceptions from <=> comparison
47350           again.  returns nil if any exception or error happened during
47351           comparison.
47353         * eval.c (search_required): should update *featurep when DLEXT2 is
47354           defined. (ruby-bugs-ja:PR#581)
47356 Thu Oct 30 23:41:04 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
47358         * lib/drb/drb.rb: add DRbArray
47360         * lib/drb/invokemethod.rb: fix Hash#each problem. [ruby-dev:21773]
47362         * lib/drb/unix.rb: add LoadError. [ruby-dev:21743]
47364 Thu Oct 30 23:19:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47366         * lib/soap/generator.rb: better XML pretty printing.
47368         * lib/soap/encodingstyle/soapHandler.rb: remove unnecessary namespace
47369           assignment in the element which has "encodingStyle" attribute, and
47370           add necessary namespace assignment for "arrayType" attribute.
47372         * test/soap/calc/test_calc_cgi.rb: take over $DEBUG to ruby process
47373           through CGI.
47375 Thu Oct 30 22:59:39 2003  why the lucky stiff  <why@ruby-lang.org>
47377         * ext/syck/yaml2byte.c: HASH const too long.  Thanks, matz.
47379 Thu Oct 30 19:13:53 2003  Akinori MUSHA  <knu@iDaemons.org>
47381         * ext/syck/MANIFEST: Add yamlbyte.h.
47383 Thu Oct 30 14:25:31 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47385         * io.c (READ_DATA_BUFFERED): new macro to detect whether stdio
47386           buffer filled.
47388         * io.c (rb_io_fptr_cleanup): move path deallocation to
47389           rb_io_fptr_finalize (finalizer called by GC).
47391 Thu Oct 30 13:23:39 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47393         * parse.y (logop): left may be NULL. [ruby-talk:84539]
47395         * eval.c (rb_eval): NODE_CASE nd_head may be NULL.
47397 Thu Oct 30 10:14:51 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47399         * lib/test/unit/autorunner.rb: make fox runner work.
47401 Thu Oct 30 09:32:26 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47403         * process.c (rb_f_system): fixed lack of security check before
47404           calling do_spawn() on win32. [ruby-talk:84555]
47406 Thu Oct 30 02:46:35 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47408         * eval.c (proc_invoke): single array value to normal Proc#call
47409           (i.e. not via lambda call), should be treated just like yield.
47410           [ruby-dev:21726]
47412 Thu Oct 30 02:25:48 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47414         * ext/openssl/lib/openssl/buffering.rb (Buffering#initialize):
47415           add new method to inherit @sync from @io.sync.
47417         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): no need to
47418           set sync flag explicitly.
47420         * ext/openssl/ossl_ssl.c (ossl_sslctx_initialize): call super.
47422         * ext/openssl/ossl_ssl.c (ossl_sslctx_setup): set extra chain
47423           certificates in @extra_chain_cert.
47425 Wed Oct 29 22:02:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47427         * test/drb/drbtest.rb: use rbconfig.rb to make the path of ruby
47428           interpreter to exec, instead of test/ruby/envutil.rb,
47430 Wed Oct 29 19:58:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47432         * ext/tcltklib/tcltklib.c (CONST84): define CONST84 when it is not
47433           defined and TCL_MAJOR_VERSION >= 8.
47435         * ext/tcltklib/tcltklib.c (VwaitVarProc, WaitVariableProc,
47436           rb_threadVwaitProc): use CONST84 instead of CONST.
47438         * ext/tcltklib/tcltklib.c (ip_rbTkWaitCommand,
47439           ip_rb_threadTkWaitCommand): use CONST84 always.
47441 Wed Oct 29 17:27:05 2003  Tanaka Akira  <akr@m17n.org>
47443         * re.c (rb_reg_s_union, Init_Regexp): new method `Regexp.union'.
47445         * lib/pathname.rb (realpath): examine Dir.pwd because it may have
47446           symlinks.
47448 Wed Oct 29 17:16:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47450         * eval.c (rb_longjmp): must not disturb original jump.
47451           [ruby-dev:21733]
47453 Wed Oct 29 15:28:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47455         * eval.c (Init_Proc): taint preallocated exception object
47456           sysstack_error. [ruby-talk:84534]
47458 Wed Oct 29 11:27:39 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47460         * parse.y (ret_args): node may be NULL. [ruby-talk:84530]
47462 Tue Oct 28 15:20:12 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47464         * ext/tcltklib/tcltklib.c (VwaitVarProc, ip_rbVwaitObjCmd,
47465           WaitVariableProc, WaitVisibilityProc, WaitWindowProc,
47466           ip_rbTkWaitObjCmd, ip_rbTkWaitCommand, rb_threadVwaitProc,
47467           rb_threadWaitVisibilityProc, rb_threadWaitWindowProc,
47468           ip_rb_threadVwaitObjCmd, ip_rb_threadTkWaitObjCmd): prototype;
47469           avoid VC++ warnings.
47471 Mon Oct 27 19:19:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47473         * eval.c (rb_longjmp): ignore reentering error while warning.
47474           [ruby-dev:21730]
47476 Mon Oct 27 00:23:50 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47478         * ext/tcltklib/tcltklib.c (ip_ruby): bug fix on Win : hang-up when
47479           calling 'exit' in the Tk callback procedure. [ruby-list:38656]
47481 Sat Oct 25 09:18:04 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47483         * eval.c (rb_method_missing): protect exception from within
47484           "inspect".  (ruby-bugs:PR#1204)
47486 Fri Oct 24 23:26:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47488         * hash.c (rb_hash_each): Hash#each should yield single value.
47489           [ruby-talk:84420]
47491         * hash.c (env_each): ditto for ENV.each.
47493 Thu Oct 23 20:25:32 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47495         * lib/webrick/server.rb (GenericServer#start): should rescue
47496           IOError from IO::accept. [ruby-dev:21692]
47498 Thu Oct 23 17:59:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47500         * eval.c (ruby_cleanup): initialize stack bottom for embedding.
47501           [ruby-dev:21686]
47503         * ext/dl/extconf.rb: move list of files to clean from DEPEND file,
47504           to get rid of macro redefinitions.
47506 Thu Oct 23 13:44:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47508         * parse.y: integrate operations for stack_type.  [ruby-dev:21681]
47510 Thu Oct 23 00:41:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47512         * test/soap/calc/*, test/soap/helloworld/*: set logging threshold
47513           to ERROR.
47515 Wed Oct 22 12:53:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47517         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
47518           ignore tests which raised LoadError.
47520         * test/drb/drbtest.rb, test/ruby/test_beginendblock.rb,
47521           test/ruby/test_system.rb: avoid requiring same file twice.
47523         * test/drb/test_drbssl.rb, test/drb/test_drbunix.rb: should not use
47524           ARGV unless invoked directly.  do not create test cases unless
47525           required libraries are available.
47527 Wed Oct 22 02:31:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47529         * eval.c (ruby_cleanup): should not ignore exit_value in END
47530           execution. [ruby-dev:21670]
47532 Tue Oct 21 23:16:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47534         * eval.c (ruby_cleanup): call finalizers and exit procs before
47535           terminating threads.
47537         * eval.c (ruby_cleanup): preserve ruby_errinfo before ruby_finalize_0().
47539 Tue Oct 21 15:57:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47541         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
47542           prepend the directory of target file to the load path.
47544 Tue Oct 21 15:08:53 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47546         * win32/win32.c (do_spawn, do_aspawn): should wait child process even
47547           if callded with P_OVERLAY.
47549         * win32/win32.c (do_spawn, do_aspawn): should return child's exit
47550           status to parent.
47552 Tue Oct 21 00:35:02 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47554         * test/soap/calc/*, test/soap/helloworld/*: catch the exception from
47555           test server thread and recover.
47557 Tue Oct 21 00:22:57 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
47559         * test/drb/*: import drb/runit.
47561 Mon Oct 20 23:55:47 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47563         * eval.c (rb_eval): set current node after arguments evaluation.
47564           [ruby-dev:21632]
47566         * eval.c (rb_yield_0): set current node and keep it at local jump.
47568 Mon Oct 20 22:01:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47570         * eval.c (rb_thread_cleanup): keep thread group for main thread.
47571           [ruby-dev:21644]
47573 Mon Oct 20 18:28:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47575         * eval.c (rb_catch): backout.
47577 Mon Oct 20 17:31:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47579         * eval.c (PUSH_FRAME): generate unique number to be TAG_JUMP()
47580           destination.
47582         * eval.c (localjump_destination): use unique number in ruby_frame
47583           for localjump destination.
47585 Mon Oct 20 11:31:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47587         * test/ruby/test_signal.rb (test_signal): restore old trap.
47589 Mon Oct 20 11:00:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47591         * gc.c (gc_sweep): loosen page free condition to avoid add_heap()
47592           race condition. [ruby-dev:21633]
47594         * gc.c (gc_sweep): do not update malloc_limit when malloc_increase
47595           is smaller than malloc_limit.
47597 Mon Oct 20 09:45:12 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47599         * lib/debug.rb (debug_command): remove debug print.
47601 Sun Oct 19 13:12:30 2003  Tanaka Akira  <akr@m17n.org>
47603         * lib/pathname.rb (foreachline, dir_foreach): add obsolete warning.
47605 Sun Oct 19 00:14:22 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47607         * test/soap/calc/*, test/soap/helloworkd/*: changed port# of test
47608           server. (17171)
47610 Sat Oct 18 23:01:32 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47612         * missing/acosh.c (DBL_MANT_DIG): typo fix(ifdef -> ifndef).
47614 Sat Oct 18 05:48:59 2003  why the lucky stiff  <why@ruby-lang.org>
47616         * ext/syck/rubyext.c: YAML::Syck::compile method.
47618         * ext/syck/syck.c: Buffer edge bug.
47620         * ext/syck/yaml2byte.c: YAML to bytecode converter.
47622         * ext/syck/yamlbyte.h: Ditto.
47624         * ext/syck/bytecode.c: Bytecode parser fixes to empty collections
47625           and empty strings.
47627         * ext/syck/token.c: Ditto.
47629 Fri Oct 17 23:07:38 2003  Akinori MUSHA  <knu@iDaemons.org>
47631         * ext/enumerator/enumerator.c, ext/enumerator/enumerator.txt:
47632           Provide Kernel#to_enum as an alias for Kernel#enum_for.  Maybe
47633           this is a better name.
47635 Fri Oct 17 23:00:30 2003  Akinori MUSHA  <knu@iDaemons.org>
47637         * lib/generator.rb: Add rdoc documentation.
47639 Fri Oct 17 22:16:42 2003  Akinori MUSHA  <knu@iDaemons.org>
47641         * lib/set.rb: Reword and fix Overview.
47643         * lib/set.rb: It is not necessary to require
47644           'test/unit/ui/console/testrunner'.
47646 Fri Oct 17 11:15:22 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47648         * test/ruby/test_range.rb: added.
47650         * MANIFEST: add test/ruby/test_range.rb.
47652 Fri Oct 17 03:21:23 2003  William Sobel  <will.sobel@barra.com>
47654         * ext/socket/socket.c (make_hostent): h_aliases may be NULL.
47655           (ruby-bugs:PR#1195)
47657         * ext/socket/socket.c (sock_s_gethostbyaddr): ditto.
47659 Fri Oct 17 00:12:41 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47661         * ext/tk/lib/tk.rb: (bug fix) instance variable @frame was used
47662           without initializing on TkComposite module.
47664 Thu Oct 16 23:51:04 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47666         * ext/tk/lib/tk.rb: If $DEBUG == true and some exception is caused
47667           in a callback operation, Ruby/Tk shows a (verbose) backtrace
47668           information on the callback process.
47670 Thu Oct 16 17:09:19 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47672         * lib/debug.rb (DEBUGGER__::Context::debug_command): do not call
47673           debug_silent_eval() when $1 is not set. (ruby-bugs:PR#1194)
47675 Thu Oct 16 16:54:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47677         * string.c (rb_str_upto): ("a"..."a").to_a should return [].
47678           [ruby-core:01634]
47680 Thu Oct 16 16:40:51 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47682         * ext/tk/lib/tk.rb:
47683           Add Tk::EncodedString and Tk::UTF8_String class to support
47684           characters using the \uXXXX escape to the UNICODE string.
47686         * ext/tk/sample/{demos-en,demos-jp}/unicodeout.rb
47687           new demo-scripts (samples of Tk::UTF8_String)
47689         * ext/tk/sample/{demos-en,demos-jp}/widget
47690           add entries for 'unicodeout.rb'
47692 Thu Oct 16 08:38:06 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47694         * test/digest/test_digest.rb (test_eq): show failed class.
47696         * test/ruby/test_iterator.rb (test_break, test_return_trace_func):
47697           test localjump destination.
47699 Wed Oct 15 20:22:31 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47701         * lib/soap/netHttpClient.rb: use URI::HTTP#request_uri instead of
47702           instance_eval('path_query').  [ruby-list:38575]
47704 Wed Oct 15 17:24:45 2003  URABE Shyouhei  <root@mput.dip.jp>
47706         * lib/cgi.rb (CGI::Cookie): tiny typo fix.
47708 Wed Oct 15 15:00:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47710         * eval.c (ruby_run): just return FAILURE instead of parse error
47711           count.  [ruby-list:38569]
47713 Wed Oct 15 13:17:02 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47715         * ext/digest/digest.c (rb_digest_base_alloc): need to initialize
47716           buffer. [ruby-dev:21622]
47718 Wed Oct 15 11:23:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47720         * marshal.c (w_object): dump extended modules as well.
47722         * marshal.c (r_object0): TYPE_USRMARSHAL should restore extended
47723           modules before invoking marshal_load.  these two fixes are done
47724           by Masatoshi Seki <m_seki@mva.biglobe.ne.jp>.
47726 Wed Oct 15 09:30:34 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47728         * ext/enumerator/enumerator.c (enumerator_each): avoid VC++ warning.
47730         * ext/syck/syck.h: include stdio.h for definition of FILE.
47732 Wed Oct 15 08:09:07 2003  why the lucky stiff  <why@ruby-lang.org>
47734         * ext/syck/bytecode.c: Checkin of YAML bytecode support.
47736         * ext/syck/gram.c: Ditto.
47738         * ext/syck/syck.c: Ditto.
47740         * ext/syck/token.c: Ditto.
47742         * ext/syck/handler.c: Ditto.
47744         * ext/syck/handler.c: Now using 'tag' rather than 'taguri' in type URIs.
47746         * ext/syck/rubyext.c: Ditto (on both counts).
47748 Wed Oct 15 05:05:53 2003  Akinori MUSHA  <knu@iDaemons.org>
47750         * lib/generator.rb: A new library which converts an internal
47751           iterator to an external iterator.
47753         * lib/abbrev.rb: A new library which creates an abbreviation table
47754           from a list.
47756 Wed Oct 15 04:31:51 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47758         * ext/tk/sample/demos-en/entry3.rb, ext/tk/sample/demos-jp/entry3.rb:
47759           new demo-scripts
47761         * ext/tk/sample/demos-en/widget, ext/tk/sample/demos-jp/widget:
47762           add entries for 'entry3.rb'
47764 Wed Oct 15 04:31:47 2003  Akinori MUSHA  <knu@iDaemons.org>
47766         * test/digest/test_digest.rb: Moved from ext/digest/test.rb.
47768 Wed Oct 15 03:53:20 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47770         * ext/tk/lib/tk.rb: fixed trouble on auto-load Tcl commands (enbug
47771           on the last commit).
47773 Wed Oct 15 00:25:00 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47775         * parse.y (yylex): argument parentheses preceded by spaces should
47776           be warned; not error.  [ruby-talk:84103]
47778 Wed Oct 15 00:20:15 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47780         * ext/tcltklib/tcltklib.c: replace Tcl/Tk's vwait and tkwait to
47781           switch on threads smoothly and avoid seg-fault.
47783         * ext/tcltklib/tcltklib.c: add TclTkIp._thread_vwait and
47784           _thread_tkwait for waiting on a thread. (Because Tcl/Tk's vwait
47785           and tkwait command wait on an eventloop.)
47787         * ext/tk/lib/multi-tk.rb: support TclTkIp._thread_vwait and
47788           _thread_tkwait.
47790         * ext/tk/lib/tk.rb: now, TkVariable#wait has 2 arguments.
47791           If 1st argument is true, waits on a thread. If false, waits on
47792           an eventloop. If 2nd argument is true, checks existence of
47793           rootwidgets. If false, doesn't. Default is wait(true, false).
47795         * ext/tk/lib/tk.rb: add TkVariable#tkwait(arg) which is equal to
47796           TkVariable#wait(arg, true). wait_visibility and wait_destroy
47797           have an argument for waiting on a thread or an eventloop.
47799         * ext/tk/lib/tk.rb: improve of accessing Tcl/Tk's special variables.
47801         * ext/tk/lib/tkafter.rb: support 'wait on a thread' and 'wait on
47802           an eventloop'.
47804 Wed Oct 15 00:10:24 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47806         * lib/soap/baseData.rb: Introduce SOAPType as the common ancestor of
47807           SOAPBasetype and SOAPCompoundtype.
47809         * lib/soap/generator.rb, lib/soap/element.rb, lib/soap/encodingstyle/*:
47810           Encoding methods signature change.  Pass SOAPGenerator as a parameter.
47812         * lib/soap/mapping/*, test/soap/marshal/test_marshal.rb: Refactoring
47813           for better marshalling/unmarshalling support.  Now I think SOAP
47814           marshaller supports all kind of object graph which is supported by
47815           Ruby's original marshaller.  Of course there could be bugs as always.
47816           Find it.  :-)
47818         * lib/soap/rpc/standaloneServer.rb: Set severity threshould to INFO.
47819           DEBUG is too noisy.
47821         * lib/xsd/datatypes.rb: DateTime#of is obsoleted.  Use DateTime#offset.
47823         * test/wsdl/emptycomplextype.wsdl, test/xsd/xmlschema.xml: Avoid
47824           useless warning.
47826 Tue Oct 14 19:09:35 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47828         * eval.c (ruby_finalize_0): return the given exit status unless
47829           SystemExit got raised.
47831 Tue Oct 14 11:53:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47833         * intern.h (ruby_stop): never return.
47835         * ruby.h (ruby_run): ditto.
47837 Tue Oct 14 04:43:55 2003  Tanaka Akira  <akr@m17n.org>
47839         * lib/pathname.rb (realpath): make ELOOP check bit more robust.
47840           (children): prepend self by default.
47841           (chroot): obsoleted.
47843 Tue Oct 14 02:29:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47845         * eval.c (rb_require_safe): segfault after loading .so.
47847 Tue Oct 14 02:05:23 2003  Akinori MUSHA  <knu@iDaemons.org>
47849         * ext/Setup*, ext/enumerator/*: Add ext/enumerator, a helper
47850           module for the Enumerable interface.
47852 Mon Oct 13 23:55:59 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47854         * test/ruby/envutil.rb: use Config::CONFIG["ruby_install_name"],
47855           not "ruby".
47857 Mon Oct 13 23:57:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47859         * eval.c (rb_feature_p): match by classified suffix.
47861         * eval.c (rb_require_safe): require library in the specified safe
47862           level.
47864         * variable.c (rb_autoload, rb_autoload_load): restore safe level
47865           when autoload was called.  [ruby-dev:21338]
47867         * intern.h: prototypes; rb_require_safe.
47869         * test/runner.rb: accept non-option arguments.
47871 Mon Oct 13 20:49:51 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47873         * string.c (str_new4): should not preserve FL_TAINT status in the
47874           internal shared string. [ruby-dev:21601]
47876         * string.c (rb_str_new4): ditto.
47878         * eval.c: use EXIT_SUCCESS and EXIT_FAILURE for exit values.
47880         * process.c: ditto. [ruby-list:38521]
47882 Mon Oct 13 19:51:02 2003  Koji Arai  <jca02266@nifty.ne.jp>
47884         * lib/debug.rb (debug_command): should enter emacs mode when
47885           assigned any value to the environment variable "EMACS".
47886           On Meadow, (getenv "EMACS") is "meadow".
47888 Sun Oct 12 14:45:03 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47890         * ext/win32ole/extconf.rb: check "windows.h", not "windows".
47891           [ruby-talk:84051]
47893 Sat Oct 11 20:41:03 2003  Corinna Vinschen  <corinna@vinschen.de>
47895         * file.c (eaccess): Use access(2) on Cygwin.
47897 Sat Oct 11 17:09:21 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47899         * lib/rexml/quickpath.rb (REXML::QuickPath::match):
47900           escape '[' to avoid warning.
47902 Sat Oct 11 16:08:41 2003  Tanaka Akira  <akr@m17n.org>
47904         * lib/pathname.rb (realpath): check existence of the file.
47906         * lib/pathname.rb (realpath): re-implemented.
47907           (realpath_root?, realpath_rec): removed
47909 Sat Oct 11 10:19:39 2003  Shugo Maeda  <shugo@ruby-lang.org>
47911         * lib/monitor.rb: handle exceptions correctly. Thanks, Gennady
47912           Bystritsky.
47914 Fri Oct 10 07:50:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47916         * eval.c (is_defined): inheritance line adjustment as like as
47917           rb_call_super().
47919 Fri Oct 10 01:19:00 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47921         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): add
47922           optional argument to specify the DirectoryString type
47923           (ASN1::UTF8STRING by default). RFC3280 deprecates PrintableString
47924           for DirectoryString, and strongly requires to use UTF8String for
47925           all certificates issued after December, 31 2003.
47927         * ext/openssl/lib/openssl/x509.rb (X509::Name::parse): ditto.
47929 Thu Oct  9 23:50:21 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47931         * eval.c (rb_thread_start_0): prevent thread from GC.
47932           [ruby-dev:21572]
47934 Thu Oct  9 19:11:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47936         * eval.c (rb_thread_start_0): non-volatile should be restored from
47937           volatile.
47939 Thu Oct  9 17:43:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47941         * eval.c (proc_save_safe_level, proc_get_safe_level,
47942           proc_set_safe_level): save/restore safe level 1..4.
47944 Thu Oct  9 16:33:23 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47946         * marshal.c (r_object0): remove unnecessary iv restoration for
47947           USRMARSHAL. [ruby-dev:21582]
47949         * marshal.c (w_object): dump generic instance variables from
47950           a string from '_dump'.
47952         * variable.c (rb_generic_ivar_table): return 0 if obj's FL_EXIVAR
47953           is not set.
47955         * time.c (time_dump): copy instance variables to dumped string, to
47956           be included in the marshaled data.
47958         * bignum.c (rb_big2ulong): add range check to ensure round trip.
47960 Thu Oct  9 15:45:27 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47962         * pack.c (uv_to_utf8): change message to "out of range", since
47963           negative values are not "too big". [ruby-dev:21567]
47965 Thu Oct  9 14:05:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47967         * eval.c (rb_set_end_proc, rb_exec_end_proc): restore safe level.
47968           [ruby-dev:21557]
47970 Thu Oct  9 10:51:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47972         * eval.c (rb_yield_0): no error if block is empty.
47974 Thu Oct  9 06:43:33 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47976         * eval.c (localjump_error): id should be ID.
47978         * eval.c (rb_eval): nd_rval is set in copy_node_scope().
47980         * eval.c (rb_yield_0): unused variable.
47982         * eval.c (rb_yield_0): nothing to do for empty node.
47984         * eval.c (call_end_proc, proc_invoke): adjust backtrace in END.
47985           [ruby-dev:21551]
47987         * eval.c (rb_thread_start_0): set the value by break as the result.
47988           [ruby-dev:21552]
47990         * eval.c (rb_thread_start_0, rb_thread_raise, rb_callcc): save
47991           variables across THREAD_SAVE_CONTEXT.
47993 Thu Oct  9 12:05:46 2003  Eric Sunshine  <sunshine@sunshineco.com>
47995         * configure.in: revived NextStep, OpenStep, and Rhapsody ports which
47996           had become unbuildable; enhanced --enable-fat-binary option so that
47997           it accepts a list of desired architectures (rather than assuming a
47998           fixed list), or defaults to a platform-appropriate list if user does
47999           not provide an explicit list; made the default list of architectures
48000           for MAB (fat binary) more comprehensive; now uses -fno-common even
48001           when building the interpreter (in addition to using it for
48002           extensions), thus allowing the interpreter to be embedded into a
48003           plugin module of an external project (in addition to allowing
48004           embedding directly into an application); added checks for
48005           <netinet/in_systm.h> (needed by `socket' extension) and getcwd(); now
48006           ensures that -I/usr/local/include is employed when extensions'
48007           extconf.rb scripts invoke have_header() since extension checks on
48008           NextStep and OpenStep will fail without it if the desired resource
48009           resides in the /usr/local tree; fixed formatting of --help message.
48011         * Makefile.in: $(LIBRUBY_A) rule now deletes the archive before
48012           invoking $(AR) since `ar' on Apple/NeXT can not "update" MAB archives
48013           (see configure's --enable-fat-binary option); added rule for new
48014           missing/getcwd.c.
48016         * defines.h: fixed endian handling during MAB build (see configure's
48017           --enable-fat-binary option) to ensure that all portions of the
48018           project see the correct WORDS_BIGENDIAN value (some extension modules
48019           were getting the wrong endian setting); added missing constants
48020           GETPGRP_VOID, WNOHANG, WUNTRACED, X_OK, and type pid_t for NextStep
48021           and OpenStep; removed unnecessary and problematic HAVE_SYS_WAIT_H
48022           define in NeXT section.
48024         * dir.c: do not allow NAMLEN() macro to trust dirent::d_namlen on
48025           NextStep since, on some installations, this value always resolves
48026           uselessly to zero.
48028         * dln.c: added error reporting to NextStep extension loader since the
48029           previous behavior of failing silently was not useful; now ensures
48030           that NSLINKMODULE_OPTION_BINDNOW compatibility constant is defined
48031           for OpenStep and Rhapsody; no longer includes <mach-o/dyld.h> twice
48032           on Rhapsody since this header lacks multiple-include protection,
48033           which resulted in "redefinition" compilation errors.
48035         * main.c: also create hard reference to objc_msgSend() on NeXT
48036           platforms (in addition to Apple platforms).
48038         * lib/mkmf.rb: now exports XCFLAGS from configure script to extension
48039           makefiles so that extensions can be built MAB (see configure's
48040           --enable-fat-binary option); also utilize XCFLAGS in cc_command()
48041           (but not cpp_command() because MAB flags are incompatible with
48042           direct invocation of `cpp').
48044         * ext/curses/extconf.rb: now additionally checks for presence of these
48045           curses functions which are not present on NextStep or Openstep:
48046           bkgd(), bkgdset(), color(), curs(), getbkgd(), init(), scrl(), set(),
48047           setscrreg(), wattroff(), wattron(), wattrset(), wbkgd(), wbkgdset(),
48048           wscrl(), wsetscrreg()
48050         * ext/curses/curses.c: added appropriate #ifdef's for additional set of
48051           curses functions now checked by extconf.rb; fixed curses_bkgd() and
48052           window_bkgd() to correctly return boolean result rather than numeric
48053           result; fixed window_getbkgd() to correctly signal an error by
48054           returning nil rather than -1.
48056         * ext/etc/etc.c: setup_passwd() and setup_group() now check for null
48057           pointers before invoking rb_tainted_str_new2() upon fields extracted
48058           from `struct passwd' and `struct group' since null pointers in some
48059           fields are common on NextStep/OpenStep (especially so for the
48060           `pw_comment' field) and rb_tainted_str_new2() throws an exception
48061           when it receives a null pointer.
48063         * ext/pty/pty.c: include "util.h" for strdup()/ruby_strdup() for
48064           platforms such as NextStep and OpenStep which lack strdup().
48066         * ext/socket/getaddrinfo.c: cast first argument of getservbyname(),
48067           gethostbyaddr(), and gethostbyname() from (const char*) to non-const
48068           (char*) for older platforms such as NextStep and OpenStep.
48070         * ext/socket/socket.c: include "util.h" for strdup()/ruby_strdup() for
48071           platforms such as NextStep and OpenStep which lack strdup(); include
48072           <netinet/in_systm.h> if present for NextStep and OpenStep; cast first
48073           argument of gethostbyaddr() and getservbyname() from (const char*) to
48074           non-const (char*) for older platforms.
48076         * ext/syslog/syslog.c: include "util.h" for strdup()/ruby_strdup() for
48077           platforms such as NextStep and OpenStep which lack strdup().
48079 Wed Oct  8 22:19:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48081         * lib/test/unit.rb: removed installation instructions.
48083         * lib/test/unit/ui/testrunnermediator.rb: moved the run flag to a more
48084           central location.
48086         * lib/test/unit.rb: ditto.
48088         * lib/test/unit.rb: extracted the running code in to AutoRunner.
48090         * lib/test/unit/autorunner.rb: added.
48092         * lib/test/unit/collector/objectspace.rb: extracted common test
48093           collection functionality in to a module.
48095         * lib/test/unit/collector.rb: ditto; added.
48097         * test/testunit/collector/test_objectspace.rb: ditto.
48099         * lib/test/unit/collector/dir.rb: added. Supports collecting tests out
48100           of a directory structure.
48102         * test/testunit/collector/test_dir.rb: added.
48104         * test/runner.rb: simplified to use the new capabilities.
48106 Tue Oct  7 15:23:09 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48108         * test/ruby/test_beginendblock.rb: add tests for nested BEGIN/END.
48110         * test/ruby/beginmainend.rb: add tests for nested BEGIN/END.
48112         * test/ruby/endblockwarn.rb: new file added to test of END-in-method
48113           warning.
48115 Tue Oct  7 12:23:47 2003  Tanaka Akira  <akr@m17n.org>
48117         * ext/fcntl/fcntl.c (Init_fcntl): define Fcntl::O_ACCMODE.
48119         * ext/socket/extconf.rb: useless assignment removed.
48121 Tue Oct  7 09:13:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48123         * test/ruby/test_beginendblock.rb (test_endinmethod): END{} is now
48124           allowed in eval.
48126 Tue Oct  7 04:15:25 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48128         * parse.y (stmt): should not expand mrhs if lhs is solely starred.
48130 Tue Oct  7 02:57:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48132         * parse.y (stmt): rhs of multiple assignment should not be
48133           expanded using "to_a". [ruby-dev:21527]
48135 Tue Oct  7 01:42:34 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48137         * ext/openssl/ossl_asn1.c (ossl_asn1_get_asn1type): use appropriate
48138           free function for ASN1_OBJECT.
48140         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_sn): add new function for
48141           ASN1::ObjectId#sn; it returns short name text representation of OID.
48143         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_ln): add new function for
48144           ASN1::ObjectId#ln; it returns long name text representation of OID.
48146         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_oid): add new function for
48147           ASN1::ObjectId#oid; it returns numerical representation of OID.
48149 Mon Oct  6 22:59:46 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48151         * lib/csv.rb (IOReader, BasicWriter): call binmode when a given IO
48152           respond_to?(:binmode).  record separator was wrong when you gave
48153           text mode IO to Reader.parse and Writer.generate.
48155         * test/csv/test_csv.rb: add tests for above change.
48157 Sun Oct  5 23:27:09 2003  Tanaka Akira  <akr@m17n.org>
48159         * ext/socket/extconf.rb: check recvmsg even if sendmsg is exists.
48161         * ext/socket/socket.c (thread_read_select): restored.
48163 Mon Oct  6 16:23:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48165         * marshal.c (w_object): wrong method name in the message.
48167 Mon Oct  6 16:02:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48169         * parse.y (stmt): END in method should cause warning.
48170           [ruby-dev:21519]
48172 Mon Oct  6 15:17:23 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48174         * test/ruby/test_iterator.rb (test_block_argument_without_paren):
48175           added. (follows sample/test.rb)
48177 Mon Oct  6 11:57:06 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48179         * test/ruby/test_beginendblock.rb, test/ruby/beginmainend.rb: added
48180           test for eval-ed BEGIN END order.
48182 Mon Oct  6 09:19:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48184         * marshal.c (w_object): should pass "weak" value to next level.
48185           [ruby-dev:21496]
48187         * eval.c (proc_alloc): should not use cached object if klass is
48188           different. [ruby-talk:83685]
48190 Sun Oct  5 23:27:09 2003  Tanaka Akira  <akr@m17n.org>
48192         * lib/pathname.rb: version information is added in document.
48194 Sun Oct  5 23:07:03 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48196         * eval.c (rb_f_END): block should be given.  [ruby-dev:21497]
48198 Sun Oct  5 22:51:23 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48200         * lib/ext/openssl/extconf.rb: add check for some engine functions
48201           unavailable in OpenSSL-0.9.6.
48203         * lib/ext/openssl/ossl_engine.c: ditto.
48205 Sun Oct  5 17:56:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48207         * eval.c (rb_eval): fix evaluation order.  [ruby-list:38431]
48209 Sun Oct  5 15:05:06 2003  akira yamada  <akira@ruby-lang.org>
48211         * test/uri/*: translated RUNIT to Test::Unit.
48213 Sun Oct  5 14:37:39 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48215         * lib/xsd/datatypes.rb: Rational -> Decimal string bug fix.
48217         * test/soap/marshal/test_marshal.rb: ditto.
48219         * test/soap/calc/test_calc_cgi.rb: add Config::CONFIG["EXEEXT"] to
48220           RUBYBIN.
48222 Sun Oct  5 13:47:22 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48224         * test/ruby/test_beginendblock.rb, test/ruby/beginmainend.rb: add tests
48225           about scope, order and allowed syntax.
48227 Sun Oct  5 11:54:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48229         * test/ruby/envutil.rb: added.  split "rubybin" from test_system.rb.
48231         * test/ruby/test_system.rb: use envutil.rb
48233         * test/ruby/test_beginendblock.rb: added.
48235         * test/ruby/beginmainend.rb: added.  used in test_beginendblock.rb.
48237 Sun Oct  5 11:23:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48239         * test/testunit/runit/test_testresult.rb: removed some unnecessary
48240           cruft.
48242 Sun Oct  5 11:14:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48244         * lib/rubyunit.rb: aliasing TestCase into the top level is
48245           problematic.
48247         * lib/runit/assert.rb: fixed a couple of bugs caused by recent
48248           refactoring in Test::Unit.
48250         * test/testunit/runit/*: added.
48252 Sun Oct  5 10:55:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48254         * lib/open-uri.rb (URI::Generic#find_proxy): no_proxy support did not
48255           work.  [ruby-dev:21484]
48257 Sun Oct  5 09:52:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48259         * lib/test/unit/assertions.rb: will use pp for output if available.
48260           Can be disabled by setting Assertions.use_pp = false.
48262         * test/testunit/test_assertions.rb: made a small change to exception
48263           formatting.
48265 Sun Oct  5 07:42:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48267         * lib/test/unit/assertions.rb: made small improvements to assertion
48268           messages. Deprecated Assertions#assert_not_nil; use #assert instead.
48270         * test/testunit/test_assertions.rb: ditto.
48272         * test/testunit/util/test_procwrapper.rb: use #assert instead of
48273           #assert_not_nil.
48275 Sun Oct  5 04:10:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48277         * lib/test/unit/assertions.rb: refactored message building.
48279 Sun Oct  5 03:40:22 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48281         * ext/openssl/ossl_asn1.h: global symbols should be declared
48282           as external.
48284 Sun Oct  5 03:03:20 2003  akira yamada  <akira@ruby-lang.org>
48286         * test/ruby/test_exception.rb (test_else): added.
48288 Sun Oct  5 02:12:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48290         * lib/test/unit/assertions.rb: changed assertion messages to rely more
48291           heavily on #inspect. Added backtrace filtering for exceptions in
48292           assertion messages.
48294         * test/testunit/test_assertions.rb: ditto.
48296 Sun Oct  5 02:12:00 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
48298         * lib/drb/acl.rb, lib/drb/ssl.rb: added.
48300         * lib/drb/drb.rb: exit from a thread using 'break'.
48302 Sat Oct  4 21:49:14 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48304         * gc.c (Init_stack): the type of space is changed to unsigned int
48305           from double.  [ruby-dev:21483]
48307 Sat Oct  4 17:52:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48309         * lib/soap/netHttpClient.rb: follow http-access2.  hosts which matches
48310           ENV['no_proxy'] or ENV['NO_PROXY'] are not proxyed.
48311           - [,:] separated. ("ruby-lang.org:rubyist.net")
48312           - no regexp. (give "ruby-lang.org", not "*.ruby-lang.org")
48313           - if you want specify host by IP address, give full address.
48314             ("192.168.1.1, 192.168.1.2")
48316         * lib/soap/rpc/cgistub.rb: return "Status: XXX MMM" line.
48318         * test/runner.rb: give testsuite name.
48320 Sat Oct  4 15:16:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48322         * marshal.c (w_object): instance variable dump do not cause error
48323           for objects that cannot be dumped, if they traversed from
48324           marshal_dump.  they are just ignored.
48326         * gc.c (Init_stack): cast "space" (doble value) into unsigned
48327           int.  should run on PowerPC.
48329         * eval.c (rb_eval): should not execute else part if any exception
48330           is caught. [ruby-dev:21482]
48332         * parse.y (f_args): should allow unparenthesized block argument.
48334         * parse.y (f_rest_arg): should allow unparenthesized rest
48335           argument.
48337 Sat Oct  4 14:59:51 2003  Tanaka Akira  <akr@m17n.org>
48339         * lib/pathname.rb (initialize): raise ArgumentError if argument has
48340           '\0' character.
48341           (relative_path_from): new method.
48342           (each_entry): new method for replacement of dir_foreach.
48343           (foreach, foreachline, dir_foreach, chdir): obsoleted.
48345 Sat Oct  4 12:58:48 2003  akira yamada  <akira@ruby-lang.org>
48347         * test/uri/* (6 files): added.
48349 Sat Oct  4 12:44:45 2003  akira yamada  <akira@ruby-lang.org>
48351         * lib/uri/ftp.rb, lib/uri/mailto.rb: renamed to #to_s from #to_str.
48353 Sat Oct  4 07:33:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48355         * lib/test/unit/testsuite.rb: changed #<< to return self, and added
48356           #delete.
48358         * test/testunit/test_testsuite.rb: ditto. Also slightly refactored
48359           #test_size.
48361         * lib/test/unit/collector/objectspace.rb: collector now preserves the
48362           hierarchy of suites.
48364         * test/testunit/collector/test_objectspace.rb: ditto.
48366 Sat Oct  4 04:48:49 2003  why the lucky stiff  <why@ruby-lang.org>
48368         * ext/syck/rubyext.c: default keys handled.
48370         * ext/syck/syck.h: lowered default buffer size to 16k for increased
48371           performance.
48373         * test/yaml: checkin of basic unit tests.
48375 Sat Oct  4 04:24:19 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48377         * ext/openssl/extconf.rb: add check for X509V3_set_nconf.
48379         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_config):
48380           cannot implement if X509V3_set_nconf doesn't exist.
48382 Sat Oct  4 02:12:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48384         * lib/xsd/datatypes.rb: dump sign by itself.  under the problematic
48385           platform, sprintf("%+.10g", -0.0) => +0.  sigh.
48387         * sample/wsdl/amazon/*: update schema ver2 to ver3.
48389 Sat Oct  4 01:33:46 2003  Tanaka Akira  <akr@m17n.org>
48391         * lib/pathname.rb (initialize): duplicate and freeze argument.
48392           (to_s): return duplicated string.
48393           (children): new method.
48394           (each_line): new alias to foreachline.
48396 Fri Oct  3 16:13:19 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48398         * ext/openssl/ossl_asn1.c: add DER encoder and decoder.
48400         * ext/openssl/ossl_asn1.h: add OpenSSL::ASN1 module.
48402         * ext/openssl/ossl.c (Init_openssl): call Init_ossl_asn1.
48404         * ext/openssl/extconf.rb: check if X509_ATTRIBUTE has field "single".
48406         * ext/openssl/ossl_x509attr.c (ossl_x509attr_set_value): accept
48407           DER encoded data argument.
48409         * ext/openssl/ossl_x509attr.c (ossl_x509attr_get_value): return
48410           DER encoded data in OpenSSL::ASN1 types.
48412 Fri Oct  3 13:02:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48414         * lib/test/unit.rb: refactored to use optparse.
48416         * lib/test/unit.rb: added support for selecting the output
48417           level from the command-line.
48419         * lib/test/unit.rb: added a command-line switch to stop processing
48420           the command-line, allowing arguments to be passed to tests.
48422         * lib/test/unit.rb: changed the method for specifying a runner or a
48423           filter from the command-line.
48425         * lib/test/unit/collector/objectspace.rb: fixed a bug causing all
48426           tests to be excluded when the filter was set to an empty array.
48428         * test/testunit/collector/test_objectspace.rb: ditto.
48430 Fri Oct  3 08:14:32 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48432         * lib/irb/ruby-lex.rb (RubyLex::identify_identifier): support
48433           'class ::Foo' syntax. [ruby-talk:83514]
48435 Fri Oct  3 08:01:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48437         * lib/test/unit/assertions.rb: added a default message for #assert,
48438           #assert_block, and #flunk.
48440         * test/testunit/test_assertions.rb: ditto.
48442         * lib/test/unit/failure.rb: failures now show a better trace of where
48443           they occurred.
48445         * test/testunit/test_failure.rb: ditto (added).
48447         * lib/test/unit/testcase.rb: ditto.
48449         * test/testunit/test_testcase.rb: ditto.
48451         * lib/test/unit/util/backtracefilter.rb: added.
48453         * test/testunit/util/test_backtracefilter.rb: added.
48455         * lib/test/unit/error.rb: changed to use BacktraceFilter and improved
48456           output.
48458         * test/testunit/test_error.rb: ditto.
48460 Thu Oct  2 20:33:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48462         * ext/iconv/iconv.c (iconv_failure_initialize): conform with
48463           orthodox initialization method.
48465         * ext/iconv/iconv.c (iconv_fail): initialize exception instance
48466           from the class, and do not share instance variables with the
48467           others.  [ruby-dev:21470]
48469 Thu Oct  2 18:20:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48471         * time.c (Init_Time): define initialize.  [ruby-dev:21469]
48473 Thu Oct  2 17:39:38 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48475         * ext/openssl/ossl_engine.c: add a new module OpenSSL::Engine.
48476           it supports OpenSSL hardware cryptographic engine interface.
48478         * ext/openssl/ossl_engine.h: ditto.
48480         * ext/openssl/MANIFEST: add ossl_engine.c and ossl_engine.h.
48482         * ext/openssl/extconf.rb: add check for openssl/engine.h.
48484         * ext/openssl/ossl.c: call Init_ossl_engine().
48486         * ext/openssl/ossl.h: include openssl/engine.h.
48488         * ext/openssl/ossl_pkey_{rsa,dsa,dh}.c: check if underlying
48489           EVP_PKEY referes engine.
48491 Thu Oct  2 17:22:37 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48493         * time.c (time_load): restore instance variables (if any) before
48494           loading from marshaled data.
48496 Thu Oct  2 14:19:15 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48498         * ext/iconv/iconv.c (iconv_fail): now yield erred substring, and
48499           set error object to $!.
48501         * ext/iconv/iconv.c (iconv_convert): error handler block should
48502           return appended part and the rest.  if rest is nil, the
48503           conversion stops.
48505 Thu Oct  2 12:00:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48507         * variable.c (rb_const_defined_0): look up constants in Object as
48508           well.  [ruby-dev:21458]
48510         * test/ruby/test_defined.rb (TestDefined::test_defined): test for
48511           constants.
48513 Thu Oct  2 11:17:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48515         * lib/test/unit/assertions.rb: should not capture an
48516           AssertionFailedError unless explicitly requested.
48518         * test/testunit/test_assertions.rb: ditto.
48520         * test/testunit/collector/test_objectspace.rb: fixed a test failure
48521           caused by methods being returned in different orders on different
48522           platforms by moving test sorting from TestSuite into the locations
48523           where suites are constructed. [ruby-talk:83156]
48525         * lib/test/unit/testcase.rb: ditto.
48527         * lib/test/unit/testsuite.rb: ditto.
48529         * lib/test/unit/collector/objectspace.rb: ditto.
48531 Thu Oct  2 03:25:01 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
48533         * eval.c (rb_thread_raise): prototype; avoid VC++ warning.
48535 Thu Oct  2 01:37:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48537         * time.c (time_mdump): new marshal dumper. _dump is still
48538           available for compatibility.
48540         * time.c (time_mload): new marshal loader.
48542         * marshal.c (w_object): preserve instance variables for objects
48543           with marshal_dump.
48545         * marshal.c (r_object0): restore instance variables before calling
48546           marshal_load.
48548         * error.c (rb_warn_m): always return nil.
48550 Thu Oct  2 01:32:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48552         * eval.c (rb_f_block_given_p): real required condition is
48553           ruby_frame->prev->iter == ITER_CUR.
48555         * eval.c (rb_block_given_p): ditto.
48557         * eval.c (block_pass): update ruby_frame->iter only when previous
48558           value is ITER_NOT.
48560 Thu Oct  2 01:02:35 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48562         * variable.c (rb_const_defined_at): should exclude constants from
48563           Object when TYPE(klass) == T_MODULE *and* exclude is on.
48564           [ruby-dev:21458]
48566         * variable.c (rb_const_get_0): do not lookup constants from Object
48567           when TYPE(klass) == T_MODULE *and* exclude is on.
48569 Thu Oct  2 00:21:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48571         * test/logger/test_logger.rb: unlinking file before close causes
48572           problem under win32 box.
48574         * lib/xsd/datatypes.rb(XSDFloat, XSDDouble): add +/- sign explicitly
48575           when stringified and embedded into XML instance.  Ruby's sprintf may
48576           format -0.0 as "0.0" (no minus sign) depending on underlying C
48577           sprintf implementation.
48579         * test/xsd/test_xsd.rb, test/soap/test_basetype.rb: follow above change.
48581         * test/soap/calc/*: give httpd config param "CGIInterpreter".
48582           "/usr/bin/env ruby" thing does not work under non-Unix boxes.
48584 Thu Oct  2 00:25:21 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48586         * signal.c (ruby_signal_name): adjust to the prototype.
48588         * process.c (pst_inspect): ditto.
48590         * ext/etc/etc.c (etc_getgrent, Init_etc): typo.
48592 Wed Oct  1 20:49:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48594         * gc.c (heaps): manage slots and limits together.  [ruby-dev:21453]
48596         * gc.c (add_heap): should not clear heaps slot even if realloc()
48597           failed.
48599 Wed Oct  1 20:36:49 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48601         * MANIFEST: add wince/mkconfig_wce.rb.
48603 Wed Oct  1 17:22:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48605         * ext/etc/etc.c: add new functions: setpwent, getpwent, endpwent,
48606           setgrent, getgrent, endgrent.
48608         * ext/socket/socket.c (sock_s_gethostbyname): do not reverse lookup.
48610 Wed Oct  1 17:01:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48612         * eval.c (rb_load): Object scope had priority over required file
48613           scope.  [ruby-dev:21415]
48615 Wed Oct  1 14:09:53 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
48617         * wince/mkconfig_wce.rb: sorry, forget to commit.
48619 Wed Oct  1 10:08:42 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
48621         * wince/setup.mak: add sigmarionIII SDK support.
48623         * wince/Makefile.sub: ditto.
48625         * wince/mkexports.rb: fix linker error in SH4.
48627         * wince/mkconfig_wce.rb: camouflage RUBY_PLATFORM for compiling ext.
48629 Wed Oct  1 08:02:52 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
48631         * wince/time_wce.c (time): add zero check.
48633 Tue Sep 30 16:11:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48635         * Makefile.in: copy lex.c from $(srcdir) if it's not the current
48636           directory.  [ruby-dev:21437]
48638 Tue Sep 30 11:29:23 2003  Tanaka Akira  <akr@m17n.org>
48640         * process.c (pst_inspect): describe stopped process "stopped".
48642 Tue Sep 30 09:31:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48644         * test/runner.rb: glob for directories.
48646 Tue Sep 30 09:11:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48648         * eval.c (rb_eval): while/until should not capture break unless
48649           they are destination of the break.
48651 Tue Sep 30 03:12:02 2003  Minero Aoki  <aamine@loveruby.net>
48653         * lib/net/http.rb (finish): revert to 1.93.
48655         * lib/net/pop.rb (finish): revert to 1.60.
48657         * lib/net/smtp.rb (finish): revert to 1.67.
48659         * lib/net/http.rb (do_start): ensure to close socket if failed to
48660           start session.
48662         * lib/net/pop.rb (do_start): ditto.
48664         * lib/net/smtp.rb (do_start): ditto.
48666         * lib/net/smtp.rb: SMTP#started? wrongly returned false always.
48668 Tue Sep 30 02:54:49 2003  Minero Aoki  <aamine@loveruby.net>
48670         * test/ruby/test_iterator.rb: new test
48671           test_break__nested_loop[123].
48673 Mon Sep 29 23:39:13 2003  Minero Aoki  <aamine@loveruby.net>
48675         * lib/net/http.rb (finish): does not raise IOError even if
48676           !started?, to allow closing socket which was opened before
48677           session started.
48679         * lib/net/pop.rb (finish): ditto.
48681         * lib/net/smtp.rb (finish): ditto.
48683 Mon Sep 29 19:06:51 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48685         * ext/win32ole/extconf.rb: add windows.h checking.
48686           (ruby-bugs:PR#1185)
48688 Mon Sep 29 16:18:30 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48690         * lib/logger.rb: check if the given logdevice object respond_to :write
48691           and :close, not is_a? IO.  duck duck.
48693         * test/logger/test_logger.rb: self IO.pipe reading/writing may be
48694           locked by the flood.  use tempfile.
48696         * lib/wsdl/xmlSchema/data.rb: wrong constant reference.
48698 Mon Sep 29 16:11:23 2003  Minero Aoki  <aamine@loveruby.net>
48700         * test/fileutils/test_fileutils.rb: clean up temporary symlink.
48701           Patched by NaHi.  [ruby-dev:21420]
48703 Mon Sep 29 11:16:55 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48705         * eval.c (rb_thread_atfork): wrong format specifier.
48706           [ruby-dev:21428]
48708         * process.c (pst_inspect): better description.
48710 Mon Sep 29 02:31:44 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48712         * lib/webrick/utils.rb (Utils::su): use setgid and setuid to
48713           set real and effective IDs. and setup group access list by
48714           initgroups.
48716 Sun Sep 28 11:14:19 2003  Koji Arai  <jca02266@nifty.ne.jp>
48718         * ext/digest/digest.c (Init_digest): `copy_object' was deprecated.
48719           `initialize_copy' should be defined.
48721         * ext/stringio/stringio.c (Init_stringio): ditto.
48723 Sat Sep 27 18:25:13 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48725         * lib/xsd/charset.rb: XSD::Charset.is_ces did return always true under
48726           $KCODE = "NONE" environment.  check added.
48728         * test/xsd/test_xsd.rb: add tests for above fix.
48730 Sat Sep 27 15:58:50 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48732         * lib/soap/rpc/cgistub.rb: make logging severity threshold higher.
48734         * lib/soap/rpc/standaloneServer.rb: defer WEBrick server start to give
48735           a chance to reset logging severity threshold.
48737         * test/soap/calc/test_*, test/soap/helloworld/test_helloworld.rb: run
48738           silent.
48740 Sat Sep 27 09:44:18 2003  Minero Aoki  <aamine@loveruby.net>
48742         * test/fileutils/test_fileutils.rb: clear all errors on Windows.
48743           [ruby-dev:21417]
48745         * test/fileutils/test_nowrite.rb: ditto.
48747 Sat Sep 27 04:57:07 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48749         * test/ruby/test_file.rb: new file.  only asserts unlink-before-close
48750           behaviour now.
48752         * test/soap/marshal/test_digraph.rb: should close before unlink.
48753           unlink-before-close pattern is not needed here.
48755 Sat Sep 27 03:32:37 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48757         * test/soap/*, test/wsdl/*, test/xsd/*: move TestCase classes into
48758           each module namespace.  TestMarshal in
48759           test/soap/marshal/test_marshal.rb crashed with
48760           test/ruby/test_marshal.rb.
48762 Sat Sep 27 01:30:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
48764         * ext/socket/socket.c (ruby_connect): on win32, type of the 4th
48765           argument of getsockopt is char *.
48767 Fri Sep 26 18:35:40 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48769         * lib/resolv-replace.rb: 1.8 compliance.  [ruby-talk:82946]
48771 Fri Sep 26 17:39:27 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48773         * test/ruby/test_marshal.rb: add test for ruby's objects.
48775 Fri Sep 26 09:52:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48777         * defines.h (flush_register_windows): use volatile only for gcc on
48778           Solaris.  [ruby-dev:21403]
48780         * lib/mkmf.rb (xsystem): use system directly to honor shell meta
48781           charaters.
48783 Fri Sep 26 00:10:13 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48785         * lib/README: updated.
48787 Thu Sep 25 17:48:10 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
48789         * ext/openssl/ossl.c (ossl_buf2str): fix type of 1st argument for
48790           rb_protect.
48792         * ext/openssl/ossl_hmac.c (ossl_hmac_digest): should return meaningful
48793           value.
48795 Thu Sep 25 09:00:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48797         * lib/ostruct.rb: Added OpenStruct#==.
48799         * test/ostruct/test_ostruct.rb: Added.
48801 Thu Sep 25 07:55:26 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48803         * ext/win32ole/win32ole.c, ext/openssl/ossl_pkey_dsa.c,
48804           ext/openssl/ossl_pkey_rsa.c, ext/bigdecimal/bigdecimal.h: must
48805           not use C++ or C99 style comment yet.  (ruby-bugs:PR#1184)
48807 Thu Sep 25 00:23:22 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48809         * MANIFEST: add SOAP4R.
48811 Thu Sep 25 00:13:15 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48813         * lib/soap/* (29 files): SOAP4R added.
48815         * lib/wsdl/* (42 files): WSDL4R added.
48817         * lib/xsd/* (12 files): XSD4R added.
48819         * test/soap/* (16 files): added.
48821         * test/wsdl/* (2 files): added.
48823         * test/xsd/* (3 files): added.
48825         * sample/soap/* (27 files): added.
48827         * sample/wsdl/* (13 files): added.
48829 Wed Sep 24 02:08:11 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48831         * lib/webrick/httpservlet/cgihandler.rb: conform to mswin32.
48832           [ruby-talk:82735], [ruby-talk:82748], [ruby-talk:82818]
48834 Tue Sep 23 23:10:16 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48836         * lib/logger.rb: add Logger#<<(msg) for writing msg without any
48837           formatting.
48839         * test/logger/test_logger.rb: ditto.
48841 Tue Sep 23 20:47:51 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48843         * error.c (rb_warn_m): should not warn if -W0 is specified.
48844           [ruby-talk:82675]
48846 Mon Sep 22 21:28:57 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48848         * MANIFEST: updated.
48850 Mon Sep 22 19:22:26 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48852         * configure.in (AC_CHECK_FUNCS): add setuid and setgid.
48854 Mon Sep 22 12:34:55 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48856         * util.c (ruby_strtod): skip preceding zeros before counting
48857           digits in the mantissa. (ruby-bugs:PR#1181)
48859 Sun Sep 21 04:12:36 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48861         * ext/openssl/ossl_ocsp.c (ossl_ocspreq_initialize): the argument
48862           should be a String.
48864         * ext/openssl/ossl_ocsp.c (ossl_ocspres_initialize): ditt.
48866         * ext/openssl/ossl_x509attr.c (ossl_x509attr_initialize): ditto.
48868         * ext/openssl/ossl_x509ext.c (ossl_x509ext_initialize): ditto.
48870         * ext/openssl/ossl_x509ext.c (ossl_x509ext_set_value): ditto.
48872 Sat Sep 20 11:49:05 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48874         * lib/logger.rb: typo fixed.
48876         * test/logger/test_logger.rb: new file.
48878 Fri Sep 19 11:39:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48880         * test/testunit/*: Added.
48882         * lib/test/unit.rb: Documentation update.
48884         * lib/test/unit/ui/console/testrunner.rb (TestRunner#initialize):
48885           Ditto.
48887         * lib/test/unit.rb: Factored out an ObjectSpace collector.
48889         * lib/test/unit/collector/objectspace.rb: Ditto.
48891         * sample/testunit/*: Added.
48893 Fri Sep 19 01:00:48 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48895         * lib/webrick/log.rb (BasicLog#log): get rid of as ineffectual
48896           condition.
48898         * lib/webrick/log.rb (BasicLog#format): add "\n" to message.
48900 Thu Sep 18 22:43:20 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48902         * eval.c (proc_invoke): should push PROT_PCALL tag for orphans.
48904         * eval.c (proc_invoke): should update "result" for orphans.
48906 Thu Sep 18 20:33:03 2003  Tietew  <tietew-ml-ruby-list@tietew.net>
48908         * parse.y (str_xquote): do not prepend escapes in
48909           backqoute literals.  [ruby-list:38409]
48911 Thu Sep 18 20:30:17 2003  Tanaka Akira  <akr@m17n.org>
48913         * lib/pathname.rb: update document.
48915 Thu Sep 18 15:27:05 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48917         * lib/logger.rb: new file.  Logger, formerly called devel-logger or
48918           Devel::Logger.
48920         * sample/logger/*: new file.  samples of logger.rb.
48922 Wed Sep 17 23:41:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48924         * eval.c (localjump_destination): should not raise ThreadError
48925           exception for "break". [ruby-dev:21348]
48927         * eval.c (proc_invoke): use result instead of prot_tag->retval.
48928           retval is no longer propagated to the ancestors.
48930 Wed Sep 17 20:34:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48932         * parse.y (tokadd_string, parse_string, yylex): escaped terminator
48933           is now interpreted as is.  [ruby-talk:82206]
48935 Wed Sep 17 18:52:36 2003  Minero Aoki  <aamine@loveruby.net>
48937         * test/fileutils/fileassertions.rb: new file.
48939         * test/fileutils/test_fileutils.rb: new file.
48941         * test/fileutils/test_nowrite.rb: new file.
48943 Wed Sep 17 18:51:02 2003  Minero Aoki  <aamine@loveruby.net>
48945         * test/strscan/test_stringscanner.rb: require test/unit.
48947 Wed Sep 17 18:35:34 2003  Minero Aoki  <aamine@loveruby.net>
48949         * test/strscan/test_stringscanner.rb: new file.
48951 Wed Sep 17 18:03:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48953         * ext/openssl: all files are reviewed to simplify and avoid memory leak.
48955         * ext/openssl/extconf.rb: add check for assert.h.
48957         * ext/openssl/ossl.c (ossl_buf2str): new function to convert
48958           C buffer to String and free buffer.
48960         * ext/openssl/ossl.c (ossl_x509_ary2sk): new function to convert
48961           Array of OpenSSL::X509 to STACK_OF(X509) with exception safe.
48963         * ext/openssl/ossl.c (ossl_to_der, ossl_to_der_if_possible): new
48964           functions to convert object to DER string.
48966         * ext/openssl/ossl.h: ditto.
48968         * ext/openssl/ossl_bio.c (ossl_membio2str): new function to convert
48969           BIO to String object and free BIO.
48971         * ext/openssl/ossl_bio.h: ditto.
48973         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_to_der): add for "to_der".
48975         * ext/openssl/ossl_x509name.c (ossl_x509name_to_der): ditto.
48977         * ext/openssl/ossl_x509ext.c (ossl_x509ext_to_der): ditto.
48979         * ext/openssl/ossl_x509ext.c (create_ext_from_array): removed
48980           and reimplement in openssl/x509.rb.
48982         * ext/openssl/ossl_x509attr.c: reimplemented and disable some
48983           method temporarily. this class doesn't work fine without ASN.1
48984           data support;-) I'll rewrite in near future.
48986         * ext/openssl/lib/openssl/x509.c (X509::Attribute): get rid off
48987           unused code.
48989         * ext/openssl/lib/openssl/x509.c (X509::ExtensionFactory): refine all.
48991 Tue Sep 16 22:25:06 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48993         * test/csv/test_csv.rb: add negative tests of row_sep.
48995 Tue Sep 16 18:02:36 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48997         * regex.c (re_compile_pattern): should not translate character
48998           class range edge. [ruby-list:38393]
49000 Tue Sep 16 16:47:56 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49002         * MANIFEST: add test/csv/mac.csv.
49004         * win32/Makefile.sub, bcc32/Makefile.sub (test): add phony NUL target.
49006 Mon Sep 15 19:02:52 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49008         * lib/csv.rb: add extra pamameter to specify row(record) separater
49009           character.  To parse Mac's CR separated CSV, do like this.
49010             CSV.open("mac.csv", "r", ?,, ?\r) { |row| p row.to_a }
49011           The 3rd parameter in this example ?, is for column separater and the
49012           4th ?\r is for row separater.  Row separater is nil by default.  Nil
49013           separater means "\r\n" or "\n".
49015         * test/csv/test_csv.rb: add tests for above feature.
49017         * test/csv/mac.csv: added.  Sample CR separated CSV file.
49019 Fri Sep 12 22:41:48 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
49021         * ext/openssl/ossl.c: move ASN.1 stuff to ossl_asn1.[ch]
49023         * ext/openssl/ossl.c: move BIO stuff to ossl_bio.[ch]
49025         * ext/openssl/ossl_asn1.[ch]: new files
49027         * ext/openssl/ossl_bio.[ch]: new files
49029 Fri Sep 12 12:30:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49031         * intern.h (rb_disable_super, rb_enable_super): replace with dummy
49032           expressions instead of prototypes.  the functions remain yet for
49033           binary compatibility.  [ruby-talk:81758]
49035 Fri Sep 12 12:09:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49037         * bignum.c (rb_big_and): convert argument using 'to_int'.
49039         * bignum.c (rb_big_or): ditto.
49041         * bignum.c (rb_big_xor): ditto.
49043 Fri Sep 12 07:06:14 2003  David Black  <dblack@superlink.net>
49045         * lib/scanf.rb: Took out useless @matched_item variable; some small
49046           refactoring.
49048 Thu Sep 11 08:43:44 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49050         * eval.c (rb_f_require): allow "require" on $SAFE>0, if feature
49051           name is not tainted.
49053         * lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser::stream):
49054           Supports StringIO.
49056 Wed Sep 10 22:47:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49058         * ext/openssl/ossl.h: add a workaround for win32 platform.
49059           libeay32.dll doesn't export functions defined in conf_api.h.
49061         * ext/openssl/ossl_config.c (ossl_config_initialize): ditto.
49063         * ext/openssl/ossl_config.c (ossl_config_add_value): ditto.
49065         * ext/openssl/ossl_config.c (set_conf_section_i): should check
49066           if the argument is Array.
49068 Wed Sep 10 22:41:54 2003  Tietew  <tietew@tietew.net>
49070         * eval.c (win32_get_exception_list): avoid VC7 warning.
49071           [ruby-win32:577]
49073 Tue Sep  9 10:39:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49075         * eval.c (struct tag): dst should be VALUE.
49077 Tue Sep  9 10:39:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49079         * eval.c (localjump_destination): stop at the scope where the current
49080           block was created.  [ruby-dev:21353]
49082 Tue Sep  9 05:17:04 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49084         * ext/openssl/ossl_config.rb: avoid compile error in OpenSSL-0.9.6.
49086 Tue Sep  9 02:41:35 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
49088         * ext/openssl/ossl_config.c: Refine compatibility.
49090 Tue Sep  9 01:50:45 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49092         * lib/webrick/httpserver.rb (HTTPServer#access_log): add "\n" to
49093           the message.
49095         * lib/webrick/log.rb (BasicLog#log): add "\n" only if needed.
49097 Mon Sep  8 22:15:33 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
49099         * ext/tk/lib/multi-tk.rb: modify security check at creating
49100           a new interpreter
49102 Mon Sep  8 20:00:12 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49104         * lib/optparse.rb, lib/optparse/version.rb: search also all
49105           capital versions.
49107 Mon Sep  8 19:26:33 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49109         * ext/openssl/ossl.h: include openssl/conf.h and openssl/conf_api.h.
49111         * ext/openssl/ossl_config.c: refine all with backward compatibility.
49113         * ext/openssl/ossl_config.h: export GetConfigPtr() and DupConfigPtr().
49115         * ext/openssl/ossl_x509.c: added new constants under X509 module.
49116           DEFAULT_CERT_AREA, DEFAULT_CERT_DIR, DEFAULT_CERT_FILE,
49117           DEFAULT_CERT_DIR_ENV, DEFAULT_CERT_FILE_ENV and DEFAULT_PRIVATE_DIR.
49119         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_free): don't free
49120           the members of the struct. it's left to GC.
49122         * ext/openssl/ossl_x509ext.c (ossl_x509_set_config): add for config=.
49124         * ext/openssl/ossl_x509ext.c (Xossl_x509extfactory_initialize):
49125           add attr readers: issuer_certificate, subject_certificate,
49126           subject_request, crl and config.
49128 Mon Sep  8 18:26:41 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49130         * lib/webrick/accesslog.rb (AccessLog::setup_params): use req.port
49131           instead of config[:Port] or req.request_uri.port.
49133         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): ditto.
49135         * lib/webrick/httpservlet/filehandler.rb (FileHandler#dir_list): ditto.
49137         * lib/webrick/config.rb: :Listen option never be used.
49139         * lib/webrick/server.rb (GenericServer#initialize): don't use :Listen
49140           option and add warning message.
49142         * lib/webrick/log.rb (BasicLog#<<): shortcut of log(INFO, ...).
49144         * lib/webrick/httpserver.rb (HTTPServer#accesslog): use << for logging.
49146 Sun Sep  7 16:08:28 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
49148         * ext/tcltklib/tcltklib.c (lib_mainloop_core): fixed signal-trap bug
49150         * ext/tk/lib/*.rb: Ruby/Tk works at $SAFE == 4
49152 Sat Sep  6 02:26:34 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49154         * test/ruby/test_*.rb: assert_same, assert_match, and so on.
49156 Sat Sep  6 18:45:46 2003  Mauricio Fernandez  <batsman.geo@yahoo.com>
49158         * parse.y (assignable): call rb_compile_error(), not rb_bug().
49159           [ruby-core:01523]
49161 Sat Sep  6 17:40:41 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49163         * ext/openssl/ruby_missing.c: rid of unnecessary backward
49164           compatibility stuff. and remove DEFINE_ALLOC_WRAPPER from
49165           all sources.
49167         * ext/openssl/ossl_x509ext.c (X509::Extension.new): new method.
49169         * ext/openssl/ossl_x509ext.c (X509::Extension#oid=): new method.
49171         * ext/openssl/ossl_x509ext.c (X509::Extension#value=): new method.
49173         * ext/openssl/ossl_x509ext.c (X509::Extension#critical=): new method.
49175 Sat Sep  6 01:23:22 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
49177         * win32/win32.c (CreateChild): need to quote cmd if RUBYSHELL is set.
49179         * win32/win32.c (CreateChild): fix condition about whether to call
49180           shell or not.
49182 Sat Sep  6 00:36:20 2003  Nobuyoshi Nakada  <nobu.nokada@softhome.net>
49184         * Makefile.in (test): phony target.
49186         * lib/mkmf.rb (have_library, find_library): configure by library
49187           name.
49189         * lib/optparse.rb (OptionParser#order, #permute, #parse): allow an
49190           array as argument.
49192         * test/ruby/test_*.rb: moved invariants to left side in
49193           assert_equal, and use assert_nil, assert_raises and so on.
49195         * win32/win32.c (isInternalCmd): distinguish command.com and
49196           cmd.exe.
49198         * win32/win32.c (make_cmdvector): a character just after wildcard
49199           was ignored.  [ruby-core:01518]
49201 Fri Sep  5 20:27:08 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49203         * test/ruby/test_*.rb: replace 'assert(a == b)' with assert_equal(a, b)'
49205 Fri Sep  5 18:00:51 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49207         * ext/openssl/lib/openssl/x509.rb: new method X509::Name::parse.
49209         * ext/openssl/ossl_digest.c: add ossl_digest_new().
49211         * ext/openssl/ossl_digest.h: ditto.
49213         * ext/openssl/ossl_cipher.c: add ossl_cipher_new().
49215         * ext/openssl/ossl_cipher.h: ditto.
49217 Fri Sep  5 15:32:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49219         * misc/ruby-mode.el (ruby-font-lock-maybe-here-docs): should not
49220           search delimiter forward if found in backward.
49222 Fri Sep  5 13:32:48 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49224         * test/runner.rb: arguments should be keys.
49226 Fri Sep  5 12:09:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49228         * test/ruby/test_system.rb (test_system): check existence of ruby
49229           interpreter.
49231 Fri Sep  5 11:32:17 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49233         * lib/optparse.rb (--version): fix assignment/reference order.
49235         * lib/optparse.rb (OptionParser#help): new; OptionParser#to_s may
49236           be deprecated in future.
49238         * lib/optparse/version.rb (OptionParser#show_version): hide Object.
49240         * test/runner.rb: fix optparse usage.
49242         * test/runner.rb: glob all testsuits if no tests given.
49244 Fri Sep  5 10:42:58 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49246         * test/runner.rb: added.  gets testcases from command line and runs it.
49248         * test/ruby/test_gc.rb: remove useless part which was for dumping test
49249           result.
49251 Fri Sep  5 09:28:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49253         * test/ruby/test_gc.rb: added.  splitter.rb which I made to split
49254           sample/test.rb into test/ruby/test_* kindly removed GC test (the
49255           last section in the original test) to reduce things to be worried.
49257 Fri Sep  5 03:00:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49259         * test/ruby/test_iterator.rb (test_block_in_arg): add no block
49260           given tests.
49262         * test/ruby/test_iterator.rb (test_ljump): uncomment LocalJumpError
49263           test.
49265 Fri Sep  5 01:10:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49267         * test/ruby: tests for ruby itself.
49269         * test/ruby/test_*.rb: split sample/test.rb into 28 test/unit testcases.
49270           some tests could not be translates...  search '!!' mark to see it.
49272         * test/csv/test_csv.rb: should require 'csv', not '../lib/csv'.  test
49273           runner should set load path correctly.
49275 Fri Sep  5 01:03:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49277         * test/csv/test_csv.rb: close opened files for CSV::IOBuf explicitly.
49278           opened file cannot be removed under win32 box.
49280 Thu Sep  4 23:59:40 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49282         * parse.y (tokadd_string): newlines have no special meanings in
49283           %w/%W, otherwise they are ignored only when interpolation is
49284           enabled.  [ruby-dev:21325]
49286 Thu Sep  4 19:38:25 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49288         * ext/io/wait/.cvsignore: added.
49290         * ext/openssl/.cvsignore: added.
49292 Thu Sep  4 19:28:24 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49294         * sample/openssl: added.  Sample of standard distribution library
49295           should be locate in sample/{module_name}/*.
49297         * ext/openssl/sample/*: removed.  move to sample/openssl/*.
49299 Thu Sep  4 18:02:15 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49301         * test/csv/test_csv.rb: use remove_const to reduce warnings.  use
49302           Dir.tmpdir to locate working files.
49304 Thu Sep  4 17:41:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49306         * misc/ruby-mode.el (ruby-here-doc-beg-re): underscore also is
49307           valid delimiter.
49309         * misc/ruby-mode.el (ruby-here-doc-end-match): must quote
49310           arbitrary string to use as regexp.
49312         * misc/ruby-mode.el (ruby-font-lock-maybe-here-docs): must not
49313           call `ruby-here-doc-end-match' unless `ruby-here-doc-beg-re'
49314           matched.
49316 Thu Sep  4 15:40:07 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49318         * test/csv/test_csv.rb: run on test/unit original layer.
49320 Thu Sep  4 12:54:50 2003  why the lucky stiff  <why@ruby-lang.org>
49322         * ext/syck/token.c: headerless documents with root-level spacing now
49323           honored.
49325 Thu Sep  4 00:06:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49327         * eval.c (mark_frame_adj): need to adjust argv pointer if using
49328           system's alloca. [ruby-core:01503]
49330 Wed Sep  3 21:33:20 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49332         * test: add test directory.  Test::Unit aware testcases and needed
49333           files should be located in this directory.  dir/file name convention;
49334             test/{module_name}/test_{testcase_name}.rb
49335             test/{module_name}/{needed_files}
49336           someday, someone will write testrunner which searches test_*.rb and
49337           run testcases automatically.
49339         * test/csv/*: add testcase for lib/csv.rb.
49341 Wed Sep  3 01:37:09 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49343         * io.c (rb_f_gets): should call next_argv() before type check
49344           current_file. [ruby-list:38336]
49346 Tue Sep  2 20:37:15 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49348         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): warning
49349           for skipping server verification.
49351 Tue Sep  2 23:36:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49353         * eval.c (proc_invoke): should retrieve retval when pcall is true.
49355 Tue Sep  2 14:09:20 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49357         * ext/socket/extconf.rb: check s6_addr8 in in6_addr (Tru64 UNIX).
49358           the patch is submitted by nmu <nmu@users.sourceforge.jp>.
49360         * ext/socket/getaddrinfo.c (getaddrinfo): should use in6_addr8 on
49361           some platforms.
49363         * ext/socket/getnameinfo.c (getnameinfo): ditto.
49365 Tue Sep  2 14:02:19 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
49367         * ext/tcltklib/tcltklib.c (ip_invoke): fixed bug on passing a exception
49369         * ext/tk/lib/{tk.rb, tkcanvas.rb, tkfont.rb, tktext.rb}:
49370           bug fix and improvement of font control
49372 Tue Sep  2 09:51:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49374         * eval.c (rb_eval): should not handle exceptions within rescue
49375           argument.  [ruby-talk:80804]
49377 Tue Sep  2 00:44:37 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49379         * re.c (rb_memsearch): fix overrun.  [ruby-talk:80759]
49381 Tue Sep  2 00:41:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49383         * ext/iconv/iconv.c (map_charset): use lower case keys.
49385         * ext/iconv/iconv.c (iconv_fail): just yield error and return the
49386           result if a block is given.
49388         * ext/iconv/iconv.c (iconv_convert): yield error and append the
49389           result if a block is given.
49391         * ext/iconv/charset_alias.rb (charset_alias): optional third
49392           argument.
49394         * ext/iconv/charset_alias.rb (charset_alias): use CP932 instead of
49395           SHIFT_JIS on cygwin.
49397 Mon Sep  1 18:34:25 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49399         * eval.c (rb_eval): make tail recursion in ELSE clause of
49400           RESCUE a jump.
49402 Mon Sep  1 18:00:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49404         * parse.y (aref_args): forgot to call NEW_SPLAT(). reported by
49405           Dave Butcher.
49407         * eval.c (Init_Thread): protect thgroup_default.  suggested by Guy
49408           Decoux in [ruby-talk:80623]
49410 Mon Sep  1 16:59:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49412         * eval.c (rb_thread_switch): add RESTORE_EXIT; exit by another
49413           thread termination.
49415         * eval.c (rb_thread_start_0): should not error_print() within
49416           terminated thread, because $stderr used by it might be
49417           overriden now.  [ruby-dev:21280]
49419 Sun Aug 31 22:46:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49421         * eval.c (TAG_DST()): take no argument.
49423         * process.c (p_gid_sw_ensure): return VALUE.
49425 Sun Aug 31 22:27:10 2003  Hidetoshi NAGAI  <nagai@dumbo.ai.kyutech.ac.jp>
49427         * process.c (p_gid_sw_ensure): lack of function type
49429 Sun Aug 31 12:25:06 2003  Nobuyoshi Nakada  <nobu.nokada@softhome.net>
49431         * lib/optparse.rb: --version takes an optional argument; "all" or
49432           a list of package names.
49434 Sun Aug 31 10:17:02 2003  Tadayoshi Funaba  <tadf@dotrb.org>
49436         * lib/date/format.rb: yyyy/mm is not an acceptable format.
49438         * lib/time.rb: follow above.
49440 Sat Aug 30 14:25:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49442         * eval.c (rb_iter_break): should not call TAG_JUMP directly.
49444 Sat Aug 30 03:58:21 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49446         * eval.c (struct BLOCK): remove BLOCKTAG, use scope instead.
49448         * eval.c (POP_TAG): no longer propagate retval.  retval is now set
49449           directly by localjump_destination().
49451         * eval.c (localjump_destination): new function to cast
49452           return/break local jump.
49454         * eval.c (rb_yield_0): stop TAG_RETURN/TAG_BREAK escaping.
49456 Fri Aug 29 22:35:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49458         * bigdecimal.c *.html: The 2nd arg. for add,sub,mult, and div is 0,
49459           then result will be the same as +,-,*,/ respectively.
49461 Fri Aug 29 17:30:15 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
49463         * process.c: bug fix
49465         * process.c: add rb_secure(2) to methods of Process::{UID,GID,Sys}
49467         * process.c: deny handling IDs during evaluating the block given to
49468           the Process::{UID,GID}.switch method
49470         * ext/tcltklib/tcltklib.c: some methods have no effect if on slave-IP
49472         * ext/tcltklib/tcltklib.c: can create a interpreter without Tk
49474         * ext/tcltklib/tcltklib.c: bug fix on handling exceptions
49476         * ext/tcltklib/MANUAL.euc: modify
49478         * ext/tk/lib/tk.rb: freeze some core modules
49480         * ext/tk/lib/multi-tk.rb: more secure
49482         * ext/tk/lib/tk.rb: TkVariable.new(array) --> treat the array as the
49483           Tk's list
49485         * ext/tk/lib/tk.rb: improve accessibility of TkVariable object
49487         * ext/tk/lib/tk.rb, ext/tk/lib/tkfont.rb, ext/tk/lib/tkcanvas.rb,
49488           ext/tk/lib/tktext.rb: fix bug of font handling
49490         * ext/tk/lib/tkfont.rb: TkFont.new() accepts compound fonts
49492 Thu Aug 28 22:07:12 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49494         * variable.c (rb_autoload_load): call const_missing if autoloading
49495           constant is not defined to allow hook.
49497         * eval.c (rb_eval): use rb_const_get_from() instead of
49498           rb_const_get_at().
49500         * eval.c (is_defined): forgot to check NODE_COLON3.
49502 Thu Aug 28 17:30:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49504         * variable.c (rb_const_get_0): should check constants defined in
49505           included modules, if klass is Object. [ruby-talk:79302]
49507         * numeric.c (check_uint): check should be done using UINT_MAX, not
49508           INT_MAX. this fix is submitted by Lyle Johnson
49509           <lyle@knology.net> in [ruby-core:01486]
49511 Thu Aug 28 05:02:52 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49513         * parse.y (singleton): typo fixed (ruby-bugs-ja:PR#562)
49515 Thu Aug 28 02:37:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49517         * eval.c (rb_eval): *a = [1,2] now assigns [[1,2]] to a.
49518           consistent with *a = [1], which set [[1]] to a.
49520         * node.h: merge NODE_RESTARY to NODE_SPLAT.
49522         * parse.y: rules simplified a bit by removing NODE_RESTARY.
49524         * sample/test.rb: updated for new assignment behavior.
49526 Wed Aug 27 22:33:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49528         * error.c (rb_bug): should not use other methods; this function is
49529           not for ordinary use.  [ruby-dev:21259]
49531 Wed Aug 27 15:07:57 2003  Minero Aoki  <aamine@loveruby.net>
49533         * lib/net/smtp.rb (check_response): AUTH CRAM-MD5 returns 334
49534           response. [ruby-list:38279]
49536 Wed Aug 27 05:10:15 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
49538         * win32/win32.c (map_errno): support winsock error.
49540         * win32/win32.c (pipe_exec, CreateChild, poll_child_status, waitpid,
49541           kill, link, rb_w32_rename, unixtime_to_filetime, rb_w32_utime):
49542           pass errno to map_errno().
49544         * win32/win32.c (rb_w32_select, rb_w32_accept, rb_w32_bind,
49545           rb_w32_connect, rb_w32_getpeername, rb_w32_getsockname,
49546           rb_w32_getsockopt, rb_w32_ioctlsocket, rb_w32_listen, rb_w32_recv,
49547           rb_w32_recvfrom, rb_w32_send, rb_w32_sendto, rb_w32_setsockopt,
49548           rb_w32_shutdown, rb_w32_socket, rb_w32_gethostbyaddr,
49549           rb_w32_gethostbyname, rb_w32_gethostname, rb_w32_getprotobyname,
49550           rb_w32_getprotobynumber, rb_w32_getservbyname, rb_w32_getservbyport,
49551           rb_w32_fclose, rb_w32_close): use map_errno().
49553         * win32/win32.h: add winsock errors.
49555 Tue Aug 26 23:53:23 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49557         * lib/ostruct.rb (OpenStruct::method_missing): prohibit modifying
49558           frozen OpenStruct. [ruby-talk:80214]
49560 Tue Aug 26 20:03:50 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49562         * lib/mkmf.rb (create_tmpsrc): add the hook for source.
49563           [ruby-list:38122]
49565 Tue Aug 26 15:59:53 2003  why the lucky stiff  <why@ruby-lang.org>
49567         * implicit.c (syck_type_id_to_taguri): corrected detection of
49568           x-private types.
49570 Sun Aug 24 01:02:48 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49572         * file.c (file_expand_path): performance improvement.
49573           [ruby-talk:79748]
49575 Sat Aug 23 23:41:16 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49577         * file.c (rb_file_s_expand_path): avoid calling rb_scan_args() for
49578           apparent cases. [ruby-talk:79748]
49580 Sat Aug 23 18:56:53 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49582         * ext/nkf/nkf.c (rb_nkf_putchar): should use rb_str_resize() to just
49583           resize a string, rb_str_cat() disallows NULL.  [ruby-dev:21237]
49585 Sat Aug 23 16:48:41 2003  Keiju Ishitsuka  <keiju@ishitsuka.com>
49587         * lib/irb/ruby-lex.rb: bug fix for "foo" !~ /bar/. [ruby-talk:79942]
49589 Sat Aug 23 15:59:58 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49591         * eval.c (rb_eval, rb_iterate, block_pass): reduce PUSH/POP_TAG and
49592           EXEC_TAG() for retry.  [ruby-dev:21216]
49594 Sat Aug 23 02:32:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49596         * eval.c (rb_yield_splat): should check if "values" is array.
49598         * enum.c (each_with_index_i): typo.
49600 Fri Aug 22 17:07:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49602         * enum.c (inject_i): use rb_yield_values.
49604         * enum.c (each_with_index_i): ditto.
49606         * eval.c (rb_yield_splat): new function to call "yield *values".
49608         * string.c (rb_str_scan): use rb_yield_splat().
49610 Fri Aug 22 06:13:22 2003  why the lucky stiff  <why@ruby-lang.org>
49612         * ext/syck/rubyext.c: refactoring of the transfer method
49613           dispatch.  added yaml_org_handler for faster dispatch of
49614           transfers to base types.
49616         * lib/yaml/rubytypes.rb: removed handling of builtins from
49617           Ruby library.
49619         * ext/syck/token.c: quoted and block scalars are now implicit !str
49621         * ext/syck/implicit.c: empty string detected as !null.
49623 Fri Aug 22 01:00:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49625         * eval.c (block_pass): improve passing current block.
49627 Fri Aug 22 00:13:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49629         * ext/bigdecimal/bigdecimal.c: Int. overflow bug in multiplication
49630           fixed, and VpNmlz() speed up.
49632 Wed Aug 20 16:44:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49634         * ext/socket/socket.c (ruby_connect): many systems seem to have
49635           a problem in select() after EINPROGRESS.  [ruby-list:38080]
49637 Wed Aug 20 01:31:17 2003  why the lucky stiff  <why@ruby-lang.org>
49639         * ext/syck/syck.h: Parser definition problems on HP-UX.
49640           [ruby-talk:79389]
49642         * ext/syck/handler.c (syck_hdlr_get_anchor): Memory leak.
49644         * ext/syck/syck.s (syck_io_file_read): Bad arguments to fread.
49646         * ext/syck/rubyext.c: Tainting issues.
49648 Tue Aug 19 23:20:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49650         * ext/bigdecimal/bigdecimal.c .h .html: to_s("+") implemented.
49652         * ext/bigdecimal/lib/bigdecimal/math.rb: E implemented.
49654 Tue Aug 19 07:47:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49656         * lib/webrick/ssl.rb: new file; SSL/TLS enhancement for GenericServer.
49658         * lib/webrick/https.rb: SSLSocket handling is moved to webrick/ssl.rb.
49660         * lib/webrick/compat.rb (File::fnmatch): remove old migration code.
49662         * lib/webrick/httpserver.rb (HTTPServer#run): ditto.
49664         * lib/webrick/server.rb (GenericServer#listen): the body of this
49665           method is pull out as Utils::create_lisnteners.
49667         * lib/webrick/utils.rb (Utils::create_lisnteners): new method.
49669         * lib/webrick/server.rb (GenericServer#start): should rescue
49670           unknown errors. and refine comments.
49672         * ext/openssl/lib/openssl/ssl.rb (SSLServer#accept): should close
49673           socket if SSLSocket raises error.
49675 Tue Aug 19 11:19:33 2003  Shugo Maeda  <shugo@ruby-lang.org>
49677         * io.c (next_argv): should not call GetOpenFile() if rb_stdout is
49678           not a IO (T_FILE).
49680 Tue Aug 19 07:47:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49682         * ext/openssl/ossl_ssl.c: sync_close is moved to SSLSocket as
49683           a builtin.
49685         * ext/openssl/lib/openssl/buffering.rb (Buffering#close): ditto.
49687         * ext/openssl/lib/openssl/buffering.rb (Buffering#puts): should
49688           add a return to the tails of each line.
49690         * ext/openssl/lib/openssl/ssl.rb: new class OpenSSL::SSL::SSLServer.
49692         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): use sync_close.
49694         * ext/openssl/sample/echo_svr.rb: use SSLServer.
49696         * ext/openssl/sample/echo_cli.rb: add example of SSLSocket#sync_close.
49698 Tue Aug 19 01:24:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49700         * ext/curses/curses.c (_XOPEN_SOURCE_EXTENDED): Mac OS X standard
49701           headers are inconsistent at this macro.  [ruby-core:01432]
49703         * ext/curses/extconf.rb: check if _XOPEN_SOURCE_EXTENDED breaks.
49705         * ext/tcltklib/stubs.c: Status macro in X11/Xthreads.h bothers
49706           winspool.h
49708         * instruby.rb: make list at first instead of iterator.
49709           [ruby-talk:79347]
49711 Mon Aug 18 11:23:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49713         * dir.c (glob_helper): preserve raw order for **.
49715 Sun Aug 17 23:39:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49717         * ext/openssl/extconf.rb (HAVE_VA_ARGS_MACRO): need to compile.
49719 Sun Aug 17 17:10:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49721         * ext/openssl/lib/openssl/ssl.rb (SSLSocket#sync_close=): add a
49722           method to specify if the underlying IO will be closed in
49723           SSLSocket#close.
49725         * ext/openssl/lib/openssl/buffering.rb: add forwarders to
49726           setsockopt, getsockopt and fcntl.
49728         * ext/openssl/lib/net/protocols.rb: enable sync for SSLSocket.
49730 Sun Aug 17 11:32:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49732         * ext/extmk.rb (extmake): should not force to remake Makefile when
49733           installation and so on.
49735 Sat Aug 16 23:58:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49737         * marshal.c (w_symbol, w_object): get rid of warnings.
49739         * re.c (rb_memsearch): ditto.
49741         * time.c (time_dump): ditto.
49743         * ext/extmk.rb (extmake): not continue making when extconf.rb
49744           failed.
49746         * ext/openssl/extconf.rb: check __VA_ARGS__ macro more precisely.
49748         * ext/openssl/ossl.h: remove version.h dependency.
49750         * ext/openssl/ruby_missing.h: ditto.
49752         * lib/mkmf.rb (pkg_config): use --libs output except with
49753           only-L for other options.  [ruby-list:38099]
49755         * lib/mkmf.rb (create_makefile): separate rule for static
49756           library from shared object.
49758         * win32/Makefile.sub, bcc32/Makefile.sub, wince/Makefile.sub:
49759           define exec_prefix and libdir.
49761 Fri Aug 15 23:15:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49763         * ext/bigdecimal/bigdecimal.c .h: Bug in combination of limit & div
49764           method fixed.
49766         * ext/bigdecimal/lib/bigdecimal/math.rb: atan() & sqrt() added.
49768 Fri Aug 15 12:01:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49770         * configure.in (HUGE_ST_INO): check whether struct stat.st_ino
49771           is larger than long.  [ruby-dev:21194]
49772           http://www.geocities.co.jp/SiliconValley-PaloAlto/1409/ruby/beos.html
49774         * error.c (syserr_eqq): errno might exceed Fixnum limit.
49776         * error.c (Init_Exception): moved base initialization from
49777           init_syserr().
49779         * inits.c (rb_call_inits): postpone initializing errnos until
49780           Bignum is available.
49782 Fri Aug 15 12:01:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49784         * ext/curses/curses.c (_XOPEN_SOURCE_EXTENDED): needed to let
49785           keyname() and so on be declared.
49787         * ext/curses/curses.c (curses_resizeterm, window_resize):
49788           arguments conflicted with macros in term.h.
49790         * ext/curses/curses.c (Curses module methods): ensure
49791           initialized.  [ruby-dev:21191]
49793 Fri Aug 15 02:08:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49795         * gc.c (id2ref): recycle check should be done by klass == 0.
49796           [ruby-core:01408]
49798 Fri Aug 15 01:34:23 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
49800         * ext/openssl/ossl_pkey.c: move generate_cb here
49802         * ext/openssl/ossl_pkey_{dh|dsa|rsa}.c: adapt to this cb
49804         * ext/openssl/openssl_missing.[ch]: add (0.9.6x, x<j) missing BN funcs
49806         * ext/openssl/ossl_bn.c: use supplied funcs from openssl_missing.c
49808 Fri Aug 15 00:38:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49810         * ext/bigdecimal/bigdecimal.c: Bug in div method fixed.
49812         * ext/bigdecimal/lib/bigdecimal/math.rb: Newly added.
49814         * ext/bigdecimal/sample/pi.rb: Changed so as to use math.rb.
49816 Thu Aug 14 21:19:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49818         * eval.c (Init_Thread): Continuation#[] added.  [ruby-talk:79028]
49820 Thu Aug 14 20:03:34 2003  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
49822         * ext/win32ole/win32ole.c (OLE_FREE): should not call
49823           ole_message_loop.
49825         * ext/win32ole/win32ole.c (ole_event_free): ditto.
49827         * ext/win32ole/win32ole.c (ole_initialize): stop calling
49828           OleUninitialize at exit.
49830 Thu Aug 14 11:27:37 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
49832         * gc.c (rb_data_object_alloc): check type of 1st argument.
49833           [ruby-dev:21192]
49835 Thu Aug 14 00:21:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49837         * parse.y (mlhs_node): should allow "::Foo" (colon3) as lhs.
49839         * parse.y (lhs): ditto.
49841         * parse.y (yylex): should return tCOLON3 right after kCLASS.
49842           [ruby-talk:78918]
49844         * error.c (exc_initialize): was converting argument to string too
49845           eagerly.  Only check was needed. [ruby-talk:78958]
49847 Wed Aug 13 23:31:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49849         * ext/bigdecimal/bigdecimal.c .h .html: Ambiguity of
49850           BigDecimal::limit removed.
49852 Wed Aug 13 19:21:34 2003  Christian Neukirchen  <chneukirchen@yahoo.de>
49854         * lib/webrick/https.rb (HTTPServer#run): should set syncing-mode
49855           to SSLSocket. [ruby-talk:78919]
49857 Wed Aug 13 18:13:49 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49859         * eval.c (POP_BLOCK): turn on BLOCK_LEFT flag when leaving block.
49861         * eval.c (proc_invoke): unpack return/break destination when block
49862           is already left.
49864 Wed Aug 13 15:58:31 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49866         * object.c (rb_class_s_alloc): add function prototype to avoid VC++
49867           warning.
49869 Wed Aug 13 13:50:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
49871         * ext/Win32API/Win32API.c (Win32API_initialize): should pass some
49872           class to first argument of Data_Wrap_Struct(). (ruby-bugs:PR#1109)
49874 Tue Aug 12 16:55:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49876         * Makefile.in: static link libraries to LIBRUBY_SO with static linked
49877           ext.  [ruby-dev:21157]
49879         * ext/extmk.rb (extmake): sort extension library initialization order.
49881         * ext/extmk.rb (extmake): compact $extlibs.
49883 Tue Aug 12 02:48:56 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49885         * eval.c (THREAD_SAVE_CONTEXT): should explicitly turn off the
49886           flag before calling getcontext(2).
49888         * eval.c (struct thread): add member to save backing store on
49889           IA64. (ruby-bugs PR1086)
49891         * eval.c (thread_mark): mark IA64 backing store region.
49893         * eval.c (thread_free): free saved IA64 backing store.
49895         * eval.c (rb_thread_save_context): save IA64 backing store as well.
49897         * eval.c (rb_thread_restore_context): restore IA64 backing store.
49899         * eval.c (THREAD_ALLOC): initialize IA64 members.
49901 Mon Aug 11 22:31:50 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49903         * lib/debug.rb(debug_command): inspection command should inspect
49904           resulting value even if it's nil.  [ruby-dev:21180] by OMAE, jun
49905           <jun66j5@ybb.ne.jp>.
49907         * lib/debug.rb(debug_command): incomplete regexp.
49909 Mon Aug 11 17:33:07 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49911         * eval.c (rb_call_super): do not use rb_block_given_p() for
49912           check. [ruby-talk:78656]
49914         * eval.c (BEGIN_CALLARGS): push ITER_NOT only when ITER_PRE.
49916 Sun Aug 10 10:43:05 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49918         * ext/openssl/lib/openssl/buffering.rb: increase BLOCK_SIZE
49919           from 1k to 16k bytes. [ruby-talk:78603]
49921         * ext/openssl/ossl_ssl.c (ossl_sslctx_s_alloc): enable
49922           partial write to allow interruption in SSLSocket#write.
49924 Sun Aug 10 00:34:16 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49926         * cygwin/GNUmakefile: remove unnecessary '--drive-name=$(CC)'
49927           for ccache.
49929 Sat Aug  9 10:36:21 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49931         * marshal.c (w_object): do not dump generic instance variable when
49932           marshal_dump is defined.
49934 Sat Aug  9 00:35:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49936         * ext/bigdecimal.c: F style output(like 1234.56789) implemented
49937           to to_s method.
49938         * ext/bigdecimal_??.html: F style output(like 1234.56789)
49939           implemented to to_s method.
49941 Fri Aug  8 12:33:17 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49943         * bcc32/Makefile.sub: rubyw.exe should be a Windows GUI program.
49944           add the -aa option to WLDFLAGS.
49946 Fri Aug  8 11:29:26 2003  Koji Arai  <jca02266@nifty.ne.jp>
49948         * marshal.c (w_object): should set `c_arg' at first.
49950 Fri Aug  8 03:22:28 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49952         * lib/webrick/httputils.rb (FormData#list): should not take
49953           a side effect for the receiver.
49955 Thu Aug  7 14:40:37 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49957         * cygwin/GNUmakefile: better --disbale-shared option support.
49959         * cygwin/GNUmakefile: add forwarding DLL target for cygwin.
49961 Thu Aug  7 14:21:05 2003  Corinna Vinschen  <vinschen@redhat.com>
49963         * configure.in: Fix Cygwin specific naming of libraries to
49964           be net distribution compliant. (ruby-bugs:PR#1077)
49965           cygwin-ruby18.dll -> cygruby18.dll
49967 Thu Aug  7 12:51:38 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49969         * eval.c (rb_f_at_exit): should not be called without a block.
49970           block_given check added.
49972 Thu Aug  7 06:46:06 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49974         * eval.c (rb_call0): forgot to pop ruby_class.
49976         * eval.c (rb_call0): update ruby_class as well as ruby_cref.
49977           (ruby-bugs-ja:PR#540)
49979 Thu Aug  7 04:52:50 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49981         * eval.c (rb_yield_0): remove ruby_frame->cbase and unify to
49982           ruby_cref.  [ruby-talk:78141]
49984 Thu Aug  7 04:19:15 2003  Akinori MUSHA  <knu@iDaemons.org>
49986         * gc.c: FreeBSD/ia64's mcontext_t is a bit different from that of
49987           Linux/ia64.  This makes gc.c compile but miniruby coredumps for
49988           the moment.
49990 Thu Aug  7 00:15:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49992         * ext/bigdecimal.c: Comparison results adjusted to Float's.
49993         * ext/bigdecimal.c: Use rb_num_coerce_????(x,y) instead of own.
49995 Wed Aug  6 22:58:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
49997         * lib/test/unit/testcase.rb: Added equality checking.
49998         * lib/test/unit/testsuite.rb: Added equality checking.
49999         * lib/test/unit/assertions.rb: Fixed a warning.
50001 Wed Aug  6 17:28:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
50003         * ext/extmk.rb (extmake): pass LIBPATH to make ruby.  [ruby-dev:21137]
50005         * ext/extmk.rb (extmake): set library name as source file name in
50006           Init_ext().  [ruby-dev:21137]
50008         * lib/mkmf.rb (Logging::postpone): postpone logging messages after
50009           heading message as the result of the block.
50011         * lib/mkmf.rb (macro_defined?): append newline to src unless ended
50012           with it.
50014         * lib/mkmf.rb (have_library): treat nil function name as "main".
50015           (ruby-bugs:PR#1083)
50017         * lib/mkmf.rb (pkg_config): should append additional libraries to
50018           $libs but not $LIBS.  [ruby-dev:21137]
50020         * ext/io/wait/extconf.rb: check DOSISH macro instead of platform.
50022         * ext/digest/sha1/extconf.rb: have_library already appends library
50023           name.
50025 Wed Aug  6 17:23:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50027         * eval.c: initialize /* OK */ variables by Qnil to stop warnings.
50029 Wed Aug  6 04:58:32 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
50031         * ext/Setup*: add io/wait and openssl.
50033 Wed Aug  6 01:13:38 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50035         * eval.c (rb_f_autoload): use ruby_cbase instead of ruby_class.
50037         * eval.c (rb_f_autoload_p): ditto.
50039         * class.c (rb_mod_init_copy): no longer implements independent
50040           clone and dup methods.  override "initialize_copy" instead.
50041           [ruby-core:01352]
50043         * object.c (rb_class_s_alloc): define Class allocation function.
50044           this makes Classes to follow clone framework that uses
50045           initialize_copy.
50047         * object.c (rb_class_initialize): separate instantiation and
50048           initialization.
50050         * object.c (rb_obj_alloc): prohibit instantiation from
50051           uninitialized class.
50053         * object.c (rb_class_superclass): check uninitialized class.
50055         * array.c (rb_ary_fill): wrong index processing with block.  this
50056           fix was done by Koji Arai <JCA02266@nifty.ne.jp> [ruby-list:38029]
50058         * marshal.c (w_object): should preserve generic ivar for nil,
50059           true, false, symbols, and fixnums.
50061         * marshal.c (w_uclass): base_klass check should be done after
50062           rb_class_real().
50064 Wed Aug  6 01:18:50 2003  Minero Aoki  <aamine@loveruby.net>
50066         * lib/net/http.rb: update document.
50068         * lib/net/pop.rb: ditto.
50070         * lib/net/protocol.rb: ditto.
50072 Wed Aug  6 00:48:37 2003  Koji Arai  <jca02266@nifty.ne.jp>
50074         * marshal.c (w_object): should recommend marshal_dump rather than
50075           _dump_data.
50077 Tue Aug  5 17:58:57 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
50079         * lib/fileutils.rb (install): should preserve timestamp only.
50081 Tue Aug  5 17:31:59 2003  Ian Macdonald  <ian@caliban.org>
50083         * lib/shell/command-processor.rb (Shell::CommandProcessor::rmdir):
50084           simple typo.
50086 Tue Aug  5 15:47:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
50088         * eval.c (rb_load): should preserve current source file/line.
50090 Tue Aug  5 10:04:42 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50092         * string.c (str_new4): ptr may refer null_str.
50094 Mon Aug  4 17:25:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50096         * stable version 1.8.0 released.
50098 For the changes before 1.8.0, see doc/ChangeLog-1.8.0
50100 Local variables:
50101 add-log-time-format: (lambda ()
50102   (let* ((time (current-time))
50103          (system-time-locale "C")
50104          (diff (+ (cadr time) 32400))
50105          (lo (% diff 65536))
50106          (hi (+ (car time) (/ diff 65536))))
50107   (format-time-string "%a %b %e %H:%M:%S %Y" (list hi lo) t)))
50108 indent-tabs-mode: t
50109 tab-width: 8
50110 end: