* io.c (rb_open_file): encoding in mode string was ignored if perm is
[ruby-svn.git] / ChangeLog
blob2803321594777c658d3e734304c10d539991b716
1 Tue Aug 19 01:32:37 2008  Tanaka Akira  <akr@fsij.org>
3         * io.c (rb_open_file): encoding in mode string was ignored if perm is
4           specified.
6 Tue Aug 19 01:02:19 2008  Tanaka Akira  <akr@fsij.org>
8         * io.c (rb_open_file): don't access argv[-1] by 
9           File.allocate.instance_eval { initialize }.
11 Tue Aug 19 00:56:01 2008  Tanaka Akira  <akr@fsij.org>
13         * re.c (rb_reg_inspect): don't raise for uninitialized Regexp.
15 Tue Aug 19 00:34:24 2008  Tanaka Akira  <akr@fsij.org>
17         * io.c (rb_io_check_readable): side effect for STDIN removed.
18           (rb_io_external_encoding): ditto.
20 Mon Aug 18 23:27:07 2008  Tanaka Akira  <akr@fsij.org>
22         * io.c (io_ungetbyte): renamed from io_ungetc.
23           (rb_io_ungetbyte): new method.
24           (rb_io_ungetc): push back into character buffer if enc2 is set.
26 Mon Aug 18 22:41:46 2008  Tanaka Akira  <akr@fsij.org>
28         * io.c (id_encode): removed.
30 Mon Aug 18 22:30:07 2008  Tanaka Akira  <akr@fsij.org>
32         * io.c (make_writeconv): if enc and enc2 is set, convert
33           string.encoding to enc2.
35         * include/ruby/io.h: comment changed.
37 Mon Aug 18 21:02:08 2008  Tanaka Akira  <akr@fsij.org>
39         * include/ruby/io.h (rb_io_t): new fields: writeconv,
40           writeconv_stateless and writeconv_initialized.
41           (MakeOpenFile): initialize them.
43         * include/ruby/encoding.h (rb_econv_stateless_encoding): declared.
44           (rb_econv_string): declared.
46         * io.c (make_writeconv): new function.
47           (io_fwrite): use econv.
48           (make_readconv): fix error message.
49           (finish_writeconv): new function.
50           (fptr_finalize): call finish_writeconv.
51           (clear_writeconv): new function.
52           (clear_codeconv): new function to call both clear_readconv and
53           clear_writeconv.
54           (rb_io_fptr_finalize): call clear_codeconv instead of
55           clear_readconv.
56           (mode_enc): ditto.
57           (io_set_encoding): ditto.
58           (argf_next_argv): ditto.
59           (io_encoding_set): ditto.
61         * gc.c (gc_mark_children): mark writeconv_stateless in T_FILE.
63         * transcode.c (stateless_encoding_i): new function.
64           (rb_econv_stateless_encoding): ditto.
65           (rb_econv_string): ditto.
67 Mon Aug 18 17:23:38 2008  Tanaka Akira  <akr@fsij.org>
69         * io.c (clear_readconv): extracted from rb_io_fptr_finalize.
70           (mode_enc): call clear_readconv.
71           (io_set_encoding): ditto.
72           (argf_next_argv): ditto.
73           (io_encoding_set): ditto.
75 Mon Aug 18 16:54:06 2008  Tanaka Akira  <akr@fsij.org>
77         * io.c (mode_enc): modify enc and enc2 consistently.
78           (io_set_encoding): ditto.
79           (io_encoding_set): ditto.
81 Mon Aug 18 13:21:38 2008  Tanaka Akira  <akr@fsij.org>
83         * transcode.c (transcode_search_path): prevent infinite loop by
84           searching a path for self conversion.
86 Mon Aug 18 12:45:24 2008  Tanaka Akira  <akr@fsij.org>
88         * io.c (io_enc_str): code conversion removed.
89           (io_enc_str_converted): removed because it is identical to
90           io_enc_str now.
92 Mon Aug 18 12:12:29 2008  Tanaka Akira  <akr@fsij.org>
94         * io.c (io_shift_crbuf): add strp argument to append into existing
95           string.
96           (read_all): use econv if enc2 is set.
97           (io_getc): follow the io_shift_crbuf change.
99 Mon Aug 18 10:35:25 2008  Tanaka Akira  <akr@fsij.org>
101         * io.c (io_enc_str_converted): new function.
102           (make_readconv): extracted from io_getc.
103           (more_char): ditto.
104           (appendline): use econv via make_readconv and more_char for code
105           conversion.
106           (prepare_getline_args): don't convert record separator.
107           (rb_io_getline_1): don't use rb_io_getline_fast if enc2 is set.
108           (io_getc): use make_readconv and more_char.
110 Mon Aug 18 08:27:44 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
112         * common.mk: fix error in uncommon.mk.
114 Mon Aug 18 06:10:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
116         * common.mk: config.h depends config.status.
118 Mon Aug 18 03:59:43 2008  Tanaka Akira  <akr@fsij.org>
120         * io.c (appendline): appendline cannot check character boundary.
121           (rb_io_getline_1): relax limit until character boundary.
123 Mon Aug 18 02:25:11 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
125         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#eof?): added lacked method.
127 Sun Aug 17 21:50:22 2008  Tanaka Akira  <akr@fsij.org>
129         * io.c (prepare_getline_args): io.gets(10,nil) should cause TypeError.
131 Sun Aug 17 15:58:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
133         * lib/mkmf.rb: not check config.h.
135         * lib/mkmf.rb (init_mkmf): add include/ruby/backward to $INCFLAGS.
137         * include/ruby/backward/{st,util}.h: added for backward compatibility.
138           [ruby-dev:35811]
140 Sun Aug 17 13:40:04 2008  Tanaka Akira  <akr@fsij.org>
142         * transcode.c (econv_primitive_putback): new method.
144 Sun Aug 17 13:23:53 2008  Tanaka Akira  <akr@fsij.org>
146         * include/ruby/encoding.h (rb_econv_putbackable): declared.
147           (rb_econv_putback): ditto.
149         * transcode.c (rb_econv_putbackable): implemented.
150           (rb_econv_putback): ditto.
152         * io.c (io_getc): put back bytes if possible.
154 Sun Aug 17 12:00:18 2008  Tanaka Akira  <akr@fsij.org>
156         * transcode.c (make_econv_exception): add several instance variables
157           to exception object.
158           (ecerr_source_encoding): new method:
159           Encoding::ConversionUndefined#source_encoding and 
160           Encoding::InvalidByteSequence#source_encoding.
161           (ecerr_destination_encoding): new method:
162           Encoding::ConversionUndefined#destination_encoding and 
163           Encoding::InvalidByteSequence#destination_encoding.
164           (econverr_error_char): new method:
165           Encoding::ConversionUndefined#error_char.
166           (econverr_error_bytes): new method:
167           Encoding::ConversionUndefined#error_bytes.
169 Sun Aug 17 11:43:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
171         * random.c (struct MT): packed Mersenne Twister staffs.
173         * random.c (struct RandSeed): packed random seed staffs.
175 Sun Aug 17 08:38:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
177         * test/iconv/test_option.rb (test_ignore_option): skip if iconv
178           doesn't have transliterate.
180         * test/iconv/test_option.rb (test_translit_option): ditto.
182 Sun Aug 17 01:29:46 2008  Tanaka Akira  <akr@fsij.org>
184         * include/ruby/io.h (rb_io_t): new fields: readconv, crbuf, crbuf_off,
185           crbuf_len, crbuf_capa.
186           (MakeOpenFile): initialize them.
188         * io.c (io_shift_crbuf): new function.
189           (io_getc): use econv.
190           (rb_io_fptr_finalize): finalize readconv and crbuf.
192 Sun Aug 17 00:02:07 2008  Tanaka Akira  <akr@fsij.org>
194         * include/ruby/encoding.h (rb_econv_check_error): declared.
196         * transcode.c (make_econv_exception): new function.
197           (transcode_loop): use make_econv_exception.
198           (rb_econv_check_error): defined.
200 Sat Aug 16 15:23:16 2008  Tanaka Akira  <akr@fsij.org>
202         * include/ruby/encoding.h (rb_econv_elem_t): fields removed: from and
203           to.
204           (rb_econv_t): new fields: source_encoding_name and
205           destination_encoding_name.
207         * transcode.c (rb_econv_open_by_transcoder_entries): initialize the
208           new fields.
209           (rb_econv_open): set up the new fields.
210           (econv_inspect): use the new fields.
212 Sat Aug 16 14:22:04 2008  Tanaka Akira  <akr@fsij.org>
214         * include/ruby/encoding.h (rb_econv_t): add fields: in_buf_start,
215           in_data_start, in_data_end, in_buf_end and last_trans_index.
216           (rb_econv_output): removed.
217           (rb_econv_insert_output): declared.
218           (rb_econv_encoding_to_insert_output): declared.
220         * enc/trans/newline.trans (rb_universal_newline): stateful_type
221           changed.
223         * transcode.c (transcode_restartable0): initialize inchar_start,
224           tc->recognized_len and next_table at beginning of the loop.
225           (rb_econv_open_by_transcoder_entries): initialize new fields.
226           (rb_econv_open): setup last_trans_index.
227           (trans_sweep): last out_buf_start can be non-NULL now.
228           (rb_econv_convert): check last out_buf_start and in_buf_start at
229           first.
230           (rb_econv_output_with_destination_encoding): removed.
231           (econv_just_convert): removed.
232           (rb_econv_output): removed.
233           (econv_primitive_output): method removed.
234           (rb_econv_encoding_to_insert_output): new function.
235           (allocate_converted_string): new function.
236           (rb_econv_insert_output): new function.
237           (econv_primitive_insert_output): new method.
238           (output_replacement_character): use rb_econv_insert_output.  unused
239           arguments removed.
241 Sat Aug 16 09:20:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
243         * include/ruby/ruby.h (rb_intern_const): tiny optimization.
245         * include/ruby/ruby.h (SSIZET2NUM, NUM2SSIZET, SSIZE_MAX, SSIZE_MIN):
246           macros for ssize_t.
248 Sat Aug 16 08:11:04 2008  Tanaka Akira  <akr@fsij.org>
250         * transcode_data.h (rb_transcoder_stateful_type_t): defined.
251           (rb_transcoder): add field: stateful_type.
253         * tool/transcode-tblgen.rb: generate stateful_type field as
254           stateless_converter.
256         * enc/trans/iso2022.trans: follow rb_transcoder change.
258         * enc/trans/newline.trans: ditto.
260         * enc/trans/utf_16_32.trans: ditto.
262 Fri Aug 15 23:07:48 2008  Tanaka Akira  <akr@fsij.org>
264         * transcode.c (econv_just_convert): extracted from rb_econv_output.
265           (rb_econv_output): use econv_just_convert.
266           (econv_primitive_output): new method.
268 Fri Aug 15 19:57:01 2008  Tanaka Akira  <akr@fsij.org>
270         * include/ruby/encoding.h (rb_econv_output): add str_encoding
271           argument.
273         * transcode.c (get_replacement_character): add repl_enc_ptr argument.
274           (rb_econv_output_with_destination_encoding): renamed from
275           rb_econv_output and make it static.
276           (rb_econv_output): convert str and call
277           rb_econv_output_with_destination_encoding.
278           (output_replacement_character): follow above interface change.
280 Fri Aug 15 19:33:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
282         * string.c (rb_str_drop_bytes): use memmove.
284 Fri Aug 15 18:33:22 2008  Tanaka Akira  <akr@fsij.org>
286         * include/ruby/encoding.h (rb_econv_t): add error_tc in last_error.
288         * transcode.c (rb_econv_convert): fill error_tc.
290 Fri Aug 15 18:10:49 2008  Tanaka Akira  <akr@fsij.org>
292         * include/ruby/encoding.h (rb_econv_t): new field: last_error.
294         * transcode.c (rb_trans_conv): new argument: result_position_ptr.
295           (rb_econv_convert): fill last_error.
296           (econv_result_to_symbol): extracted from econv_primitive_convert.
297           (econv_primitive_errinfo): new method.
299 Fri Aug 15 17:39:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
301         * common.mk (parse.{c,h}): creates in the dependency order.
303 Fri Aug 15 16:59:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
305         * vm_core.h (exec_event_hooks): skips RubyVM::FrozenCore.
307         * vm.c (Init_VM): get rid of SEGV in a trace proc.
309 Fri Aug 15 09:33:48 2008  Tanaka Akira  <akr@fsij.org>
311         * transcode.c (conv_init): check empty name.
313 Fri Aug 15 09:03:54 2008  Tanaka Akira  <akr@fsij.org>
315         * transcode.c (econv_init): don't create dummy encoding if
316           rb_econv_open is failed.
317           (make_dummy_encoding): new function extracted from make_encoding.
318           (make_encoding): removed.
320 Fri Aug 15 01:07:16 2008  NARUSE, Yui  <naruse@ruby-lang.org>
322         * common.mk ({$(srcdir)}.y.c): escape backslash.
324 Fri Aug 15 01:05:39 2008  Tanaka Akira  <akr@fsij.org>
326         * transcode.c (econv_primitive_convert): set destination_buffer
327           encoding.
329 Fri Aug 15 00:52:40 2008  Tanaka Akira  <akr@fsij.org>
331         * include/ruby/encoding.h (rb_econv_output): declared.
333         * transcode_data.h (rb_transcoder): add resetsize_func field.
335         * enc/trans/iso2022.trans (iso2022jp_reset_sequence_size): defined.
336           (rb_EUC_JP_to_ISO_2022_JP): provide resetsize_func.
338         * tool/transcode-tblgen.rb: set NULL for resetsize_func.
340         * transcode.c (rb_econv_output): new function for inserting output.
341           (output_replacement_character): use rb_econv_output.
342           (transcode_loop): check return value of
343           output_replacement_character.
345 Thu Aug 14 23:47:21 2008  Tanaka Akira  <akr@fsij.org>
347         * include/ruby/encoding.h (ECONV_UNIVERSAL_NEWLINE_DECODER): defined.
348           (ECONV_CRLF_NEWLINE_ENCODER): ditto.
349           (ECONV_CR_NEWLINE_ENCODER): ditto.
350           (ECONV_PARTIAL_INPUT): ditto.
351           (ECONV_OUTPUT_FOLLOWED_BY_INPUT): ditto.
353         * transcode.c: use ECONV_* defined as above.
355 Thu Aug 14 23:35:21 2008  Tanaka Akira  <akr@fsij.org>
357         * transcode.c: local variable renamed.
359 Thu Aug 14 23:22:24 2008  Tanaka Akira  <akr@fsij.org>
361         * include/ruby/encoding.h (rb_econv_result_t): moved from
362           transcode_data.h.
363           (rb_econv_elem_t): ditto.
364           (rb_econv_t): ditto.  source_encoding and destination_encoding field
365           is added.
366           (rb_econv_open): declared.
367           (rb_econv_convert): ditto.
368           (rb_econv_close): ditto.
370         * transcode.c (rb_econv_open_by_transcoder_entries): initialize
371           source_encoding and destination_encoding field as NULL.
372           (rb_econv_open): make it external linkage.
373           (rb_econv_close): ditto.
374           (rb_econv_convert): ditto.  renamed from rb_econv_conv.
375           (make_encoding): new function.
376           (econv_init): use make_encoding and store rb_encoding* in
377           rb_econv_t.
378           (econv_source_encoding): new method
379           Encoding::Converter#source_encoding.
380           (econv_destination_encoding): new method
381           Encoding::Converter#destination_encoding.
383 Thu Aug 14 22:44:32 2008  Tanaka Akira  <akr@fsij.org>
385         * transcode_data.h (rb_econv_result_t): change enumeration
386           constant's prefix: transcode_ to econv_.
388         * transcode.c: follow the constant prefix change.
390 Thu Aug 14 21:34:41 2008  Tanaka Akira  <akr@fsij.org>
392         * transcode.c (econv_init): accept Encoding object as source_encoding
393           and destination_encoding.
395 Thu Aug 14 21:10:00 2008  Tanaka Akira  <akr@fsij.org>
397         * encoding.c (rb_filesystem_encoding): use default external encoding
398           for Unix.
400         * dir.c (dir_initialize): don't cache fs_encoding.
402 Thu Aug 14 20:58:57 2008  Tanaka Akira  <akr@fsij.org>
404         * transcode.c (rb_econv_open_by_transcoder_entries): renamed from
405           rb_trans_open_by_transcoder_entries.
407 Thu Aug 14 20:56:28 2008  Tanaka Akira  <akr@fsij.org>
409         * transcode.c (econv_max_output): removed.
411 Thu Aug 14 20:52:55 2008  Tanaka Akira  <akr@fsij.org>
413         * tool/transcode-tblgen.rb: check unexpected actions.
415 Thu Aug 14 20:25:52 2008  Tanaka Akira  <akr@fsij.org>
417         * transcode_data.h (transcode_invalid_byte_sequence): renamed from
418           transcode_invalid_input.
419           (transcode_destination_buffer_full): renamed from transcode_obuf_full.
420           (transcode_source_buffer_empty): renamed from transcode_ibuf_empty.
421           (rb_econv_result_t): renamed from rb_trans_result_t.
422           (rb_econv_elem_t): renamed from rb_trans_elem_t.
423           (rb_econv_t): renamed from rb_trans_t.
425         * transcode.c (UNIVERSAL_NEWLINE_DECODER): renamed from
426           UNIVERSAL_NEWLINE.
427           (CRLF_NEWLINE_ENCODER): renamed from CRLF_NEWLINE.
428           (CR_NEWLINE_ENCODER): renamed from CR_NEWLINE.
429           (rb_econv_open): renamed from rb_trans_open.
430           (rb_econv_close): renamed from rb_trans_close.
432 Thu Aug 14 19:41:42 2008  Tanaka Akira  <akr@fsij.org>
434         * transcode.c (load_transcoder): unused function removed.
435           (rb_transcoding_open): ditto.
437 Thu Aug 14 17:57:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
439         * include/ruby/encoding.h (rb_enc_ispunct): added.
441         * common.mk (COMMONOBJS), inits.c (rb_call_inits): id.c is now
442           included from parse.c.
444         * id.c (Init_id), id.h (ruby_method_ids): added IDs used by VM.
446         * parse.y (global_symbols): added rooms for VM IDs.
448         * parse.y (rb_intern3, rb_id2str): single punctuation symbol is now
449           same as char code.
451 Thu Aug 14 17:46:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
453         * parse.y (union tmpyystype): no longer needed, since YYSTYPE is
454           defined in parse.h now.
456 Thu Aug 14 17:27:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
458         * version.c (Init_version): add RUBY_ENGINE constant.
460 Thu Aug 14 15:34:10 2008  Tanaka Akira  <akr@fsij.org>
462         * transcode.c (rb_econv_conv): new function.  it doesn't consume
463           input too much, even for multilevel conversion.
464           (transcode_loop): use rb_econv_conv.
465           (econv_primitive_convert): ditto.
467 Thu Aug 14 15:27:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
469         * include/ruby/defines.h (RUBY_ALIAS_FUNCTION): fallback definition.
471 Thu Aug 14 15:08:17 2008  Tanaka Akira  <akr@fsij.org>
473         * transcode_data.h (rb_trans_result_t): new enumeration constant:
474           transcode_output_followed_by_input.
476         * transcode.c (OUTPUT_FOLLOWED_BY_INPUT): new flag.
477           (transcode_restartable0): suspend when output followed by input if
478           OUTPUT_FOLLOWED_BY_INPUT is specified.
479           (trans_sweep): check OUTPUT_FOLLOWED_BY_INPUT.
480           (rb_trans_conv): support OUTPUT_FOLLOWED_BY_INPUT.
481           (econv_primitive_convert): return :output_followed_by_input for
482           transcode_output_followed_by_input.
484 Thu Aug 14 14:57:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
486         * gc.c (getrusage_time): should return the value.
488         * thread.c (rb_thread_priority_set): get rid of C99 feature.
490         * transcode.c (transcode_search_path): ditto.
492         * vm.c (REWIND_CFP): get rid of statement expressions.
494 Thu Aug 14 14:13:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
496         * vm.c (Init_VM): hide FrozenCore.
498 Thu Aug 14 12:20:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
500         * transcode.c (load_transcoder): suppress warning.
502         * missing/vsnprintf.c (BSD_vfprintf): ditto.
504 Thu Aug 14 12:01:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
506         * configure.in (gnumake): check for GNU make.
508         * Makefile.in (uncommon.mk): includes filtered common.mk.
510         * common.mk (parse.h): workaround for nmake.
512 Thu Aug 14 06:09:12 2008  Koichi Sasada  <ko1@atdot.net>
514         * thread.c (rb_thread_execute_interrupts): switch event
515           should be occur only once.
517 Thu Aug 14 05:36:36 2008  NARUSE, Yui  <naruse@ruby-lang.org>
519         * common.mk: parse.h depends on parse.c.
521         * common.mk: hash.o depends on $(ID_H_INCLUDES).
523 Thu Aug 14 02:45:16 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
525         * test/ruby/test_file_exhaustive.rb (TestFileExhaustive#setup):
526           set group of tmpdir.  [ruby-dev:35633]
528 Thu Aug 14 15:50:30 2008  Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
530         * hash.c (set_default): fix rdoc.  #441
532 Thu Aug 14 02:23:31 2008  Tanaka Akira  <akr@fsij.org>
534         * transcode.c (econv_primitive_convert): add output_byteoffset
535           argument.
537 Thu Aug 14 00:43:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
539         * configure.in (rb_cv_gcc_function_alias): checks alias attribute.
541         * string.c (alias_func): replaced with RUBY_ALIAS_FUNCTION.
543 Wed Aug 13 23:42:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
545         * common.mk (parse.h): fake rule.
547 Wed Aug 13 23:15:58 2008  Shugo Maeda  <shugo@ruby-lang.org>
549         * test/ruby/test_thread.rb (test_list): call Thread.pass to run t1.
550           fixed [ruby-core:18264].
552 Wed Aug 13 23:05:51 2008  TAKAO Kouji  <kouji@takao7.net>
554         * string.c (alias_func): changed to 'weak, alias' from 'alias' for
555           Mac OSX. (closes #429)
557 Wed Aug 13 19:40:12 2008  Koichi Sasada  <ko1@atdot.net>
559         * gc.c: count only freed object as freelist size.
561 Wed Aug 13 18:34:22 2008  Shugo Maeda  <shugo@ruby-lang.org>
563         * marshal.c (marshal_load): set arg.untrust properly.
565 Wed Aug 13 17:47:09 2008  Tanaka Akira  <akr@fsij.org>
567         * transcode.c (econv_inspect): new method.
569 Wed Aug 13 17:35:58 2008  Tanaka Akira  <akr@fsij.org>
571         * transcode.c (transcode_restartable0): several local variables
572           removed.
574 Wed Aug 13 17:35:23 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
576         * hash.c (rb_hash_set_default_proc): add new method.  a patch from
577           Giuseppe Bilotta.  #419
579 Wed Aug 13 17:31:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
581         * vm_insnhelper.c (caller_setup_args): should ensure if the value
582           from to_proc is a real Proc.
584 Wed Aug 13 17:28:29 2008  Akinori MUSHA  <knu@iDaemons.org>
586         * common.mk: regint.h no longer includes vm_core.h.
588 Wed Aug 13 17:26:44 2008  Tanaka Akira  <akr@fsij.org>
590         * transcode_data.h (rb_transcoding): add fields: writebuf_off,
591           writebuf_len and writebuf.
592           (TRANSCODING_WRITEBUF): new macro.
594         * transcode.c (transcode_restartable0): output until output buffer is
595           really full.
596           (rb_transcoding_open_by_transcoder): initialize writebuf_len,
597           writebuf_off and writebuf.
598           (rb_transcoding_close): finalize writebuf.
600 Wed Aug 13 17:18:37 2008  Koichi Sasada  <ko1@atdot.net>
602         * thread.c (rb_thread_check_ints): added.  please note that
603           this function may cause ruby's thread switching.
605         * include/ruby/intern.h: ditto.
607         * regint.h: use rb_thread_check_ints() instead of
608           RUBY_CHECK_INTS() directly.
610 Wed Aug 13 17:01:36 2008  Akinori MUSHA  <knu@iDaemons.org>
612         * golf_prelude.rb, lib/set.rb (TC_Set#test_each),
613           test/readline/test_readline_history.rb (Readline#test_each__enumerator),
614           test/ruby/test_array.rb (TestArray#test_collect),
615           test/ruby/test_enumerator.rb (TestEnumerator#test_initialize):
616           Enumerable::Enumerator is now called Enumerator.
618         * lib/rinda/tuplespace.rb (Rinda::TupleBag#initialize): Use
619           enum_for instead of hardcoding Enumerable::Enumerator.
621 Wed Aug 13 16:40:57 2008  Koichi Sasada  <ko1@atdot.net>
623         * thread.c, vm_core.h: add manual priority support
624           using time slice.  if you enable USE_NATIVE_THREAD_PRIORITY
625           macro, this mechanism is ignored.  [ruby-dev:33124]
627         * thread_pthread.c, thread_win32.c: ditto.
629         * test/ruby/test_thread.rb: fix test parameter.
631 Wed Aug 13 16:02:14 2008  Shugo Maeda  <shugo@ruby-lang.org>
633         * object.c (rb_obj_untrusted): new method Object#untrusted?.
634           (rb_obj_untrust): new method Object#untrust.
635           (rb_obj_trust): new method Object#trust.
637         * array.c, debug.c, time.c, include/ruby/ruby.h, re.c, variable.c,
638           string.c, io.c, dir.c, vm_method.c, struct.c, class.c, hash.c,
639           ruby.c, marshal.c: fixes for Object#untrusted?.
641         * test/ruby/test_module.rb, test/ruby/test_array.rb,
642           test/ruby/test_object.rb, test/ruby/test_string.rb,
643           test/ruby/test_marshal.rb, test/ruby/test_hash.rb: added tests for
644           Object#untrusted?.
646 Wed Aug 13 16:13:58 2008  NARUSE, Yui  <naruse@ruby-lang.org>
648         * test/ruby/test_m17n.rb: follow EncodingCompatibilityError.
650         * test/ruby/test_mixed_unicode_escapes.rb: ditto.
652         * test/ruby/enc/test_utf16.rb: ditto.
654 Wed Aug 13 16:05:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
656         * time.c (time_cmp): retry with right hand operand if its not a
657           time object.  [ruby-dev:35011]
659 Wed Aug 13 15:51:22 2008  Akinori MUSHA  <knu@iDaemons.org>
661         * string.c: Apply a temporary fix to fix build on OS X.  A real
662           fix will follow later.
664 Wed Aug 13 15:25:09 2008  Akinori MUSHA  <knu@iDaemons.org>
666         * enumerator.c (Init_Enumerator): Rename Enumerable::Enumerator to
667           just Enumerator.
669 Wed Aug 13 15:13:57 2008  Akinori MUSHA  <knu@iDaemons.org>
671         * common.mk (prelude.c, golf_prelude.c): Using $(COMPILE_PRELUDE)
672           requires $(RBCONFIG).
674 Wed Aug 13 15:08:04 2008  Tanaka Akira  <akr@fsij.org>
676         * transcode.c (econv_init): make flags argument optional.
677           (econv_primitive_convert): ditto.
679 Wed Aug 13 14:55:27 2008  Akinori MUSHA  <knu@iDaemons.org>
681         * common.mk (realclean-local): Remove parse.h as well.
683         * common.mk: Add missing dependencies regarding vm_core.h, id.h,
684           parse.c (parse.h), etc..
686 Wed Aug 13 14:45:37 2008  Tanaka Akira  <akr@fsij.org>
688         * enc/trans/newline.trans (rb_crlf_newline): new transcoder.
689           (rb_cr_newline): new transcoder.
691         * transcode.c (trans_open_i): one more extra room for input newline
692           converter.
693           (rb_trans_open): crlf newline and cr newline implemented.
694           (Init_transcode): Encoding::Converter::CRLF_NEWLINE and
695           Encoding::Converter::CR_NEWLINE defined.
697 Wed Aug 13 14:22:16 2008  Tanaka Akira  <akr@fsij.org>
699         * enc/trans/newline.trans: new file.
701         * transcode_data.h (rb_trans_t): add last_tc field.
703         * transcode.c (UNIVERSAL_NEWLINE): defined.
704           (CRLF_NEWLINE): defined.
705           (CR_NEWLINE): defined.
706           (rb_trans_open_by_transcoder_entries): initialize last_tc.
707           (trans_open_i): allocate one more room for output newline converter.
708           (rb_trans_open): universal newline implemented.
709           (more_output_buffer): take max_output argument instead ts.
710           (output_replacement_character): take tc argument instead of ts.
711           (transcode_loop): use last_tc field.
712           (econv_init): add flags argument for rb_trans_open.
713           (Init_transcode): Encoding::Converter::UNIVERSAL_NEWLINE defined.
715 Wed Aug 13 14:00:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
717         * common.mk (parse.c): generates parse.h together.
719         * id.c, id.h: use constants for parser tokens.
721 Wed Aug 13 13:47:05 2008  Koichi Sasada  <ko1@atdot.net>
723         * vm.c: rewind cfp to show proper backtrace.
724           [ruby-dev:35820]
726 Wed Aug 13 13:09:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
728         * tool/make-snapshot: fix for clean up.
730 Wed Aug 13 11:45:51 2008  Akinori MUSHA  <knu@iDaemons.org>
732         * vm_core.h: Declare rb_iseq_clone, which is used in class.c.
734 Wed Aug 13 11:39:19 2008  Tanaka Akira  <akr@fsij.org>
736         * transcode.c (transcode_search_path): return the length of converter
737           path.
738           (load_transcoder_entry): renamed from load_transcoder.
739           (load_transcoder): new function for loading transcoder by encoding
740           names.
741           (rb_transcoding_open_by_transcoder): extracted from
742           rb_transcoding_open.
743           (rb_transcoding_open): use load_transcoder and
744           rb_transcoding_open_by_transcoder.
745           (rb_trans_open_by_transcoder_entries): new function.
746           (trans_open_i): construct entries array.
747           (rb_trans_open): use rb_trans_open_by_transcoder_entries.
749 Wed Aug 13 10:45:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
751         * tool/make-snapshot: try to find exported directory.
753 Wed Aug 13 10:16:35 2008  TAKAO Kouji  <kouji@takao7.net>
755         * doc/NEWS: Mention the Readline.vi_editing_mode?,
756           Readline.emacs_editing_mode?, Readline::HISTORY[] and
757           Readline::HISTORY.clear change.
759 Wed Aug 13 08:03:02 2008  Tanaka Akira  <akr@fsij.org>
761         * transcode.c (econv_primitive_convert): add output_size argument.
763 Wed Aug 13 07:41:03 2008  Tanaka Akira  <akr@fsij.org>
765         * transcode.c (rb_trans_conv): report last transcode_obuf_full.
766           (econv_max_output): new method Encoding::Converter#max_output.
768 Wed Aug 13 02:46:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
770         * error.c (rb_eEncCompatError): add Exception.
772         * include/ruby/ruby.h: ditto.
774         * encoding.c (rb_enc_check): use rb_eEncCompatError.
776         * string.c (rb_enc_cr_str_buf_cat): ditto.
778         * string.c (rb_str_sub_bang): ditto.
780         * string.c (rb_str_hex): ditto.
782         * string.c (rb_str_oct): ditto.
784 Wed Aug 13 02:36:47 2008  NARUSE, Yui  <naruse@ruby-lang.org>
786         * transcode.c (str_transcode): fix error message.
788 Tue Aug 12 23:42:31 2008  Tanaka Akira  <akr@fsij.org>
790         * transcode.c (rb_cEncodingConverter): new class Encoding::Converter.
791           (econv_free): new function.
792           (econv_s_allocate): ditto.
793           (econv_init): ditto.
794           (check_econv): ditto.
795           (econv_primitive_convert): new method.
796           (Init_transcode): define Encoding::Converter.
798 Tue Aug 12 23:16:09 2008  Tanaka Akira  <akr@fsij.org>
800         * string.c (rb_str_splice_0): call rb_str_drop_bytes, not rb_str_drop.
802 Tue Aug 12 19:11:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
804         * tool/make-snapshot: fix for enc.mk.
806 Tue Aug 12 19:08:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
808         * string.c (rb_str_drop_bytes): new function to drop first bytes.
810 Tue Aug 12 18:58:48 2008  Koichi Sasada  <ko1@atdot.net>
812         * vm.c, vm_insnhelper.c (vm_define_method): move
813           function place.
815 Tue Aug 12 18:56:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
817         * string.c: more descriptive aliases of rb_str_new[2-5].
818           [ruby-dev:35615]
820 Tue Aug 12 18:51:29 2008  TAKAO Kouji  <kouji@takao7.net>
822         * gc.c (getrusage_time): Returned effective value on Windows.
824 Tue Aug 12 18:51:11 2008  Tanaka Akira  <akr@fsij.org>
826         * transcode.c (rb_trans_open): free ts before raise.
828 Tue Aug 12 18:46:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
830         * ext/bigdecimal/bigdecimal.c (BigDecimalCmp): should not ignore
831           <=> comparison.  [ruby-dev:35732]
833 Tue Aug 12 18:43:10 2008  Tanaka Akira  <akr@fsij.org>
835         * enc/trans/make_transdb.rb: *.erb.c is not used anymore.
837 Tue Aug 12 18:32:33 2008  Tanaka Akira  <akr@fsij.org>
839         * transcode_data.h (rb_trans_elem_t): new field: from and to.
841         * transcode.c (trans_open_i): just record from and to.
842           (rb_trans_open): load transcodings.
844 Tue Aug 12 18:32:03 2008  Akinori MUSHA  <knu@iDaemons.org>
846         * ext/syslog/syslog.c (mSyslog_open): Use of Check_SafeStr() is
847           deprecated.
848           (mSyslogConstants_LOG_MASK, mSyslogConstants_LOG_UPTO): Use
849           NUM2INT() instead of FIX2INT() when the type of an given object
850           is not determined.
852 Tue Aug 12 18:14:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
854         * tool/transcode-tblgen.rb (#transcode_tblgen): slight message
855           improvement.
857 Tue Aug 12 17:16:58 2008  Tanaka Akira  <akr@fsij.org>
859         * transcode.c (trans_open_i): check the result of rb_transcoding_open.
861 Tue Aug 12 16:23:32 2008  Narihiro Nakamura  <authorNari@gmail.com>
863         * gc.c (gc_profile_result): use rb_str_catf.
865 Tue Aug 12 16:13:45 2008  Tanaka Akira  <akr@fsij.org>
867         * transcode_data.h (TRANSCODE_ERROR): removed.
869         * tool/transcode-tblgen.rb: 8bit byte of ASCII-8BIT is a valid
870           (but unique to ASCII-8BIT) character.
872         * transcode.c (rb_eConversionUndefined): new error.
873           (rb_eInvalidByteSequence): ditto.
875 Tue Aug 12 16:08:51 2008  Minero Aoki  <aamine@loveruby.net>
877         * lib/net/pop.rb: POP3Command should export @socket since POP
878           calls #socket.
880 Tue Aug 12 16:06:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
882         * sprintf.c, util.c (quorem, nrv_alloc, dtoa): enabled floating point
883           support.
885 Tue Aug 12 15:52:45 2008  Narihiro Nakamura  <authorNari@gmail.com>
887         * gc.c (gc_profile_result): use sprintf.
889 Tue Aug 12 15:37:40 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
891         * string.c (rb_str_intern): should check symbol table overflow.
893 Tue Aug 12 15:31:04 2008  Minero Aoki  <aamine@loveruby.net>
895         * lib/net/http.rb (send_request_with_body): Content-Length should
896           be byte length of string. (closes #203)
898 Tue Aug 12 15:17:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
900         * enc/depend: (transvpath_prefix): prefix has no extension, so replace
901           %s with "".
903 Tue Aug 12 15:03:43 2008  TAKAO Kouji  <kouji@takao7.net>
905         * test/readline/test_readline.rb (TestReadline#test_safe_level_4):
906           tested Readline.vi_editing_mode? and Readline.emacs_editing_mode?.
908 Tue Aug 12 14:25:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
910         * enc/Makefile.in (.SUFFIXES): renamed to .trans.
912         * enc/make_encmake.rb: added --encs and --no-encs options.
914         * enc/depend (TRANSVPATH): fix for nmake.
916 Tue Aug 12 14:19:53 2008  Minero Aoki  <aamine@loveruby.net>
918         * lib/net/https.rb: suppress syntax warning.
920 Tue Aug 12 14:15:51 2008  Minero Aoki  <aamine@loveruby.net>
922         * lib/net/http.rb (Net::HTTP#initialize): initialize net/https
923           variables to suppress syntax warning.
925 Tue Aug 12 14:15:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
927         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): fixed shadowing variable.
929 Tue Aug 12 10:25:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
931         * array.c (rb_ary_delete): Array#delete to return deleted element.
933 Tue Aug 12 10:18:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
935         * test/win32ole/test_err_in_callback.rb: do not require 'mkmf'
936           unless WIN32OLE is defined.
938 Tue Aug 12 07:41:13 2008  Tanaka Akira  <akr@fsij.org>
940         * transcode_data.h (rb_transcoder): add resetstate_func field for
941           resetting a state of stateful encoding.
943         * enc/trans/iso2022.trans (rb_EUC_JP_to_ISO_2022_JP): specify
944           finish_eucjp_to_iso2022jp for resetstate_func.
946         * tool/transcode-tblgen.rb: specify NULL for resetstate_func.
948         * transcode.c (output_replacement_character): call resetstate_func
949           before appending the replacement character.
951 Tue Aug 12 07:19:24 2008  Tanaka Akira  <akr@fsij.org>
953         * transcode.c (get_replacement_character): extracted from
954           output_replacement_character.
956 Tue Aug 12 07:00:02 2008  Tanaka Akira  <akr@fsij.org>
958         * transcode_data.h (rb_transcoder): typedef at first.
960 Tue Aug 12 06:48:35 2008  Tanaka Akira  <akr@fsij.org>
962         * transcode.c (rb_trans_conv): find second last error.
964 Tue Aug 12 00:43:44 2008  Tanaka Akira  <akr@fsij.org>
966         * transcode_data.h (rb_trans_result_t): new type.
967           (rb_trans_elem_t): new type.
968           (rb_trans_t): new type.
970         * transcode.c (transcode_dispatch_cb): removed.
971           (transcode_dispatch): removed.
972           (rb_transcoding_result_t): moved to rb_trans_result_t in
973           transcode_data.h.
974           (transcode_restartable0): goto follow_info when FUNsi.
975           (rb_transcoding_open): use get_transcoder_entry.
976           (rb_trans_open): new function.
977           (rb_trans_conv): ditto.
978           (rb_trans_close): ditto.
979           (trans_open_i): ditto.
980           (trans_sweep): ditto.
981           (more_output_buffer): take rb_trans_t instead of rb_transcoding as
982           an argument.
983           (transcode_loop): take from_encoding and to_encoding instead of tr
984           as arguments.  use rb_trans_open/rb_trans_conv/rb_trans_close.
985           (str_transcode): don't use transcode_dispatch.
987 Mon Aug 11 20:37:05 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
989         * iseq.c (rb_iseq_clone): should preserve cref_stack link.
991 Mon Aug 11 20:27:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
993         * ext/dl/cfunc.c (rb_dlcfunc_call): add taint check.
995         * ext/dl/dl.c (rb_dl_malloc): add rb_secure(2).
997         * ext/dl/dl.c (rb_dl_realloc): ditto.
999         * ext/dl/dl.c (rb_dl_free): ditto.
1001         * ext/dl/dl.c (rb_dl_ptr2value): ditto.
1003 Mon Aug 11 20:11:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1005         * gc.c (getrusage_time): works only if RUSAGE_SELF is defined right
1006           now.
1008         * gc.c (gc_profile_result): C99.
1010 Mon Aug 11 18:57:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1012         * array.c (rb_ary_sample): rename #choice to #sample.  in
1013           addition, sample takes optional argument, a la #first.
1015 Mon Aug 11 18:28:02 2008  Narihiro Nakamura  <authorNari@gmail.com>
1017         * gc.c: added GC::Profiler.
1019 Mon Aug 11 17:26:16 2008  TAKAO Kouji  <kouji@takao7.net>
1021         * ext/readline/README.ja: added API document for
1022           Readline.vi_editing_mode? and Readline.emacs_editing_mode?.
1024         * ext/readline/extconf.rb: checked rl_editing_mode variable in
1025           Readline library.
1027         * ext/readline/readline.c (readline_s_emacs_editing_mode_p): added
1028           Readline.emacs_editing_mode? method.
1029           (readline_s_vi_editing_mode_p): added Readline.vi_editing_mode?
1030           method.
1031           (Init_readline): ditto.
1033 Mon Aug 11 16:56:40 2008  TAKAO Kouji  <kouji@takao7.net>
1035         * test/readline/test_readline.rb: added test for Readline's class
1036           methods.
1038 Mon Aug 11 16:39:23 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1040         * class.c (clone_method): should copy cbase in cref as well.
1041           [ruby-dev:35116]
1043         * iseq.c (iseq_mark): mark original iseq object.
1045         * iseq.c (iseq_free): do not free internal data if they have
1046           original iseq to belong.
1048         * iseq.c (rb_iseq_clone): a new function to clone iseq value.
1050 Mon Aug 11 16:34:48 2008  Tanaka Akira  <akr@fsij.org>
1052         * enc/trans/iso2022.trans: renamed from iso2022.erb.c.
1054         * enc/trans/single_byte.trans: ditto.
1056         * enc/trans/utf_16_32.trans: ditto.
1058         * enc/trans/korean.trans: ditto.
1060         * enc/trans/japanese.trans: ditto.
1062         * enc/depend: follow the renaming.
1064         * tool/build-transcode: ditto.
1066 Mon Aug 11 15:09:23 2008  Tanaka Akira  <akr@fsij.org>
1068         * configure.in (rb_cv_broken_glibc_ia64_erfc): renamed from
1069           rb_broken_glibc_ia64_erfc.
1070           [ruby-core:18228]
1072 Mon Aug 11 10:04:34 2008  Tanaka Akira  <akr@fsij.org>
1074         * transcode_data.h (rb_transcoding): rename fields.
1075           readlen -> recognized_len.
1076           feedlen -> readagain_len.
1078         * transcode.c: follow the field renaming.
1080 Sun Aug 10 22:34:55 2008  Tanaka Akira  <akr@fsij.org>
1082         * transcode.c (transcode_restartable0): invalid handling simplified.
1083           (transcode_restartable): use PARTIAL_INPUT for converting buffered
1084           input.
1086 Sun Aug 10 22:24:24 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1088         * encoding.c: include util.h.  [ruby-dev:35715]
1090         * common.mk: ditto.
1092 Sun Aug 10 20:59:54 2008  Tanaka Akira  <akr@fsij.org>
1094         * transcode_data.h (rb_transcoding): new field: flags.
1096         * transcode.c (load_transcoder): extracted from transcode_dispatch_cb.
1097           (rb_transcoding_result_t): renamed from transcode_result_t.
1098           (rb_transcoding_open): new function.
1099           (rb_transcoding_convert): ditto.
1100           (rb_transcoding_close): ditto.
1101           (transcode_loop): use rb_transcoding_open, rb_transcoding_convert
1102           and rb_transcoding_close.
1103           (str_transcode): don't need rb_transcoding.
1105 Sun Aug 10 18:09:16 2008  Tanaka Akira  <akr@fsij.org>
1107         * tool/transcode-tblgen.rb: record checksum of
1108           transcode-tblgen.rb itself.
1110 Sun Aug 10 12:34:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1112         * config.guess ({powerpc-apple,i586-pc}-haiku): re-applied r18403.
1113           [ruby-core:18110]
1115         * config.{guess,sub}: updated to automake-1.10.1.
1117 Sun Aug 10 11:45:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1119         * enc/Makefile.in (make-workdir): use MAKEDIRS.
1121         * enc/depend: makes target directory before compile/link.
1123         * tool/transcode-tblgen.rb: creates target directory.
1125 Sun Aug 10 11:30:48 2008  Tanaka Akira  <akr@fsij.org>
1127         * transcode.c: rename my_transcoding to tc and my_transcoder to tr.
1129 Sun Aug 10 11:15:55 2008  Tanaka Akira  <akr@fsij.org>
1131         * transcode_data.h (rb_transcoding): add feedlen field.
1133         * transcode.c (transcode_restartable0): renamed from
1134           transcode_restartable.
1135           save input buffer into feed buffer if next character is started the
1136           point before input buffer.  for example, "\x00\xd8\x01" then "\x02"
1137           in UTF-16LE.  \x02 causes invalid and next character is started from
1138           \x01.
1139           (transcode_restartable): new function to call
1140           transcode_restartable0.  if feed buffer is not empty, convert it at
1141           first.
1143 Sun Aug 10 11:02:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1145         * common.mk (extconf): use MAKEDIRS.
1147 Sun Aug 10 09:35:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1149         * lib/irb.rb (IRB::Irb#inspect): instance_variables returns symbols
1150           instead of strings now.  [ruby-dev:34930]
1152 Sun Aug 10 09:22:14 2008  Tanaka Akira  <akr@fsij.org>
1154         * transcode.c (transcode_char_start): refactored to remove readlen
1155           argument.
1156           (transcode_restartable): refactored to remove readlen variable.
1158 Sun Aug 10 08:56:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1160         * gc.c (STACK_LEVEL_MAX, ruby_stack_length): returns size_t.
1161           [ruby-core:18207]
1163         * configure.in (rb_cv_missing__dtos18, rb_cv_missing_fconvert),
1164           ext/digest/md5/md5.c, ext/openssl/ossl.c (main),
1165           ext/socket/extconf.rb (ipv6, wide-getaddrinfo): main should be int.
1167         * main.c (main), win32/winmain.c, wince/wincemain.c (WinMain): envp is
1168           no longer used so long time.  based on a patch from Peter Bowen at
1169           [ruby-core:18208]
1171 Sat Aug  9 22:05:29 2008  Tanaka Akira  <akr@fsij.org>
1173         * transcode.c (transcode_loop): take destination and resize function
1174           as parameters.
1175           (more_output_buffer): ditto.
1176           (str_transcoding_resize): argument changed from rb_transcoding* to
1177           VALUE.
1178           (str_transcode): call transcode_loop with destination string and its
1179           resize function.
1181         * transcode_data.h (rb_transcoding): move ruby_string_dest and
1182           flush_func to transcode_loop parameters.
1184 Sat Aug  9 21:29:45 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1186         * common.mk: encs depend on transdb.h
1188 Sat Aug  9 21:10:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1190         * configure.in (rb_cv_rshift_sign, rb_cv_binary_elf): get rid of
1191           AC_TRY_RUN.
1193 Sat Aug  9 16:33:21 2008  Tanaka Akira  <akr@fsij.org>
1195         * transcode_data.h (rb_transcoding): new fields: next_info and next_byte.
1197         * transcode.c (transcode_restartable): save/restore next_info and
1198           next_byte.
1199           sync readlen and in_p when invalid.
1201 Sat Aug  9 15:10:15 2008  Tanaka Akira  <akr@fsij.org>
1203         * transcode.c (transcode_restartable): my_transcoder argument removed.
1204           (transcode_loop): my_transcoder argument removed.
1206 Sat Aug  9 14:39:34 2008  Tanaka Akira  <akr@fsij.org>
1208         * transcode_data.h (rb_transcoding): add fields for restartable
1209           transcoding.
1210           (rb_transcoder): add max_input field.
1211           from_unit_length field is renamed to input_unit_length.
1213         * tool/transcode-tblgen.rb: generate max_input field.
1215         * enc/trans/iso2022.erb.c: follow rb_transcoder change.
1217         * enc/trans/utf_16_32.erb.c: ditto.
1219         * transcode.c (PARTIAL_INPUT): new constant.
1220           (transcode_char_start): new function.
1221           (transcode_result_t): new type.
1222           (transcode_restartable): new function.
1223           (more_output_buffer): new function.
1224           (transcode_loop): use transcode_restartable.
1226 Sat Aug  9 13:35:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1228         * stable/ext/socket/socket.c (NI_MAXHOST, NI_MAXSERV): fixed invalid
1229           preprocessor directives.  a patch from Peter Bowen at
1230           [ruby-core:18211].
1232 Sat Aug  9 06:37:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1234         * enc/make_encdb.rb, enc/trans/make_transdb.rb: skip nonexistent
1235           directory.  [ruby-dev:35802]
1237 Sat Aug  9 01:07:51 2008  Tanaka Akira  <akr@fsij.org>
1239         * enc/trans/utf_16_32.erb.c (fun_so_from_utf_32le): implemented.
1240           (fun_so_to_utf_32le): implemented.
1241           [ruby-dev:35777]
1243 Sat Aug  9 00:42:33 2008  Tanaka Akira  <akr@fsij.org>
1245         * transcode_data.h (rb_transcoder): from_unit_length field added.
1246           from_utf8 field removed.
1248         * tool/transcode-tblgen.rb: generate offsets range.
1249           follow rb_transcoder change.
1251         * transcode.c (transcode_loop): don't use from_utf8.
1252           make invalid region from_unit_length wise.
1254         * enc/trans/iso2022.erb.c: follow rb_transcoder and
1255           transcode_generate_node change.
1257         * enc/trans/utf_16_32.erb.c: follow rb_transcoder and
1258           transcode_generate_node change.
1259           explicit :invalid map removed.
1261 Fri Aug  8 23:29:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1263         * enc/depend (TRANSCSRCS): needs rule_subst to apply.
1265         * io.c (shutdown): not define if defined already.
1267 Fri Aug  8 22:47:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1269         * vm_insnhelper.c (opt_eq_func): large function to make inline.
1271         * bcc32/Makefile.sub (config.h): cannot compile a big inline function.
1273 Fri Aug  8 21:09:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1275         * common.mk (enk.mk): give not RUBY but MINIRUBY.
1277 Fri Aug  8 17:03:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1279         * configure.in (shutdown, sched_yield, pthread_attr_setinheritsched):
1280           check for Haiku.
1282         * eval_intern.h, io.c, thread_pthread.c: use autoconfisticated results.
1284 Fri Aug  8 16:52:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1286         * common.mk (enc.mk): mkmf.rb requires rbconfig.rb.
1288         * common.mk (srcs-enc): renamed from transcodes.
1290         * enc/Makefile.in (make-workdir): creates object directories.
1292         * common.mk (encdb.h): see both $(srcdir)/enc and enc.
1294         * enc/make_encdb.rb: ditto.
1296         * enc/trans/make_transdb.rb: fix for the case no transdirs are given.
1298         * enc/trans/make_transdb.rb: converts only one transcoders for each
1299           basename.
1301 Fri Aug  8 10:53:52 2008  Tanaka Akira  <akr@fsij.org>
1303         * lib/resolv.rb: randomize source port and transaction id.
1304           CVE-2008-1447.
1306         * lib/resolv-replace.rb (UDPSocket#bind): don't resolv host if host is
1307           "".
1309 Fri Aug  8 04:20:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1311         * common.mk: see both $(srcdir)/enc/trans and enc/trans.
1313         * enc/trans/make_transdb.rb: ditto.
1315 Fri Aug  8 00:05:02 2008  TAKAO Kouji  <kouji@takao7.net>
1317         * ext/.document: added readline/readline.c.
1319         * ext/readline/readline.c: changed Copyright. added RDoc.
1321         * ext/readline/README.ja: fixed typo.
1323         * ext/readline/README: contents was moved RDoc.
1325 Thu Aug  7 23:43:11 2008  Tanaka Akira  <akr@fsij.org>
1327         * transcode_data.h (rb_transcoding): new field "stateful".
1328           (rb_transcoder): preprocessor and postprocessor field removed.
1329           change arguments of func_ii, func_si, func_io and func_so.
1330           new field "finish_func".
1332         * tool/transcode-tblgen.rb: make FUNii, FUNsi and FUNio
1333           generatable.
1335         * transcode.c (transcoder_lib_table): removed.
1336           (transcoder_table): change structure.
1337           (transcoder_key): removed because the above structure change.
1338           (make_transcoder_entry): new function.
1339           (get_transcoder_entry): ditto.
1340           (rb_register_transcoder): follow the structure change.
1341           (declare_transcoder): ditto.
1342           (transcode_search_path): new function for breadth first search to
1343           find a list of converters.
1344           (transcode_search_path_i): new function.
1345           (transcode_dispatch_cb): ditto.
1346           (transcode_dispatch): use transcode_search_path.
1347           (transcode_loop): follow the argument change.
1348           (str_transcode): preprocessor and postprocessor stuff removed.
1350         * enc/trans/iso2022.erb.c: new file.  ISO-2022-JP conversion
1351           re-implemented.
1353         * enc/trans/japanese.erb.c: ISO-2022-JP stuff removed.
1355         * enc/trans/utf_16_32.erb.c: follow argument change of FUNso.
1357         [ruby-dev:35798]
1359 Thu Aug  7 22:55:44 2008  TAKAO Kouji  <kouji@takao7.net>
1361         * ext/readline/README.ja: updated API document for Readline module.
1363 Thu Aug  7 20:52:08 2008  Shugo Maeda  <shugo@ruby-lang.org>
1365         * lib/net/ftp.rb (login): raise FTPReplyError if passwd or acct
1366           is not supplied.  fixed [ruby-core:18058].
1368 Thu Aug  7 18:01:44 2008  Akinori MUSHA  <knu@iDaemons.org>
1370         * misc/ruby-mode.el (ruby-imenu-create-index-in-block): Fix the
1371           regexp to only pick definition lines properly.  `module_function'
1372           is not a definition of a module named `_function'.
1374 Thu Aug  7 17:47:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1376         * enc/depend: add transdb.c.
1378 Thu Aug  7 16:28:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1380         * Makefile.in, common.mk, {bcc,win}32/Makefile.sub (clean-ext): do not
1381           use miniruby.
1383 Thu Aug  7 14:17:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1385         * enc/depend: removed needless explicit commands.
1387         * lib/mkmf.rb, {bcc32,win32}/Makefile.sub (CLEANLIBS, CLEANOBJS):
1388           moved clean targets to platform makefiles.
1390 Thu Aug  7 13:12:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1392         * ext/socket/getaddrinfo.c (gai_strerror): ignore only on Haiku.
1393           a patch from <zn at mbf.nifty.com>, [ruby-dev:35796].
1395 Thu Aug  7 06:31:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1397         * test/ruby/process.rb (test_popen_fork): skip a test which is
1398           freeze in FreeBSD.
1400 Thu Aug  7 06:05:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1402         * config.guess: add powerpc-apple-haiku, i586-pc-haiku.
1403           see [ruby-core:18110]
1405 Thu Aug  7 05:51:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1407         * eval_intern.h: Add support to Haiku. see [ruby-core:18110]
1409         * include/ruby/defines.h: ditto.
1411         * configure.in: ditto.
1413         * thread_pthread.c: ditto.
1415         * io.c: ditto.
1417         * lib/mkmf.rb: ditto.
1419         * ext/socket/getaddrinfo.c: ditto.
1421         * ext/socket/extconf.rb: ditto.
1423         * ext/socket/socket.c: ditto.
1425         * ext/socket/addrinfo.h: ditto.
1427         * ext/socket/getnameinfo.c: ditto.
1429 Thu Aug  7 05:43:32 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1431         * common.mk: mkdir enc/trans before build tables.
1433 Thu Aug  7 05:18:30 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1435         * enc/depend: enc/*.c is source but enc/trans/*.c is generated.
1437 Thu Aug  7 05:14:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1439         * regenc.c (code_to_mbc): raise RangeError Integer#chr
1440           when more than 255 is given with single byte encoding.
1441           [ruby-dev:35789]
1443 Thu Aug  7 05:06:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1445         * gc.c (run_final): runs finalizers with the object terminated.
1447         * gc.c (rb_gc_call_finalizer_at_exit): keeps finalized objects from
1448           linking to freelist.
1450 Thu Aug  7 04:43:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1452         * enc/depend: for build in other than srcdir.
1454 Wed Aug  6 22:40:48 2008  Tanaka Akira  <akr@fsij.org>
1456         * tool/transcode-tblgen.rb (transcode_generate_node): code
1457           argument removed.
1459 Wed Aug  6 21:25:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1461         * gc.c (chain_finalized_object): deletes finalizers to be invoked from
1462           finalizer_table.
1464         * gc.c (rb_gc_call_finalizer_at_exit): warns when could not invoke
1465           finalizers.
1467 Wed Aug  6 20:56:43 2008  Tanaka Akira  <akr@fsij.org>
1469         * enc/depend: transcode table generation depends on
1470           tool/transcode-tblgen.rb.
1472 Wed Aug  6 20:48:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1474         * gc.c (rb_gc_call_finalizer_at_exit): self-referencing finalizers
1475           cannot be invoked.  [ruby-dev:35681]
1477 Wed Aug  6 20:44:41 2008  Tanaka Akira  <akr@fsij.org>
1479         * tool/transcode-tblgen.rb: distinguish UNDEF and INVALID.
1480           [ruby-dev:35709]
1482         * transcode.c (transcode_loop): don't need rb_enc_mbclen now.
1484 Wed Aug  6 14:40:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1486         * common.mk (transdb.h): requires transcoders.
1488         * enc/depend (srcs): target for transcoders.
1490 Wed Aug  6 14:04:08 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1492         * enc/depend: replace not only $(<:...) but also $<.
1494 Wed Aug  6 13:54:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1496         * win32/Makefile.sub (config.status): export BASERUBY.
1498         * enc/depend: avoid GNU make'ism.
1500 Wed Aug  6 07:59:02 2008  Tanaka Akira  <akr@fsij.org>
1502         * tool/transcode-tblgen.rb (ActionMap#eql?): use == to compare @map.
1504 Wed Aug  6 07:45:26 2008  Tanaka Akira  <akr@fsij.org>
1506         * tool/transcode-tblgen.rb: show generating tables in verbose mode.
1507           (transcode_generate_node): call ActionMap#generate_node with showing
1508           table name.
1510         * enc/trans/utf_16_32.erb.c: use transcode_generate_node.
1512 Wed Aug  6 06:55:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1514         * thread.c (thread_start_func_2): propagates fatal error and system
1515           exit to the main thread.
1517 Wed Aug  6 05:31:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1519         * encoding.c (rb_to_encoding_index, rb_to_encoding): check if the name
1520           is ascii compatible as well as Encoding.find.
1522         * transcode.c (str_encode): no need to duplicate first.
1524 Wed Aug  6 05:08:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1526         * array.c (rb_ary_sort_bang): reset to real class.
1528         * file.c (rb_find_file_ext, rb_find_file): ditto.
1530         * io.c (io_reopen): ditto.
1532 Wed Aug  6 03:56:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1534         * common.mk (transcodes), tool/build-transcode: generates transcode
1535           sources.
1537         * enc/trans/{japanese,korean,single_byte,utf_16_32}.c: to be
1538           autogenerated now.
1540         * enc/depend: added rules for .c from .erb.c.
1542 Tue Aug  5 20:46:20 2008  Tanaka Akira  <akr@fsij.org>
1544         * tool/build-transcode: new file.
1546         * tool/transcode-tblgen.rb: new file.
1548         * enc/trans/make_transdb.rb: exclude *.erb.c.
1550         * enc/depend: exclude *.erb.c.
1552         * enc/trans/utf_16_32.erb.c: new file.
1554         * enc/trans/single_byte.erb.c: new file.
1556         * enc/trans/japanese.erb.c: new file.
1558         * enc/trans/korean.erb.c: new file.
1560         * enc/trans/iso-8859-2-tbl.rb: new file.
1562         * enc/trans/iso-8859-3-tbl.rb: new file.
1564         * enc/trans/iso-8859-4-tbl.rb: new file.
1566         * enc/trans/iso-8859-5-tbl.rb: new file.
1568         * enc/trans/iso-8859-6-tbl.rb: new file.
1570         * enc/trans/iso-8859-7-tbl.rb: new file.
1572         * enc/trans/iso-8859-8-tbl.rb: new file.
1574         * enc/trans/iso-8859-9-tbl.rb: new file.
1576         * enc/trans/iso-8859-10-tbl.rb: new file.
1578         * enc/trans/iso-8859-11-tbl.rb: new file.
1580         * enc/trans/iso-8859-13-tbl.rb: new file.
1582         * enc/trans/iso-8859-14-tbl.rb: new file.
1584         * enc/trans/iso-8859-15-tbl.rb: new file.
1586         * enc/trans/eucjp-tbl.rb: new file.
1588         * enc/trans/sjis-tbl.rb: new file.
1590         * enc/trans/euckr-tbl.rb: new file.
1592         * enc/trans/utf_16_32.c: regenerated.
1594         * enc/trans/single_byte.c: regenerated.
1596         * enc/trans/japanese.c: regenerated.
1598         * enc/trans/korean.c: regenerated.
1600         [ruby-dev:35730]
1602 Tue Aug  5 18:02:53 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
1604         * test/io/nonblock/test_flush.rb (TestIONonblock#test_flush):
1605           rescue some exceptions. [ruby-dev:35638]
1607 Tue Aug  5 16:40:06 2008  Shugo Maeda  <shugo@ruby-lang.org>
1609         * lib/net/ftp.rb (chdir): handle 5xx errors correctly.
1610           fixed [ruby-core:18057].
1612 Tue Aug  5 16:38:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1614         * include/ruby/win32.h, bcc32/Makefile.sub (config.h): bcc 5.8 has
1615           stdint.h.
1617 Tue Aug  5 16:13:05 2008  Shugo Maeda  <shugo@ruby-lang.org>
1619         * lib/net/imap.rb (disconnect): do not refer SSL::SSLSocket for
1620           environments without OpenSSL. fixed [ruby-dev:35755].
1622 Tue Aug  5 14:19:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1624         * file.c (rb_stat_mode): generalized st_mode mask.
1626 Tue Aug  5 12:43:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1628         * io.c (retry_sendfile, retry_read): ENOSYS and EWOULDBLOCK are not
1629           defined on every platforms.
1631 Tue Aug  5 12:34:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1633         * transcode_data.h (TRANSCODE_ERROR): common transcode failure
1634           exception, would be changed later.
1636         * enc/trans/japanese.c (UNSUPPORTED_MODE): unsupported mode transition
1637           exception.
1639 Tue Aug  5 03:29:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1641         * array.c (rb_ary_sort_bang): respect overridden <=> for String and
1642           Fixnum.  [ruby-core:17708]
1644         * include/ruby/node.h (NOEX_BASIC): basic definition method flag.
1646         * include/ruby/intern.h, vm_method.c (rb_method_basic_definition_p):
1647           new function to check if the method is not redefined after the
1648           initialization.
1650         * vm_method.c (rb_obj_respond_to): use rb_method_basic_definition_p.
1652 Mon Aug  4 20:39:06 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
1654         * Makefile.in (update-rubyspec): renamed the rubyspec directory
1655           "spec". Changed directory structure.
1657         * Makefile.in (test-rubyspec): ditto.
1659         * spec/README: described the structure of "spec" directory.
1661         * spec/default.mspec: configured for Matz's Ruby Implementation.
1663 Mon Aug  4 19:21:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1665         * array.c (rb_ary_tmp_new): added.
1667         * vm_eval.c (vm_call_super): fixed typo, and get rid of too large
1668           alloca.  [ruby-core:17922]
1670 Mon Aug  4 16:48:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1672         * parse.y (deferred_nodes, compstmt, arg, fixup_nodes, range_op): fix
1673           up fixnum range literal in conditional as automagical line number
1674           comparison.  [ruby-core:12124], [ruby-dev:35731]
1676 Mon Aug  4 14:41:25 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
1678         * lib/net/smtp.rb (Net::SMTP::rcptto): fix a typo. a patch from
1679           Masao Takaku <masao at nii.ac.jp>
1680           fix [ruby-dev:35489].
1682 Mon Aug  4 14:08:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1684         * marshal.c (dump_ensure), process.c (run_exec_dup2),
1685           string.c (rb_str_replace), transcode.c (transcode_dispatch): fixed
1686           memory leaks.  based on patches from shinichiro.h <shinichiro.hamaji
1687           AT gmail.com> at [ruby-dev:35751].
1689 Sun Aug  3 19:32:52 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1691         * ext/win32ole/win32ole.c (hash2named_arg): refactoring.
1693         * ext/win32ole/win32ole.c (ole_invoke, fole_respond_to, ev_on_event,
1694           fev_off_event): accepts Symbol argument.
1696         * test/win32ole/test_win32ole.rb: ditto.
1698         * test/win32ole/test_win32ole_event.rb: ditto.
1700 Sun Aug  3 10:41:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1702         * string.c (rb_str_shared_replace): fixed memory leak.  a patch from
1703           shinichiro.h <shinichiro.hamaji AT gmail.com> at [ruby-dev:35742]
1705 Sat Aug  2 22:55:41 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1707         * test/win32ole/test_err_in_callback.rb: remove temporary files.
1708           some refactoring.
1710 Sat Aug  2 15:51:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1712         * parse.y (yylex): 8 and 9 in octal integer should cause compile
1713           error.  [ruby-dev:35729]
1715 Sat Aug  2 01:06:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1717         * enc/trans/japanese.c: add U+FF5E to EUC-JP.
1718           [ruby-dev:35720] [ruby-dev:35722]
1720 Fri Aug  1 23:49:44 2008  TAKAO Kouji  <kouji@takao7.net>
1722         * ext/readline/extconf.rb: checked to have clear_history in
1723           readline library.
1724         * ext/readline/readline.c (hist_get, hist_each, Init_readline):
1725           The offset specified for the argument of history_get() might be
1726           different in GNU Readline and libedit. If use libedit, it was
1727           corrected that the computational method of the offset specified
1728           for the argument of history_get() when the Readline module was
1729           initialized was decided.
1730           (hist_get, hist_set): If use libedit, accesses first an input
1731           content in history when specifies the negative offset for the
1732           argument of history_get() or replace_history_entry(). Then
1733           checks the offset is negative in ruby.
1734           (rb_remove_history): When compiling, it corrects it to warning
1735           when libedit is used.
1736           (hist_clear, Init_readline): added Readline::HISTORY.clear
1737           method. [ruby-dev:35551]
1738         * test/readline/test_readline_history.rb: added unit test for
1739           Readline::HISTORY.
1741 Fri Aug  1 23:26:45 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1743         * transcode.c (transcode_loop): undefined character is replaced with
1744           only one character. [ruby-dev:35709]
1746 Fri Aug 01 23:26:22 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
1748         Merged r16430(akr), r16431(akr), r16433(akr), r16469(nobu), and
1749         r17874(akr) from ruby_1_8.
1751         * Makefile.in (update-rubyspec): added
1753         * Makefile.in (test-rubyspec): added
1755 Fri Aug  1 23:16:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1757         * enc/trans/japanese.c: add support for CP51932,
1759 Fri Aug  1 22:59:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1761         * enc/trans/japanese.c: add U+FF0C,
1763 Fri Aug  1 21:49:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1765         * test/sdbm/test_sdbm.rb: add some tests.
1767 Fri Aug  1 21:36:00 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1769         * gc.c (allocate_heaps, assign_heap_slot, rb_newobj_from_heap):
1770           reset during_gc before raising NoMemoryError.
1772 Fri Aug  1 21:29:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1774         * vm.c (Init_BareVM): check failure of malloc().
1776 Fri Aug  1 20:55:27 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1778         * enc/trans/japanese.c (to_SHIFT_JIS_EF_BF_offsets): add U+FFF3,
1779           U+FFF4, U+FFF5.
1781         * enc/trans/japanese.c (to_SHIFT_JIS_EF_BF_infos): ditto.
1783         * enc/trans/japanese.c (to_EUC_JP_EF_BF_infos): added.
1785         * enc/trans/japanese.c (to_EUC_JP_EF_BF): added.
1787         * enc/trans/japanese.c (to_EUC_JP_EF_infos): change size.
1788           [ruby-dev:35714]
1790 Fri Aug 01 18:27:15 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
1792         * parse.y (parser_yylex): removed an useless conditional, and magic
1793           comment are ignored unless at the first of line.
1795         * test/ruby/test_m17n.rb (test_magic_comment_vim): added.
1797         * test/ruby/test_m17n.rb (test_magic_comment_at_various_positions):
1798           added.
1800 Fri Aug  1 14:54:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1802         * win32/win32.c (rb_w32_seekdir): no need to rewind to seek forward.
1804 Fri Aug  1 05:31:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1806         * transcode.c (output_replacement_character):
1807           rename from _get_replacement_character.
1809         * transcode.c (output_replacement_character):
1810           fix replacement on UTF-32{BE,LE}. [ruby-dev:35705]
1812         * transcode.c (transcode_loop): ditto.
1814         * test/ruby/test_transcode.rb (test_invalid_replace):
1815           add for above.
1817 Fri Aug  1 01:01:49 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1819         * proc.c (rb_proc_call_with_block): reduce comparison.
1821 Wed Jul 30 21:08:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1823         * ext/syck/syck.c (syck_free_parser): fix memory leak by
1824           YAML::Syck.compile.
1826 Thu Jul 31 22:17:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1828         * ext/bigdecimal/bigdecimal.c (VpMult): prevent memory leak.
1830 Thu Jul 31 20:05:56 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1832         * test/ruby/test_transcode.rb (test_unicode_public_review_issue_121):
1833           fix option1 and 3.
1835 Thu Jul 31 19:54:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1837         * transcode.c (get_replacement_character): use U+FFFD as replacement
1838           character when convert to Unicode.
1840         * test/ruby/test_transcode.rb (test_unicode_public_review_issue_121):
1841           rename from test_public_review_issue_121.
1843         * test/ruby/test_transcode.rb (test_unicode_public_review_issue_121):
1844           enable option2.
1846 Thu Jul 31 17:00:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1848         * transcode.c (get_replacement_character): fix: invalid byte sequence
1849           is always replaced "\x00?".
1851 Thu Jul 31 16:37:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1853         * test/rubygems/test_gem_ext_configure_builder.rb
1854           (test_self_build_fail): remove extra newline. [ruby-dev:35704]
1856 Thu Jul 31 15:11:11 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
1858         * test/ruby/test_transcode.rb: added test_shift_jis
1859           (contributed by Yoshihiro Kambayashi) and
1860           test_public_review_issue_121
1861           (see http://www.unicode.org/review/pr-121.html)
1863 Thu Jul 31 13:18:30 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1865         * include/ruby/ruby.h (struct RString): size of ary must be
1866           RSTRING_EMBED_LEN_MAX + 1.
1868 Thu Jul 31 12:23:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1870         * pack.c (pack_unpack): upper half of hexdigits has never been used.
1872 Thu Jul 31 11:31:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1874         * ext/syck/syck.h (ASSERT): fix typo at r18176.
1876         * ext/syck/rubyext.c (rb_syck_compile): expression in ASSERT() has no
1877           effect unless debug mode.
1879 Thu Jul 31 10:51:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1881         * iseq.c (ruby_iseq_disasm_insn): suppress warnings on platforms which
1882           int size differs from pointer size.
1884         * ext/openssl/ossl_asn1.c (ossl_asn1_get_asn1type): ditto
1886         * ext/syck/rubyext.c (rb_syck_err_handler),
1887           (syck_default_error_handler): ditto.
1889 Thu Jul 31 02:21:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1891         * ext/syck/rubyext.c (rb_syck_compile): remove meaningless branch
1892           that misleads into thinking that the variable sav may be
1893           uninitialized.
1895 Thu Jul 31 01:25:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1897         * thread.c (rb_mutex_unlock_all): mutex is no longer a ruby object.
1899 Thu Jul 31 01:18:07 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1901         * parse.y (magic_comment_encoding): remove meaningless null check.
1903 Thu Jul 31 01:09:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1905         * ext/bigdecimal/bigdecimal.c (VpIsRoundMode): fix tautology
1906           condition.
1908 Thu Jul 31 00:58:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1910         * pack.c (pack_unpack): reduced static variables.
1912 Thu Jul 31 00:10:20 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1914         * proc.c (rb_proc_call_with_block): prevent null reference.
1916 Wed Jul 30 22:19:13 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1918         * parse.y (vtable_free): remove meaningless null check.
1920 Wed Jul 30 22:08:25 2008  Tanaka Akira  <akr@fsij.org>
1922         * dir.c (struct dir_data): change path field char * to VALUE.
1923           (mark_dir): new function for mark path field.
1924           (free_dir): follow the path field change.
1925           (dir_s_alloc): ditto.
1926           (dir_initialize): ditto.
1927           (dir_s_open): ditto.
1928           (dir_inspect): ditto.
1929           (dir_path): return (duplicate of) the path field to preserve
1930           encoding.  [ruby-dev:35685]
1932 Wed Jul 30 22:06:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1934         * string.c (sym_inspect): remove dead code.
1936 Wed Jul 30 21:32:52 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1938         * ChangeLog: fix wrong method name and add reference.
1940 Wed Jul 30 21:30:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1942         * regparse.c (name_add): fix memory leak.
1944 Wed Jul 30 21:08:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1946         * regparse.c (parse_exp): fix memory leak at Regexp.new("x{1,1}").
1948 Wed Jul 30 17:48:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1950         * win32/win32.c (rb_w32_select): recalc the rest of timeout for each
1951           iterations.  [ruby-core:18015]
1953 Tue Jul 29 23:37:37 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1955         * io.c (io_ungetc): raise NotImplementedError when ungetc is called
1956           against dummy encoding IO.  [ruby-dev:35686]
1958         * io.c (rb_io_getline_1): ditto when gets with delimiter is called.
1960         * io.c (io_getc): ditto when getc is called.
1962         * test/ruby/test_io_m17n.rb (test_terminator_stateful_conversion,
1963           test_getc_stateful_conversion, test_ungetc_stateful_conversion):
1964           these tests should raise NotImplementedError.
1966 Tue Jul 29 22:55:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1968         * test/ruby/test_io.rb (pipe): run reader thread and writer thread.
1970 Tue Jul 29 21:38:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1972         * ext/bigdecimal/bigdecimal.c (Init_bigdecimal): fix typo.
1974 Tue Jul 29 21:35:59 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1976         * test/etc/test_etc.rb (test_passwd): age field may be string under
1977           some environments.
1979 Tue Jul 29 17:54:35 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1981         * dir.c (char_casecmp): fix: return 0 if either of characters is NUL.
1983 Tue Jul 29 13:17:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1985         * test/etc/test_etc.rb (test_getpwuid): fix for users whose uid is
1986           shared.
1988 Tue Jul 29 05:37:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1990         * file.c (rb_find_file_ext, rb_find_file): explicit relative path
1991           which starts with "./" or "../" should be searched from cwd
1992           instead of load path.  [ruby-dev:35673]
1994 Tue Jul 29 02:39:46 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1996         * math.c (math_atanh): raise EDOM on FreeBSD when atanh(1).
1998         * math.c (math_log): ditto.
2000         * math.c (math_log2): ditto.
2002         * math.c (math_log10): ditto.
2004         * test/ruby/test_math.rb: test for above.
2006 Tue Jul 29 01:41:15 2008  Tanaka Akira  <akr@fsij.org>
2008         * dir.c (struct dir_data): intenc field removed.
2009           (dir_s_alloc): intenc initialization removed.
2010           (dir_initialize): :internal_encoding option removed.  dirname code
2011           conversion removed.
2012           (dir_enc_str): code conversion removed.
2013           [ruby-dev:35661]
2015 Mon Jul 28 21:32:17 2008  Kouhei Sutou  <kou@cozmixng.org>
2017         * test/rss/: use PNG instead of zlib as binary data.
2019 Mon Jul 28 21:24:33 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2021         * thread_win32.[ch] (cond_every_entry, rb_thread_cond_struct): reverted
2022           r18239 because r18245 made the changes unnecessary.
2024         * thread.c (rb_mutex_struct): define after including thread_{pthread,
2025           win32}.c.
2027 Mon Jul 28 21:00:10 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2029         * test/ruby/test_require.rb (test_require_too_long_filename):
2030           Kernel#require does not use dln_find_file_r (at r18242).
2032 Mon Jul 28 20:17:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2034         * vm_core.h: move the definition of struct rb_mutex_struct.
2036         * thread.c: ditto.
2038 Mon Jul 28 18:58:46 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2040         * thread.c (mutex_unlock): fix typo.
2042 Mon Jul 28 18:15:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2044         * file.c (rb_find_file_ext, rb_find_file): not to split load path with
2045           path separator.  [ruby-Bugs-21356]
2047 Mon Jul 28 18:14:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2049         * win32/win32.c (overlapped_socket_io, fcntl, rb_w32_close): must not
2050           pass a pointer to int which is smaller than st_data_t on mswin64.
2052 Mon Jul 28 16:49:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2054         * win32/win32.c (CreateChild, overlapped_socket_io): suppress
2055           warnings.
2057 Mon Jul 28 16:06:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2059         * win32/win32.c (MAXPATHLEN): define before use.
2061 Mon Jul 28 16:01:12 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2063         * thread_win32.[ch] (cond_every_entry, rb_thread_cond_struct): moved
2064           the definitions from .c to .h because rb_thread_cond_struct is used
2065           in vm_core.h.
2067 Mon Jul 28 14:29:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2069         * dln.c (load_lib): use dln_find_file_r instead of dln_find_file.
2071 Mon Jul 28 00:18:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2073         * vm_core.h, thread.c: It is now prohibited to use Data_Get_Struct in
2074           *_free against an object that is going to be free'ed.  So, change type
2075           of thread_t#keeping_mutexes from VALUE to mutex_t.
2077         * vm.c: remove mark to keeping_mutexes.
2079 Sun Jul 27 23:32:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2081         * test/openssl/test_ssl.rb (server_loop): rescue Errno::EINVAL and
2082           Errno::ECONNABORTED.
2084 Sun Jul 27 22:11:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2086         * bootstraptests/method.rb: increase RLIMIT_STACK size to 4M+8Kbytes
2087           because FreeBSD fails this less than that.
2089 Sun Jul 27 21:45:59 2008  Koichi Sasada  <ko1@atdot.net>
2091         * gc.c (gc_mark_children, obj_free): T_DEFERRED should not be appear.
2093         * gc.c (gc_sweep, finalize_list): fix to decrement heap_slot#limit
2094           after executing finalizer.
2096 Sun Jul 27 14:48:37 2008  Koichi Sasada  <ko1@atdot.net>
2098         * include/ruby/ruby.h: add a type T_DEFERRED.
2100         * gc.c: fix deferred finalizer system.  finalize processes of
2101           T_DATA and T_FILE are executed after gc process.
2102           And fix to use BUILTIN_TYPE() instead of seeing flag.
2104         * thread.c, vm_core.h: add RUBY_VM_SET_FINALIZER_INTERRUPT()
2105           and check interrupt_flag at rb_thread_execute_interrupts().
2107         * thread.c (mutex_mark): fix to mark next_mutex.
2109         * vm.c (rb_thread_mark): fix to mark keeping_mutexes.
2111 Sun Jul 27 09:15:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2113         * dln.h (dln_find_exe, dln_find_file): deprecated, use reentrant
2114           versions instead.
2116 Sun Jul 27 09:02:32 2008  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
2118         * lib/rinda/tuplespace.rb: merged from 1.8.
2120         * test/rinda/test_rinda.rb: merged from 1.8.
2122 Sat Jul 26 22:45:18 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
2124         * sample/exyacc.rb: fixed NoMethodError(Kernel#sub!).
2125           replaced use of special variables with explicit IO
2126           operations.
2128 Sat Jul 26 21:17:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2130         * ext/win32ole/win32ole.c (Init_win32ole): add
2131           WIN32OLE_EVENT#handler=, WIN32OLE_EVENT#handler
2133         * test/win32ole/test_win32ole_event.rb: ditto.
2135 Sat Jul 26 07:44:14 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2137         * ext/win32ole/win32ole.c (add_event_call_back): remove unused
2138           variable.
2140 Fri Jul 25 23:48:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2142         * gc.c (gc_sweep, obj_free, run_final): defer finalizers of IO and
2143           Data.  [ruby-dev:35578]
2145 Fri Jul 25 23:35:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2147         * lib/webrick/httputils.rb (WEBrick::HTTPUtils#split_header_value):
2148           reduce backtrack.  based on a fix by Christian Neukirchen
2149           <chneukirchen AT gmail.com>.
2151 Fri Jul 25 21:55:38 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2153         * test/ruby/enc/test_koi8.rb: move from test/ruby/test_koi8.rb.
2155 Fri Jul 25 21:09:32 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2157         * ext/win32ole/win32ole.c (ole_invoke, add_event_callback,
2158           rescue_callback): refactoring.
2160 Fri Jul 25 20:52:44 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2162         * test/win32ole/err_in_callback.rb: add test of raising
2163           exception in WIN32OLE_EVENT callback.
2165         * test/win32ole/test_err_in_callback.rb: ditto.
2167 Fri Jul 25 20:43:57 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2169         * ext/win32ole/win32ole.c (Init_win32ole): add
2170           WIN32OLE_EVENT#off_event.
2172         * test/win32ole/test_win32ole_event.rb: ditto.
2174         * test/win32ole/test_win32ole_event.rb: some refactoring.
2176 Fri Jul 25 19:50:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2178         * regint.c (xmalloc, xrealloc, xfree): not to use ruby managed memory.
2180 Fri Jul 25 15:52:40 2008  Koichi Sasada  <ko1@atdot.net>
2182         * vm.c (vm_invoke_proc): skip setting safe_level if
2183           it from bmethod.  This change makes test/ruby/test_proc.rb pass.
2185 Fri Jul 25 10:00:00 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
2187         * test/ruby/test_transcode.rb: refactoring/cleanup of
2188           test_iso_2022_jp(_1)
2190 Fri Jul 25 04:12:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2192         * ext/nkf/nkf.c (rb_nkf_convert): output of mime encode is US-ASCII.
2193           [ruby-list:45257]
2195 Fri Jul 25 02:43:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2197         * sample/coverage.rb: move from lib/coverage.rb because this remains in
2198           an early phase of development.
2200 Fri Jul 25 00:10:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2202         * file.c (rb_find_file_ext, rb_find_file): converts Windows style path
2203           to Cygwin path.  [ruby-dev:35647]
2205 Thu Jul 24 16:30:21 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2207         * win32/win32.c (exit_handler): use st_free_table() to free socklist.
2209         * win32/win32.c (rb_w32_pipe_exec, rb_w32_accept, rb_w32_socket,
2210           rb_w32_socketpair): should check and release fd and sockets/handles
2211           if an error occurs in rb_w32_open_osfhandle().
2213 Thu Jul 24 16:05:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2215         * win32/win32.c (overlapped_socket_io): avoid warnings.
2217         * thread_win32.c (ubf_handle): refactoring.
2219 Thu Jul 24 07:01:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2221         * ext/win32ole/win32ole.c: got rid of improper casts.
2223 Wed Jul 23 23:19:15 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2225         * test/socket/test_tcp.rb (test_recvfrom): replace an irrelevant test
2226           for old behavior.
2228 Wed Jul 23 21:38:16 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2230         * test/ruby/test_marshal.rb: suppress warning during test.
2232 Wed Jul 23 21:35:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2234         * test/ruby/test_dir.rb: suppress warning during test.
2236 Wed Jul 23 18:27:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2238         * ext/tk/{stubs,tcltklib}.c, ext/tk/tkutil/tkutil.c: fix warnings
2239           about constness and signedness.
2241 Wed Jul 23 17:04:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2243         * ext/openssl/openssl_missing.h (d2i_of_void): define for older
2244           versions.  [ruby-dev:35637]
2246 Wed Jul 23 13:53:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2248         * ext/curses/extconf.rb: use try_static_assert.
2250 Wed Jul 23 10:06:19 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
2252         * test/zlib/test_zlib.rb (TestZlibDeflate#test_params): suppress a
2253           finalizer warning.
2255 Wed Jul 23 06:25:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2257         * ext/syck: suppress warnings more.
2259 Wed Jul 23 03:19:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2261         * ext/nkf/nkf-utf8/nkf.c (struct input_code.name, input_codename):
2262           constified.
2264 Wed Jul 23 03:02:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2266         * ext/syck: suppress warnings.
2268 Wed Jul 23 00:34:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2270         * ext/openssl: suppress warnings.
2272 Tue Jul 22 23:01:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2274         * ext/syck/rubyext.c, ext/syck/yaml2byte.c, ext/syck/emitter.c,
2275           ext/syck/syck.c, ext/syck/handler.c, ext/syck/syck.h: suppress GCC
2276           warning.
2278 Tue Jul 22 20:42:24 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2280         * ext/bigdecimal/bigdecimal.c (BigDecimalCmp): BigDecimal#<=> should
2281           return nil if an argument can't be coerced into BigDecimal.
2283         * ext/bigdecimal/bigdecimal.h, ext/bigdecimal/bigdecimal.c
2284           (VpIsNegDoubleZero, VpItoV): comment out unused functions.
2286 Tue Jul 22 20:33:54 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2288         * test/rdoc/test_rdoc_parser_ruby.rb (teardown): close tempfile.
2290 Tue Jul 22 19:38:38 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
2292         * test/ruby/test_transcode.rb: added two comments
2294 Tue Jul 22 18:08:34 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2296         * README.EXT, README.EXT.ja: mention about FIX2LONG and NUM2LONG.
2297           see [ruby-dev:35197]
2299 Tue Jul 22 17:53:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2301         * compile.c (insn_data_to_s_detail), file.c (rb_stat_inspect),
2302           iseq.c (ruby_iseq_disasm_insn, ruby_iseq_disasm),
2303           process.c (pst_message), re.c (match_inspect): use rb_str_catf.
2305         * dir.c (dir_inspect), iseq.c (iseq_inspect, insn_operand_intern): use
2306           rb_sprintf.
2308         * error.c (rb_name_error, rb_raise, rb_loaderror, rb_fatal): use
2309           rb_vsprintf.
2311 Tue Jul 22 17:20:25 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2313         * win32/win32.c (init_func): new function to get API's address which
2314           is often used and not supported on all Windows.
2316         * win32/win32.c (overlapped_socket_io): shouldn't use overlapped I/O if
2317           CancelIo() is not supported.
2319 Tue Jul 22 16:47:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2321         * include/ruby/intern.h, sprintf.c (rb_str_catf, rb_str_vcatf): new
2322           functions.  [ruby-dev:35597]
2324         * string.c (rb_str_capacity): new function to return the capacity.
2326 Tue Jul 22 16:08:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2328         * ext/socket/socket.c (connect_blocking, socks_connect_blocking,
2329           ruby_connect): cast.
2331 Tue Jul 22 11:05:08 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
2333         * test/ruby/test_dir.rb: use realpath of tmpdir. [ruby-dev:35481]
2335         * test/ruby/test_process.rb: ditto.
2337 Tue Jul 22 09:51:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2339         * misc/ruby-mode.el: fix here-doc strings with inner quotes.  patches
2340           by Nathan Weizenbaum <nex342 AT gmail.com> from [ruby-core:17615]
2341           through [ruby-core:17910].
2343 Tue Jul 22 04:26:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2345         * include/ruby/intern.h (rb_str_buf_new2): optimization for literals.
2347         * string.c (str_buf_cat): returns VALUE.
2349 Tue Jul 22 03:34:01 2008  Eric Hodel  <drbrain@segment7.net>
2351         * lib/rdoc*: Update to RDoc 2.1.0 r112.
2353 Tue Jul 22 02:51:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2355         * include/ruby/intern.h (rb_str_buf_cat2, rb_str_cat2): optimization
2356           for literals.
2358 Tue Jul 22 02:50:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2360         * README.EXT, README.EXT.ja (1.5 Manipulating Ruby data): fix the
2361           prototype of rb_vsprintf, and added rb_str_cat2.  [ruby-dev:35622]
2363 Mon Jul 21 17:15:38 2008  Tanaka Akira  <akr@fsij.org>
2365         * encoding.c (rb_filesystem_encoding): use locale encoding on Unix.
2366           [ruby-dev:35617]
2368 Mon Jul 21 15:29:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2370         * missing/vsnprintf.c (struct __sbuf, FILE): use size_t.
2372         * sprintf.c (ruby__sfvwrite): ditto.
2374 Mon Jul 21 13:55:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2376         * README.EXT, README.EXT.ja (1.5 Manipulating Ruby data): mentioned
2377           rb_sprintf and rb_vsprintf.  [ruby-dev:35611]
2379 Mon Jul 21 10:25:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2381         * io.c (prepare_getline_args): check if rs is a string when non-nil
2382           lim is given.  [ruby-dev:35610]
2384 Mon Jul 21 04:55:20 2008  Tanaka Akira  <akr@fsij.org>
2386         * dir.c (dir_initialize): use rb_convert_type instead of
2387           rb_check_convert_type to prevent SEGV by Dir.new(".", true).
2388           (dir_initialize): use FilePathValue before rb_enc_get(dirname) to
2389           prevent SEGV by Dir.new(0).
2391 Mon Jul 21 04:42:15 2008  Tanaka Akira  <akr@fsij.org>
2393         * re.c (rb_reg_s_union): useless rb_enc_get call removed to prevent
2394           SEGV by Regexp.union("", nil).
2396 Sun Jul 20 22:50:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2398         * compile.c (iseq_compile_each): NODE_POSTEXE should set each end
2399           procs only once.  [ruby-dev:35596]
2401 Sun Jul 20 16:00:37 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2403         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): use rb_protect
2404           instead of rb_rescue2. [ruby-dev:35595]
2406 Sun Jul 20 01:23:24 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2408         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): little refactoring.
2410         * ext/win32ole/win32ole.c (EVENTSINK_GetIDsOfNames): return
2411           ITypeInfo::GetIDsOfNames().
2413 Sat Jul 19 09:31:35 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2415         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): little refactoring.
2417         * ext/win32ole/win32ole.c: add document of inspect methods.
2419 Sat Jul 19 06:08:43 2008  Eric Hodel  <drbrain@segment7.net>
2421         * lib/rdoc*: Import RDoc r104.  Various make test-all fixes.
2423 Sat Jul 19 00:27:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2425         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): fixed wrong check
2426           about 64bit positive value.
2428 Fri Jul 18 23:23:37 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2430         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): avoid cfp consistency
2431           error when exception raised in event callback.
2433 Fri Jul 18 14:52:14 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2435         * win32/win32.c (socklist): table for registering socket options
2436           (currently only O_NONBLOCK).
2438         * win32/win32.c (StartSockets, exit_handler): alloc/free socklist.
2440         * win32/win32.c (is_socket): use socklist.
2442         * win32/win32.c (rb_w32_accept, rb_w32_socket, rb_w32_socketpair):
2443           register new socket to socklist.
2445         * win32/win32.c (rb_w32_close): remove closing socket from socklist.
2447         * win32/win32.c (fcntl): register socket options.
2449         * win32/win32.c (overlapped_socket_io): send to/recv from socket with
2450           overlapped operation if the socket is not nonblocking mode.
2451           [experimental]
2453         * win32/win32.c (rb_w32_send, rb_w32_sendto, rb_w32_recv,
2454           rb_w32_recvfrom): use overlapped_socket_io().
2456         * win32/win32.c (open_ifs_socket): set overlapped mode. this is the
2457           default mode of winsock's socket(), so lacking it is an old bug.
2459 Fri Jul 18 09:44:30 2008
2461         * lib/rdoc/*: Import RDoc r101.
2463 Thu Jul 17 23:45:55 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2465         * test/rdoc/test_rdoc_c_parser.rb (teardown): close tempfile.
2467 Thu Jul 17 21:08:49 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2469         * test/ruby/test_process.rb (test_getpriority, test_setpriority): use
2470           PRIO_PROCESS instead of PRIO_USER.
2472 Thu Jul 17 20:41:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2474         * pack.c (pack_unpack): fix v and V with big endian.
2475           [1].pack("V").unpack("V") was [4294967296].
2477 Thu Jul 17 20:35:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2479         * pack.c (pack_pack): fix i! with big endian.  [1].pack("i!") was
2480           "\0\0\0\0".
2482 Thu Jul 17 16:48:40 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2484         * ext/socket/socket.c (ruby_connect): select() for connect() has
2485           mean only when the socket is non-blocking.
2487 Thu Jul 17 10:55:24 2008  Eric Hodel  <drbrain@segment7.net>
2489         * mkconfig.rb: Simplify expression for RDoc.
2491 Thu Jul 17 10:21:15 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2493         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): strict check.
2494           fixed [ruby-dev:33683]
2496 Thu Jul 17 04:19:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2498         * thread.c (thread_start_func_2): wake up joining threads.
2500         * thread.c (sleep_forever, sleep_timeval): return when interrupted.
2501           [ruby-dev:35542]
2503         * thread.c (timer_thread_function): restore main thread status.
2504           [ruby-core:17270]
2506 Thu Jul 17 01:27:38 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2508         * io.c (appendline): remove invalid access.
2510 Wed Jul 16 18:04:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2512         * signal.c (signal_exec, trap_handler): trap accepts a string as
2513           command.  [ruby-dev:35533]
2515 Wed Jul 16 00:04:30 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2517         * test/ruby/envutil.rb (Test::Unit::Assertions#assert_in_out_err): new
2518           method.
2520         * test/ruby/test_argf.rb: use assert_in_out_err instead of
2521           EnvUtil.rubyexec.
2523         * test/ruby/test_module.rb: ditto.
2525         * test/ruby/test_require.rb: ditto.
2527         * test/ruby/test_objectspace.rb: ditto.
2529         * test/ruby/test_object.rb: ditto.
2531         * test/ruby/test_string.rb: ditto.
2533         * test/ruby/test_method.rb: ditto.
2535         * test/ruby/test_variable.rb: ditto.
2537         * test/ruby/test_io.rb: ditto.
2539         * test/ruby/test_rubyoptions.rb: ditto.
2541         * test/ruby/test_exception.rb: ditto.
2543         * test/ruby/test_class.rb: ditto.
2545         * test/ruby/test_thread.rb: ditto.
2547 Tue Jul 15 22:34:03 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2549         * win32/Makefile.sub (ruby_version): follow changes in configure.in.
2551 Tue Jul 15 21:58:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2553         * ext/tk/{,tkutil/}extconf.rb: ruby/ruby.h no longer needs to be
2554           checked.
2556         * ext/tk/{tcltklib.c,tkutil/tkutil.c}: check macros for each headers.
2558 Tue Jul 15 21:45:41 2008  Akinori MUSHA  <knu@iDaemons.org>
2560         * ext/tk/extconf.rb, ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: Do
2561           not test ruby/ruby.h, which makes OS X's gcc pick the wrong
2562           header file from Ruby.framework.
2564 Tue Jul 15 21:31:26 2008  Akinori MUSHA  <knu@iDaemons.org>
2566         * configure.in (--with-ruby-version): Add a new option to specify
2567           the ruby version string for version specific directories.
2568           [ruby-dev:35490]
2570         * mkconfig.rb: Definition of ruby_version is now determined by the
2571           configure script.
2573 Tue Jul 15 18:14:20 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2575         * ext/socket/socket.c (ruby_connect, s_accept): check before readable/
2576           writable by select() instead of wrapping in blocking region.
2578         * ext/socket/socket.c (bsock_send, s_recvfrom, udp_send, unix_send_io,
2579           unix_recv_io): should check readable/writable before calling blocking
2580           functions.
2581           see [ruby-dev:35446]
2583 Tue Jul 15 18:12:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2585         * thread_win32.c (ubf_handle): cancel blocking IO if it can (only
2586           Vista). see [ruby-dev:35446]
2588         * win32/win32.c (errmap): add ERROR_OPERATION_ABORTED as EINTR.
2590 Mon Jul 14 20:35:21 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2592         * test/win32ole/test_win32ole_event.rb (teardown): fix typo.
2594 Mon Jul 14 18:47:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2596         * transcode.c (transcode_loop): constified.
2598         * transcode.c (str_transcode): rb_str_set_len() sets a delimiter.
2600         * transcode_data.h (rb_transcoder): constified preprocessor and
2601           postprocessor input.
2603         * enc/trans/japanese.c: ditto.
2605 Sun Jul 13 05:37:50 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2607         * include/ruby/ruby.h (PRI_PTRDIFF_PREFIX, PRI_SIZE_PREFIX): typo.
2609         * {bcc32,win32}/Makefile.sub: (SIZEOF_SIZE_T, SIZEOF_PTRDIFF_T): added.
2611 Sat Jul 12 23:54:55 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2613         * win32/Makefile.sub (LIBRUBY_DLDFLAGS): import library which created
2614           with DLL is broken. save import library which created by lib.exe and
2615           install it.
2616           fixed the problem mentioned at the postscript of [ruby-dev:35448]
2618 Sat Jul 12 23:24:21 2008  Tanaka Akira  <akr@fsij.org>
2620         * ext/socket/socket.c: use PRIuSIZE.
2622 Sat Jul 12 22:41:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2624         * include/ruby/ruby.h (PRI_PTRDIFF_PREFIX, PRI_SIZE_PREFIX): fixed typo.
2626 Sat Jul 12 22:30:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2628         * include/ruby/intern.h (HAVE_RUBY_RUBY_H): defines macros so that
2629           extconf.rb do not need to check if headers exist under separated
2630           directory.  [ruby-dev:35437]
2632         * include/{ruby,rubyio,rubysig}.h, include/ruby/intern.h: use
2633           "ruby/..." instead of <ruby/...>.
2635 Sat Jul 12 22:17:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2637         * configure.in (sizeof ptrdiff_t): check for size of ptrdiff_t.
2639         * include/ruby/ruby.h (PRI?PTRDIFF, PRI?SIZE): printf conversion
2640           specifiers for ptrdiff_t and size_t/ssize_t.
2642         * insns.def (leave), marshal.c (long_toobig), transcode.c
2643           (str_transcode), vm_dump.c (control_frame_dump, stack_dump_each),
2644           (debug_print_register, debug_print_pre): t and z length modifiers
2645           are C99.
2647 Sat Jul 12 16:02:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2649         * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): requires
2650           webrick/cookie.  [ ruby-Bugs-21139 ]
2652 Sat Jul 12 09:25:07 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2654         * test/win32ole/test_win32ole_event.rb: add test
2655           for WIN32OLE_EVENT#on_event_with_outargs
2657         * test/win32ole/test_win32ole_event.rb(teardown): calling
2658           WIN32OLE_EVENT.message_loop
2660 Sat Jul 12 01:54:13 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2662         * win32/win32.c (rb_w32_select): shouldn't pass non-socket handle to
2663           original select().
2665 Fri Jul 11 23:05:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2667         * test/zlib/test_zlib.rb: add a test for Zlib::Deflate#params.
2669 Fri Jul 11 22:58:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2671         * ext/zlib/zlib.c (rb_deflate_params): flush before deflateParams.
2672           [ruby-core:17675]
2674 Fri Jul 11 22:09:01 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2676         * win32/setup.rb, win32/Makefile.sub (PLATFORM): use $(PLATFORM)
2677           instead of $(OS) because ENV["OS"] is used in test-all (drb).
2679 Fri Jul 11 20:51:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2681         * io.c (rb_io_wait_readable, rb_io_wait_writable): check if the file
2682           descriptor is closed.
2684         * thread.c (rb_thread_wait_fd_rw): ditto.
2686 Fri Jul 11 16:16:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2688         * win32/win32.c (rb_w32_accept, rb_w32_socket, rb_w32_socketpair):
2689           prohibit inheritance of sockets, too. [experimental]
2691 Fri Jul 11 14:39:49 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2693         * win32/win32.c (CreateChild): the measures for Vista is no longer
2694           unnecessary.
2696 Fri Jul 11 06:16:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2698         * common.mk (process.o): depends on util.h.
2700 Fri Jul 11 05:07:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2702         * include/ruby/win32.h (pipe): prohibit inheritance.
2703           fixed: [ruby-dev:35421]
2705 Fri Jul 11 00:56:46 2008  Koichi Sasada  <ko1@atdot.net>
2707         * thread.c (thread_create_core): fix GC problem.
2708           [ruby-core:17669]
2710 Thu Jul 10 22:06:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2712         * lib/pstore.rb (PStore#transaction): return the result from the
2713           block.  [ruby-core:17718]
2715 Thu Jul 10 21:15:49 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2717         * test/win32ole/test_win32ole_typelib.rb: add some illegal argument
2718           test.
2720         * test/win32ole/test_win32ole_type.rb: ditto.
2722         * test/win32ole/test_win32ole_event.rb: ditto.
2724         * test/win32ole/test_win32ole_param.rb: ditto.
2726         * test/win32ole/test_win32ole_method.rb: ditto.
2728 Thu Jul 10 19:38:35 2008  wanabe  <s.wanabe@gmail.com>
2730         * test/ruby/envutil.rb (assert_normal_exit): r17993 revert.
2732 Thu Jul 10 18:29:41 2008  wanabe  <s.wanabe@gmail.com>
2734         * test/ruby/envutil.rb (assert_normal_exit): finish writing script
2735           before spawn("ruby") to avoid blocking in win32.
2737 Thu Jul 10 17:20:50 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2739         * win32/win32.c (insert): follow recent changes of globbing.
2741 Thu Jul 10 14:09:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2743         * ext/coverage/coverage.c (rb_coverage_start): return nil.
2745 Thu Jul 10 12:41:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2747         * thread.c (rb_thread_wait_for): fixed variable name.
2749 Thu Jul 10 12:09:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2751         * vm_core.h (rb_thread_t), vm.c (rb_thread_mark), process.c
2752           (rb_last_status_get, rb_last_status_set, rb_last_status_clear):
2753           moved last_status from rb_vm_t.  [ruby-dev:35414]
2755         * vm.c (th_init2): initialize last_status with nil.
2757 Thu Jul 10 12:09:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2759         * thread.c (rb_thread_wait_for): wait until timed out only when
2760           sleeping with timeout.
2762 Wed Jul  9 22:41:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2764         * thread.c (sleep_timeval): wait until timed out.  [ruby-core:17270]
2766 Wed Jul  9 20:58:16 2008  Tanaka Akira  <akr@fsij.org>
2768         * array.c (rb_ary_fill): don't raise even if length is negative.
2769           [ruby-core:17483], [ruby-core:17661]
2771 Wed Jul  9 20:18:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2773         * configure.in (rb_cv_va_args_macro): check for __VA_ARGS__.
2775         * thread.c (thread_debug): show source name and line if possible.
2777         * thread_{pthread,win32}.c (rb_thread_create_timer_thread): needs more
2778           stack for debug.
2780 Wed Jul  9 11:13:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2782         * lib/profiler.rb (Profiler__#print_profile): sort in the descending
2783           order of cumulative time.
2785 Wed Jul  9 11:11:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2787         * dir.c (struct glob_args, rb_glob_caller, rb_glob2, push_pattern),
2788           (glob_brace): make consistent prototypes.
2790         * dir.c (push_glob): set enc in the caller of rb_glob_caller as well
2791           as rb_glob2.
2793 Wed Jul  9 09:12:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2795         * ext/nkf/nkf-utf8/nkf.c (options): use input_endian.
2797 Wed Jul  9 01:38:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2799         * string.c (rb_str_succ): alphabets or numerics mutually enclosing
2800           non-alphanumeric characters can carry up.  e.g., "1.999".succ should
2801           be "2.000".
2803 Wed Jul  9 00:12:31 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2805         * thread.c (rb_set_coverages, rb_reset_coverages): enable and disable
2806           coverage measurement.
2808         * thread.c (rb_get_coverages): rename and move from vm.c.
2810         * vm.c (rb_vm_get_coverages): ditto.
2812         * iseq.c (prepare_iseq_build): ditto.
2814         * thread.c (clear_coverage): ditto.
2816         * parse.y (coverage): ditto.
2818         * ext/coverage/coverage.c: use above functions, add new method
2819           Coverage.start and fix rdoc .
2821 Tue Jul  8 23:02:35 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2823         * ext/win32ole/win32ole.c (find_default_source): bug fix when
2824           OLE object does not have default source interface.
2826         * test/win32ole/test_win32ole_event.rb: ditto.
2828 Tue Jul  8 22:56:23 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2830         * thread.c (rb_enable_coverages): hide coverage array by setting 0 to
2831           klass during measurement.
2833         * parse.y (coverage, yycompile0): ditto.
2835         * iseq.c (prepare_iseq_build): use rb_hash_lookup instead of
2836           rb_hash_aref.
2838         * thread.c (rb_coverage_result): restore klass of coverage array
2839           and return it.
2841         * thread.c (update_coverage): check whether its klass is 0.
2843 Tue Jul  8 22:28:25 2008  Koichi Sasada  <ko1@atdot.net>
2845         * lib/debug.rb, lib/profile.rb: fix to use RubyVM.
2847         * lib/rdoc/parsers/parse_c.rb: ditto.
2849 Tue Jul  8 21:45:22 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2851         * vm.c (rb_vm_mark): mark the last element of special_exceptions.
2853 Tue Jul  8 19:55:40 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2855         * ext/win32ole/win32ole.c (find_default_source): try to
2856           find COCLASS when WIN32OLE object is not COCLASS.
2858         * test/win32ole/test_win32ole_event.rb: ditto
2860 Tue Jul  8 13:38:22 2008  Koichi Sasada  <ko1@atdot.net>
2862         * compile.h: fix to skip inserting a trace insn.
2864 Tue Jul  8 11:41:17 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2866         * dir.c: shouldn't use ruby object in globbing, because glob service
2867           routines are called before initializing ruby on some platforms (ex.
2868           windows).
2870 Tue Jul  8 10:08:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2872         * dir.c (Next): use rb_enc_mbclen. [ruby-dev:35390]
2874 Tue Jul  8 07:59:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2876         * dir.c (Next): use rb_enc_precise_mbclen.
2878 Tue Jul  8 02:27:23 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2880         * dir.c: preserve encoding of strings in glob and fnmatch.
2882         * include/ruby/ruby.h: related changes.
2884 Tue Jul  8 00:22:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2886         * string.c (rb_str_succ): limit carrying in an alphanumeric region if
2887           exists.  [ruby-dev:35094]
2889 Mon Jul  7 20:39:28 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2891         * ext/win32ole/win32ole.c(Init_win32ole): add
2892           WIN32OLE_TYPE#source_ole_types, WIN32OLE_TYPE#default_ole_types,
2893           WIN32OLE_TYPE#default_event_sources.
2895         * test/win32ole/test_win32ole_type.rb: ditto.
2897 Mon Jul  7 19:45:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2899         * test/ruby/test_dir.rb (test_chroot_nodir): add Errno::EPERM.
2901 Mon Jul  7 17:12:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2903         * lib/ipaddr.rb (IPAddr#initialize): get rid of ArgumentError in
2904           IPAddr#to_range.  a patch from okkez <okkez000 AT gmail.com> in
2905           [ruby-dev:35091].
2907 Mon Jul  7 01:24:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2909         * file.c (rb_file_s_extname): fix for file name with spaces.
2910           [ruby-talk:307404]
2912 Mon Jul  7 00:59:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2914         * thread_pthread.c (ruby_init_stack): prior STACK_END_ADDRESS if
2915           found.  [ruby-core:17624]
2917 Sun Jul  6 23:48:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2919         * ext/socket/socket.c (bsock_send, s_recvfrom, ruby_connect, s_accept),
2920           (udp_send, unix_send_io, unix_recv_io): blocking region support.
2922 Sun Jul  6 18:34:35 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2924         * test/win32ole/test_win32ole_type.rb (test_initialize): add
2925           more assertions.
2927 Sun Jul  6 10:12:21 2008  Kouhei Sutou  <kou@cozmixng.org>
2929         * lib/test/unit/collector/objectspace.rb
2930           (Test::Unit::Collector::ObjectSpace::NAME): fix a typo.
2932 Sun Jul  6 00:56:51 2008  Tanaka Akira  <akr@fsij.org>
2934         * ext/socket/socket.c (host_str): fix type mismatch in rb_raise
2935           format and argument.
2936           (port_str): ditto.
2937           (unix_recv_io): ditto.
2938           (sock_s_unpack_sockaddr_un): ditto.
2940 Sat Jul  5 23:42:23 2008  Tanaka Akira  <akr@fsij.org>
2942         * include/ruby/ruby.h (NUM2INT): cast to int.
2943           (FIX2INT): ditto.
2944           (NUM2UINT): cast to unsigned int.
2945           (FIX2UINT): ditto.
2947 Sat Jul  5 23:10:41 2008  Tanaka Akira  <akr@fsij.org>
2949         * io.c (rb_pipe): new function for handling EMFILE and ENFILE
2950           error of pipe().
2951           (UPDATE_MAXFD_PIPE): removed.
2952           (pipe_open): use rb_pipe.
2953           (rb_io_s_pipe): ditto.
2955         * process.c (pipe_nocrash): use rb_pipe.
2957         * include/ruby/intern.h (rb_pipe): declared.
2959 Sat Jul  5 22:22:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2961         * thread.c (thread_initialize): NUM2INT() returns int.
2963         * thread.c (timer_thread_function), thread_pthread.c (thread_timer),
2964           thread_win32.c (timer_thread_func), thread_{pthread,win32}.c
2965           (rb_thread_create_timer_thread): passing VM.
2967 Sat Jul  5 20:53:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2969         * test/win32ole/test_word.rb: check word installed.
2971 Sat Jul  5 16:12:54 2008  Narihiro Nakamura  <authorNari@gmail.com>
2973         * gc.c: revert. before lazy sweep.
2975 Sat Jul  5 09:55:44 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2977         * ext/win32ole/win32ole.c: add WIN32OLE#ole_respond_to?
2979         * test/win32ole/test_win32ole.rb: ditto.
2981 Sat Jul  5 08:48:05 2008  Tanaka Akira  <akr@fsij.org>
2983         * re.c (unescape_nonascii): add has_property argument not to
2984           raise error by /\p{Hiragana}\u{3042}/ in EUC-JP script.
2985           (rb_reg_preprocess): use has_property argument to make regexp
2986           encoding fixed.
2988 Sat Jul  5 08:29:47 2008  Tanaka Akira  <akr@fsij.org>
2990         * re.c (unescape_nonascii): make regexp fixed_encoding if \p is used.
2991           fixed [ruby-core:17279].
2993 Fri Jul  4 23:12:53 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2995         * ext/win32ole/win32ole.c (d2time): fix the bug of VT_DATE
2996           to String conversion when negative value.
2998         * test/win32ole/test_win32ole_variant.rb: ditto.
3000 Fri Jul  4 22:15:29 2008  Tanaka Akira  <akr@fsij.org>
3002         * lib/test/unit/testcase.rb: collect descendants of
3003           Test::Unit::TestCase using inherited.
3005         * lib/test/unit/autorunner.rb: don't use ObjectSpace.each_object.
3007         * lib/test/unit/collector/dir.rb: ditto.
3009         * lib/test/unit/collector/objectspace.rb: ditto.
3011         [ruby-core:17126]
3013 Fri Jul  4 20:43:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3015         * include/ruby/oniguruma.h (OnigEncoding): removed auxiliary_data.
3017         * include/ruby/encoding.h (ENC_DUMMY_P): moved dummy encoding flag to
3018           rb_encoding from Encoding instance.
3020         * encoding.c (rb_encoding_list): list of Encoding instances.
3022         * encoding.c (struct rb_encoding_entry): moved base encoding from
3023           instance variable.
3025 Fri Jul  4 17:51:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3027         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): proper check.
3029 Fri Jul  4 14:17:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3031         * lib/net/ftp.rb (Net::FTP#sendport): use divmod.  [ruby-core:17557]
3033 Fri Jul  4 11:08:37 2008  Narihiro Nakamura  <authorNari@gmail.com>
3035         * gc.c (garbage_collect_force): sweep is completely ended.
3037         * gc.c (os_obj_of): invoke garbage_collect_force() when freelist none.
3039 Fri Jul  4 05:01:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3041         * numeric.c (rb_num2uint, rb_fix2uint): typo.
3043 Fri Jul  4 02:21:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3045         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): also needs checking
3046           negative value. see [ruby-dev:33683]
3048 Thu Jul  3 23:26:36 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3050         * include/ruby/intern.h: remove prototypes about coverage.
3052         * iseq.c (prepare_iseq_build): add prototype.
3054         * parse.y (coverage): ditto.
3056         * thread.c (clear_coverage): ditto.
3058         * thread.c (update_coverage): use rb_sourceline.
3060         * thread.c (rb_get_coverages): rename and move to vm.c.
3062         * vm.c (rb_vm_get_coverages): ditto.
3064         * ext/coverage/coverage.c: add rdoc.
3066 Thu Jul  3 21:51:21 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3068         * ext/coverage/coverage.c, ext/coverage/extconf.rb: eliminate
3069           COVERAGE__ and introduce coverage.so instead.  How to measure
3070           coverage: (1) require "coverage.so", (2) require or load Ruby source
3071           file, and (3) Coverage.result will return the same hash as COVERAGE__.
3072           [ruby-dev:35324]
3074         * thread.c (rb_enable_coverages): start coverage measurement by using
3075           rb_add_event_hook.
3077         * thread.c (rb_get_coverages): returns current results of coverage
3078           measurement.
3080         * include/ruby/intern.h: add prototype for above two functions.
3082         * vm_core.h, vm.c: add field of coverages to rb_vm_t.
3084         * insns.def (trace): remove special handling for COVERAGE__.
3086         * iseq.c (prepare_iseq_build): switch COVERAGE__ to
3087           rb_get_coverages().
3089         * parse.y (coverage): ditto.
3091         * thread.c (clear_coverage): ditto.
3093         * lib/coverage.rb: use coverage.so instead of COVERAGE__.
3095 Thu Jul  3 21:20:45 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3097         * thread.c (thread_initialize): NUM2INT returns long.
3099 Thu Jul  3 21:06:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3101         * eval.c (Init_eval): typo fixed in r17833.
3103 Thu Jul  3 19:44:44 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
3105         * ext/win32ole/win32ole.c (Init_win32ole): remove duplicate line.
3107 Thu Jul  3 16:08:36 2008  Tanaka Akira  <akr@fsij.org>
3109         * configure.in (erfc): erfc of glibc comes with Debian GNU/Linux Etch
3110           on IA64 is broken.  erfc(10000.0) aborts.
3111           use missing/erf.c instead.
3112           http://sources.redhat.com/ml/libc-hacker/2005-08/msg00008.html
3114 Thu Jul  3 12:49:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3116         * lib/net/smtp.rb (Net::SMTP::start): use 'localhost' instead of
3117           'localhost.localdomain'.  [ruby-dev:35333]
3119         * lib/net/smtp.rb (Net::SMTP::SMTP.start): ditto.
3121 Thu Jul  3 07:06:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3123         * Makefile.in (SET_LC_MESSAGES): LC_MESSAGES must be C.
3125 Thu Jul  3 07:02:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3127         * eval.c (Init_eval), gc.c (Init_GC), proc.c (Init_Proc): freeze
3128           messages of preallocated special exceptions also.
3130 Thu Jul  3 04:39:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3132         * gc.c (rb_during_gc): VALUE cache is irrelevant.
3134 Thu Jul  3 01:44:01 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3136         * regint.h (GET_ALIGNMENT_PAD_SIZE, ALIGNMENT_RIGHT): cast pointer to
3137           uintptr_t instead of unsigned int.
3139 Thu Jul  3 01:23:13 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3141         * sprintf.c: include ieeefp.h to refer isinf.
3143         * ext/bigdecimal/bigdecimal.c: ditto.
3145         * ext/json/ext/generator/generator.c: ditto.
3147         * rational.c: ditto.
3149 Thu Jul  3 01:01:57 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3151         * missing/tgamma.c (tgamma): remove unused variable.
3153 Thu Jul  3 00:18:00 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
3155         * ext/win32ole/win32ole.c: avoid creating Ruby object during
3156           GC. thanks to arton <artonx AT yahoo.co.jp>. [ruby-dev:35313]
3158         * test/win32ole/test_win32ole_event.rb: ditto.
3160 Thu Jul  3 00:09:31 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
3162         * gc.c: add rb_during_gc(). based on a patch from arton <artonx AT
3163           yahoo.co.jp> at [ruby-dev:35313].
3165         * include/ruby/intern.h: ditto.
3167 Wed Jul  2 09:49:10 2008  Narihiro Nakamura  <authorNari@gmail.com>
3169         * gc.c (gc_lazy_sweep): use lazy sweep algorithm for response
3170           performance gain.
3172         * gc.c (garbage_collect_force): mark and lazysweep invoke, after
3173           erasing all mark.
3175         * gc.c (GC_NOT_LAZY_SWEEP): not lazy sweep flag. for debug.
3177 Wed Jul  2 03:42:44 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3179         * test/ruby/test_settracefunc.rb: fix expected traces for
3180           RubyVM::FrozenCore's event and r17744.
3182 Wed Jul  2 03:10:41 2008  Koichi Sasada  <ko1@atdot.net>
3184         * compile.h, insns.def: reduce insn operand of "trace".
3186         * include/ruby/ruby.h: add RUBY_EVENT_COVERAGE event.
3188 Wed Jul  2 02:02:34 2008  Koichi Sasada  <ko1@atdot.net>
3190         * proc.c, vm.c: fix to refer next ruby level cfp to make binding.
3192 Wed Jul  2 01:58:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3194         * insns.def (trace): C99ism.
3196 Wed Jul  2 01:53:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3198         * Add coverage measurement constant COVERAGE__.  This constant is not
3199           for casual use.  Usage: (1) assign {} to COVERAGE__, (2) require or
3200           load Ruby source file, and (3) COVERAGE__["sourcefilepath"] will
3201           return an array whose elements represent number of executions per
3202           line of source code.
3204         * vm_core.h: add field of coverage array to iseq.
3206         * iseq.c (prepare_iseq_build): ditto.
3208         * insns.def (trace): update coverage array.
3210         * parse.y (coverage): create and initialize coverage array.
3212         * compile.h (ADD_TRACE): add trace instruction to update coverage
3213           array.
3215         * thread.c (clear_coverage): delete coverage array when forking.
3216           Otherwise, double count of coverage may occur.
3218         * lib/coverage.rb: sample coverage measurement tool.
3220         * error.c: distinguish explicitly between parse_in_eval and
3221           mild_compile_error.
3223         * load.c: ditto.
3225         * vm_eval.c: ditto.
3227 Tue Jul  1 21:32:43 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3229         * lib/test/unit/ui/console/testrunner.rb: prevent destructive
3230           modification to $0.
3232         * test/rubygems/gemutilities.rb (build_rake_in): move from
3233           test_gem_ext_rake_builder.rb.
3235         * test/rubygems/test_gem_ext_rake_builder.rb: ditto.
3237         * test/rubygems/test_gem_installer.rb: override Gem.ruby and
3238           ENV["rake"].
3240         * test/rubygems/test_gem_uninstaller.rb: ditto.
3243 Tue Jul  1 21:13:17 2008  Koichi Sasada  <ko1@atdot.net>
3245         * compile.c, vm.c, insns.def: call FrozenCore.set_postexe method
3246           instead to use "postexe" insn.
3248         * id.c, id.h: add a prepared id for above.
3250 Tue Jul  1 21:09:58 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3252         * lib/mkmf.rb (create_tmpsrc): we need to include COMMON_HEADERS,
3253           namely inclusion of ruby.h, because _GNU_SOURCE is now defined
3254           there (if any) and socket.so requires it on Linux systems.
3256 Tue Jul  1 20:55:07 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3258         * eval.c (rb_interrupt): trick to suppress GCC warning.
3260         * sprintf.c (rb_str_format): ditto.
3262 Tue Jul  1 20:44:36 2008  Koichi Sasada  <ko1@atdot.net>
3264         * tool/instruction.rb: RubyVM is not module.
3266 Tue Jul  1 19:31:24 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3268         * ext/digest/digest.c (rb_digest_instance_inspect): constified.
3270         * variable.c (rb_path2class): field precision should have type int.
3272 Tue Jul  1 19:01:00 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3274         * enc/shift_jis.c (code_is_ctype): HALF WIDTH KATAKANA is
3275           a character.
3277 Tue Jul  1 17:56:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3279         * missing/vsnprintf.c (BSD__uqtoa): constified.
3281 Tue Jul  1 17:50:44 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3283         * enc/make_encdb.h: always add ';' at the end of line.
3285 Tue Jul  1 17:44:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3287         * iseq.c (COMPILE_OPTION_FALSE), time.c (timegm_noleapsecond),
3288           thread.c (eKillSignal, eTerminateSignal),
3289           missing/vsnprintf.c (BSD_vfprintf): constified.
3291 Tue Jul  1 17:37:43 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3293         * enc/ascii.c: ISO C does not allow extra ';' outside of a
3294           function
3296         * enc/us_ascii.c: ditto.
3298         * enc/utf_8.c: ditto.
3300         * enc/big5.c: ditto.
3302         * enc/euc_jp.c: ditto.
3304         * enc/euc_kr.c: ditto.
3306         * enc/euc_tw.c: ditto.
3308         * enc/gb2312.c: ditto.
3310         * enc/gbk.c: ditto.
3312         * enc/iso_8859_1.c: ditto.
3314         * enc/iso_8859_2.c: ditto.
3316         * enc/iso_8859_3.c: ditto.
3318         * enc/iso_8859_4.c: ditto.
3320         * enc/iso_8859_5.c: ditto.
3322         * enc/iso_8859_6.c: ditto.
3324         * enc/iso_8859_7.c: ditto.
3326         * enc/iso_8859_8.c: ditto.
3328         * enc/iso_8859_9.c: ditto.
3330         * enc/iso_8859_10.c: ditto.
3332         * enc/iso_8859_11.c: ditto.
3334         * enc/iso_8859_13.c: ditto.
3336         * enc/iso_8859_14.c: ditto.
3338         * enc/iso_8859_15.c: ditto.
3340         * enc/iso_8859_16.c: ditto.
3342         * enc/koi8_r.c: ditto.
3344         * enc/shift_jis.c: ditto.
3346         * enc/utf_16be.c: ditto.
3348         * enc/utf_32be.c: ditto.
3350         * enc/utf_32le.c: ditto.
3352         * enc/windows_1251.c: ditto.
3354         * process.c (run_exec_rlimit): ISO C90 forbids mixed declarations
3355           and code
3357         * include/ruby/ruby.h (enum ruby_special_consts): ISO C forbids
3358           comma at end of enumerator list
3360         * include/ruby/ruby.h (enum ruby_value_type): ditto.
3362         * eval_intern.h (enum): ditto.
3364         * vm_core.h (enum rb_thread_status): ditto.
3366         * parse.y (enum lex_state_e): ditto.
3368         * parse.y (enum string_type): ditto.
3370         * process.c (enum): ditto.
3372         * ruby.c (enum dump_flag_bits): ditto.
3374         * ruby.c (enum disable_flag_bits): ditto.
3376         * enc/gb18030.c (enum): ditto.
3378 Tue Jul  1 17:21:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3380         * regexec.c (stack_double): use MatchStackLimitSize atomically.
3382         * regparse.c (onig_free_shared_cclass_table): OnigTypeCClassTable
3383           needs atomicity
3385         * regsyntax.c: constified all predefined OnigSyntaxTypes.
3387 Tue Jul  1 16:57:44 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3389         * include/ruby/st.h (struct st_table): type of bit-field
3390           'num_entries' is a GCC extension
3392         * include/ruby/ruby.h (rb_intern): prefix __extension__ for
3393           braced-groups within expressions.
3395         * include/ruby/intern.h (rb_usascii_str_new2): ditto.
3397         * include/ruby/intern.h (rb_tainted_str_new2): ditto.
3399         * include/ruby/intern.h (rb_str_new2): ditto.
3401 Tue Jul  1 15:01:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3403         * lib/rubygems/ext/builder.rb (Gem::Ext::Builder.make),
3404           (Gem::Ext::Builder.run): EXIT_SUCCESS may be 0 or may not.
3406         * test/rubygems/test_gem_ext_rake_builder.rb (build_rake_in): override
3407           Gem.ruby and ENV["rake"].
3409         * runruby.rb: bin/rake does not exist in archdir where architecture
3410           depend script (i.e. rbconfig.rb) exists.
3412 Tue Jul  1 13:19:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3414         * array.c (rb_ary_fill): check if beg is too big.
3416 Tue Jul  1 12:01:16 2008  Koichi Sasada  <ko1@atdot.net>
3418         * compile.c, insns.def, vm.c, vm_core.h: remove some insns
3419           (undef, alias, definemethod).
3420           Call RubyVM::FrozenCore's singleton method instead.
3421           Add "putiseq" and "putspecialobject" instructions.
3423         * id.c, id.h: add ids for above.
3425         * tool/parse.rb: "VM" no longer exists.  Use RubyVM instead.
3427 Tue Jul  1 03:28:16 2008  Eric Hodel  <drbrain@segment7.net>
3429         * test/rubygems/test_ext_configure_builder.rb:  Apply locale-free
3430           patch by Yusuke ENDOH.  [ruby-core:17444].
3432         * runruby.rb: Set ENV['rake'].  Patch by Yusuke ENDOH
3433           [ruby-core:17442].
3435 Tue Jul  1 01:07:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3437         * lib/cgi.rb (CGI::QueryExtension.read_multipart): blanks inside
3438           double quotes are allowed.  [ruby-list:45140]
3440 Tue Jul  1 00:59:43 2008  Tanaka Akira  <akr@fsij.org>
3442         * numeric.c (num_coerce): call rb_Float(x) first.  don't depend on
3443           evaluation order of function arguments.
3445 Tue Jul  1 00:49:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3447         * gc.c (rb_newobj): abort GC phase before rb_bug.
3449 Mon Jun 30 23:15:07 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3451         * test/openssl/test_ssl.rb (start_server): shutdown TCPServer before
3452           close.
3454 Mon Jun 30 23:01:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3456         * common.mk (RUBY_H_INCLUDES): common headers which are included with
3457           ruby.h together.
3459 Mon Jun 30 22:57:50 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3461         * test/ruby/test_settracefunc.rb (test_raise): reveal an exception
3462           hided by rescue modifier.
3464 Mon Jun 30 22:49:32 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3466         * test/ruby/test_array.rb (test_aset): access with too big index
3467           raises not ArgumentError but IndexError now.
3469 Mon Jun 30 22:30:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3471         * lib/test/unit/collector/dir.rb (recursive_collect): r15662 reverted.
3473 Mon Jun 30 22:27:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3475         * ext/stringio/stringio.c (strio_getline): fix for nil and "" as
3476           separator.  [ruby-dev:34591]
3478 Mon Jun 30 22:21:30 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3480         * io.c (argf_each_line): pass args to each_line. [ruby-dev:34958]
3482 Mon Jun 30 22:12:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3484         * gc.c (chain_finalized_object): should not delete from finalizer
3485           table until run.
3487         * gc.c (rb_gc_call_finalizer_at_exit): deferred_final_list may be
3488           empty first.
3490 Mon Jun 30 18:57:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3492         * gc.c (gc_finalize_deferred): allow object allocation in finalizers.
3494         * gc.c (rb_gc_call_finalizer_at_exit): ditto.
3496 Mon Jun 30 14:41:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3498         * gc.c (rb_newobj): prohibit call of rb_newobj() during gc when
3499           USE_VALUE_CACHE is not defined (normal case).
3501 Mon Jun 30 10:28:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3503         * ext/syslog/syslog.c (syslog_write): syslog operations should be
3504           protected from $SAFE level 4.  a patch from Keita Yamaguchi
3505           <keita.yamaguchi at gmail.com>.
3507         * ext/syslog/syslog.c (mSyslog_close): ditto.
3509         * ext/syslog/syslog.c (mSyslog_set_mask): ditto.
3511 Mon Jun 30 03:01:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3513         * test/net/http/test_http.rb (_test_request__file): specify encoding
3514           explicitly.
3516         * test/net/http/utils.rb: ditto.
3518 Mon Jun 30 02:31:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3520         * encoding.c (rb_utf8_encindex): defined.
3522         * include/ruby/encoding.h (rb_utf8_encindex): ditto.
3524 Mon Jun 30 02:14:34 2008  Koichi Sasada  <ko1@atdot.net>
3526         * vm.c, vm_core.h,vm_core.h, vm_dump.c, iseq.c: rename class name
3527           VM -> RubyVM, and rename rb_cVM -> rb_cRubyVM.
3528           "VM" is too short name for class.
3530         * test/ruby/test_method.rb, test/ruby/test_settracefunc.rb: ditto.
3532         * include/ruby/ruby.h: rb_cRubyVM, rb_cEnv, rb_cISeq should not be
3533           exposed.
3535 Mon Jun 30 02:10:32 2008  Koichi Sasada  <ko1@atdot.net>
3537         * process.c (Init_process): fix to avoid a warning.
3539 Mon Jun 30 01:52:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3541         * test/ruby/test_parse.rb: remove tests for open_args.
3543 Sun Jun 29 23:01:54 2008  Tanaka Akira  <akr@fsij.org>
3545         * string.c (rb_str_format_m): make tmp volatile to avoid possible GC
3546           problem.
3548 Sun Jun 29 18:01:30 2008  Kouhei Sutou  <kou@cozmixng.org>
3550         * lib/rss/parser.rb, lib/rss/utils.rb: merge documents from ruby_1_8.
3552 Sun Jun 29 17:44:23 2008  Kouhei Sutou  <kou@cozmixng.org>
3554         * lib/rss/parser.rb (RSS::ListenerMixin#known_class): define to
3555           work with ruby 1.8.x too.
3557 Sun Jun 29 17:41:42 2008  Kouhei Sutou  <kou@cozmixng.org>
3559         * lib/rss/maker/base.rb (RSS::Maker::RSSBase#to_feed): raise
3560           exception not return nil if RSS::Maker.make can't get required
3561           information.
3563         * test/rss/rss-assertions.rb: follow the above change.
3565 Sun Jun 29 17:37:23 2008  Kouhei Sutou  <kou@cozmixng.org>
3567         * lib/rss/maker/base.rb (RSS::Maker::RSSBase#make): require block.
3569         * test/rss/test_maker_{0.9,1.0,2.0}.rb: follow the above change.
3571 Sun Jun 29 17:33:34 2008  Kouhei Sutou  <kou@cozmixng.org>
3573         * lib/rss/maker/base.rb, lib/rss/maker/itunes.rb: don't use
3574           instance_eval to initialize variables. (speed up)
3576 Sun Jun 29 17:31:15 2008  Kouhei Sutou  <kou@cozmixng.org>
3578         * lib/rss/rss.rb, test/rss/test_version.rb (RSS::VERSION):
3579           0.2.4 -> 0.2.5.
3581 Sun Jun 29 11:36:20 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3583         * dir.rb: fix resource leak.
3585 Sun Jun 29 09:43:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3587         * lib/tmpdir.rb (@@systmpdir): prior LOCAL_APPDATA if possible, and
3588           should be clean.  based on a patch from arton <artonx AT
3589           yahoo.co.jp> at [ruby-dev:35269]
3591 Sun Jun 29 07:53:08 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
3593         * ext/win32ole/win32ole.c (date2time_str): fix the overflow in
3594           some situation. [ruby-bugs-20793]
3596 Sat Jun 28 21:25:08 2008  Tanaka Akira  <akr@fsij.org>
3598         * include/ruby/ruby.h (struct RRegexp): new field usecnt.  replace
3599           str and len by src.
3601         * gc.c (gc_mark_children): mark src field of regexp.
3602           (obj_free): don't free str field.
3604         * re.c (REG_BUSY): removed.
3605           (rb_reg_initialize): prohibit re-initialize regexp.
3606           (rb_reg_search): use usecnt to prevent freeing regexp currently
3607           using.  this prevents SEGV by:
3608             r = /\A((a.)*(a.)*)*b/
3609             r =~ "ab" + "\xc2\xa1".force_encoding("euc-jp")
3610             t = Thread.new { r =~ "ab"*8 + "\xc2\xa1".force_encoding("utf-8")}
3611             sleep 0.2
3612             r =~ "ab"*8 + "\xc2\xa1".force_encoding("euc-jp")
3614 Sat Jun 28 21:15:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3616         * include/ruby/intern.h (rb_str_new2, rb_tainted_str_new2,
3617           rb_usascii_str_new2): use inline versions only for constant
3618           literals.
3620 Sat Jun 28 13:12:06 2008  Tanaka Akira  <akr@fsij.org>
3622         * test/rubygems/test_gem.rb (test_self_path_APPLE_GEM_HOME): don't use
3623           fixed /tmp/apple_gem_home directory.
3625 Sat Jun 28 08:40:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
3627         * ext/win32ole/win32ole.c: check String encoding when
3628           converting String to VT_BSTR in OLE.
3630         * test/win32ole/test_win32ole.rb: ditto.
3632 Sat Jun 28 01:08:42 2008  Tanaka Akira  <akr@fsij.org>
3634         * time.c (time_timespec): fix rounding negative float.
3636 Fri Jun 27 21:38:57 2008  Tanaka Akira  <akr@fsij.org>
3638         * struct.c: __size__ removed.  use the length of __members__ instead.
3639           (num_members): new function.
3641 Fri Jun 27 21:19:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3643         * test/inlinetest.rb (InlineTest.in_progname): workaround for frozen
3644           $0.  [ruby-dev:35261]
3646         * lib/test/unit/ui/console/testrunner.rb (TestRunner#finished): ditto.
3648 Fri Jun 27 17:45:17 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
3650         * lib/erb.rb: adjust line number for magic comment.
3652         * test/erb/test_erb.rb: add tests for def_method.
3654 Fri Jun 27 14:29:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3656         * parse.y (primary): empty not should call '!' on nil.
3657           cf [ruby-dev:35227]
3659 Fri Jun 27 14:25:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3661         * vm.c (vm_eval_body): if thrown exception is frozen, reraise it to
3662           create a new instance.
3664 Fri Jun 27 13:29:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3666         * include/ruby/intern.h (rb_str_new2, rb_tainted_str_new2,
3667           rb_usascii_str_new2): use with-length versions with strlen to
3668           optimize strlen, if optimized.
3670 Fri Jun 27 12:28:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3672         * lib/un.rb (mkmf): new command to create makefile.
3674 Fri Jun 27 11:06:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3676         * lib/un.rb (wait_writable): added help message.
3678 Fri Jun 27 06:52:54 2008  Koichi Sasada  <ko1@atdot.net>
3680         * configure.in: need a ",".
3682         * process.c (rb_fork): check CANNOT_FORK_WITH_PTHREAD macro.
3684 Fri Jun 27 06:50:56 2008  Koichi Sasada  <ko1@atdot.net>
3686         * vm_eval.c (vm_call_super): fix to call method_missing.
3687           [ruby-core:15719], [ruby-core:17340]
3689 Fri Jun 27 00:00:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3691         * ruby.c (set_arg0, ruby_prog_init): freeze $0.  a patch from Keita
3692           Yamaguchi <keita.yamaguchi at gmail.com>.
3694 Thu Jun 26 23:58:29 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3696         * string.c (rb_str_index_m, rb_str_rindex_m, rb_str_include): fix
3697           rdoc.
3699 Thu Jun 26 17:43:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3701         * variable.c (rb_f_trace_var): should not be allowed at safe level 4.
3702           a patch from Keita Yamaguchi <keita.yamaguchi at gmail.com>.
3704 Thu Jun 26 11:04:30 2008  Eric Hodel  <drbrain@segment7.net>
3706         * lib/rubygems: Update to RubyGems 1.2.0 r1824.  Incorporates patch by
3707           Yusuke ENDOH [ruby-core:17353].
3709 Thu Jun 26 00:48:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3711         * parse.y (primary): not operand might be empty.  [ruby-dev:35227]
3713 Wed Jun 25 21:54:34 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3715         * parse.y (primary): make functional-style not operator to act
3716           like function.  see <http://d.hatena.ne.jp/ku-ma-me/20080624/p1>.
3718 Wed Jun 25 15:28:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3720         * array.c (rb_ary_fill): not depend on unspecified behavior at integer
3721           overflow.  reported by Vincenzo Iozzo <snagg AT openssl.it>.
3723 Wed Jun 25 13:42:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3725         * lib/erb.rb (ERB::Compiler:Buffer#new): push magic comment first.
3727         * lib/erb.rb (ERB::Compiler#compile): fix for broken input.
3729 Wed Jun 25 12:10:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3731         * lib/erb.rb (ERB::Compiler#compile): magic comment needs LF.
3733 Wed Jun 25 09:31:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3735         * lib/erb.rb (ERB::Compiler#compile): output magic comment.
3737 Tue Jun 24 22:14:36 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3739         * vm_eval.c (eval_string_with_cref): preserve parse_in_eval even if
3740           exception raised.
3742 Tue Jun 24 22:09:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
3744         * ext/win32ole/win32ole.c(ole_invoke): fix memory leak.
3745           [ruby-bugs-20792]
3747 Tue Jun 24 17:20:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3749         * configure.in (rb_cv_fork_with_pthread): check after check for
3750           pthread library, and define the macro when checked only.
3752 Tue Jun 24 17:04:39 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3754         * ext/io/wait/extconf.rb: check sys/socket.h for cygwin.
3756 Tue Jun 24 16:51:51 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3758         * io.c (io_reopen): remove cygwin handling because it seems to be for
3759           C's stdio.
3760           fixed [ruby-dev:35183]
3762 Tue Jun 24 11:12:33 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3764         * include/ruby/win32.h, win32/win32.c (rb_w32_getppid): now support
3765           getppid() on win32 (but only Win2k or later).
3767         * process.c (get_ppid): remove win32 special logic.
3769 Tue Jun 24 09:40:47 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3771         * ext/socket/socket.c (init_sock): socket is binmode on platforms
3772           which support binmode.
3774 Tue Jun 24 00:21:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3776         * compile.c (iseq_build_from_ary): initialize arg_opts, a patch from
3777           Adam Strzelecki <ono@java.pl> in [ruby-core:17220].
3779 Tue Jun 24 00:10:53 2008  wanabe  <s.wanabe@gmail.com>
3780         * compile.c (iseq_build_from_ary): fix expression to obtain
3781           iseq->local_size and iseq->local_table_size.  [ruby-dev:35205]
3783 Mon Jun 23 11:31:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3785         * lib/mathn.rb (Rational::power2): removed incomplete method.
3786           see [ruby-dev:35195].   [ruby-core:17293]
3788 Sun Jun 22 14:16:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3790         * ext/readline/extconf.rb (have_readline_func): readline on Mac OS X
3791           needs headers to detect some functions.
3793 Sun Jun 22 09:51:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3795         * object.c (rb_class_superclass): rdoc improvement, a patch from
3796           Gaston Ramos <ramos.gaston AT gmail.com> in [ruby-core:17371].
3798 Sun Jun 22 09:22:32 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3800         * README.EXT: translated README.EXT.ja
3802 Sun Jun 22 00:42:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3804         * win32/win32.c (rb_w32_osid, rb_w32_osver, CreateChild): XP is
3805           is different from Vista about pipe handle inheritance.
3806           fixed [ruby-core:17367], reported by Lars Christensen <larsch at
3807           belunktum.dk>
3809 Sun Jun 22 00:38:45 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3811         * README.EXT.ja: add note about mark and free.
3813 Sun Jun 22 00:01:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3815         * io.c (rb_io_binmode_p, argf_binmode_p, Init_IO): new method
3816           IO#binmode? and ARGF.binmode?  [ruby-dev:35148]
3818 Sat Jun 21 17:33:50 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3820         * win32/win32.c (rb_w32_spawn): no longer support P_WAIT.
3822 Sat Jun 21 16:46:09 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3824         * thread_win32.c (native_sleep): must block reentrance when accessing
3825           th->unblock.
3826           fixed [ruby-core:17341], reported by Bill Kelly <billk at cts.com>
3828 Sat Jun 21 16:29:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3830         * parse.y (call_args2, open_args): removed.
3832         * parse.y (parser_yylex): unified warnings at space between method
3833           name and argument parenthesis.  [ruby-dev:33943]
3835 Sat Jun 21 16:21:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3837         * numeric.c (flo_round): get rid of overflow.
3839 Sat Jun 21 15:57:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3841         * lib/rdoc/parsers/parse_rb.rb (RDoc#collect_first_comment): skip
3842           magic comment.
3844 Sat Jun 21 15:54:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3846         * configure.in: check if fork works with pthread.
3848 Sat Jun 21 15:31:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3850         * tool/make-snapshot: ported to ruby.
3852         * tool/make-snapshot: fixed digests.
3854 Sat Jun 21 04:36:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3856         * ext/bigdecimal/lib/bigdecimal/jacobian.rb (Jacobian::dfdxi):
3857           typo fixed (raize -> raise).  [ruby-list:45101]
3859         * enumerator.c (enum_each_cons): typo in RDoc fixed.
3861 Sat Jun 21 00:45:34 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3863         * tool/make-snapshot: do not use sha256sum; use BASERUBY instead
3865         * common.mk (dist): use tool/make-snapshot instead
3867 Fri Jun 20 16:34:14 2008  Tanaka Akira  <akr@fsij.org>
3869         * process.c (Init_process): Process::Status#to_int removed.
3870           (PST2INT): defined.
3871           (pst_to_s): use PST2INT.
3872           (pst_inspect): ditto.
3873           (pst_equal): ditto.
3874           (pst_bitand): ditto.
3875           (pst_rshift): ditto.
3876           (pst_wifstopped): ditto.
3877           (pst_wstopsig): ditto.
3878           (pst_wifsignaled): ditto.
3879           (pst_wtermsig): ditto.
3880           (pst_wifexited): ditto.
3881           (pst_wexitstatus): ditto.
3882           (pst_success_p): ditto.
3883           (pst_wcoredump): ditto.
3884           (rb_f_system): ditto.
3886 Fri Jun 20 15:40:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3888         * array.c (rb_ary_store, rb_ary_splice): not depend on unspecified
3889           behavior at integer overflow.
3891         * string.c (str_buf_cat): ditto.
3893 Fri Jun 20 12:39:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3895         * process.c (rb_detach_process): store detached process ID in the
3896           thread local storage.  moved from lib/open3.rb.
3898 Fri Jun 20 11:57:46 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3900         * string.c (rb_str_sub_bang): should preserve replacement points
3901           since they may be altered in the yielded block.
3903 Fri Jun 20 11:07:56 2008  Tanaka Akira  <akr@fsij.org>
3905         * string.c (rb_memhash): randomize hash to avoid algorithmic
3906           complexity attacks.
3907           (rb_str_hash): use rb_memhash.
3909         * include/ruby/intern.h (rb_reset_random_seed): declared.
3911         * thread.c (rb_thread_atfork): call rb_reset_random_seed.
3913         * inits.c (rb_call_inits): call Init_RandomSeed at first.
3915         * random.c (seed_initialized): defined.
3916           (fill_random_seed): extracted from random_seed.
3917           (make_seed_value): extracted from random_seed.
3918           (rb_f_rand): initialize random seed at first.
3919           (initial_seed): defined.
3920           (Init_RandomSeed): defined.
3921           (Init_RandomSeed2): defined.
3922           (rb_reset_random_seed): defined.
3923           (Init_Random): call Init_RandomSeed2.
3925 Wed Jun 18 21:52:38 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3927         * array.c (ary_new, rb_ary_initialize, rb_ary_store,
3928           rb_ary_splice, rb_ary_times): integer overflows should be
3929           checked. based on patches from Drew Yao <ayao at apple.com>
3930           fixed CVE-2008-2726
3932         * string.c (rb_enc_cr_str_buf_cat): fixed unsafe use of alloca,
3933           which led memory corruption. based on a patch from Drew Yao
3934           <ayao at apple.com> fixed CVE-2008-2726
3936 Fri Jun 20 03:26:00 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3938         * process.c (rb_f_fork): NetBSD 4.0 or later can fork.
3940 Fri Jun 20 03:19:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3942         * test/testunit/collector/test_dir.rb: r15825 made it unnecessary to
3943           change String to Symbol.
3945         * test/testunit/collector/test_objectspace.rb: ditto.
3947 Fri Jun 20 03:14:31 2008  Eric Hodel  <drbrain@segment7.net>
3949         * lib/rubygems*, test/rubygems/*:  Update to RubyGems 1.1.1 r1784 (pre
3950           1.2).
3952 Fri Jun 20 03:01:59 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3954         * thread.c: try to remove false positive of deadlock detection (second
3955           trial).
3957 Fri Jun 20 02:16:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3959         * lib/mathn.rb (Rational::power2): typo fixed.  [ruby-core:17293]
3961 Fri Jun 20 02:11:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3963         * string.c (str_gsub): should preserve last successful match
3964           data.  [ruby-dev:35182]
3966 Fri Jun 20 01:07:28 2008  Koichi Sasada  <ko1@atdot.net>
3968         * KNOWNBUGS.rb, bootstraptest/pending.rb: move a bug (?) to pending.
3970 Fri Jun 20 00:40:08 2008  Koichi Sasada  <ko1@atdot.net>
3972         * proc.c (proc_new): fix to return Proc object if block is already
3973           in heap.  [ruby-core:15711]
3975         * bootstraptest/test_proc.rb: add a test.
3977 Fri Jun 20 00:18:04 2008  Koichi Sasada  <ko1@atdot.net>
3979         * thread_win32.c (native_sleep): fix to decrement sleeper count.
3981 Thu Jun 19 23:48:45 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3983         * test/net/http/test_http.rb: compare encodings of two strings before
3984           comparing themself, which suppress too big error output.
3986 Thu Jun 19 23:46:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3988         * ext/json/ext/parser/parser.rl, ext/json/ext/parser/parser.c: JSON
3989           text SHALL be encoded in Unicode.
3991 Thu Jun 19 23:17:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3993         * thread.c, thread_win32.c, vm_core.h: try to remove false positive of
3994           deadlock detection.
3996 Thu Jun 19 21:38:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3998         * ext/extmk.rb (extmake): check if compile before showing message.
4000 Thu Jun 19 21:35:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4002         * tool/make-snapshot: supported multiple snapshots.
4004 Thu Jun 19 20:37:00 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
4006         * lib/net/pop.rb (Net::POP3#set_all_uids): speed
4007           up. a patch from <m-sumi AT techfirm.co.jp> [ruby-list:45047]
4009 Thu Jun 19 17:44:15 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4011         * ext/etc/etc.c (Init_etc): define constant aliases Etc::Passwd
4012           and Etc::Group.  [ruby-dev:35150]
4014 Thu Jun 19 17:37:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4016         * string.c (str_alloc): specify 'inline' modifier.
4018         * string.c (str_alloc): remove cSymbol hack that no longer
4019           necessary.
4021         * string.c (scan_once): avoid retrieving encoding info unless
4022           necessary.
4024 Thu Jun 19 17:19:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4026         * string.c (rb_str_scan): String#scan should preserve last
4027           successful match data.  [ruby-dev:35106]
4029 Thu Jun 19 16:49:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4031         * missing/acosh.c (atanh): should set ERANGE to errno if parameter
4032           is the boundary case. fixed [ruby-dev:35155]
4034 Thu Jun 19 16:06:01 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
4036         * ext/tk/lib/tkextlib/tile/treeview.rb: cannot configure tags.
4038 Thu Jun 19 11:48:33 2008  Koichi Sasada  <ko1@atdot.net>
4040         * test/ruby/test_enumerator.rb: fix to skip "with_memo" test.
4042 Thu Jun 19 11:40:55 2008  Koichi Sasada  <ko1@atdot.net>
4044         * vm_insnhelper.c (vm_throw): fix "return" process from "lambda".
4046         * bootstraptest/test_proc.rb: add a test.
4048         * bootstraptest/pending.rb: add a pending bug.
4050 Thu Jun 19 00:33:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4052         * test/etc/test_etc.rb: avoid infinite loop.  [ruby-dev:35158]
4054 Wed Jun 18 23:07:19 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
4056         * gc.c (rb_newobj): prohibit call of rb_newobj() during gc.
4057           a patch from Sylvain Joyeux in [ruby-core:12099].
4059 Wed Jun 18 21:08:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4061         * ruby.c (verbose_setter, opt_W_getter): fixed prototypes.
4063 Wed Jun 18 19:20:00 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4065         * ruby.c (opt_W_getter): use ruby_verbose directly instead of parameter
4066           because ruby_verbose is not a real variable, so the address of
4067           parameter is not collect.
4069 Wed Jun 18 18:31:03 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4071         * win32/win32.c (errmap): add some pipe errors.
4073         * win32/win32.c (rb_w32_write): set errno when CRT's errno is EINVAL
4074           for pipe errors.
4076 Wed Jun 18 18:09:08 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4078         * win32/win32.c (poll_child_status): set EINVAL to errno when
4079           GetExitCodeProcess() fails with ERROR_INVALID_HANDLE.
4081 Wed Jun 18 15:01:18 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4083         * io.c (rb_open_file): fs_encoding and fname_encoding is
4084           rb_encoding *.
4085           fixed [ruby-dev:35151]
4087 Wed Jun 18 14:30:06 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4089         * io.c (rb_open_file): not rb_enc_get_index but rb_enc_get.
4091 Wed Jun 18 13:49:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4093         * include/ruby/win32.h (pipe): now pipe is textmode. although this
4094           change is experimental, it will be spec if no compatibility problem
4095           is reported.
4097 Wed Jun 18 12:05:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4099         * marshal.c (w_object, marshal_dump, r_object0, marshal_load): search
4100           public methods only.  [ruby-core:17283]
4102         * object.c (convert_type): ditto.
4104         * lib/singleton.rb (Singleton#_dump): conversion method should be
4105           public.
4107 Wed Jun 18 10:18:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4109         * ext/etc/etc.c (etc_passwd, etc_group): fixed rdoc.  a patch from
4110           okkez <okkez000 AT gmail.com> in [ruby-dev:35141].
4112 Wed Jun 18 08:58:16 2008  Eric Hodel  <drbrain@segment7.net>
4114         * lib/rubygems/*:  Fix errors for 1.9.
4116         * gem_prelude.rb:  Only remove methods from gem_prelude.rb when
4117           loading real RubyGems.
4119 Wed Jun 18 07:03:30 2008  Eric Hodel  <drbrain@egment7.net>
4121         * lib/rubygems/*:  Update to RubyGems r1778 (pre 1.2).
4123 Wed Jun 18 04:27:58 2008  Koichi Sasada  <ko1@atdot.net>
4125         * KNOWNBUGS.rb, bootstraptest/pending.rb: move pending bug.
4127 Wed Jun 18 04:24:20 2008  Koichi Sasada  <ko1@atdot.net>
4129         * vm.c, vm_insnhelper.c: fix escape process with "break" and "return"
4130           syntax in "lambda".  [ ruby-Bugs-19304 ], [ruby-core:17164]
4132         * KNOWNBUGS.rb, bootstraptest/test_proc.rb: add/move solved test.
4134 Wed Jun 18 01:51:10 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
4136         * ext/tk/lib/multi-tk.rb: cannot access class variable from
4137           singleton method.
4139 Wed Jun 18 00:03:33 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4141         * dir.c (Init_Dir): dir_foreach() takes variable argument.
4143 Tue Jun 17 23:04:24 2008  James Edward Gray II  <jeg2@ruby-lang.org>
4145         * lib/net/telnet.rb:  Fixing Telnet#wairfor() which was broken by
4146           changes to the Kernel::Integer() method.  [ruby-core:17272]
4148 Tue Jun 17 23:02:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4150         * ruby.c (opt_W_getter): made a hooked variable.
4152 Tue Jun 17 22:04:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4154         * enc/euc_jp.c (property_name_to_ctype): core dumped when sizeof(int)
4155           differs from sizeof(long).  [ruby-dev:35131]
4157         * enc/shift_jis.c (property_name_to_ctype): ditto.
4159         * enc/unicode.c (onigenc_unicode_property_name_to_ctype): ditto.
4161 Tue Jun 17 20:32:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4163         * common.mk (miniruby$(EXEEXT)): $(PREP) isn't always same as
4164           miniruby, and tests, debug, etc have no meaning when
4165           cross-compiling.
4167 Tue Jun 17 18:39:11 2008  Ryan Davis  <ryan@wrath.local>
4169         * common.mk: fixed dependencies on miniruby.
4171 Tue Jun 17 18:11:01 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4173         * include/ruby/win32.h (pipe): expand pipe buffer size.
4175 Tue Jun 17 17:07:35 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4177         * win32/win32.c (CreateChild): no need to inherit handles here because
4178           spawn'ed child cannot detect that STDIN is closed.
4180 Tue Jun 17 06:32:55 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4182         * dir.c (dir_data): add intenc and extenc.
4184         * dir.c (dir_s_alloc): ditto.
4186         * dir.c (dir_initialize): now accept internal_encoding and
4187           external_encoding.
4189         * dir.c (dir_s_open): changed for dir_initialize.
4191         * dir.c (dir_open_dir): ditto.
4193         * dir.c (dir_foreach): changed for dir_open_dir.
4195         * dir.c (dir_entries): changed for dir_open_dir.
4197         * dir.c (dir_enc_str): defined.
4199         * dir.c (dir_path): use dir_enc_str.
4201         * dir.c (dir_read): ditto.
4203         * dir.c (dir_each): ditto.
4205 Tue Jun 17 06:28:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4207         * io.c (io_set_encoding): defined.
4209         * io.c (rb_open_file): convert path on Windows and Mac OS X.
4211         * io.c (open_key_args): use io_set_encoding and now accept
4212           internal_encoding and external_encoding.
4214 Tue Jun 17 06:26:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4216         * encoding.c (rb_filesystem_encoding): defined.
4218         * include/ruby/encoding.h (rb_filesystem_encoding): added.
4220 Tue Jun 17 06:24:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4222         * ext/syck/rubyext.c: add encoding header.
4224 Tue Jun 17 01:52:50 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
4226         * ext/tk/tcltklib.c: SEGV when exit.
4228         * ext/tk/lib/tk.rb: add a check for safety to Tk.exit.
4230         * ext/tk/sample/irbtkw.rbw: freezes when receives SIGINT.
4232 Mon Jun 16 21:58:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4234         * ext/stringio/stringio.c (strio_each, strio_readlines): IO#each and
4235           IO#readlines do not affect $_.  [ruby-core:17277]
4237 Mon Jun 16 18:52:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4239         * lib/thwait.rb (ThreadsWait): Exception2MessageMapper no longer has
4240           extend_to method.  [ruby-core:17267]
4242 Mon Jun 16 14:46:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4244         * lib/e2mmap.rb (E2MM.def_e2message): typo.
4246 Mon Jun 16 09:43:27 2008  Akinori MUSHA  <knu@iDaemons.org>
4248         * enumerator.c (enumerator_with_object, Init_Enumerator):
4249           Temporarily back out with_memo, for which we need a better name.
4251 Mon Jun 16 07:14:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4253         * ext/stringio/stringio.c (strio_readline, strio_each)
4254           (strio_readlines): set lastline.  [ruby-core:17257]
4256 Mon Jun 16 01:49:39 2008  Koichi Sasada  <ko1@atdot.net>
4258         * eval.c (rb_f_block_given_p): fix to skip class frame.
4259           [ruby-core:14813]
4261         * KNOWNBUGS.rb, bootstraptest/test_method.rb: move solved test.
4263 Mon Jun 16 01:48:08 2008  Koichi Sasada  <ko1@atdot.net>
4265         * vm_dump.c (vm_stack_dump_raw): disable verbose debug output.
4267 Mon Jun 16 01:33:08 2008  Koichi Sasada  <ko1@atdot.net>
4269         * vm_core.h, thread.c: rename global_interpreter_lock to
4270           global_vm_lock.
4272 Sun Jun 15 18:40:35 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4274         * ext/syck/rubyext.c (yaml_org_handler): associate encoding.
4276         * ext/syck/rubyext.c (syck_genericresolver_node_import): ditto.
4278 Sun Jun 15 18:17:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4280         * vm_core.h (rb_vm_t), vm.c (rb_vm_mark): moved preallocated special
4281           exceptions.
4283         * eval.c (Init_eval), gc.c (Init_GC), proc.c (Init_Proc): freeze
4284           preallocated special exceptions.
4286         * eval.c (rb_longjmp): duplicate the thrown exception to set backtrace
4287           if it was frozen.
4289         * gc.c (rb_memerror): raise nomem_error without backtrace if failed to
4290           make backtrace.
4292 Sat Jun 14 22:52:35 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4294         * ext/stringio/stringio.c (strio_sysread): should not raise at empty
4295           read.  a patch from Arthur Schreiber at [ruby-core:17245].
4297 Sat Jun 14 16:55:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4299         * file.c (file_expand_path): no need to expand root path which has no
4300           short file name.  [ruby-dev:35095]
4302 Sat Jun 14 11:59:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4304         * gc.h (STACK_UPPER): moved from gc.c
4306         * thread.c, thread_{pthread,win32}.c (ruby_init_stack,
4307           ruby_thread_init_stack): moved stack initialization from gc.c.
4309 Sat Jun 14 11:57:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4311         * gc.h (STACK_UPPER): moved from gc.c
4313         * thread.c, thread_{pthread,win32}.c (ruby_init_stack,
4314           ruby_thread_init_stack): moved stack initialization from gc.c.
4316 Sat Jun 14 07:52:53 2008  Tanaka Akira  <akr@fsij.org>
4318         * gc.c (ruby_initial_gc_stress): defined.
4319           (ruby_initial_gc_stress_ptr): defined.
4321         * debug.c (set_debug_option): use ruby_initial_gc_stress_ptr for
4322           gc_stress option.
4324 Sat Jun 14 00:09:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4326         * gc.c (ruby_gc_stress): moved to rb_objspace_t.
4328         * gc.c (gc_stress_get, gc_stress_set): VM local attribute.
4330         * signal.c (sigsegv): ditto.
4332 Fri Jun 13 21:55:48 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4334         * rational.c (nurat_equal_p): Rational(0,x) and 0 are equivalent,
4335           anyway.
4337 Fri Jun 13 21:26:39 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4339         * complex.c (string_to_c, nucomp_s_convert): preserve the current
4340           backref.
4342         * rational.c (string_to_r, nurat_s_convert): ditto.
4344         * include/ruby/intern.h (rb_match_busy): added a declaration.
4346 Fri Jun 13 18:08:10 2008  Tanaka Akira  <akr@fsij.org>
4348         * lib/time.rb (Time.xmlschema): don't accept decimal dot without
4349           fractional digits.  fractional digits handling simplified.
4351 Fri Jun 13 17:20:40 2008  wanabe  <s.wanabe@gmail.com>
4353         * complex.c (string_to_c_internal): save and restore backref.
4354           fixed [ruby-dev:34991]
4356 Fri Jun 13 17:06:20 2008  wanabe  <s.wanabe@gmail.com>
4358         * rational.c (string_to_r_internal): save and restore backref.
4359           fixed [ruby-dev:34990]
4361 Fri Jun 13 14:41:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4363         * README.EXT.ja: update about Fixnum. reported in
4364            <http://www.tmtm.org/ja/tdiary/?date=20080611#p01>
4366         * README.EXT.ja: describe about StringValueCStr().
4368         * README.EXT: ditto.
4370 Fri Jun 13 14:24:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4372         * gc.c (rb_memerror): exit with EXIT_FAILURE instead of magic number.
4374         * gc.c (ruby_stack_check): STACK_LENGTH should be less than
4375           STACK_LEVEL_MAX.
4377 Fri Jun 13 12:55:37 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4379         * enum.c (sort_by_i): use NODE_DOT2 instead of NODE_MEMO to avoid
4380           extra calls to is_pointer_to_heap() in GC.
4382         * enum.c (enum_zip): ditto.
4384 Fri Jun 13 00:41:58 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4386         * test/ruby/test_thread.rb: add a test.
4388 Thu Jun 12 23:30:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4390         * thread.c (mutex_unlock): fix cond_notified consistency.
4392 Thu Jun 12 22:19:45 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4394         * thread_win32.c (native_sleep): fixed previous commit.
4396 Thu Jun 12 21:59:17 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4398         * thread.c, vm_core.h, vm.c, thread_pthread.c, thread_win32.c: add
4399           deadlock detection.  [ruby-dev:35044]
4401         * bootstraptest/test_thread.rb: add tests for above.
4403 Thu Jun 12 21:39:55 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4405         * complex.c: refactoring.
4407         * rational.c: ditto.
4409 Thu Jun 12 17:11:24 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4411         * regint.h: undefine USE_CAPTURE_HISTORY which is mentioned as
4412           unsupported in the Onigiruma document.
4414 Thu Jun 12 13:36:54 2008  Tanaka Akira  <akr@fsij.org>
4416         * include/ruby/ruby.h (rb_intern): use rb_intern2 with strlen for
4417           constant symbols to optimize strlen.
4419 Thu Jun 12 08:47:51 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4421         * io.c (read_all): should use io_read_encoding(), not
4422           io_input_encoding().
4424         * io.c (rb_io_getline_1): reduce calling of io_read_encoding().
4426         * string.c (rb_str_scan): need not to restore $~ value, so avoid
4427           pinning match object.
4429 Thu Jun 12 02:49:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4431         * ext/stringio/stringio.c (strio_init): rewind when reopened.
4433 Thu Jun 12 02:43:27 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4435         * array.c (rb_ary_zip): ANSI style.
4437 Thu Jun 12 02:25:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4439         * io.c (rb_io_reopen): clear read buffer.
4441 Thu Jun 12 00:56:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4443         * ext/tk: check proper conditions.  [ruby-dev:35047]
4445 Wed Jun 11 23:33:13 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4447         * io.c (io_fread): bypass buffered read if reading buffer is empty.
4449         * io.c (remain_size): do not add extra one byte.
4451 Wed Jun 11 12:15:17 2008  Tanaka Akira  <akr@fsij.org>
4453         * bootstraptest/runner.rb (assert_normal_exit): hide stderr output
4454           when success.
4456 Wed Jun 11 09:26:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4458         * common.mk (encs): need to pass miniruby path for windows.
4460 Wed Jun 11 05:53:20 2008  Koichi Sasada  <ko1@atdot.net>
4462         * vm.c, eval_intern.h (PASS_PASSED_BLOCK):
4463           set a VM_FRAME_FLAG_PASSED flag to skip this frame when
4464           searching ruby-level-cfp.
4466         * eval.c, eval_intern.h, proc.c: fix to check cfp.  if there is
4467           no valid ruby-level-cfp, cause RuntimeError exception.
4468           [ruby-dev:34128]
4470         * vm_core.h, vm_evalbody.c, vm.c, vm_dump.c, vm_insnhelper.c,
4471           insns.def: rename FRAME_MAGIC_* to VM_FRAME_MAGIC_*.
4473         * KNOWNBUGS.rb, bootstraptest/test*.rb: move solved bugs.
4475 Wed Jun 11 05:55:31 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
4477         * ext/tk/tcltklib.c: SEGV when tcltk-stubs is enabled.
4479         * ext/tk/tcltklib.c: avoid error on a shared object.
4481         * ext/tk/extconf.rb: support --with-tcltkversion
4483         * ext/tk/README.tcltklib: add document about --with-tcltkversion
4485         * ext/tk/lib/tk.rb, ext/tk/lib/multi-tk.rb, ext/tk/lib/remote-tk.rb:
4486           not work on $SAFE==4
4488         * ext/tk/lib/multi-tk.rb: Object#methods returns Symbols on Ruby1.9.
4490         * ext/tk/lib/tk/timer.rb: add TkTimer#at_end(proc) to register the
4491           procedure which called at end of the timer.
4493         * ext/tk/lib/tk.rb, ext/tk/lib/tk/itemfont.rb, ext/tk/lib/font.rb:
4494           support __IGNORE_UNKNOWN_CONFIGURE_OPTION__ about font options.
4496         * ext/tk/lib/*: treat __IGNORE_UNKNOWN_CONFIGURE_OPTION__
4498         * ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb,
4499           ext/tk/lib/tkextlib/iwidgets/scrolledlistbox.rb,
4500           ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: bug fix.
4502         * ext/tk/lib/tk/text.rb: typo. call a wrong method.
4504         * ext/tk/lib/tk/itemconfig.rb: ditto.
4506         * ext/tk/lib/tk.rb, ext/tk/lib/tk/itemconfig.rb,
4507           ext/tk/lib/tk/canvas.rb: support alias names of option keys.
4509         * ext/tk/lib/tk/grid.rb: lack of module-method definitions.
4511         * ext/tk/lib/tk/pack.rb, ext/tk/lib/tk/grid.rb: increase supported
4512           parameter patterns of configure method.
4514         * ext/tk/lib/tk.rb: add TkWindow#grid_anchor, grid_column, grid_row.
4516         * ext/tk/lib/tk/wm.rb: methods of Tk::Wm_for_General module cannot
4517           pass the given block to methods of Tk::Wm module.
4519         * ext/tk/lib/tk/wm.rb: Wm#overrideredirect overwrites argument to
4520           an invalid value.
4522         * ext/tk/lib/tk.rb: fix memory (object) leak bug.
4524         * ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: fix memory leak.
4526         * ext/tk/sample/demos-jp/aniwave.rb, ext/tk/sample/demos-en/aniwave.rb:
4527           bug fix.
4529         * ext/tk/lib/tkextlib/blt/component.rb,
4530           ext/tk/lib/tkextlib/tile/tentry.rb,
4531           ext/tk/lib/tkextlib/tile/treeview.rb: ditto.
4533         * ext/tk/lib/tkextlib/tile/tpaned.rb: improve TPaned#add.
4535         * ext/tk/sample/demos-jp/widget, ext/tk/sample/demos-en/widget,
4536           ext/tk/sample/demos-jp/style.rb, ext/tk/sample/demos-en/style.rb,
4537           ext/tk/sample/demos-jp/bind.rb, ext/tk/sample/demos-en/bind.rb:
4538           bug fix.
4540         * ext/tk/sample/ttk_wrapper.rb: ditto.
4542         * ext/tk/sample/ttk_wrapper.rb: support "if __FILE__ == $0" idiom.
4544         * ext/tk/sample/tktextio.rb: add binding for 'Ctrl-u' at console mode.
4546         * ext/tk/lib/tkextlib/tile.rb, ext/tk/lib/tkextlib/tile/style.rb,
4547           ext/tk/sample/ttk_wrapper.rb: improve treating and control themes.
4548           add Tk::Tile.themes and Tk::Tile.set_theme(theme).
4550         * ext/tk/lib/tkextlib/tile.rb: lack of autoload definitions.
4552         * ext/tk/lib/tkextlib/tile/tnotebook.rb: cannot use kanji (not UTF-8)
4553           characters for headings.
4555         * ext/tk/lib/tkextlib/tkDND/shape.rb: wrong package name.
4557         * ext/tk/tkutil/tkutil.c: improve handling callback-subst-keys.
4558           Now, support longnam-keys (e.g. '%CTT' on tkdnd-2.0; however, still
4559           not support tkdnd-2.0 on tkextlib), and symbols of parameters (e.g.
4560           :widget=>'%W', :keycode=>'%k', '%x'=>:x, '%X'=>:root_x, and so on;
4561           those are attributes of event object). It means that Ruby/Tk accepts
4562           not only "widget.bind(ev, '%W', '%k', ...){|w, k, ...| ... }", but
4563           also "widget.bind(ev, :widget, :keycode, ...){|w, k, ...| ... }".
4564           It is potentially incompatible, when user passes symbols to the
4565           arguments of the callback block (the block receives the symbols as
4566           strings). I think that is very rare case (probably, used by Ruby/Tk
4567           experts only). When causes such trouble, please give strings instead
4568           of such symbol parameters (e.g. call Symbol#to_s method).
4570         * ext/tk/lib/tk/event.rb, ext/tk/lib/tk/validation.rb,
4571           ext/tk/lib/tkextlib/blt/treeview.rb,
4572           ext/tk/lib/tkextlib/winico/winico.rb: ditto.
4574         * ext/tk/tkutil/tkutil.c: strings are available on subst_tables on
4575           TkUtil::CallbackSubst class (it is useful on Ruby 1.9).
4577         * ext/tk/lib/tk/spinbox.rb, ext/tk/lib/tkextlib/iwidgets/hierarchy.rb,
4578           ext/tk/lib/tkextlib/iwidgets/spinner.rb,
4579           ext/tk/lib/tkextlib/iwidgets/entryfield.rb,
4580           ext/tk/lib/tkextlib/iwidgets/calendar.rb,
4581           ext/tk/lib/tkextlib/blt/dragdrop.rb,
4582           ext/tk/lib/tkextlib/tkDND/tkdnd.rb,
4583           ext/tk/lib/tkextlib/treectrl/tktreectrl.rb,
4584           ext/tk/lib/tkextlib/tktable/tktable.rb: disable code piece became
4585           unnecessary by reason of the changes of ext/tk/tkutil/tkutil.c.
4587         * ext/tk/lib/tk.rb, ext/tk/lib/multi-tk.rb: change strategy to define
4588           the constant WITH_ENCODING.
4590         * ext/tk/lib/tk.rb: fix bug on Tk::Encoding.tk_encoding_names.
4592 Wed Jun 11 03:40:37 2008  Akinori MUSHA  <knu@iDaemons.org>
4594         * lib/find.rb (Find#find): Return an enumerator if no block is
4595           given.
4597 Wed Jun 11 01:28:12 2008  Koichi Sasada  <ko1@atdot.net>
4599         * include/ruby/intern.h, proc.c: revert rb_proc_call() and
4600           create rb_proc_call_with_block() instead.
4602         * include/ruby/ruby.h, eval_jump.c, thread.c, vm_insnhelper.c:
4603           rb_blockptr should not be exposed.
4605 Tue Jun 10 21:07:19 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
4607         * test/ruby/test_float.rb: add tests. [ruby-dev:35009]
4609 Tue Jun 10 20:55:57 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4611         * complex.c (nucomp_s_convert): need not to initialize optional
4612           argument for rb_scan_args().
4614 Tue Jun 10 20:13:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4616         * ext/extmk.rb: negate default of --without-ext if --with-ext is
4617           given.
4619         * ext/extmk.rb: negate default of --without-ext.
4621 Tue Jun 10 17:43:35 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4623         * array.c (rb_ary_shuffle_bang): update RDoc.  [ruby-dev:35034]
4625 Tue Jun 10 17:30:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4627         * include/ruby/intern.h (rb_obj_instance_exec, rb_mod_module_exec):
4628           added prototypes.
4630 Tue Jun 10 17:00:29 2008  wanabe  <s.wanabe@gmail.com>
4632         * util.c (ruby_strtod): ruby_strtod don't allow a trailing
4633           decimal point like "7.". [ruby-dev:34835] [ruby-dev:35009]
4635 Tue Jun 10 13:48:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4637         * rational.c (nurat_s_convert): need not to initialize optional
4638           argument for rb_scan_args().
4640 Tue Jun 10 12:58:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4642         * ext/io/wait/wait.c (FIONREAD_POSSIBLE_P): suppress warnings.
4644 Tue Jun 10 12:43:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4646         * include/ruby/ruby.h (CONST_ID_CACHE): fixed statement expression.
4648 Tue Jun 10 11:25:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4650         * ruby.c (rb_argv0): revised for ext/tk.
4652         * include/ruby/encoding.h: not to use varargs.h since requiring C89.
4654 Tue Jun 10 00:50:51 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4656         * include/ruby/ruby.h, vm_core.h: add a type rb_blockptr.
4658         * vm_insnhelper.c (vm_yield_with_cfunc): vm_yield_with_cfunc receives
4659           blockptr and passes it to iterating block.
4661         * proc.c (rb_proc_call), include/ruby/intern.h: rb_proc_call receives
4662           blockptr.  "rb_proc_call(self, args, blockptr)" in C corresponds to
4663           "self.call(*args, &block)" in Ruby.
4665         * proc.c (proc_call): pass blockptr to block that is written in C.
4667         * proc.c (curry): receive blockptr and pass it to original proc.
4668           [ruby-core:15551]
4670         * vm.c (invoke_block_from_c): fix for change of vm_yield_with_cfunc.
4672         * thread.c (call_trace_proc), eval_jump.c (rb_call_end_proc): fix for
4673           change of rb_proc_call.
4675 Tue Jun 10 00:10:49 2008  Tanaka Akira  <akr@fsij.org>
4677         * common.mk (test-knownbug): give $(OPTS) for bootstraptest/runner.rb.
4679 Mon Jun  9 23:10:50 2008  Tanaka Akira  <akr@fsij.org>
4681         * eval.c (Init_stack): don't declare.  it is a macro now.
4683 Mon Jun  9 22:46:47 2008  wanabe  <s.wanabe@gmail.com>
4685         * compile.c : treat []&&= in virtually the same way as []||=.
4686           [ruby-dev:34679]
4688 Mon Jun  9 21:17:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4690         * enc/depend (clean): remove build directories.
4692         * test_knownbug.rb -> KNOWNBUGS.rb: renamed.
4694         * common.mk: apply above change.
4696 Mon Jun  9 21:14:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4698         * lib/mkmf.rb (configuration): set flags.
4700 Mon Jun  9 21:09:02 2008  Koichi Sasada  <ko1@atdot.net>
4702         * bootstraptest/test_knownbug.rb -> ./test_knownbug.rb: moved.
4704         * common.mk: add a rule "test-knownbug".
4706 Mon Jun  9 21:00:32 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4708         * complex.c (nucomp_s_convert): can accept Complex('i').
4709           [ruby-dev:34991]
4711 Mon Jun  9 18:25:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4713         * include/ruby/ruby.h (CONST_ID): constant ID cache for non-gcc.
4715         * *.c: no cache in init functions.
4717 Mon Jun  9 17:56:30 2008  Akinori MUSHA  <knu@iDaemons.org>
4719         * lib/set.rb (Set#delete_if): Call to_a.
4720           (SortedSet#delete_if, TC_SortedSet#test_sortedset): Use super to
4721           yield elements in sorted order; [ruby-core:17144] by Arthur
4722           Schreiber.
4723           (SortedSet#each, SortedSet#each, TC_Set#test_each)
4724           (TC_SortedSet#test_sortedset): Return self; [ruby-dev:35002] by
4725           Arthur Schreiber.
4727 Mon Jun  9 17:47:09 2008  Tanaka Akira  <akr@fsij.org>
4729         * io.c (fptr_finalize): close IO object if fd is already closed.
4730           (rb_p): call rb_io_write just once.
4732 Mon Jun  9 15:37:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4734         * ruby.c (require_libraries): req_list may be NULL.  [ruby-dev:35008]
4736 Mon Jun  9 14:18:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4738         * vm_core.h (struct rb_vm_struct): moved src_encoding_index,
4739           ruby_debug, ruby_verbose, and rb_progname.
4741         * ruby.c (rb_argv0): no longer used.
4743         * ruby.c (struct cmdline_options): moved setids and req_list, and the
4744           latter is now an array, to prevent memory leak.
4746         * ruby.c (cmdline_options_init): added.
4748         * ruby.c (add_modules, require_libraries, init_ids, forbid_setid): use
4749           struct cmdline_options.
4751         * vm.c (vm_init2): initialize src_encoding_index.
4753         * vm.c: getters/setters for ruby_{debug,verbose}.
4755 Mon Jun  9 09:54:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4757         * include/ruby/intern.h (Init_stack): make to call ruby_init_stack.
4759 Mon Jun  9 08:12:40 2008  wanabe  <s.wanabe@gmail.com>
4761         * vm_insnhelper.c, vm.c, proc.c : revert r17021. [ruby-dev:34997]
4763 Mon Jun  9 03:12:23 2008  Koichi Sasada  <ko1@atdot.net>
4765         * bootstraptest/pending.rb: move/remove solved issues.
4767         * bootstraptest/test_class.rb: ditto.
4769 Mon Jun  9 02:32:58 2008  Akinori MUSHA  <knu@iDaemons.org>
4771         * ext/zlib/zlib.c (rb_deflate_init_copy): Copy buffers as well.
4772           [ruby-list:45018]
4774 Sun Jun  8 22:22:20 2008  wanabe  <s.wanabe@gmail.com>
4776         * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with
4777           block that both is written in C. [ruby-dev:34273] [ruby-core:15551]
4779         *  proc.c (curry): use proc_call instead of rb_proc_call.
4780           [ruby-dev:34273] [ruby-core:15551]
4782 Sun Jun  8 21:50:27 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4784         * test/zlib/test_zlib.rb: add tests to achieve over 90% test coverage
4785           of zlib.
4787 Sun Jun  8 20:12:47 2008  wanabe  <s.wanabe@gmail.com>
4789         * vm_insnhelper.c (vm_throw): regard break as return in lambda.
4790           [ruby-dev:34646]
4792 Sun Jun  8 19:17:59 2008  Koichi Sasada  <ko1@atdot.net>
4794         * gc.c: add a build option "CALC_EXACT_MALLOC_SIZE".
4795           This option enables to calculate exact size of current
4796           allocated size by malloc().  You can access these information
4797           with GC.malloc_allocated_size and GC.malloc_allocations.
4798           This option consume additional memory as a header of each memory
4799           object.  This option also helps to find out xmalloc()/xfree()
4800           consistency.  If you get trouble with this option, some extension
4801           using "free()" instead of "xfree()".
4802           This options is disabled by default.
4804 Sun Jun  8 18:15:38 2008  Koichi Sasada  <ko1@atdot.net>
4806         * array.c, bignum.c, cont.c, dir.c, dln.c, encoding.c, enumerator.c,
4807           enumerator.c (enumerator_allocate), eval_jump.c, file.c, hash.c,
4808           io.c, load.c, pack.c, proc.c, random.c, re.c, ruby.c, st.c,
4809           string.c, thread.c, thread_pthread.c, time.c, util.c, variable.c,
4810           vm.c, gc.c:
4811           allocated memory objects by xmalloc (ruby_xmalloc) should be
4812           freed by xfree (ruby_xfree).
4814         * ext/curses/curses.c, ext/dbm/dbm.c, ext/digest/digest.c,
4815           ext/gdbm/gdbm.c, ext/json/ext/parser/parser.c,
4816           ext/json/ext/parser/unicode.c, ext/openssl/ossl_cipher.c,
4817           ext/openssl/ossl_hmac.c, ext/openssl/ossl_pkey_ec.c,
4818           ext/sdbm/init.c, ext/strscan/strscan.c, ext/zlib/zlib.c:
4819           ditto.
4821 Sun Jun  8 01:15:11 2008  Tanaka Akira  <akr@fsij.org>
4823         * hash.c (hash_i): make Hash#hash order insensitive.
4824           (rb_hash_dup): use DUPSETUP.
4826 Sat Jun  7 23:47:35 2008  Akinori MUSHA  <knu@iDaemons.org>
4828         * ext/zlib/zlib.c (rb_deflate_initialize, Init_zlib): Fix up
4829           initialize_copy; [ruby-list:45016].
4831 Sat Jun  7 22:15:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4833         * configure.in (VENDOR_DIR): use LIBDIR instead of PREFIX as well as
4834           SITE_DIR.  a patch from Richard Brown <rbrown AT exherbo.org> in
4835           [ruby-core:17129].
4837 Sat Jun  7 21:37:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4839         * io.c (rb_f_open), re.c (rb_reg_search), transcode.c (str_transcode):
4840           suppress warnings.
4842         * util.c (quorem, rv_alloc, nrv_alloc): only used in dtoa().
4844 Sat Jun  7 16:06:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4846         * configure.in (CFLAGS, CXXFLAGS): append default flags.
4848 Sat Jun  7 01:23:59 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4850         * io.c (rb_open_file, rb_io_s_sysopen): fmode should be unsigned int.
4851           fixed [ruby-dev:34979]
4853 Fri Jun  6 23:46:19 2008  Koichi Sasada  <ko1@atdot.net>
4855         * vm_insnhelper.c (vm_callee_setup_arg): check simple flag before
4856           calling setup_arg function().  this change reduce function call.
4858 Fri Jun  6 21:51:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4860         * win32/Makefile.sub (COMMON_HEADERS): include ws2tcpip.h.
4862         * ext/socket/addrinfo.h (addrinfo, getaddrinfo, getnameinfo,
4863           freehostent, freeaddrinfo): undef before define because these are
4864           macros in some versions of Windows SDK.
4866           merged from ruby_1_8.
4868 Fri Jun  6 18:25:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4870         * test/iconv/utils.rb (default_test): override not to croak.
4872 Fri Jun  6 16:41:45 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4874         * include/ruby/win32.h: include ws2tcpip.h. fixed [ruby-Bugs-20528]
4876 Fri Jun  6 15:05:02 2008  Tanaka Akira  <akr@fsij.org>
4878         * gc.c (count_objects): clear hash after counting objects.
4880 Fri Jun  6 12:43:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4882         * test/ruby/test_dir.rb (TestDir::test_glob): glob file names not sorted.
4884 Fri Jun  6 00:05:33 2008  Tanaka Akira  <akr@fsij.org>
4886         * lib/time.rb (Time.xmlschema): don't use float.  fix
4887           http://rubyforge.org/tracker/index.php?func=detail&group_id=426&atid=1698&aid=20504
4889 Thu Jun  5 23:56:18 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4891         * test/ruby/test_gc.rb: add tests to achieve over 90% test coverage of
4892           gc.c.
4894         * test/ruby/test_objectspace.rb: ditto.
4896         * test/ruby/test_marshal.rb: ditto.
4898 Thu Jun  5 23:40:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4900         * gc.c (rb_objspace_alloc): this function is needed only when
4901           ENABLE_VM_OBJSPACE macro is defined.
4903         * vm.c: ditto.
4905 Thu Jun  5 23:31:21 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4907         * test/stringio/test_stringio.rb: add tests to achieve over 95% test
4908           coverage of stringio.
4910         * test/strscan/test_stringscanner.rb: ditto for strscan.
4912 Thu Jun  5 23:25:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4914         * eval.c (ruby_finalize_0): clear trace_func after executing END
4915           procs.
4917         * thread.c: fix typo.
4919 Thu Jun  5 22:50:50 2008  Tanaka Akira  <akr@fsij.org>
4921         * gc.c (os_obj_of): heaps may be modified in yield.
4923 Thu Jun  5 21:46:50 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4925         * st.c (st_reverse_foreach): comment out unused function.
4927         * util.c (dtoa): ditto.
4929 Thu Jun  5 20:30:46 2008  Akinori MUSHA  <knu@iDaemons.org>
4931         * ext/openssl/ossl_ssl_session.c (ossl_ssl_session_initialize):
4932           Add a null check for ssl; submitted by akira yamada
4933           in [ruby-dev:34950].
4935         * ext/openssl/ossl_ssl.c (Init_ossl_ssl): Define OP_NO_TICKET if
4936           SSL_OP_NO_TICKET is present; submitted by akira yamada
4937           in [ruby-dev:34944].
4939         * test/openssl/test_ssl.rb (OpenSSL#test_server_session): Add a
4940           workaround for the case where OpenSSL is configured with
4941           --enable-tlsext; submitted by akira yamada in [ruby-dev:34944].
4943 Thu Jun  5 20:24:15 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4945         * thread.c (thread_set_trace_func_m): fix check for proc argument.
4947 Thu Jun  5 20:17:29 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4949         * lib/rexml/document.rb (REXML::Document:write): leaky modification
4950           trans -> transitive.  [ruby-dev:32040], r13686
4952         * lib/rexml/text.rb (Text.check): fix check for illegal character.
4954 Thu Jun  5 14:03:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4956         * ext/iconv/iconv.c (iconv_create): find encoding without options.
4958 Thu Jun  5 07:48:32 2008  Koichi Sasada  <ko1@atdot.net>
4960         * string.c (hash): should be "static".
4962 Thu Jun  5 01:47:18 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4964         * test/ruby/test_transcode.rb: add tests for iso-2022-jp.
4966 Thu Jun  5 01:27:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4968         * test/ruby/test_process.rb: add tests.
4970 Wed Jun  4 23:10:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4972         * ext/zlib/zlib.c (rb_gzfile_set_mtime): fix typo.
4974 Wed Jun  4 18:53:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4976         * object.c (rb_obj_alloc): RDoc updated.  a patch from Gaston
4977           Ramos <ramos.gaston at gmail.com> in [ruby-core:17073].
4979 Wed Jun  4 18:36:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4981         * lib/rdoc.rb: massive spelling correction patch from Evan Farrar
4982           <evanfarrar at gmail.com> in [ruby-doc:1382] applied.
4984 Wed Jun  4 17:52:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4986         * ext/iconv/iconv.c (iconv_iconv): fix for length argument and now
4987           allows range.  [ruby-core:17092]
4989 Wed Jun  4 15:45:41 2008  Akinori MUSHA  <knu@iDaemons.org>
4991         * enumerator.c (enumerator_with_index, enumerator_with_memo): Fix
4992           grammo in rdoc.
4994 Wed Jun  4 13:06:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4996         * configure.in (CFLAGS, CXXFLAGS): include additional flags to
4997           CFLAGS and CXXFLAGS while configuration.
4999 Tue Jun  3 23:06:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5001         * ext/strscan/strscan.c (strscan_scan_full, strscan_search_full): fix
5002           document.
5004 Tue Jun  3 22:37:26 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5006         * ext/strscan/strscan.c (strscan_exist_p): fix document.
5008 Tue Jun  3 22:33:29 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5010         * test/ruby/test_dir.rb: add tests to achieve over 90% test coverage
5011           of dir.c.
5013         * test/ruby/test_encoding.rb: add tests for dummy?, name_list and
5014           aliases.
5016         * test/ruby/test_marshal.rb: add some tests.
5018 Tue Jun  3 22:25:51 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5020         * test/etc/test_etc.rb: new tests for etc.
5022 Tue Jun  3 19:35:02 2008  Akinori MUSHA  <knu@iDaemons.org>
5024         * enumerator.c (enumerator_with_memo): New method: with_memo().
5026 Tue Jun  3 20:04:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5028         * win32/Makefile.sub (miniruby$(EXEEXT)): miniruby cannot be
5029           written by miniruby itself.
5031 Tue Jun  3 19:33:22 2008  Akinori MUSHA  <knu@iDaemons.org>
5033         * enumerator.c (enumerator_init_copy): Take care of
5034           initialize_copy as well as initialize.
5036 Tue Jun  3 16:06:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5038         * file.c (file_expand_path): fix for non-existent files and SFN of
5039           symlinks.  [ruby-talk:303736]
5041 Tue Jun  3 15:12:01 2008  Akinori MUSHA  <knu@iDaemons.org>
5043         * lib/set.rb (Set#classify): Back out the `group_by' alias.
5044           Better think twice.
5046 Tue Jun  3 15:00:22 2008  Akinori MUSHA  <knu@iDaemons.org>
5048         * lib/set.rb (Set#collect, Set#select): Back out.  I thought it
5049           was consistent but turned out to be wrong.
5051 Tue Jun  3 13:41:08 2008  Akinori MUSHA  <knu@iDaemons.org>
5053         * lib/set.rb (Set#collect, Set#select): Override Enumerable
5054           methods and make them return a set. [ruby-core:17055]
5055           (Set#delete_if, Set#collect!, Set#reject!, Set#classify)
5056           (Set#divide, Set#delete_if): Return an enumerator if no block is
5057           given.
5058           (Set#classify): Define an alias `group_by' to override that of
5059           Enumerable.
5061 Tue Jun  3 13:35:40 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5063         * process.c (run_exec_pgroup): C99 ism.
5065 Tue Jun  3 12:51:57 2008  Akinori MUSHA  <knu@iDaemons.org>
5067         * enumerator.c (enumerator_allocate, enumerator_ptr): Properly
5068           detect if the object is initialized and raise error when
5069           appropriate.
5070           (enumerator_initialize): Fix a typo in rdoc. [ruby-core:17052]
5072 Tue Jun  3 01:21:51 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5074         * test/ruby/test_method.rb: add a test.
5076 Tue Jun  3 00:26:48 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5078         * marshal.c (w_object): add a check for modification of array during
5079           its dump.
5081 Mon Jun  2 22:27:57 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5083         * enc/iso_8859_5.c: Large omicron should lowercase to small omicron.
5085         * test/ruby/test_big5.rb, test/ruby/test_cp949.rb,
5086           test/ruby/test_euc_jp.rb, test/ruby/test_euc_kr.rb,
5087           test/ruby/test_euc_tw.rb, test/ruby/test_gb18030.rb,
5088           test/ruby/test_gbk.rb, test/ruby/test_iso_8859.rb,
5089           test/ruby/test_koi8.rb, test/ruby/test_shift_jis.rb,
5090           test/ruby/test_windows_1251.rb: new tests for encoding.
5092         * test/ruby/test_utf16.rb, test/ruby/test_utf32.rb,
5093           test/ruby/test_regexp.rb: add tests.
5095 Mon Jun  2 21:56:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5097         * test/ruby/test_file.rb: add tests for uninitialized object.
5099         * test/ruby/test_class.rb: ditto.
5101         * test/ruby/test_thread.rb: ditto.
5103 Mon Jun  2 21:44:15 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5105         * re.c: fix SEGV by Regexp.allocate.names, Match.allocate.names, etc.
5107         * test/ruby/test_regexp.rb: add tests for above.
5109         * io.c: fix SEGV by IO.allocate.print, etc.
5111         * test/ruby/test_io.rb: add tests for above.
5113 Mon Jun  2 19:17:47 2008  Tanaka Akira  <akr@fsij.org>
5115         * test/ruby/test_argf.rb (teardown): remove renamed temporary files.
5117 Mon Jun  2 18:51:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5119         * lib/un.rb (wait_writable): wait until target files can be
5120           written actually.
5122         * win32/Makefile.sub (LDSHARED_0, LINK_SO): get rid of failure of
5123           mt.exe.
5125 Mon Jun  2 16:26:17 2008  Akinori MUSHA  <knu@iDaemons.org>
5127         * lib/delegate.rb (Delegator::MethodDelegation#respond_to):
5128           respond_to? should now take optional second argument; submitted
5129           by Jeremy Kemper <jeremy at bitsweat.net> in [ruby-core:17045].
5131 Mon Jun  2 16:14:18 2008  Akinori MUSHA  <knu@iDaemons.org>
5133         * lib/erb.rb (ERB::Compiler::TrimScanner#scan_line): Oops.  This
5134           change did not apply to trunk.  Backed out.
5136 Mon Jun  2 16:08:24 2008  Akinori MUSHA  <knu@iDaemons.org>
5138         * lib/erb.rb (ERB::Compiler::TrimScanner#scan_line): Fix a bug
5139           where tokens are not yielded one by one.
5141         * test/erb/test_erb.rb (TestERBCore#_test_01)
5142           (TestERBCore#test_02_safe_04): The expected value should come
5143           first for assert_equal().
5145 Mon Jun  2 13:06:38 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5147         * mkconfig.rb: hide build path from rbconfig.rb.
5149 Mon Jun  2 08:46:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5151         * util.c (ruby_strtod, dtoa): initialize more variables for error
5152           handling.
5154 Mon Jun  2 04:55:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5156         * suppress warnings on cygwin, mingw and mswin.
5158 Mon Jun  2 04:35:32 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5160         * enc/gb18030.c (gb18030_code_to_mbc): add 0x80000000
5161           for 4bytes character.
5163 Mon Jun  2 03:52:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5165         * ruby.c (set_arg0): reverted used variable definition.
5167 Mon Jun  2 03:23:25 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5169         * enc/gb18030.c (gb18030_mbc_to_code): mask by 0x7FFFFFFF
5170           because OnigCodePoint will be used as 32bit signed int.
5171           Masking by 0x7FFFFFFF is ok on GB18030;
5172           Minimum 4bytes character is 0x81308130.
5174 Sun Jun  1 22:29:35 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5176         * rational.c (string_to_r_internal): use rb_isdigit.
5178         * marshal.c (long_toobig): use %zd.
5180         * ruby.c (set_arg0): move unused variable definition.
5182 Sun Jun  1 12:18:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5184         * insns.def (DEFINE_INSN): subtract of pointers is ptrdiff_t.
5185           this is not int on 64bit system.
5187         * vm_dump.c (control_frame_dump): ditto.
5189         * vm_dump.c (stack_dump_each): ditto.
5191         * vm_dump.c (debug_print_register): ditto.
5193         * vm_dump.c (debug_print_pre): ditto.
5195         * transcode.c (str_transcode): ditto.
5197 Sun Jun  1 10:32:18 2008  Tanaka Akira  <akr@fsij.org>
5199         * test/ruby/envutil.rb (assert_normal_exit): show coredump status.
5201 Sat May 31 23:33:34 2008  Akinori MUSHA  <knu@iDaemons.org>
5203         * README, README.ja: Add a note about default C flags.
5205 Sat May 31 23:02:00 2008  Tanaka Akira  <akr@fsij.org>
5207         * gc.c (count_objects): clear given hash.
5209 Sat May 31 20:28:10 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5211         * test/ruby/test_regexp.rb: add tests.
5213 Sat May 31 19:11:39 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5215         * enc/utf_16{be,le}.c (utf16{be,le}_code_to_mbc):
5216           fix codepoint to bytes.
5218 Sat May 31 18:28:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5220         * suppress warnings with -Wwrite-string.
5222 Sat May 31 18:26:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5224         * array.c (rb_ary_delete_if): should return enumerator if no block
5225           is given.  [ruby-dev:34901]
5227 Sat May 31 15:58:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5229         * Makefile.in, configure.in (warnflags): defaulted to -Wall
5230           -Wno-parentheses with gcc.  [ruby-dev:34810]
5232 Sat May 31 15:17:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5234         * include/ruby/mvm.h: new header file for MVM, and moved rb_vm_t and
5235           rb_thread_t from vm_core.h.
5237 Sat May 31 12:02:23 2008  Tanaka Akira  <akr@fsij.org>
5239         * test/ruby/envutil.rb (assert_normal_exit): show pid when fail.
5241 Fri May 30 23:55:56 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
5243         * test/ruby/test_rubyoptions.rb: add a test of RUBY_DESCRIPTION.
5245 Fri May 30 22:47:17 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5247         * test/ruby/test_regexp.rb: add tests.
5249 Fri May 30 22:40:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5251         * test/ruby/test_signal.rb: add tests to achieve over 80% test
5252           coverage of signal.c.
5254 Fri May 30 22:28:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5256         * signal.c (esignal_signo): fix SignalException#signo which returned
5257           nil absolutely.
5259         * signal.c (esignal_init): always prepend "SIG" to a string that is
5260           returned by SignalException#signm.
5262 Fri May 30 22:17:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5264         * test/ruby/test_argf.rb: rename a conflicting method name.
5266         * test/ruby/test_string.rb: ditto.
5268         * test/ruby/test_io.rb: ditto.
5270 Fri May 30 22:14:37 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5272         * compile.c (defined_expr): fix SEGV by defined?([1]).
5274 Fri May 30 12:18:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5276         * common.mk (prelude.c): simply depends on PREP.  [ruby-dev:34877]
5278         * enc/make_encdb.rb, enc/trans/make_transdb.rb: ditto.
5280 Fri May 30 10:55:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5282         * vm_core.h (struct rb_unblock_callback), thread.c
5283           (set_unblock_function), thread_{pthread,win32}.c (native_sleep):
5284           extracted from struct rb_thread_struct.
5286         * thread.c (reset_unblock_function): not check interrupts at leaving
5287           blocking region.  [ruby-dev:34874]
5289 Fri May 30 06:09:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5291         * enc/utf_8.c: add UTF8-MAC (UTF-8-MAC).
5293 Fri May 30 04:17:13 2008  Akinori MUSHA  <knu@iDaemons.org>
5295         * enum.c (enum_count, count_all_i, Init_Enumerable),
5296           array.c (rb_ary_count): If no argument or block is given, count
5297           the number of all elements.
5299 Fri May 30 03:12:18 2008  Akinori MUSHA  <knu@iDaemons.org>
5301         * ext/openssl/ossl_bn.c (ossl_bn_s_rand, ossl_bn_s_pseudo_rand):
5302           Int should be enough here.
5304 Fri May 30 02:35:00 2008  Akinori MUSHA  <knu@iDaemons.org>
5306         * ext/openssl/ossl_bn.c (ossl_bn_s_rand, ossl_bn_s_pseudo_rand),
5307           ext/openssl/ossl_pkey_dh.c (ossl_dh_s_generate)
5308           (ossl_dh_initialize),
5309           ext/openssl/ossl_pkey_dsa.c (ossl_dsa_s_generate),
5310           ext/openssl/ossl_rand.c (ossl_rand_bytes)
5311           (ossl_rand_pseudo_bytes, ossl_rand_egd_bytes),
5312           ext/openssl/ossl_x509store.c (ossl_x509stctx_set_error): Do not
5313           use FIX2INT() without checking the value type.  Use NUM2INT()
5314           instead; found by akr in [ruby-dev:34890].
5316 Fri May 30 02:08:20 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5318         * signal.c (esignal_init): handle a non-integer argument correctly,
5319           allowing SignalException.new(:INT).
5321 Fri May 30 00:59:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5323         * test/ruby/test_regexp.rb: add tests.
5325 Thu May 29 22:51:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5327         * test/ruby/test_require.rb: add a test for load with wrap flag, to
5328           achieve 100% test coverage of eval_jump.c.
5330 Thu May 29 22:47:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5332         * test/ruby/test_argf.rb: new tests for ARGF, to achieve over 85% test
5333           coverage of file.c.
5335         * test/ruby/test_io.rb: add tests.
5337 Thu May 29 22:41:48 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5339         * io.c (argf_readchar): raise EOFError, synchronizing IO#readchar.
5341 Thu May 29 22:29:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5343         * io.c (argf_external_encoding, argf_internal_encoding): fix SEGV by
5344           ARGF.external_encoding.
5346 Thu May 29 17:52:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5348         * ext/zlib/extconf.rb: search zlib1, and regard mswin32 later than VC6
5349           as WIN32.  [ruby-core:16984]
5351 Wed May 28 18:05:28 2008  Akinori MUSHA  <knu@iDaemons.org>
5353         * array.c (rb_ary_nitems, Init_Array): Axe Array#nitems().
5354           cf. [ruby-dev:34676]-[ruby-dev:34713]
5356 Wed May 28 17:50:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5358         * win32/mkexports.rb (Exports#objdump, Exports#each_line): extracted.
5360 Wed May 28 17:41:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5362         * Makefile.in (MKPREP): appended $(RBCONFIG).
5364         * common.mk (enc.mk, prelude.c): not depend on $(RBCONFIG) on mswin32
5365           to get of compiling twice each time.
5367         * win32/Makefile.sub (prelude.c): not depend on $(PREP).
5369 Wed May 28 17:37:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5371         * win32/mkexports.rb (Exports::Mswin#each_export): speed up.
5373 Wed May 28 16:41:59 2008  Akinori MUSHA  <knu@iDaemons.org>
5375         * array.c (rb_ary_slice_bang): Call rb_ary_modify_check() at the
5376           beginning. [rubyspec]
5378 Wed May 28 16:12:44 2008  Akinori MUSHA  <knu@iDaemons.org>
5380         * lib/webrick/httpservlet/cgihandler.rb (WEBrick::HTTPServlet::CGIHandler#do_GET):
5381           Set the HTTP status code to 302 if a Location header field is
5382           present and the status code is not valid as a client
5383           redirection.  cf. RFC 3875 6.2.3, 6.2.4.
5385 Wed May 28 15:53:52 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5387         * enc/trans/japanese.c (to_SHIFT_JIS_EF_infos): typo.
5389 Wed May 28 15:18:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5391         * lib/singleton.rb (SingletonClassMethods): _load should be public.
5393 Wed May 28 13:30:43 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5395         * enc/trans/japanese.c: add workaround for Unicode to CP932.
5396           U+2015->0x815C, U+2225->0x8161, U+FF0D->0x817C, U+FF3C->0x815F,
5397           U+FF5E->0x8160, U+FFE0->0x8191, U+FFE1->0x8192, U+FFE2->0x81CA
5399 Wed May 28 12:52:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5401         * marshal.c (w_object, marshal_dump, r_object0, marshal_load): search
5402           private methods too.  [ruby-dev:34671]
5404         * object.c (convert_type): ditto.
5406 Wed May 28 08:42:51 2008  Tanaka Akira  <akr@fsij.org>
5408         * numeric.c: "%" is required before PRI?VALUE.
5410 Tue May 27 22:10:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5412         * eval_error.c (error_handle): SystemExit and SignalException throws
5413           TAG_RAISE but not TAG_FATAL.
5415         * thread.c (rb_thread_execute_interrupts): delay interrupts during
5416           raising exceptions.  [ruby-dev:34855]
5418 Tue May 27 20:18:30 2008  Akinori MUSHA  <knu@iDaemons.org>
5420         * array.c (rb_ary_slice_bang): Return an empty array instead of
5421           nil when pos is valid and len is adjusted from a valid value to
5422           zero; caught by RubySpec.
5424 Tue May 27 19:12:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5426         * Makefile.in (MKPREP), common.mk, win32/Makefile.sub (prelude.c): get
5427           rid of depending PREP with nmake.
5429         * common.mk (encs): depends on libruby.
5431 Tue May 27 19:00:22 2008  Akinori MUSHA  <knu@iDaemons.org>
5433         * ext/stringio/stringio.c (strio_each_char, Init_stringio): Add
5434           StringIO#{each_char,chars}.
5435           (Init_stringio): Fix StringIO#bytes.
5437 Tue May 27 17:54:35 2008  Akinori MUSHA  <knu@iDaemons.org>
5439         * ext/stringio/stringio.c (strio_each_byte): Return self instead
5440           of nil as the rdoc says.
5442 Tue May 27 15:36:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5444         * numeric.c (check_int): use PRIxVALUE format specifier.
5446         * numeric.c (check_uint, rb_num2fix, int_chr): ditto.
5448         * numeric.c (num_fdiv): fallback to_f should always return float
5449           result.  should not use #quo that may return rational.
5451         * numeric.c (num_div): should raise ZeroDivisionError.
5453         * numeric.c (fix_divide): ditto.
5455         * test/ruby/test_numeric.rb (TestNumeric::test_divmod): avoid
5456           ZeroDivisionError in tests.
5458 Tue May 27 13:14:53 2008  Akinori MUSHA  <knu@iDaemons.org>
5460         * enum.c (enum_to_a): Pass arguments through to #each().
5461           (enum_sort): Follow the enum_to_a signature change.
5462           (enum_reverse_each): Add #reverse_each().
5464 Tue May 27 13:12:37 2008  Akinori MUSHA  <knu@iDaemons.org>
5466         * io.c (Init_IO): Define ARGF.{lines,bytes,chars}.
5468 Tue May 27 12:06:37 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5470         * file.c (BUFCHECK): wrong condition. [ruby-core:16921]
5472         * file.c (file_expand_buf): shouldn't use buflen for length of string.
5474 Mon May 26 18:24:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5476         * file.c (BUFCHECK): no resize if enough room.
5478         * file.c (file_expand_path): use BUFCHECK.
5480 Mon May 26 17:48:42 2008  Akinori MUSHA  <knu@iDaemons.org>
5482         * enumerator.c (struct enumerator, enumerator_init)
5483           (enumerator_init_copy, enumerator_each): Eliminate iter.
5484           (enumerator_ptr): Do not hardcode the class name.
5485           (enumerator_with_index): Delay variable initialization after
5486           RETURN_ENUMERATOR().
5488 Mon May 26 17:23:49 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5490         * file.c (file_expand_path): add more space for '/'.
5492         * file.c (file_expand_path): should reset address of p after calling
5493           rb_str_resize(). [ruby-dev:34800]
5495 Mon May 26 16:49:55 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5497         * misc/ruby-mode.el (ruby-mode): use run-hooks if run-mode-hook is
5498           not available.  a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>
5499           in [ruby-dev:34853].
5501 Mon May 26 16:41:35 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5503         * file.c (ntfs_tail): filename which starts with '.' is valid.
5505         * file.c (file_expand_path): cygwin symlink support.
5507 Mon May 26 07:15:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5509         * vm_dump.c (rb_vm_bugreport): rb_make_backtrace has no arguments.
5511 Mon May 26 01:17:54 2008  Tanaka Akira  <akr@fsij.org>
5513         * test/ruby/envutil.rb (assert_normal_exit): signal description
5514           refined.
5516 Mon May 26 00:52:52 2008  Akinori MUSHA  <knu@iDaemons.org>
5518         * hash.c (env_each_key, env_each_value, env_reject_bang)
5519           (rb_env_clear, env_replace): Omit duplicated secure level check.
5521 Mon May 26 00:37:16 2008  Akinori MUSHA  <knu@iDaemons.org>
5523         * hash.c (env_each_value): Do not call env_values() twice.
5525 Sun May 25 17:54:36 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5527         * compile.c (iseq_compile): set local_table for
5528           ISEQ_TYPE_DEFINED_GUARD.
5530 Sun May 25 17:52:25 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5532         * compile.c (iseq_build_body): remove side effect from
5533           VM::InstructionSequence.load.
5535 Sun May 25 04:30:45 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5537         * test/ruby/test_modules.rb (remove_json_mixins): change judgment
5538           condition.
5540 Sun May 25 03:54:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5542         * test/ruby/test_modules.rb (test_ancestors, test_included_modules):
5543           ignore json mixins.
5545 Sun May 25 02:37:25 2008  Koichi Sasada  <ko1@atdot.net>
5547         * eval_method.c: renamed from vm_method.c.  "vm_method.c" is included
5548           by "vm.c".
5550         * vm_eval.c: added.  Some codes are moved from "eval.c"
5552         * common.mk: fix for above changes.
5554         * compile.c: make a vm_eval(0)
5556         * eval.c, eval_error.c, eval_intern.h, eval_jump.c, proc.c, vm.c,
5557           id.c, id.h, vm_core.h, vm_dump.c, vm_evalbody.c, vm_insnhelper.c,
5558           blockinlining.c: fix for above changes.  and do some refactoring.
5559           this changes improve rb_yield() performance.
5561 Sat May 24 22:32:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5563         * util.c (ruby_strtod): clear errno at the top of our own
5564           implementation of strtod(3).  [ruby-dev:34834] [ruby-dev:34839]
5566 Sat May 24 15:26:16 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5568         * compile.c (iseq_set_exception_table, NODE_WHILE, NODE_NEXT): remove
5569           special handling that decrements sp in CATCH_TYPE_NEXT for NODE_WHILE.
5571         * vm.c (vm_eval_body), vm_insnhelper.c (vm_throw): remove unused code.
5573 Sat May 24 08:13:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5575         * transcode.c (rb_str_transcode): argc is 1, and argv is &to.
5577 Fri May 23 17:55:11 2008  Akinori MUSHA  <knu@iDaemons.org>
5579         * array.c (rb_ary_slice_bang): Be consistent with Array#slice()
5580           and String#slice!().  Just return nil when a negative length or
5581           out of boundary index is given instead of raising an exception
5582           via internal functions.
5584 Fri May 23 16:44:34 2008  Akinori MUSHA  <knu@iDaemons.org>
5586         * enumerator.c (Init_Enumerator): Override
5587           Enumerable::Enumerator#each_with_index with #with_index.
5589 Fri May 23 12:23:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5591         * vm_core.h (rb_num_t): moved form vm.h.
5593         * tool/instruction.rb (RubyVM::Instruction#sp_increase_c_expr),
5594           tool/instruction.rb (RubyVM::VmBodyGenerator#make_header_operands):
5595           omit unused variables.
5597 Fri May 23 08:47:02 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5599         * error.c (exc_equal): == operator should be transitional.
5600           [ruby-dev:34808]
5602         * error.c (syserr_eqq): === should be able to handle delegated
5603           objects as well.
5605 Fri May 23 06:15:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5607         * iseq.c (rb_iseq_compile_with_option): get rid of segv.
5609 Fri May 23 02:29:14 2008  Koichi Sasada  <ko1@atdot.net>
5611         * insns.def (opt_gt|ge|lt|le): use values directly to compare.
5613 Fri May 23 01:15:09 2008  Koichi Sasada  <ko1@atdot.net>
5615         * eval.c, eval_intern.h, include/ruby/intern.h, include/ruby/ruby.h,
5616           vm.c, vm_core.h, vm_insnhelper.c: remove pointless "const".
5618 Thu May 22 23:45:17 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5620         * compile.c (get_destination_insn, get_next_insn, get_prev_insn):
5621           peephole optimization should not ignore ISEQ_ELEMENT_ADJUST.
5623 Thu May 22 20:20:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5625         * marshal.c (check_dump_arg, check_load_arg): check if reentered.
5626           [ruby-dev:34802]
5628 Thu May 22 20:14:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5630         * iseq.c (iseq_load, iseq_data_to_ary): support
5631           ISEQ_TYPE_DEFINED_GUARD.
5633 Thu May 22 19:01:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5635         * vm.c (vm_get_ruby_level_cfp): moved from eval_intern.h.
5637         * vm.c (sdr, nsdr): define methods only if VMDEBUG is defined.
5639 Thu May 22 17:18:35 2008  Tanaka Akira  <akr@fsij.org>
5641         * array.c (rb_ary_compact_bang): fix reallocation size.
5643 Thu May 22 15:20:20 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5645         * eval_intern.h, vm_core.h, include/ruby/intern.h, include/ruby/ruby.h,
5646           vm.c: need to add const to prototypes, of course.
5648 Thu May 22 13:24:43 2008  Koichi Sasada  <ko1@atdot.net>
5650         * eval.c, vm.c, vm_core.h, vm_insnhelper.c: specify "const".
5652         * vm_opts.h: add a OPT_TOKEN_THREADED_CODE macro.
5654 Thu May 22 12:51:41 2008  Tanaka Akira  <akr@fsij.org>
5656         * insns.def (newhash): fix a variable definition: "const k".
5658 Thu May 22 12:40:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5660         * array.c (flatten): check if reentered.  [ruby-dev:34798]
5662 Thu May 22 11:39:59 2008  Tanaka Akira  <akr@fsij.org>
5664         * test/ruby/envutil.rb (assert_normal_exit): capture stdout and stderr
5665           of the child process.
5667 Thu May 22 08:28:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5669         * array.c (flatten): free memo hash table before raising exception.
5670           [ruby-dev:34789]
5672 Thu May 22 06:30:10 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
5674         * array.c (flatten): fix memory leak.
5676 Thu May 22 06:21:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5678         * ext/nkf/nkf-utf8/nkf.c (nkf_str_caseeql): added.
5680         * ext/nkf/nkf-utf8/nkf.c (nkf_enc_find_index): use nkf_str_caseeql.
5682 Thu May 22 05:45:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5684         * proc.c (proc_dup): should copy safe_level from src proc
5685           properly.  a patch from Keita Yamaguchi
5686           <keita.yamaguchi at gmail.com>
5688 Thu May 22 02:46:08 2008  Shugo Maeda  <shugo@ruby-lang.org>
5690         * lib/net/imap.rb: do not use Thread#raise. [ruby-dev:34739]
5692 Thu May 22 00:30:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5694         * test/ruby/test_require.rb: new tests for library requiring, to
5695           achieve over 90% test coverage of dln.c.
5697         * test/ruby/test_class.rb: add tests to achieve over 90% test coverage
5698           of class.c.
5700         * test/ruby/test_module.rb: ditto.
5702 Thu May 22 00:15:44 2008  Koichi Sasada  <ko1@atdot.net>
5704         * insns.def, vm_insnhelper.c: specify "const".
5706 Wed May 21 23:20:21 2008  Koichi Sasada  <ko1@atdot.net>
5708         * bootstraptest/test_eval.rb: fix syntax.
5710 Wed May 21 17:46:17 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5712         * ext/nkf/nkf-utf8/nkf.c (nkf_enc_find_index):
5713           use strcasecmp. [ruby-dev:34787]
5715 Wed May 21 16:48:22 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5717         * array.c (rb_ary_compact_bang): avoid forceful realloc.
5719 Wed May 21 07:42:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5721         * string.c (rb_usascii_str_new): use rb_str_new.
5723         * string.c (rb_enc_str_new): ditto.
5725         * string.c (rb_usascii_str_new2): use rb_str_new2.
5727 Wed May 21 07:22:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5729         * encoding.c, include/ruby/encoding.h
5730           (rb_enc_associate, rb_enc_associate_index):
5731           returns obj. [ruby-dev:34778]
5733 Wed May 21 04:20:20 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5735         * encoding.c (rb_ascii8bit_encoding): use ENCINDEX_ASCII.
5737         * encoding.c, include/ruby/encoding.h (rb_ascii8bit_encindex):
5738           added.
5740         * encoding.c (rb_locale_encoding): use rb_usascii_encoding().
5742 Wed May 21 01:45:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5744         * test/ruby/test_file_exhaustive.rb (setup): workaround for Windows
5745           Vista.
5747         * test/ruby/envutil.rb (rubyexec): now Open3.open3 is supported on
5748           Windows.
5750         * test/ruby/test_process.rb: use ``||'' instead of ``;'' because
5751           cmd.exe not support it.
5753 Wed May 21 01:28:47 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5755         * transcode.c, include/ruby/encoding.h (rb_str_transcode):
5756           C API of encoding conversion for Ruby object.
5757           VALUE rb_str_transcode(VALUE str, VALUE to).
5759         * transcode.c (str_encode, str_encode_bang):
5760           rename from rb_tr_transcode or rb_str_transcode_bang.
5762 Tue May 20 23:26:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5764         * test/ruby/test_array.rb: fix tests for 64bit CPU.
5766 Tue May 20 20:59:56 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5768         * ext/nkf/nkf-utf8/nkf.c (rb_nkf_convert) (nkf_enc_without_bom):
5769           reverted. nkf-utf8/nkf.c should be independent of ruby.
5771         * ext/nkf/nkf.c (options):
5772           moved from nkf-utf8/nkf.c.
5773           override nkf's original settings for Unicode BOM.
5775 Tue May 20 13:20:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5777         * ext/nkf/nkf.c (rb_nkf_convert), ext/nkf/nkf-utf8/nkf.c
5778           (nkf_enc_without_bom): BOM is not a part of encodings.
5780         * ext/nkf/nkf.c (Init_nkf), ext/nkf/nkf-utf8/nkf.c (options):
5781           UTF-{16,32} without endian have no sense.
5783 Tue May 20 12:13:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5785         * ruby.c (proc_options, process_options): --dump option.
5787 Tue May 20 11:36:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5789         * include/ruby/ruby.h (PRI[diouxX]VALUE): printf format for VALUE.
5791         * gc.c (assign_heap_slot): suppress a warning.
5793 Tue May 20 03:42:43 2008  Koichi Sasada  <ko1@atdot.net>
5795         * eval.c, vm_insnhelper.c: fix cref in instance_eval
5796           and cvar_base search protocol.
5798         * bootstraptest/test_knownbug.rb, test_eval.rb: move solved test
5799           and add new tests.
5801         * test/ruby/test_eval.rb: fix tests for spec.
5803 Tue May 20 01:43:44 2008  Koichi Sasada  <ko1@atdot.net>
5805         * bootstraptest/test_knownbug.rb: fix a test.
5806           "block_given?" returns true if "yield" can be used.
5808 Tue May 20 01:07:19 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5810         * parse.y (assignable_gen): when "self = 1" was evaluated, unnecessary
5811           error message was output, which might cause null pointer access.
5813 Tue May 20 08:38:56 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5815         * string.c (rb_enc_strlen_cr): need to set ENC_CODERANGE_7BIT if
5816           search_nonascii() fails.    [ruby-dev:34751]
5818         * string.c (rb_str_reverse): preserve coderange info if the
5819           receiver is 7bit string.
5821         * string.c (rb_str_reverse_bang): ditto.
5823         * string.c (rb_str_reverse_bang): should have called
5824           single_byte_optimizable before rb_str_modify() that clears
5825           coderange info.
5827         * string.c (tr_trans): handle single bytes more eagerly.
5829 Mon May 19 23:32:12 2008  Koichi Sasada  <ko1@atdot.net>
5831         * vm.c (invoke_block_from_c): fix call flow.
5833 Mon May 19 23:19:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5835         * regexec.c (slow_search): check the case when the length is 1.
5836           The behavior of memcmp is undefined if the third argument is 0.
5838 Mon May 19 21:07:48 2008  Koichi Sasada  <ko1@atdot.net>
5840         * thread_pthread.c (native_thread_apply_priority):
5841           fix argument range check.  [ruby-dev:33124]
5843 Mon May 19 18:22:35 2008  Akinori MUSHA  <knu@iDaemons.org>
5845         * ext/openssl/ossl_pkcs5.c (ossl_pkcs5_pbkdf2_hmac): Fix the type
5846           of md; pointed out by Takahiro Kambe <taca at back-street.net>
5847           in [ruby-dev:34748].
5849 Mon May 19 17:23:55 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5851         * regparse.c (PINC): use optimized enclen() instead of
5852           ONIGENC_MBC_ENC_LEN().
5854         * regparse.c (PFETCH): ditto.
5856         * regparse.c (PFETCH): small optimization.
5858         * regexec.c (slow_search): single byte encoding optimization.
5860         * regenc.h (enclen): avoid calling function when encoding's
5861           min_len == max_len.
5863         * re.c (rb_reg_regsub): rb_enc_ascget() optimization for single
5864           byte encoding.
5866         * re.c (rb_reg_search): avoid allocating new re_registers if we
5867           already have MatchData.
5869         * re.c (match_init_copy): avoid unnecessary onig_region_free()
5870           before onig_region_copy.
5872         * encoding.c (rb_enc_get_index): remove implicit enc_capable check
5873           each time.
5875         * encoding.c (rb_enc_set_index): ditto.
5877         * encoding.c (enc_compatible_p): small refactoring.
5879         * include/ruby/encoding.h (rb_enc_dummy_p): inline
5880           rb_enc_dummy_p() and export related code.
5882 Mon May 19 14:32:03 2008  Koichi Sasada  <ko1@atdot.net>
5884         * version.h: fix strange change by version.h update tool.
5886 Mon May 19 14:18:13 2008  Koichi Sasada  <ko1@atdot.net>
5888         * bootstraptest/test_knownbug.rb: move solved tests.
5890         * bootstraptest/test_eval.rb, test_literal.rb, test_syntax.rb,
5891           test_thread.rb: ditto.
5893         * test/ruby/test_m17n.rb, test_proc.rb, test_sprintf.rb,
5894           test_string.rb, test/ruby/test_struct.rb: ditto.
5896 Mon May 19 13:23:03 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5898         * process.c (rb_spawn_internal): set last_status when status == -1
5899           because there is no path to set it on win32. this patch is derived
5900           from [ruby-core:16787], submitted by Luis Lavena <luislavena at
5901           gmail.com>
5903 Mon May 19 11:32:47 2008  Koichi Sasada  <ko1@atdot.net>
5905         * vm.c, insns.def, eval.c, vm_insnhelper.c: fix CREF handling.
5906           VM value stack frame of block contains cref information.
5907          (dfp[-1] points CREF)
5909         * compile.c, eval_intern.h, eval_method.c, load.c, proc.c,
5910           vm_dump.h, vm_core.h: ditto.
5912         * include/ruby/ruby.h, gc.c: remove T_VALUES because of above
5913           changes.
5915         * bootstraptest/test_eval.rb, test_knownbug.rb: move solved test.
5917 Sun May 18 22:26:51 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
5919         * lib/webrick/httpservlet/filehandler.rb: should normalize path
5920           name in path_info to prevent script disclosure vulnerability on
5921           DOSISH filesystems. (fix: CVE-2008-1891)
5922           Note: NTFS/FAT filesystem should not be published by the platforms
5923           other than Windows. Pathname interpretation (including short
5924           filename) is less than perfect.
5926         * lib/webrick/httpservlet/abstract.rb
5927           (WEBrick::HTTPServlet::AbstractServlet#redirect_to_directory_uri):
5928           should escape the value of Location: header.
5930         * lib/webrick/httpservlet/cgi_runner.rb: accept interpreter
5931           command line arguments.
5933 Sun May 18 02:54:46 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5935         * pack.c (pack_pack): check errno to detect error of ruby_strtoul.
5937         * pack.c (pack_unpack): ditto.
5939         * test/ruby/test_pack.rb: add a test for above.
5941 Sat May 17 23:53:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5943         * file.c (file_expand_path): fix for short file name on Cygwin.
5945 Sat May 17 18:03:52 2008  Yuki Sonoda (Yugui) <yugui@yugui.jp>
5947         * vm.c (Init_VM): removed the definition of Thread#initialize,
5948           which is overwritten in Init_Thread and is never used.
5950 Sat May 17 14:01:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5952         * array.c (rb_ary_sort_bang): should not free shared pointer, and set
5953           shared.  [ruby-dev:34732]
5955 Sat May 17 12:34:54 2008  Yuki Sonoda (Yugui) <yugui@yugui.jp>
5957         * thread_pthread.c (Init_native_thread): Kernel#.sleep used never to
5958           sleep on Mac OS X. Reported by arton <artonx AT yahoo.co.jp>.
5960         * thread_pthread.c (native_sleep): added error checks.
5962 Sat May 17 11:29:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5964         * file.c (rb_file_s_extname): first dot is not an extension name.
5966 Sat May 17 03:21:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5968         * array.c (rb_ary_sort_bang): stop memory leak.  [ruby-dev:34726]
5970         * re.c (rb_reg_search): need to free allocated buffer in re_register.
5972         * regexec.c (onig_region_new): more pedantic malloc check.
5974         * regexec.c (onig_region_resize): ditto.
5976         * regexec.c (STATE_CHECK_BUFF_INIT): ditto.
5978         * regexec.c (onig_region_copy): use onig_region_resize.
5980 Fri May 16 12:48:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5982         * math.c (to_flo): rb_Float() accepts even strings for input.
5984         * complex.c (nucomp_to_f): fix wrong message.
5986         * complex.c (nucomp_to_r): ditto.
5988         * object.c (rb_Float): do not check NaN for error.  NaN is a part
5989           of valid float values.
5991 Thu May 15 23:36:09 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5993         * test/ruby/test_string.rb: add tests to achieve over 90% test
5994           coverage of string.c.
5996         * test/ruby/test_m17n.rb: ditto.
5998         * test/ruby/test_symbol.rb: ditto.
6000         * test/ruby/test_pack.rb: ditto.
6002 Thu May 15 23:01:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6004         * string.c (tr_find): String#delete returned wrong result when multiple
6005           utf-8 arguments are passed.
6007         * test/ruby/test_m17n.rb (test_delete): add a test for above.
6009 Thu May 15 22:37:56 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6011         * parse.y (ripper_warningS): now used.
6013 Thu May 15 15:33:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6015         * file.c (file_expand_path): support for alternative data stream
6016           and ignored trailing garbage of NTFS.
6018         * file.c (rb_file_s_basename): ditto.
6020         * file.c (rb_file_s_extname): ditto.
6022 Thu May 15 13:43:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6024         * object.c (rb_cstr_to_dbl): no need for forceful warning when
6025           converting to float.  overflow is a nature of float values.
6027         * parse.y (parser_yylex): ditto.
6029 Thu May 15 13:23:20 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6031         * re.c (rb_reg_prepare_enc): error condition was updated for non
6032           ASCII compatible strings.
6034 Thu May 15 12:19:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6036         * ext/openssl/openssl_missing.c (HMAC_CTX_copy): adopted
6037           prototype change in openssl bundled with newer OpenBSD.
6038           a patch from Takahiro Kambe <taca at back-street.net> in
6039           [ruby-dev:34691].
6041 Wed May 14 22:09:25 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6043         * ChangeLog: fix typo.
6045 Wed May 14 21:49:14 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6047         * test/ruby/test_object.rb: new tests to achieve over 90% test
6048           coverage of object.c, eval.c and eval_method.c.
6050         * test/ruby/test_module.rb: ditto.
6052         * test/ruby/test_trace.rb: ditto.
6054         * test/ruby/test_integer.rb: ditto.
6056         * test/ruby/test_float.rb: ditto.
6058         * test/ruby/test_method.rb: ditto.
6060         * test/ruby/test_variable.rb: ditto.
6062         * test/ruby/test_eval.rb: ditto.
6064         * test/ruby/test_exception.rb: ditto.
6066         * test/ruby/test_class.rb: ditto.
6068 Wed May 14 12:46:37 2008  Koichi Sasada  <ko1@atdot.net>
6070         * iseq.c (insn_operand_intern): remove Qundef related code.
6072 Wed May 14 12:42:36 2008  Akinori MUSHA  <knu@iDaemons.org>
6074         * array.c (rb_ary_count): Override Enumerable#count for better
6075           performance.
6077 Wed May 14 11:29:06 2008  Koichi Sasada  <ko1@atdot.net>
6079         * insns.def: add a "putcbase" instruction.
6081         * compile.c, insns.def: fix to use putcbase instruction for
6082           class search.  Qundef should not be used.
6084 Wed May 14 07:49:35 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6086         * eval.c (rb_call0): defer calling of rb_frame_self() until it
6087           become really necessary.
6089         * eval.c (rb_call): ditto.
6091 Wed May 14 00:55:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6093         * test/ruby/test_io_m17n.rb: remove a duplicative method.
6095         * test/ruby/test_utf16.rb: rename a conflicting method name.
6097         * test/ruby/test_array.rb: ditto.
6099         * test/ruby/test_file_exhaustive.rb: ditto.
6101         * test/ruby/test_hash.rb: ditto.
6103         * test/ruby/test_env.rb: ditto.
6105         * test/ruby/test_fixnum.rb: ditto.
6107         * test/ruby/test_rational.rb: ditto.
6109 Wed May 14 00:45:58 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6111         * eval_method.c (rb_add_method): fix check for warning when
6112           Object#initialize is redefined. (same as 1.8)
6114 Tue May 13 23:32:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6116         * enum.c (enum_yield): use rb_yield_values2.
6118         * enum.c (DEFINE_ENUMFUNCS): macro to define enumerator and yielding
6119           functions.
6121         * enum.c (enum_all_func, enum_any_func, enum_one_func,
6122           enum_none_func): reduced duplicate code.
6124 Tue May 13 15:09:38 2008  Akinori MUSHA  <knu@iDaemons.org>
6126         * enumerator.c: Update rdoc.
6127           (enumerator_initialize): Discourage the use.
6128           (enum_each_slice, enum_each_cons, enumerator_each)
6129           (enumerator_with_index): Add a note about a call without a block.
6131 Tue May 13 08:25:31 2008  Tanaka Akira  <akr@fsij.org>
6133         * io.c (rb_f_gets): re-enable rdoc.
6134           (rb_f_readline): ditto.
6135           (rb_f_readlines): ditto.
6137 Tue May 13 07:56:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6139         * string.c (rb_str_cat): fixed buffer overrun reported by
6140           Christopher Thompson <cthompson at nexopia.com> in [ruby-core:16746]
6142 Mon May 12 23:37:57 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6144         * vm.c (collect_local_variables_in_env): remove unnecessary check
6145           which causes: x=1;proc{local_variables}.call #=> []
6147         * test/ruby/test_variable.rb: add a test for above.
6149 Mon May 12 23:05:24 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6151         * process.c, include/ruby/intern.h (rb_run_exec_options): externed.
6153         * process.c (save_redirect_fd, save_env_i, save_env, run_exec_dup2,
6154           run_exec_open, run_exec_pgroup, run_exec_rlimit, rb_run_exec_options):
6155           save parent's process environments.
6157         * process.c (rb_spawn_internal): remove calling run_exec_options()
6158           because cannot restore after spawn.
6160         * io.c (pipe_open): ditto.
6162         * test/ruby/test_process.rb (test_execopts_env): upcase environment
6163           variable name for case insensitive platforms.
6165         * win32/win32.c (init_env): set USER environment variable only when
6166           USERNAME is available.
6168 Mon May 12 22:23:01 2008  Tanaka Akira  <akr@fsij.org>
6170         * lib/date.rb (once): use Object#object_id instead of Symbol#to_i.
6172 Mon May 12 21:34:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6174         * test/ruby/envutil.rb (rubybin): return expanded rubyexe instead of
6175           expanded ruby if available.
6177 Mon May 12 20:19:55 2008  Akinori MUSHA  <knu@iDaemons.org>
6179         * enum.c (grep_i): Be aware of multiple values;
6180           fix [ruby-dev:34653].
6181           (grep_iter_i): Ditto.
6182           (count_i): Ditto.
6183           (find_i): Ditto.
6184           (find_index_i): Ditto.
6185           (find_all_i): Ditto.
6186           (reject_i): Ditto.
6187           (inject_i): Ditto.
6188           (inject_op_i): Ditto.
6189           (partition_i): Ditto.
6190           (group_by_i): Ditto.
6191           (first_i): Ditto.
6192           (sort_by_i): Ditto.
6193           (all_i): Ditto.
6194           (all_iter_i): Ditto.
6195           (any_i): Ditto.
6196           (any_iter_i): Ditto.
6197           (one_i): Ditto.
6198           (one_iter_i): Ditto.
6199           (none_i): Ditto.
6200           (none_iter_i): Ditto.
6201           (min_i): Ditto.
6202           (min_ii): Ditto.
6203           (max_i): Ditto.
6204           (max_ii): Ditto.
6205           (minmax_i): Ditto.
6206           (minmax_ii): Ditto.
6207           (min_by_i): Ditto.
6208           (max_by_i): Ditto.
6209           (minmax_by_i): Ditto.
6210           (member_i): Ditto.
6211           (take_i): Ditto.
6212           (take_while_i): Ditto.
6213           (drop_i): Ditto.
6214           (drop_while_i): Ditto.
6215           (cycle_i): Ditto.
6217         * enum.c (each_with_index): Update rdoc.  each_with_index() takes
6218           arguments that are passed through to each(), and a hash preserves
6219           key order.
6221 Mon May 12 19:05:24 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6223         * process.c (rb_spawn_internal): remove calling run_exec_options()
6224           because cannot restore after spawn. we'll fix this later.
6226 Mon May 12 18:16:44 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6228         * process.c (rb_spawn_internal): need to call run_exec_options() before
6229           spawn if the platform doesn't have fork. [ruby-dev:34647]
6231 Mon May 12 15:20:02 2008  Tanaka Akira  <akr@fsij.org>
6233         * gc.c (ruby_vm_xmalloc): increase malloc_increase only if malloc
6234           succeeds.  failed malloc size can be huge.  it may increase
6235           malloc_limit too big which cause less GC and memory full.
6236           (ruby_vm_xrealloc): ditto.
6237           (rb_objspace): make params.limit and params.increase size_t.
6239 Mon May 12 15:04:58 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6241         * re.c (rb_reg_prepare_re): made non static with small refactoring.
6243         * ext/strscan/strscan.c (strscan_do_scan): should adjust encoding
6244           before regex searching.
6246 Mon May 12 13:57:19 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6248         * eval.c (is_defined): add NODE_OP_ASGN_{OR,AND}.  "defined?(a||=1)"
6249           should not operate assignment.  [ruby-dev:34645]
6251 Mon May 12 13:29:26 2008  Tanaka Akira  <akr@fsij.org>
6253         * bignum.c (bigzero_p): check from MSB to LSB.  [ruby-dev:34649]
6255 Mon May 12 12:32:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6257         * common.mk (RUBYOPT): affected BASERUBY too.  [ruby-talk:301514]
6259 Mon May 12 12:27:55 2008  Tanaka Akira  <akr@fsij.org>
6261         * gc.c (assign_heap_slot): fix condition for number of objects in
6262           a heap.
6264 Mon May 12 12:24:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6266         * string.c (sym_to_i): really removed.  [ruby-dev:34641]
6268 Mon May 12 11:15:55 2008  Yuki Sonoda (Yugui) <yugui@yugui.jp>
6270         * gc.c (assign_heap_slot):  put the binary search routine in order.
6272 Mon May 12 10:52:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6274         * ruby.c (ruby_init_gems), gem_prelude.rb: check if Gem is defined
6275           instead of Gem::Enable.
6277         * gem_prelude.rb (load_full_rubygems_library, const_missing): prevent
6278           infinite recursion.  [ruby-dev:34539]
6280 Sun May 11 23:19:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6282         * enum.c (all_iter_i, any_iter_i): reduced duplicated code.
6284 Sun May 11 22:54:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6286         * bootstraptest/runner.rb (main): leave -I options for purelib.rb
6287           untouched.
6289         * bootstraptest/runner.rb (main): handle relative path -r options.
6291 Sun May 11 19:04:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6293         * test/ruby/test_thread.rb: kill and join temporal threads that are
6294           created in each test.
6296 Sun May 11 17:58:45 2008  Tanaka Akira  <akr@fsij.org>
6298         * test/ruby/test_process.rb (TestProcess#with_stdin): defined.
6299           (TestProcess#test_argv0_noarg): don't use redirect_fds.
6300           [ruby-dev:34647]
6302 Sun May 11 17:57:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6304         * configure.in (MINIRUBY): should not include extension library path.
6306 Sun May 11 14:40:36 2008  Tanaka Akira  <akr@fsij.org>
6308         * include/ruby/ruby.h (SIZET2NUM): new macro.
6309           (NUM2SIZET): new macro.
6311         * gc.c (struct rb_objspace): use size_t for increment, length and
6312           used for 64bit.
6313           (allocate_heaps): ditto.
6314           (assign_heap_slot): ditto.
6315           (set_heaps_increment): ditto.
6316           (gc_mark_all): ditto.
6317           (is_pointer_to_heap): ditto.
6318           (free_unused_heaps): ditto.
6319           (gc_sweep): ditto.
6320           (os_obj_of): ditto.
6321           (rb_gc_call_finalizer_at_exit): ditto.
6322           (count_objects): ditto.
6324 Sun May 11 13:14:09 2008  Tanaka Akira  <akr@fsij.org>
6326         * thread.c (thread_cleanup_func_before_exec): extracted from
6327           thread_cleanup_func not to touch pthread data.
6328           pthread_cond_destroy in forked process may cause deadlock on
6329           Debian GNU/Linux Etch on x86, x86-64 and IA64.
6330           this doesn't cause resource leak because the process will exec soon.
6331           (terminate_atfork_before_exec_i): defined.
6332           (rb_thread_atfork_before_exec): defined.
6334         * include/ruby/intern.h (rb_thread_atfork_before_exec): declared.
6336         * process.c (rb_exec_atfork): call rb_thread_atfork_before_exec
6337           instead of rb_thread_atfork.
6339         * io.c (popen_exec): call rb_thread_atfork_before_exec instead of
6340           rb_thread_atfork.
6342 Sat May 10 22:14:03 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6344         * string.c (tr_trans): single '^' does not mean negation.
6345           [ruby-dev:34632]
6347         * string.c (tr_trans): should check src size, not str size.
6348           [ruby-dev:34637]
6350         * string.c (tr_trans): should not turn on modify flag if no
6351           modification happens.  [ruby-dev:34631]
6353 Sat May 10 18:11:18 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6355         * string.c (rb_str_each_line): zero length record separator should
6356           split a string into paragraphs.  [ruby-dev:34586]
6358         * string.c (rb_str_each_line): RDoc updated.
6360 Sat May 10 11:36:20 2008  Tanaka Akira  <akr@fsij.org>
6362         * vm.c (env_mark): mark env->block.self.  prevent SEGV when GC occur
6363           in prepare_iseq_build with gcc version 3.4.6 [FreeBSD] 20060305 on
6364           FreeBSD/amd64.
6366 Fri May  9 19:16:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6368         * thread.c (timeofday): use monotonic clock.  based on a patch
6369           from zimbatm <zimbatm at oree.ch> in [ruby-core:16627].
6371 Fri May  9 07:47:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6373         * cont.c (cont_restore_0): dynamic stack direction code should be
6374           consistent with static one.  [ruby-talk:301152]
6376 Fri May  9 00:03:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6378         * parse.y (arg): operator assignment "a += b rescue c" should be
6379           parsed as "a += (b rescue c)" just like normal assignment.
6380           [ruby-talk:301000]
6382 Thu May  8 18:14:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6384         * bignum.c (rb_big_and): bit-wise operation should not take float
6385           values.  [ruby-dev:34612]
6387         * bignum.c (rb_big_or): ditto.
6389         * bignum.c (rb_big_xor): ditto.
6391 Thu May  8 17:44:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6393         * common.mk, ext/extmk.rb, lib/mkmf.rb: use absolute path for RUBYOPT.
6395         * file.c (rb_find_file_ext): guard load_path from GC.
6396           gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21) optimizes
6397           load_path by holding only RARRAY_LEN(load_path) and
6398           RARRAY_PTR(load_path) in registers on IA64 GNU/Linux Etch.
6400 Thu May  8 16:41:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6402         * configure.in (MINIRUBY), common.mk (RUBYOPT): add purelib.rb.
6403           [ruby-core:16642]
6405 Thu May  8 16:00:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6407         * parse.y (parser_yylex): ! and ? at the bottom are no longer part
6408           of valid symbol names.  [ruby-dev:34590]
6410 Thu May  8 15:36:11 2008  Tanaka Akira  <akr@fsij.org>
6412         * thread.c (rb_gc_save_machine_context): call FLUSH_REGISTER_WINDOWS
6413           to mark the register stack from GC on another thread.
6415 Thu May  8 15:14:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6417         * array.c (rb_ary_sort_bang): freeze temporary array.
6419 Thu May  8 13:19:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6421         * vm.c (rb_thread_mark): mark stat_insn_usage only when ptr is not
6422           null.
6424 Thu May  8 10:44:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6426         * array.c (sort_reentered): reentered check may be called from
6427           Array#sort.
6429 Thu May  8 09:51:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6431         * array.c (sort_1, sort_2): check for reentered and if elements are
6432           accessible.  [ruby-core:16679]
6434 Thu May  8 06:43:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6436         * dln.c (dln_find_exe_r, dln_find_file_r): reentrant versions.
6438         * file.c (rb_find_file_ext, rb_find_file), process.c (proc_exec_v),
6439           (rb_proc_exec, proc_spawn_v, proc_spawn), ruby.c (process_options):
6440           use reentrant versions.
6442 Thu May  8 06:27:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6444         * thread.c (rb_thread_key_p): thread local storage stores ID.
6446 Thu May  8 01:10:03 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6448         * string.c (tr_trans): should squeeze properly.  [ruby-dev:34587]
6450         * string.c (tr_trans): had a bug in treating multi-byte character
6451           replacement.
6453         * string.c (rb_str_delete_bang): need not to do anything for empty
6454           strings.
6456         * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_delete): add
6457           test for empty receiver.
6459 Wed May  7 20:19:18 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6461         * ruby.c (process_options, ruby_set_argv): set encoding of rb_argv
6462           after Init_prelude() because cannot load encoding extensions before
6463           it.
6465 Wed May  7 20:00:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6467         * numeric.c (bit_coerce): float should not be a valid operand of
6468           bitwise operations.  [ruby-dev:34583]
6470 Wed May  7 19:35:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6472         * thread.c (rb_thread_key_p): should always convert symbol to ID.
6473           [ruby-dev:34588]
6475 Wed May  7 19:30:34 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6477         * numeric.c (fix_divide): float division should floor() before
6478           rounding into integer.  [ruby-dev:34584]
6480 Wed May  7 18:02:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6482         * string.c (sym_to_i): remove obsolete method.  preparation for
6483           symbol GC.
6485         * numeric.c (fix_to_sym): ditto.
6487         * numeric.c (fix_id2name): ditto.
6489 Wed May  7 17:43:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6491         * io.c (io_puts_ary): check recursion first.  [ruby-dev:34580]
6493 Wed May  7 17:41:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6495         * vm.c (vm_eval_body): initialize retval.  [ruby-dev:34576]
6497 Wed May  7 13:02:56 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6499         * bignum.c (rb_big_fdiv): flo.fdiv(NaN) should result NaN.
6501         * numeric.c (num_quo): renamed and moved from bignum.c.
6502           [ruby-dev:34582]
6504         * bignum.c (rb_big_fdiv): update RDoc description
6506         * rational.c (nurat_s_new_m): small refactoring.
6508         * bignum.c (rb_big2dbl): no need for forceful warning when
6509           converting to float.  overflow is a nature of float values.
6511 Wed May  7 00:54:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6513         * ext/zlib/zlib.c (gzreader_gets): may cause infinite loop.
6514           a patch from Kouya <kouyataifu4 at gmail.com> in
6515           [ruby-reference-manual:762].
6517 Tue May  6 02:08:18 2008  Tanaka Akira  <akr@fsij.org>
6519         * test/io/nonblock/test_flush.rb: don't set Thread.abort_on_exception.
6521         * test/net/imap/test_imap.rb: ensure disconnecting imap to terminate
6522           receiver thread.
6524 Tue May  6 00:29:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6526         * iseq.c (insn_operand_intern): should handle Qundef embedded in
6527           operand.  [ruby-core:16656]
6529 Tue May  6 00:00:02 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6531         * compile.c (iseq_compile_each): should call compile_cpath() for
6532           modules as well.  [ruby-dev:34585]
6534         * insns.def (defineclass): add undef handling.
6536 Mon May  5 23:49:40 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6538         * insns.def (defineclass): was using wrong variable.  [ruby-dev:34592]
6540 Mon May  5 20:07:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6542         * io.c (io_fflush): IO#flush problem within threads.  a patch from
6543           <s.wanabe at gmail.com> in [ruby-dev:34595].
6545 Mon May  5 19:58:44 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6547         * compile.c (defined_expr): protect some expression from
6548           segmentation fault.  a patch from wanabe <s.wanabe at gmail.com>
6549           in [ruby-dev:34593].
6551 Mon May  5 19:49:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6553         * struct.c (rb_struct_s_def): Struct.new(0) should not SEGV.
6554           based on the patch from wanabe <s.wanabe at gmail.com> in
6555           [ruby-dev:34594].
6557         * struct.c (make_struct): call to_str on name object.
6559 Mon May  5 17:17:40 2008  Tanaka Akira  <akr@fsij.org>
6561         * eval.c (ruby_cleanup): wrap ruby_finalize_0 by SAVE_ROOT_JMPBUF to
6562           avoid SEGV by at_exit { Fiber.new{}.resume } on IA64.
6564 Mon May  5 12:12:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6566         * array.c (rb_ary_slice_bang): should adjust length before making
6567           sub-array.
6569 Mon May  5 11:36:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6571         * array.c (rb_ary_dup): should dupe corresponding information.
6572           [ruby-dev:34581]
6574 Mon May  5 11:13:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6576         * compile.c (compile_cpath): use Qundef to denote cbase lookup.
6578         * insns.def (defineclass): Qundef is passed for cbase.
6580         * insns.def (setconstant): ditto.
6582         * vm_insnhelper.c (vm_check_if_namespace): use rb_inspect()
6583           instead of rb_obj_as_string() for better description.
6585 Mon May  5 02:10:23 2008  Tanaka Akira  <akr@fsij.org>
6587         * gc.c (set_heaps_increment): fix memory allocation strategy by
6588           determining heaps_inc from heaps_used, not objects_delta.
6589           (struct rb_objspace): delta removed.  change increment, length and
6590           used to long for LP64.
6591           (objects_delta): removed.
6592           (allocate_heaps): add next_heaps_length argument.
6593           (init_heap): renamed from add_heap.
6594           (garbage_collect): use heaps_increment in dont_gc.
6596 Sun May  4 21:09:32 2008  Tanaka Akira  <akr@fsij.org>
6598         * lib/getoptlong.rb: use $stderr instead of $deferr.
6600 Sun May  4 16:04:28 2008  Tanaka Akira  <akr@fsij.org>
6602         * time.c (obj2nsec): fix string argument.
6604 Sun May  4 14:29:14 2008  Tanaka Akira  <akr@fsij.org>
6606         * eval.c (rb_obj_respond_to): check the result of respond_to? method
6607           by RTEST.
6609 Sun May  4 12:57:58 2008  Tanaka Akira  <akr@fsij.org>
6611         * string.c (rb_str_each_line): return original string.
6613 Sat May  3 20:57:06 2008  Tanaka Akira  <akr@fsij.org>
6615         * test/ruby/envutil.rb (Test::Unit::Assertions#assert_normal_exit):
6616           new method.
6618 Sat May  3 18:10:54 2008  Tanaka Akira  <akr@fsij.org>
6620         * time.c (time_timespec): raise TypeError for nil and other objects
6621           which has no divmod method.
6623 Fri May  2 23:59:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6625         * io.c (internal_read_func, internal_write_func): split from
6626           internal_io_func.
6628 Fri May  2 23:55:15 2008  Tanaka Akira  <akr@fsij.org>
6630         * variable.c (rb_define_hooked_variable): guard *var from GC to
6631           prevent collecting argf under RUBY_DEBUG=gc_stress.
6633 Fri May  2 17:29:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6635         * range.c (range_step): call to_int if step is not a numeric
6636           value.  [ruby-dev:34575]
6638 Fri May  2 16:10:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6640         * range.c (range_step): do not forcefully convert steps into
6641           integers.  [ruby-dev:34571]
6643 Fri May  2 14:52:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6645         * misc/ruby-mode.el: move fontifying code from hook.  a patch from
6646           Phil Hagelberg <phil at hagelb.org> in [ruby-core:16636].
6648 Fri May  2 14:10:17 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6650         * range.c (range_step): step may be bignum.
6652 Fri May  2 13:52:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6654         * re.c (Init_Regexp): remove MatchData#select.  [ruby-dev:34563]
6656 Thu May  1 23:59:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6658         * bignum.c (rb_big_divide), numeric.c (fix_divide): check for result
6659           domain.  [ruby-dev:34559]
6661 Thu May  1 23:57:06 2008  James Edward Gray II  <jeg2@ruby-lang.org>
6663         * lib/net/telnet.rb:  This patch from Brian Candler adds a FailEOF mode which
6664           can be activated to have net/telnet raise EOFError exceptions when the
6665           remote connection is closed.  The default behavior remains unchanged though.
6667 Thu May  1 23:43:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6669         * range.c (range_step): check if step can be converted to an integer.
6670           [ruby-dev:34558]
6672         * range.c (range_step): allow float step bigger than zero but less
6673           than one.  [ruby-dev:34557]
6675 Thu May  1 23:20:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6677         * bignum.c (rb_big_divide): return an integer for idiv.
6678           [ruby-dev:34553]
6680 Thu May  1 20:47:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6682         * hash.c (rb_hash_s_create): should access converted hash value.
6683           [ruby-dev:34555]
6685 Thu May  1 20:31:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6687         * test/ruby/test_parse.rb (TestParse::test_void_expr_stmts_value):
6688           shut up warning.
6690         * rational.c (nurat_to_f): no need for forceful warning when
6691           converting to float.  overflow is a nature of float values.
6693 Thu May  1 16:10:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6695         * hash.c (env_delete_if): return enumerator if no block given.
6696           [ruby-dev:34554]
6698 Wed Apr 30 21:36:40 2008  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
6700         * lib/erb.rb (url_encode): [ruby-dev:34497] ERB::Util#url_encode
6701           bug fix. Reported by rubikitch.
6703         * test/erb/test_erb.rb: ditto
6705 Wed Apr 30 20:11:36 2008  James Edward Gray II  <jeg2@ruby-lang.org>
6707         * lib/net/telnet.rb:  Fixing a bug where line endings would not be properly
6708           escaped when the two character ending was broken up into separate TCP
6709           packets.  Issue reported and patched by Brian Candler.
6711 Wed Apr 30 18:03:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6713         * load.c (rb_load_path), vm_core.h (rb_vm_t): moved to VM.
6715         * load.c (rb_get_load_path): returns absolute load path.
6717         * load.c (load_path_getter): $LOAD_PATH getter.
6719         * file.c (rb_find_file_ext, rb_find_file), ruby.c (push_include,
6720           ruby_init_loadpath): use the accessor.
6722         * vm.c (rb_vm_mark): mark load_path.
6724 Wed Apr 30 17:47:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6726         * re.c (rb_reg_search): use local variable.  a patch from wanabe
6727           <s.wanabe AT gmail.com> in [ruby-dev:34537].  [ruby-dev:34492]
6729 Wed Apr 30 16:10:18 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6731         * eval_intern.h: specify the values of the enumeration constants
6732           explicitly.  [ruby-dev:34489]
6734 Wed Apr 30 12:32:39 2008  Tanaka Akira  <akr@fsij.org>
6736         * process.c (check_exec_redirect_fd): prohibit duplex IO.
6737           (check_exec_fds): record maxhint even if close_others is not
6738           specified.
6739           (rb_exec_arg_fixup): renamed from rb_exec_arg_fix.
6741 Mon Apr 28 20:24:27 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6743         * rational.c (nurat_marshal_load): checks the given
6744           denominator. [ruby-dev:34536]
6746 Mon Apr 28 14:21:18 2008  Tanaka Akira  <akr@fsij.org>
6748         * include/ruby/ruby.h (POSFIXABLE): use FIXNUM_MAX+1 instead of
6749           FIXNUM_MAX to make it possible to convert to double accurately on
6750           environments with 64bit VALUE and 64bit double.
6751           It assumes FLT_RADIX is 2.
6752           fix RubyForge bug #14102.
6754 Mon Apr 28 12:48:57 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6756         * process.c (rb_exec_arg_addopt, rb_exec_arg_addopt): now can specify
6757           close_exec on having no fork environment (but still meaningless).
6759 Mon Apr 28 11:11:29 2008  Tanaka Akira  <akr@fsij.org>
6761         * process.c (run_exec_options): don't call FIX2INT for nil.
6763 Mon Apr 28 11:11:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6765         * proc.c (method_name): should return symbols instead of strings.
6766           [ruby-dev:34531]
6768 Mon Apr 28 09:02:43 2008  Tanaka Akira  <akr@fsij.org>
6770         * include/ruby/intern.h (rb_exec_arg_init): declared.
6771           (rb_exec_arg_addopt): declared.
6772           (rb_exec_arg_fix): declared.
6773           (rb_exec_initarg): removed.
6774           (rb_exec_getargs): removed.
6775           (rb_exec_initarg2): removed.
6777         * io.c (struct popen_arg): make execarg as a pointer.
6778           (popen_exec): follow popen_arg change.
6779           (pipe_open): add eargp argument.  extract argc and argv from eargp.
6780           use rb_exec_arg_addopt to add redirect options.
6781           (pipe_open_v): set up struct rb_exec_arg.
6782           (pipe_open_s): set up struct rb_exec_arg.
6784         * process.c (rb_exec_arg_addopt): new function extracted from
6785           check_exec_options_i.
6786           (check_exec_options_i): use rb_exec_arg_addopt.
6787           (rb_check_exec_options): opthash is always a hash now.
6788           (rb_exec_getargs): make it static.
6789           (rb_exec_fillarg): renamed from rb_exec_initarg2.  don't set up
6790           redirect_fds.
6791           (rb_exec_arg_init): new function.
6792           (rb_exec_arg_fix): new function.
6793           (rb_f_exec): use rb_exec_arg_init and rb_exec_arg_fix.  use
6794           rb_exec_arg_addopt to set close_others option.
6795           (run_exec_options): make close_others by default.
6796           (rb_spawn_internal): use rb_exec_arg_init and rb_exec_arg_fix.  use
6797           rb_exec_arg_addopt to set close_others option.
6799 Sun Apr 27 18:59:04 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6801         * rational.c (nurat_expt): use f_rational_new2. [ruby-dev:34524]
6803 Sun Apr 27 15:23:40 2008  Koichi Sasada  <ko1@atdot.net>
6805         * gc.c (gc_count): add a GC.count method.  This method returns
6806           a GC invoking count.
6808 Sun Apr 27 12:20:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6810         * vm_core.h (rb_vm_t), gc.c (rb_objspace, rb_newobj), vm.c
6811           (Init_BareVM): per-VM object space support, which is disabled now.
6813         * gc.c (rb_objspace_alloc), vm.c (Init_BareVM): should not use ruby
6814           malloc here.
6816         * gc.c (garbage_collect, etc): performance improvement by passing the
6817           reference instead of referring the global variable in each functions.
6819 Sun Apr 27 08:06:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
6821         * ruby.c (ruby_set_argv): ARGV should be locale encoding.
6822           [ruby-list:44861]
6824 Sun Apr 27 01:46:29 2008  Tanaka Akira  <akr@fsij.org>
6826         * lib/open3.rb (Open3.popen3w): removed.
6827           (Open3.popen3): notice wait_thr.
6829 Sun Apr 27 01:13:05 2008  Eric Hodel  <drbrain@segment7.net>
6831         * lib/rdoc, test/rdoc:  Update to RDoc 2.0.0 r56.
6833 Sat Apr 26 21:30:40 2008  Tanaka Akira  <akr@fsij.org>
6835         * include/ruby/intern.h (rb_hash_dup): declared.
6837         * hash.c (rb_hash_dup): new function.
6839         * process.c (rb_spawn_internal): don't modify option hash.
6841 Sat Apr 26 18:36:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6843         * io.c, signal.c, thread.c, thread_win32.c, include/ruby/intern.h:
6844           suppress warnings.
6846 Sat Apr 26 17:42:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6848         * error.c (builtin_types), gc.c (count_objects): added Complex and
6849           Rational.
6851 Sat Apr 26 17:35:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6853         * error.c (rb_eNOERROR): renamed.
6855 Sat Apr 26 17:30:11 2008  Koichi Sasada  <ko1@atdot.net>
6857         * include/ruby/ruby.h, gc.c: remove T_BLOCK.
6859         * include/ruby/ruby.h: re-number T_xxx.
6861 Sat Apr 26 17:31:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6863         * process.c (rb_cProcessTms, rb_cProcessStatus): renamed.
6865         * error.c (builtin_types), signal.c (siglist), st.c (primes),
6866           struct.c (ref_func), time.c (months): constified.
6868 Sat Apr 26 13:00:41 2008  Tanaka Akira  <akr@fsij.org>
6870         * lib/open3.rb: double fork is replaced by spawn with Process.detach.
6871           (Open3.popen3w): new method to access the thread returned by
6872           Process.detach.
6874 Sat Apr 26 00:47:43 2008  Tanaka Akira  <akr@fsij.org>
6876         * process.c (rb_spawn_internal): new function to specify
6877           default_close_others.
6878           (rb_spawn): specify default_close_others true.
6879           (rb_f_system): call rb_spawn_internal with default_close_others as
6880           false.
6882 Sat Apr 26 12:26:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6884         * range.c (range_each): use INT2FIX() for fixnum values.
6886 Fri Apr 25 17:56:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6888         * gc.c (free_unused_heaps): preserve last used heap segment to
6889           reduce malloc() call.
6891 Fri Apr 25 17:54:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6893         * gc.c (HEAP_SIZE): use smaller heap segment (2K) for more chance
6894           to be freed.  based on patch from authorNari <authornari at gmail.com>.
6896         * gc.c (rb_newobj_from_heap): eventually allocate heap segments.
6898 Fri Apr 25 15:35:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6900         * process.c (rb_spawn): rb_exec_initarg() returns new argc and argv in
6901           earg.
6903 Fri Apr 25 12:37:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6905         * array.c (flatten): returns an instance of same class.
6906           [ruby-core:16554]
6908 Fri Apr 25 10:52:27 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6910         * include/ruby/win32.h: define mode_t for umask.
6912         * process.c (check_exec_options_i, check_exec_fds, run_exec_options):
6913           support "close_others" only when fork(2) is available.
6915 Fri Apr 25 00:16:11 2008  Tanaka Akira  <akr@fsij.org>
6917         * process.c: include sys/stat.h for umask.
6919 Thu Apr 24 23:25:17 2008  Tanaka Akira  <akr@fsij.org>
6921         * include/ruby/intern.h (rb_env_clear): declared.
6922           (rb_io_mode_modenum): declared.
6923           (rb_close_before_exec): declared.
6924           (struct rb_exec_arg): add options and redirect_fds field.
6925           (rb_check_argv): removed.
6926           (rb_exec_initarg): declared.
6927           (rb_exec_getargs): declared.
6928           (rb_exec_initarg2): declared.
6929           (rb_fork): add third argument: fds.
6931         * io.c (max_file_descriptor): new static variable to record maximum
6932           file descriptor ruby used.
6933           (UPDATE_MAXFD): new macro.
6934           (UPDATE_MAXFD_PIPE): new macro.
6935           (rb_io_mode_modenum): externed.
6936           (rb_sysopen): update max_file_descriptor.
6937           (rb_close_before_exec): new function.
6938           (popen_exec): redirection removed because it is done by extended
6939           spawn mechanism.
6940           (pipe_open): generate a hash for spawn options to specify
6941           redirections.
6942           (pipe_open_v): use rb_exec_getargs.
6943           (pipe_open_s): use rb_exec_getargs.
6944           (rb_io_initialize): update max_file_descriptor.
6946         * process.c (hide_obj): new function.
6947           (check_exec_redirect_fd): new function.
6948           (check_exec_redirect): new function.
6949           (check_exec_options_i): new function.
6950           (check_exec_fds): new function.
6951           (rb_check_exec_options): new function.
6952           (check_exec_env_i): new function.
6953           (rb_check_exec_env): new function.
6954           (rb_exec_getargs): new function.
6955           (rb_exec_initarg2): new function.
6956           (rb_exec_initarg): new function.
6957           (rb_f_exec): use rb_exec_initarg.
6958           (intcmp): new function.
6959           (run_exec_dup2): new function.
6960           (run_exec_close): new function.
6961           (run_exec_open): new function.
6962           (run_exec_pgroup): new function.
6963           (run_exec_rlimit): new function.
6964           (run_exec_options): new function.
6965           (rb_exec): call run_exec_options.
6966           (move_fds_to_avoid_crash): new function.
6967           (pipe_nocrash): new function.
6968           (rb_fork): use pipe_nocrash to avoid file descriptor conflicts.
6969           (rb_spawn): use rb_exec_initarg.
6970           (rlimit_resource_name2int): extracted from rlimit_resource_type.
6971           (rlimit_type_by_hname): new function.
6972           (rlimit_type_by_lname): new function.
6973           (rlimit_resource_type): use rlimit_type_by_hname.
6974           (proc_daemon): add fds argument for rb_fork.
6976         * hash.c (rb_env_clear): renamed from env_clear and externed.
6978         [ruby-dev:34086]
6980 Thu Apr 24 23:00:58 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6982         * test/ruby/test_thread.rb: fix typos.
6984         * test/ruby/envutil.rb (rubyexec): move Open3.popen3 call into timeout
6985           block.
6987 Thu Apr 24 22:34:52 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6989         * test/ruby/test_comparable.rb: new tests for Comparable, to achieve
6990           100% test coverage of compar.c.
6992 Thu Apr 24 17:19:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6994         * ruby.c (process_options): set safe_level before loading script.
6995           [ruby-dev:34421]
6997 Thu Apr 24 14:15:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6999         * dln.c (dln_find_1): prior files with extensions to files sans
7000           extensions.  [ruby-core:16517]
7002 Thu Apr 24 00:26:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7004         * lib/rdoc/ri/descriptions.rb: fixed wrong class nestings.
7006 Thu Apr 24 00:20:01 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7008         * test/ruby/test_settracefunc.rb: add a test for set_trace_func.
7010         * test/ruby/envutil.rb: move "rubyexec" method from test_rubyoptions.rb.
7012         * test/ruby/test_rubyoptions.rb: use rubyexec in envutil.rb.
7014         * test/ruby/test_thread.rb: add tests to achieve over 90% test coverage
7015           of thread.c.
7017 Wed Apr 23 15:28:52 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
7019         * test/gdbm/test_gdbm.rb (TestGDBM#test_s_open_no_create): failed
7020           notice moved from comment to assertion message. [ruby-dev:29127]
7022 Wed Apr 23 11:49:54 2008  Akinori MUSHA  <knu@iDaemons.org>
7024         * lib/set.rb (Set#each, SortedSet#each, TC_Set#test_each): Return
7025           an enumerator if no block is given.
7027 Wed Apr 23 00:36:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7029         * test/openssl/test_ssl.rb (start_server): add timeout to server.join.
7031 Wed Apr 23 00:18:45 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
7033         * test/ruby/test_symbol.rb (TestSymbol#test_to_proc): Improve
7034           tests of Symbol#to_proc.
7036 Tue Apr 22 22:40:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7038         * lib/drb/drb.rb (DRb::DRbServer::check_insecure_method): should
7039           check method names by symbols, not by strings.  a patch from
7040           Kazuhiro NISHIYAMA <zn at mbf.nifty.com> in [ruby-dev:34487].
7042 Tue Apr 22 22:15:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7044         * misc/ruby-style.el (ruby-style-{case,label}-indent): up list from
7045           indentation point.
7047 Tue Apr 22 21:09:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7049         * ext/nkf/nkf-utf8/nkf.c (score_table_A0, score_table_F0):
7050           type of content is unsigned char.
7052         * ext/nkf/nkf-utf8/nkf.c (push_broken_buf): 'c' is nkf_char.
7054         * ext/nkf/nkf-utf8/nkf.c (push_broken_buf): enc is 0 or pointer.
7056         * ext/nkf//nkf.c (options): type of option is unsigned char.
7058 Tue Apr 22 20:51:58 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7060         * ext/nkf/nkf-utf8/nkf.c (z_conv): characters must be nkf_char.
7062 Tue Apr 22 19:23:05 2008  Akinori MUSHA  <knu@iDaemons.org>
7064         * enumerator.c (enumerator_initialize): Remove an undocumented
7065           feature (passing a block to the constructor) that's broken.
7066           This is not what I intended.
7068 Tue Apr 22 17:54:05 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
7070         * vm_core.h (exec_event_hooks): ``inline'' is a type modifier, not
7071           a type itself.
7073 Tue Apr 22 16:24:27 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
7075         * string.c (rb_enc_cr_str_buf_cat): do not use C++ comments.
7077 Tue Apr 22 16:23:53 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
7079         * configure.in: use AC_USE_SYSTEM_EXTENSIONS.
7081 Tue Apr 22 16:23:16 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
7083         * vm_evalbody.c (DECL_SC_REG): use __asm__ instead.
7085 Tue Apr 22 16:18:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7087         * vm_evalbody.c (DECL_SC_REG): typo fixed.
7089 Tue Apr 22 15:25:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7091         * configure.in (struct timespec): needs time.h according to POSIX.
7093 Tue Apr 22 13:19:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7095         * thread.c (rb_thread_stop_timer_thread): should clear
7096           timer_thread_id after stopping it.
7098 Tue Apr 22 13:12:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7100         * thread.c (thread_join): remove the current thread from the join list
7101           of the target thread.
7103 Tue Apr 22 12:03:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7105         * vm_insnhelper.c (vm_get_ev_const): search from the base klass if it
7106           is given.
7108 Tue Apr 22 09:58:13 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7110         * ext/win32ole/win32ole.c: avoid warnings.
7112 Tue Apr 22 09:56:51 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7114         * file.c (eaccess): workaround for recent msvcrt's behavior.
7115           [ruby-core:16460]
7117 Mon Apr 21 19:08:32 2008  Tanaka Akira  <akr@fsij.org>
7119         * io.c (copy_stream_body): call rb_io_check_readable and
7120           rb_io_check_writable.
7122 Mon Apr 21 17:45:27 2008  Akinori MUSHA  <knu@iDaemons.org>
7124         * ext/dbm/dbm.c (fdbm_each_value, fdbm_each_key, fdbm_each_pair):
7125           GDBM#{each,each_pair,each_key,each_value}: Return an enumerator
7126           if no block is given.
7128         * ext/gdbm/gdbm.c (fgdbm_each_value, fgdbm_each_key,
7129           fgdbm_each_pair): GDBM#{each,each_pair,each_key,each_value}:
7130           Return an enumerator if no block is given.
7132         * ext/openssl/ossl_config.c (ossl_config_each):
7133           OpenSSL::Config#each: Return an enumerator if no block is given.
7135         * ext/readline/readline.c (hist_each): Readline::HISTORY#each:
7136           Return an enumerator if no block is given.
7138         * ext/sdbm/init.c (fsdbm_each_value, fsdbm_each_key,
7139           fsdbm_each_pair): SDBM#{each,each_pair,each_key,each_value}:
7140           Return an enumerator if no block is given.
7142         * ext/stringio/stringio.c (strio_each_byte, strio_each):
7143           StringIO#{each,each_line,each_byte}: Return an enumerator if no
7144           block is given.
7146         * ext/stringio/stringio.c (Init_stringio): Add #lines and #bytes,
7147           which are aliases to #each_line and #each_byte, respectively.
7149         * ext/win32ole/win32ole.c (fole_each): WIN32OLE#each: Return an
7150           enumerator if no block is given.
7152         * ext/zlib/zlib.c (rb_gzreader_each_byte, rb_gzreader_each):
7153           Zlib::GzipReader#{each,each_line,each_byte}: Return an
7154           enumerator if no block is given.
7156         * ext/zlib/zlib.c (Init_zlib): Add Zlib::GzipReader#lines and
7157           #bytes, which are aliases to #each_line and #each_byte,
7158           respectively.
7160 Mon Apr 21 17:01:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7162         * iseq.c (rb_iseq_compile_with_option): check if src is a string.
7163           [ruby-core:16453]
7165 Mon Apr 21 16:06:47 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7167         * enumerator.c (enumerator_init): preserve the method name in ID.
7169         * enumerator.c (enumerator_each): need not to call rb_to_id().
7171         * enumerator.c (enumerator_with_index): ditto.
7173 Mon Apr 21 11:00:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7175         * compile.c (defined_expr): capture exception during defined?
7176           evaluation.  a patch from wanabe <s.wanabe at gmail.com> in
7177           [ruby-dev:34461].  [ruby-core:16010]
7179 Mon Apr 21 10:06:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7181         * time.c: should include <errno.h> to refer errno.
7183 Mon Apr 21 09:58:04 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7185         * time.c (rb_strftime): check errno to detect strftime(3)'s error.
7186           this is workaround for recent version of MSVCRT.
7187           [ruby-dev:34456]
7189 Mon Apr 21 08:54:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7191         * gc.c (ruby_xmalloc): use size_t for malloc argument instead of long.
7193 Sun Apr 20 21:00:21 2008  Akinori MUSHA  <knu@iDaemons.org>
7195         * enumerator.c, include/ruby/ruby.h: Export rb_cEnumerator.
7197 Sun Apr 20 20:47:50 2008  Akinori MUSHA  <knu@iDaemons.org>
7199         * enumerator.c: Resolve the method every time an enumeration
7200           method is run, not once when the enumerator is initialized as it
7201           was before, so that method_missing() and method (re)definition
7202           afterwards are both in effect; pointed out in: [ruby-core:16441]
7204 Sun Apr 20 15:11:00 2008  Tanaka Akira  <akr@fsij.org>
7206         * io.c (copy_stream_rbuf_to_dst): removed.
7207           (copy_stream_fallback_body): don't bypass write method.
7208           (copy_stream_body): simplified.
7210 Sun Apr 20 15:01:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7212         * vm_core.h (struct iseq_compile_data): moved label_no from
7213           new_label_body().
7215         * compile.c (iseq_set_exception_table): allocates catch_table only
7216           when entries exist.
7218         * compile.c (struct iseq_link_element, struct iseq_insn_data): made
7219           enum for debuggers.
7221 Sun Apr 20 14:44:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7223         * compile.c (iseq_compile_each): fix for splat in when and rescue.
7224           a patch from wanabe <s.wanabe AT gmail.com> in [ruby-dev:34429].
7225           [ruby-core:14537]
7227 Sun Apr 20 13:55:37 2008  Tanaka Akira  <akr@fsij.org>
7229         * io.c (copy_stream_fallback): write directly (bypassing write method)
7230           if possible.
7232 Sun Apr 20 12:49:03 2008  Tanaka Akira  <akr@fsij.org>
7234         * io.c (copy_stream_fallback): read directly (bypassing readpartial
7235           method) if possible.
7237 Sun Apr 20 04:45:13 2008  Tanaka Akira  <akr@fsij.org>
7239         * io.c (copy_stream_body): use readpartial and write method for
7240           non-IOs such as StringIO and ARGF.
7242 Fri Apr 18 20:57:33 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7244         * test/ruby/test_array.rb: add tests to achieve over 95% test coverage
7245           of array.c.
7247 Fri Apr 18 17:37:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7249         * gc.c (rb_gc_mark_locations): get rid of underflow.
7251         * gc.c (mark_current_machine_context): check if the main thread stack
7252           position may shrink under the initialized position.  [ruby-core:16436]
7254 Thu Apr 17 22:20:52 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7256         * enc/trans/utf_16_32.c (fun_so_to_utf_16be, fun_so_to_utf_16le): add
7257           parentheses to remove warnings of gcc.
7259         * io.c (rb_io_getc): remove unused variables.
7261         * compile.c (NODE_NEXT, NODE_REDO): remove unused labels.
7263         * ext/nkf/nkf.c (rb_nkf_convert): remove unused variables.
7265         * ext/syck/rubyext.c (syck_resolver_initialize,
7266           syck_resolver_detect_implicit, syck_emitter_emit): remove unused
7267           variables.
7269 Thu Apr 17 20:12:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7271         * test/ruby/test_rubyoptions.rb (test_search): enable some assertions.
7273         * test/ruby/test_rubyoptions.rb: flunk message in win32.
7275 Thu Apr 17 16:07:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7277         * test/ruby/test_rubyoptions.rb (ruby): run in C locale.
7279         * test/ruby/test_rubyoptions.rb (test_encoding): --encoding does not
7280           affect source code.
7282 Thu Apr 17 00:45:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7284         * test/ruby/test_process.rb (test_rlimit_nofile): reset RLIMIT_NOFILE
7285           before exit (for gcov).
7287         * test/ruby/test_rubyoptions.rb: new tests for option of ruby
7288           interpreter, to achieve over 95% test coverage of ruby.c.
7290 Wed Apr 16 02:40:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7292         * ruby.c (process_options): preludes and parser need to run in safe
7293           level 0.  [ruby-dev:34407]
7295 Wed Apr 16 02:26:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7297         * ruby.c (process_options): dln_find_file returns the pointer to a
7298           static buffer, so should copy it.  [ruby-dev:34409]
7300 Tue Apr 15 23:08:46 2008  Kouhei Sutou  <kou@cozmixng.org>
7302         * lib/xmlrpc/client.rb: fix cookie handling. [ruby-dev:34403]
7304         * test/xmlrpc/test_cookie.rb: add a test for the above fix.
7306 Tue Apr 15 19:20:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7308         * io.c: #undef rb_argv moved before #define.
7310 Tue Apr 15 18:02:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7312         * include/ruby/intern.h (rb_argv): replaced with rb_get_argv().
7313           [ruby-Bugs-19514]
7315 Tue Apr 15 17:10:59 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
7317         * lib/net/http.rb, lib/net/smtp.rb, lib/net/pop.rb: update
7318           URLs of Japanese documents.
7320 Tue Apr 15 16:45:14 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
7322         * test/ruby/test_symbol.rb (TestSymbol#test_to_proc): add tests.
7324 Tue Apr 15 15:38:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7326         * misc/ruby-mode.el (ruby-encoding-map): added shift-jis for older
7327           versions.
7329         * misc/ruby-mode.el (ruby-mode-set-encoding):
7330           coding-system-to-mime-charset is not a standard function.
7331           [carbon-emacs:795]
7332           fix for the case that magic comment exists but coding system is
7333           absent.
7335         * misc/ruby-mode.el (ruby-mode): use write-contents-functions or
7336           write-contents-hooks for older versions.
7338 Tue Apr 15 07:21:21 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7340         * complex.c (nucomp_div): [ruby-dev:34357]
7342         * complex.c (nucomp_abs): use hypot.
7344         * complex.c (nucomp_quo): do not force conversion.
7346         * test/ruby/test_complex.rb: omitted some meaningless tests.
7348 Mon Apr 14 23:25:50 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7350         * test/ruby/test_objectspace.rb: add a test for
7351           ObjectSpace.count_objects.
7353 Mon Apr 14 22:44:24 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7355         * file.c (SET_EXTERNAL_ENCODING): avoid call rb_enc_check() on
7356           half-baked result string.
7358         * re.c (rb_reg_search): make search reentrant.  [ruby-dev:34223]
7360         * test/ruby/test_parse.rb (TestParse::test_global_variable):
7361           should preserve $& variable.
7363 Mon Apr 14 17:23:27 2008  Akinori MUSHA  <knu@iDaemons.org>
7365         * hash.c (rb_hash_delete_if, rb_hash_reject_bang, env_delete_if,
7366           env_reject_bang): Return an enumerator if no block is given.
7368 Mon Apr 14 14:33:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7370         * compile.c, compile.h (compile_debug): made runtime option.
7372         * debug.c (ruby_debug_print_indent): returns if debug_level exceeds
7373           the threshold.
7375         * debug.c (ruby_debug_printf): printf to stderr.
7377         * iseq.c (make_compile_option, make_compile_option_value): added
7378           debug_level option.
7380         * vm_core.h (rb_compile_option_t): added debug_level.
7382         * vm_core.h (struct iseq_compile_data): added node_level.
7384 Mon Apr 14 12:52:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7386         * gc.c (Init_stack): use ruby_init_stack.  [ruby-dev:34350]
7388         * gc.c (rb_objspace_t): packed globals.  [ruby-dev:34348]
7390         * gc.c (finalizers): removed.  [ruby-dev:34349]
7392 Mon Apr 14 11:30:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7394         * array.c (ary_new): new integer overflow check condition.
7395           suggested by TOYOFUKU Chikanobu <nobu_toyofuku at nifty.com> in
7396           [ruby-dev:34156].
7398         * array.c (rb_ary_initialize): ditto.
7400 Mon Apr 14 00:51:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7402         * test/ruby/test_parse.rb: add tests to achieve over 95% test coverage
7403           of parse.y.
7405 Sun Apr 13 23:53:58 2008  Akinori MUSHA  <knu@iDaemons.org>
7407         * enum.c (enum_cycle): Make Enumerable#cycle do a finite loop when
7408           the number of cycles is specified.
7410         * array.c (rb_ary_cycle): Ditto for Array#cycle.
7412 Sun Apr 13 18:52:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7414         * thread_pthread.c (lock_func): should not check interrupts in
7415           blocking region.  [ruby-dev:34378]
7417 Sat Apr 12 12:41:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7419         * eval.c (ruby_exec_node, ruby_run_node), ruby.c (process_options):
7420           use iseq instead of NODE.
7422         * gc.c (source_filenames): removed.
7424         * include/ruby/intern.h, parse.y (yycompile, parser_mark, parser_free,
7425           ripper_initialize): rb_source_filename() is no longer used.
7427         * compile.c, compile.h (ERROR_ARGS), parse.y (node_newnode, fixpos,
7428           parser_warn, e_option_supplied, warn_unless_e_option, range_op,
7429           cond0): nd_file is no longer used.
7431 Sat Apr 12 12:17:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7433         * prelude.rb (require_relative): move require_relative from
7434           lib/require_relative.rb.  [ruby-core:16356]
7436         * lib/require_relative.rb: removed.
7438 Sat Apr 12 05:55:57 2008  Eric Hodel  <drbrain@segment7.net>
7440         * lib/rubygems*, test/rubygems*:  Update to RubyGems 1.1.1 r1701.
7442 Sat Apr 12 03:13:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7444         * file.c (file_expand_path): set external encoding.
7446         * file.c (rb_file_s_basename, rb_file_s_dirname, rb_file_s_extname):
7447           copy encoding.
7449 Fri Apr 11 17:35:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7451         * enum.c (count_i): modified to shut warning up.
7453 Fri Apr 11 17:25:09 2008  Akinori MUSHA  <knu@iDaemons.org>
7455         * enum.c (count_i, count_iter_i, enum_count, enum_find_index):
7456           Reduce code.
7458 Fri Apr 11 17:06:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7460         * enum.c (find_index_i): modified to shut warning up.
7462         * enum.c (find_index_iter_i): ditto.
7464 Fri Apr 11 16:44:43 2008  Akinori MUSHA  <knu@iDaemons.org>
7466         * enum.c (enum_find_index): Add support for find_index(obj);
7467           [ruby-dev:34313].
7469         * array.c (rb_ary_index): Define find_index as an alias to index.
7471 Fri Apr 11 16:42:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7473         * lib/yaml/store.rb (YAML::load): modified to support empty
7474           database.
7476 Fri Apr 11 08:05:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7478         * marshal.c (w_object): add volatile to avoid potential GC bug.  a
7479           patch from Tomoyuki Chikanaga <chikanag at nippon-control-system.co.jp>
7480           in [ruby-dev:34311].
7482 Thu Apr 10 23:08:52 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7484         * lib/pstore.rb (PStore::dump, PStore::load): allow subclass
7485           overriding.  [ruby-dev:34305]
7487         * lib/yaml/store.rb (YAML::Store::marshal_dump_supports_canonical_option?):
7488           add a method to support faster PStore.
7490 Thu Apr 10 20:36:45 2008  Akinori MUSHA  <knu@iDaemons.org>
7492         * misc/rdebug.el, misc/README: Remove rdebug.el as per request
7493           from the maintainer and mention the ruby-debug project at
7494           RubyForge in README; bug#19043.
7496 Thu Apr 10 19:41:00 2008  Akinori MUSHA  <knu@iDaemons.org>
7498         * eval.c (rb_f_loop): Mention StopIteration in the document.
7500 Thu Apr 10 19:23:55 2008  Akinori MUSHA  <knu@iDaemons.org>
7502         * array.c (rb_ary_pop_m, rb_ary_shift_m): Update documents for
7503           #pop() and #shift().
7505         * array.c (rb_ary_slice_bang): Update document.  Assigning
7506           array[*args]= nil no longer removes elements.
7508 Thu Apr 10 16:58:44 2008  Tanaka Akira  <akr@fsij.org>
7510         * marshal.c (w_object): TYPE_USERDEF assigns id for ivars first.
7511           [ruby-dev:34159] by nagachika.
7513 Thu Apr 10 15:03:47 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7515         * lib/generator.rb: removed obsolete library.  [ruby-core:16233]
7517         * test/test_generator.rb: removed as well.  [ruby-dev:34306]
7519         * lib/pstore.rb: replaced by Hongli Lai's faster version.
7521 Thu Apr 10 10:27:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7523         * thread_pthread.c (native_sleep): sleep_cond is initialized at
7524           creation.  [ruby-Patches-19361].
7526 Wed Apr  9 14:43:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7528         * thread.c (lock_func): optimized and checks for interrupt_flag.
7529           based on a patch from Sylvain Joyeux in [ruby-Patches-19361] and
7530           [ruby-Patches-19362].
7532 Wed Apr  9 12:12:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7534         * test/ruby/test_thread.rb: new tests from Sylvain Joyeux in
7535           [ruby-Patches-19361].
7537 Tue Apr  8 21:36:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7539         * thread.c (rb_mutex_sleep): ensures to re-acquire at waking up.
7540           [ruby-Patches-19361]
7542 Tue Apr  8 11:00:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7544         * lib/complex.rb: remove Math first before overwriting by CMath.
7546 Tue Apr  8 10:34:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7548         * load.c (rb_require_safe): should check fname path after $SAFE is
7549           properly set.  [ruby-dev:34268]
7551         * re.c (rb_reg_quote): should always copy the quoting string.
7552           [ruby-core:16235]
7554 Tue Apr  8 10:30:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7556         * common.mk (prelude.c): depends on enc/prelude.rb.
7558         * enc/prelude.rb: fixed initial library names.
7560 Tue Apr  8 03:39:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7562         * load.c (rb_provided): check expanded path for relative path
7563           features, loading or loaded features are already expanded in 1.9.
7565         * variable.c (rb_autoload_load): no needs to check if provided before
7566           rb_require_safe.  [ruby-dev:34266]
7568 Mon Apr  7 22:41:21 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7570         * numeric.c: cancelled recent changes (except to remove rdiv).
7572         * bignum.c: ditto.
7574         * bignum.c: added rb_big_idiv.
7576 Mon Apr  7 15:51:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7578         * encoding.c (enc_init_db): moved to enc/encdb.c.
7580         * transcode.c (init_transcoder_table): moved to enc/trans/transdb.c.
7582         * enc/depend (enc/encdb.o enc/trans/transdb.o): depend on
7583           corresponding headers.
7585         * common.mk (COMMONOBJS): moved transcode.o from OBJS
7587 Mon Apr  7 12:26:32 2008  Koichi Sasada  <ko1@atdot.net>
7589         * bootstraptest/test_knownbug.rb: add a known-bug.
7591 Mon Apr  7 12:15:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7593         * range.c (range_each_func): should not leave a variable
7594           uninitialized, which could cause SEGV.
7596         * range.c (range_step): removed duplicated and unreachable code.
7598 Mon Apr  7 02:12:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7600         * string.c (rb_str_intern): need not to check if tainted.
7601           [ruby-dev:34219]
7603 Sun Apr  6 09:45:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7605         * dir.c (dir_tell): check if closed.  [ruby-core:16223]
7607 Sat Apr  5 23:17:20 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7609         * lib/cmath.rb: new.
7611         * lib/complex.rb: depends lib/cmath.rb.
7613         * lib/rational.rb: added rdiv.
7615         * complex.c: removed some math functions.
7617 Sat Apr  5 05:50:57 2008  Eric Hodel  <drbrain@segment7.net>
7619         * lib/rdoc/parsers/parse_rb.rb: Fix uninitialized variable warnings.
7621         * lib/rdoc/generator/html.rb: ditto.
7623         * lib/rdoc/options.rb: Fix shadowed variable warning.
7625         * lib/webrick/httprequest.rb: Fix redefined method warning.
7627 Sat Apr  5 02:13:52 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7629         * bignum.c (rb_cmpint): moved from compar.c, to check bignum
7630           zero.
7632 Fri Apr  4 23:24:06 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7634         * re.c (rb_memsearch_qs): wrong boundary condition.
7636         * re.c (rb_memsearch_qs_utf8): ditto.
7638 Fri Apr  4 14:11:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7640         * re.c (rb_memsearch_qs): wrong boundary condition.  a patch from
7641           wanabe <s.wanabe AT gmail.com> in [ruby-dev:34248].
7643 Fri Apr  4 05:57:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7645         * lib/net/pop.rb (Net::POP3::do_finish): clear @n_mails and
7646           @n_bytes as well.  [ruby-core:16144]
7648 Fri Apr  4 01:59:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7650         * range.c (range_step): add step for each iteration if begin and
7651           end are numeric.  [ruby-core:15990]
7653 Fri Apr  4 00:42:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7655         * bignum.c (Init_Bignum): rdiv method removed.  [ruby-dev:34242]
7657         * complex.c (nucomp_quo): ditto.
7659         * numeric.c (num_rdiv): ditto.
7661         * rational.c (nurat_div): ditto.
7663         * complex.c (nucomp_fdiv): fdiv implementation restored.
7665         * numeric.c (num_quo): RDoc updated.
7667 Thu Apr  3 21:51:45 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7669         * complex.c (nucomp_int_check): function for DRY real check.
7671         * complex.c (nucomp_{add,sub,mul,div,expt}): use rb_num_coerce_bin().
7673 Thu Apr  3 19:59:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7675         * insns.def (defineclass): check if cbase is a class or a module.
7676           [ruby-core:16118]
7678 Thu Apr  3 14:42:11 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7680         * common.mk (INSNS): add insns_info.inc.
7682         * common.mk (INSNS): make incs separately for nmake.
7684 Thu Apr  3 13:20:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7686         * common.mk (endb.h, transdb.h, prelude.c): depend on $(PREP) and
7687           check if really changed.  [ruby-core:16102]
7689         * Makefile.in, common.mk, configure.in, {win32,bcc32}/Makefile.sub
7690           (MINIOBJS, ARCHMINIOBJS): separated.
7692 Thu Apr  3 09:00:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7694         * compile.c (iseq_set_sequence, iseq_insns_unification,
7695           insn_data_to_s_detail): constified.
7697         * iseq.c (insn_operand_intern, ruby_iseq_disasm_insn): ditto.
7699         * template/{insns_info,opt_sc,optunifs}.inc.tmpl: ditto.
7701         * tool/instruction.rb (OptUnifsIncGenerator): ditto.
7703 Thu Apr  3 08:46:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7705         * range.c (range_include): add RDoc to describe that comparison
7706           for numeric is done according magnitude of values.
7707           [ruby-core:15907]
7709 Wed Apr  2 22:29:35 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7711         * rational.c (nurat_int_check): function for DRY integer check.
7713         * numeric.c (num_rdiv): should always return rational number.
7715         * rational.c (nurat_add, nurat_sub, nurat_mul, nurat_fdiv,
7716           nurat_cmp): use rb_num_coerce_bin().
7718         * rational.c (nurat_division): does / and rdiv.
7720         * .gdbinit (rp): no longer use rb_p().
7722 Wed Apr  2 06:52:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7724         * .gdbinit (rp): supports rational and complex numbers.  it's
7725           cheating since it uses rb_p().
7727 Wed Apr  2 06:24:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7729         * include/ruby/node.h: add new constants for rb_call()'s scope.
7731         * eval.c (iterate_method): use CALL_* scope constant to specify
7732           proper scope value.
7734         * eval.c (rb_each, rb_apply, rb_funcall, rb_funcall2, rb_funcall3):
7735           ditto.
7737 Tue Apr  1 21:19:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7739         * rational.c: need to include <float.h> just once.
7741 Tue Apr  1 16:40:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7743         * bignum.c (big2dbl): more precise conversion at edge cases.
7744           [ruby-dev:34195]
7746 Tue Apr  1 14:43:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7748         * configure.in: get rid of empty expansion.
7750         * configure.in: _setjmp is available but _longjmp is not on mingw.
7752 Tue Apr  1 09:41:22 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7754         * {bcc,win}32/Makefile (config.h): need to define RUBY_SETJMP, etc.
7756 Tue Apr  1 07:31:58 2008  Eric Hodel  <drbrain@segment7.net>
7758         * lib/rubygems* test/rubygems*: Import RubyGems 1.1.0.
7760 Tue Apr  1 03:20:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7762         * configure.in (RUBY_SETJMP, RUBY_LONGJMP, RUBY_JMP_BUF): prefers
7763           _setjmp over setjmp and sigsetjmp.  [ruby-core:16023]
7764           __builtin_setjmp cannot handle a variable.
7766         * configure.in (--with-setjmp-type): new option to override the
7767           default rule in the above.
7769         * eval_intern.h (ruby_setjmp, ruby_longjmp), gc.c (rb_setjmp),
7770           vm_core.h (rb_jmpbuf_t): use RUBY_SETJMP, RUBY_LONGJMP and
7771           RUBY_JMP_BUF.
7773 Tue Apr  1 01:55:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7775         * lib/resolv.rb (Resolv::Config.default_config_hash): requires
7776           win32/resolv to use Win32::Resolv.  [ruby-dev:34138]
7778 Tue Apr  1 01:40:58 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7780         * complex.c: adopted the ruby's style.
7782         * rational.c: ditto.
7784 Tue Apr  1 00:17:35 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7786         * rational.c: revert.
7788 Mon Mar 31 18:57:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7790         * {bcc,win}32/Makefile.sub (config.h): define ssize_t.
7792         * io.c (copy_stream_body): some platform don't have O_NOCTTY.
7794 Mon Mar 31 18:42:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7796         * configure.in: check for ssize_t.  [ruby-dev:34184]
7798 Mon Mar 31 14:45:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7800         * numeric.c (num_quo): should convert its operand to Rational.
7802         * rational.c (string_to_r_strict): should raise TypeError.
7804         * bignum.c (Init_Bignum): should not redefine Bignum#div.
7805           Numeric#div will do.  [ruby-dev:34066]
7807 Mon Mar 31 04:05:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7809         * io.c (io_getc): set coderange while getting characters.
7811 Sun Mar 30 23:16:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7813         * proc.c (proc_dup): should copy is_lambda attribute as well.
7814           [ruby-talk:296244]
7816 Sun Mar 30 15:33:29 2008  Tanaka Akira  <akr@fsij.org>
7818         * io.c: IO.copy_stream implemented.  [ruby-dev:33843]
7820         * thread.c (rb_fd_select): new function.
7822         * configure.in (sys/sendfile.h): check the header file.
7823           (sendfile): check the function.
7824           (pread): check the function.
7826 Sat Mar 29 14:18:41 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
7828         * ext/tk/*: full update Ruby/Tk to support Ruby(1.9|1.8) and Tc/Tk8.5.
7830         * ext/tk/lib/tkextlib/tile.rb: [incompatible] remove TileWidgets'
7831           instate/state/identify method to avoid the conflict with standard
7832           widget options. Those methods are renamed to ttk_instate/ttk_state/
7833           ttk_identify (tile_instate/tile_state/tile_identify are available
7834           too). Although I don't recommend, if you really need old methods,
7835           please define "Tk::USE_OBSOLETE_TILE_STATE_METHOD = true" before
7836           "require 'tkextlib/tile'".
7838         * ext/tk/lib/tkextlib/tile.rb: "Tk::Tile::__Import_Tile_Widgets__!"
7839           is obsolete. It outputs warning. To control default widget set,
7840           use "Tk.default_widget_set = :Ttk".
7842         * ext/tk/lib/tk.rb: __IGNORE_UNKNOWN_CONFIGURE_OPTION__ method and
7843           __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode) method are defined
7844           as module methods of TkConfigMethod. It may help users to wrap old
7845           Ruby/Tk scripts (use standard widgets) to force to use Ttk widgets.
7846           Ttk widgets don't have some options of standard widgets which are
7847           control the view of widgets. When set ignore-mode true, configure
7848           method tries to ignore such unknown options with no exception.
7849           Of course, it may raise other troubles on the GUI design.
7850           So, those are a little danger methods.
7852         * ext/tk/lib/tk/itemconfig.rb: __IGNORE_UNKNOWN_CONFIGURE_OPTION__
7853           method and __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode) method
7854           are defined as module methods of TkItemConfigMethod as the same
7855           purpose as TkConfigMethod's ones.
7857         * ext/tk/sample/ttk_wrapper.rb: A new example. This is a tool for
7858           wrapping old Ruby/Tk scripts (which use standard widgets) to use
7859           Ttk (Tile) widgets as default.
7861         * ext/tk/sample/tkextlib/tile/demo.rb: use ttk_instate/ttk_state
7862           method instead of instate/state method.
7864         * ext/tk/lib/tk/root, ext/tk/lib/tk/namespace.rb,
7865           ext/tk/lib/tk/text.rb, ext/tk/lib/tkextlib/*: some 'instance_eval's
7866           are replaced to "instance_exec(self)".
7868         * ext/tk/lib/tk/event.rb: bug fix on KEY_TBL and PROC_TBL (?x is not
7869           a character code on Ruby1.9).
7871         * ext/tk/lib/tk/variable.rb: support new style of operation argument
7872           on Tcl/Tk's 'trace' command for variables.
7874         * ext/tk/sample/demos-jp/widget, ext/tk/sample/demos-en/widget: bug fix
7876         * ext/tk/sample/demos-jp/textpeer.rb,
7877           ext/tk/sample/demos-en/textpeer.rb: new widget demo.
7879         * ext/tk/tcltklib.c: decrease SEGV troubles (probably)
7881         * ext/tk/lib/tk.rb: remove Thread.critical access if Ruby1.9
7883         * ext/tk/lib/tk/multi-tk.rb: support Ruby1.9 (probably)
7885         * ext/tk/lib/tkextlib/tile.rb: add method to define Tcl/Tk command
7886           to make Tcl/Tk theme sources (based on different version of Tile
7887           extension) available.
7888           (Tk::Tile::__define_LoadImages_proc_for_compatibility__)
7890         * ext/tk/lib/tk.rb, ext/tk/lib/tk/wm.rb: support dockable frames
7891           (Tcl/Tk8.5 feature). 'wm' command can treat many kinds of widgets
7892           as toplevel widgets.
7894         * ext/tk/lib/tkextlib/tile/style.rb: ditto.
7895           (Tk::Tile::Style.__define_wrapper_proc_for_compatibility__)
7897         * ext/tk/lib/tk/font.rb: add actual_hash and metrics_hash to get
7898           properties as a hash. metrics_hash method returns a boolean value
7899           for 'fixed' option. But metrics method returns numeric value
7900           (0 or 1) for 'fixed' option, because of backward compatibility.
7902         * ext/tk/lib/tk/timer.rb: sometimes fail to set callback procedure.
7904         * ext/tk/lib/tk.rb: add Tk.sleep and Tk.wakeup method. Tk.sleep
7905           doesn't block the eventloop. It will be better to use the method
7906           in event callbacks.
7908         * ext/tk/sample/tksleep_sample.rb: sample script about Tk.sleep.
7910 Thu Mar 27 20:44:22 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7912         * complex.c (f_lcm): removed.
7914         * rational.c (rb_lcm, rb_gcdlcm): added.
7916         * lib/complex.rb (gcd, lcm, gcdlcm): removed.
7918         * lib/rational.rb (gcd, lcm, gcdlcm): ditto.
7920 Wed Mar 26 18:11:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7922         * variable.c (rb_mod_constants): rdoc updated.  a patch from
7923           Florian Gilcher <flo AT andersground.net> in [ruby-core:16009].
7925 Wed Mar 26 00:55:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7927         * test/ruby/test_rand.rb: add tests to achieve over 95% test coverage
7928           of random.c.
7930 Wed Mar 26 00:28:55 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7932         * test/ruby/test_rational.rb: add tests to achieve over 90% test
7933           coverage of rational.c.
7935         * test/ruby/test_complex.rb: ditto for complex.c.
7937 Tue Mar 25 19:34:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7939         * bootstraptest/test_knownbug.rb: add tests.  [ruby-dev:34128]
7941 Tue Mar 25 19:09:04 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7943         * array.c (ary_new): fix size check.  [ruby-dev:34123]
7945         * array.c (rb_ary_take, rb_ary_drop): check negative size and use
7946           NUM2LONG instead of FIX2LONG.  [ruby-dev:34123]
7948         * enum.c (enum_take, enum_drop): check negative size.
7950         * test/ruby/test_array.rb: add tests for above.
7952 Tue Mar 25 16:32:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7954         * ruby.c (proc_options): checks if the word is empty.
7956         * ruby.c (process_options): typo fixed.  [ruby-dev:34122]
7958 Tue Mar 25 15:26:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7960         * compile.c (defined_expr): false short-circuit destination label may
7961           be needed.  [ruby-talk:295296]
7963         * compile.c (iseq_compile_each): put nil if false short-circuit is
7964           created.
7966         * compile.c (compile_massign_opt): no need to use alloca.
7968 Mon Mar 24 19:23:52 2008  Akinori MUSHA  <knu@iDaemons.org>
7970         * parse.y (debug_lines): Always prepare a new array for each
7971           file's SCRIPT_LINES__ storage, instead of appending source lines
7972           every time a file is re-loaded; submitted by Rocky Bernstein in
7973           #18517.
7975 Mon Mar 24 10:25:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7977         * configure.in: sitearch should use target_cpu.  [ruby-core:15986]
7979 Sun Mar 23 02:51:57 2008  Tanaka Akira  <akr@fsij.org>
7981         * process.c (rlimit_resource_value): use NUM2RLIM.
7983 Sun Mar 23 02:28:01 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7985         * complex.c: fixed. [ruby-dev:34109]
7987         * rational.c: ditto.
7989 Fri Mar 21 21:32:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7991         * io.c (rb_f_gets, rb_f_readline, rb_f_readlines): delegates to ARGF
7992           as well as puts and putc.  [ruby-dev:34100]
7994 Fri Mar 21 21:26:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7996         * lib/resolv.rb (Resolv::Hosts): should not use win32/resolv on cygwin.
7997           [ruby-dev:29945], [ruby-dev:34095]
7999         * lib/win32/registry.rb (Win32::Registry.expand_environ): try upcased
8000           name too for cygwin.  [ruby-dev:29945]
8002         * lib/win32/resolv.rb (Win32::Resolv.get_hosts_path): use expand_path.
8004 Fri Mar 21 21:10:00 2008  Akinori MUSHA  <knu@iDaemons.org>
8006         * lib/ipaddr.rb: Say that I am the current maintainer.
8008         * lib/set.rb: Ditto.
8010         * lib/shellwords.rb: Ditto.
8012         * ext/syslog/syslog.txt: Ditto.
8014 Fri Mar 21 09:24:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8016         * instruby.rb (open_for_install): write block result and rewrite only
8017           if changed from existing file.
8019 Fri Mar 21 08:29:33 2008  Tadayoshi Funaba  <tadf@dotrb.org>
8021         * rational.c (nurat_to_f): rearrangement.
8023 Fri Mar 21 06:44:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8025         * rational.c (nurat_to_f): C99.
8027 Fri Mar 21 01:40:27 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8029         * complex.c (nucomp_sub, nucomp_expt): call corresponding functions.
8031 Fri Mar 21 01:21:43 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8033         * missing/tgamma.c: include config.h before math.h.  [ruby-dev:34075]
8035 Thu Mar 20 21:46:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8037         * io.c (argf_getline): use receiver.
8039 Thu Mar 20 21:20:19 2008  Tadayoshi Funaba  <tadf@dotrb.org>
8041         * rational.c: some improvements (include Shin-ichiro HARA's
8042           effort).
8044         * complex.c: some improvements.
8046         * test/ruby/test_rational2.rb: new.
8048 Thu Mar 20 00:21:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8050         * io.c (argf_initialize_copy): get rid of segfault.
8052         * io.c (argf_tell, argf_seek_m, argf_set_pos, argf_rewind,
8053           argf_fileno, argf_to_io, argf_eofl, argf_getc, argf_getbyte,
8054           argf_readchar, argf_readbyte, argf_each_line): use receiver.
8056 Wed Mar 19 23:52:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8058         * io.c (rb_io_putc, rb_io_puts): output directly if the receiver is
8059           rb_stdout to get rid of infinite recursion.  [ruby-dev:34059]
8061 Wed Mar 19 22:27:41 2008  Tadayoshi Funaba  <tadf@dotrb.org>
8063         * rational.c: added rb_gcd.
8065         * complex.c: use rb_gcd.
8067 Wed Mar 19 18:37:00 2008  Tadayoshi Funaba  <tadf@dotrb.org>
8069         * complex.c: revert.
8071         * rational.c: revert.
8073 Wed Mar 19 17:31:20 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8075         * eval_intern.h (TH_EXEC_TAG): need not to FLUSH_REGISTER_WINDOWS.
8076           [ruby-core:15871], [ruby-dev:34088]
8078 Wed Mar 19 14:53:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8080         * complex.c (nucomp_to_s, nucomp_inspect): get rid of making
8081           unnecessary intermediate objects.
8083         * complex.c (make_patterns, string_to_c): do not treat successive
8084           underscores as a part of numeric like as literals.  [ruby-dev:34085]
8086         * rational.c (make_patterns, string_to_r): ditto.
8088 Wed Mar 19 14:36:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8090         * bignum.c (rb_cstr_to_inum): treat successive underscores as
8091           nondigit.  [ruby-dev:34089]
8093 Wed Mar 19 14:08:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8095         * encoding.c (enc_check_encoding): should not load autoloaded encoding
8096           directly, instead use rb_enc_find_index() which deal with alias and
8097           replica.  [ruby-core:15957]
8099 Wed Mar 19 11:49:47 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8101         * regint.h (include): include ruby.h instead of defines.h and config.h.
8103 Wed Mar 19 10:17:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8105         * regint.h (CHECK_INTERRUPT_IN_MATCH_AT): add interrupt check
8106           during match.  [ruby-talk:295002]
8108 Tue Mar 18 16:24:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8110         * parse.y (literal_concat_gen): bail out at different encoding.
8112 Tue Mar 18 04:00:27 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8114         * re.c (rb_memsearch_ss): simple shift search.
8116         * re.c (rb_memsearch_qs): quick search.
8118         * re.c (rb_memsearch_qs_utf8): quick search for UTF-8 string.
8120         * re.c (rb_memsearch_qs_utf8_hash): hash functions for above.
8122         * re.c (rb_memsearch): use above functions.
8124         * string.c (rb_str_index): give enc to rb_memsearch.
8126         * include/ruby/intern.h (rb_memsearch): move to encoding.h.
8128         * include/ruby/encoding.h (rb_memsearch): move from intern.h.
8130         * common.mk (PREP): add dependency.
8132 Mon Mar 17 22:23:54 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8134         * array.c (rb_ary_take, rb_ary_take_while, rb_ary_drop,
8135           rb_ary_drop_while): new methods. [ruby-dev:34067]
8137         * test/ruby/test_array.rb: add tests for above.
8139 Mon Mar 17 17:11:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8141         * misc/ruby-mode.el (ruby-mode): should use `run-mode-hooks' instead
8142           of calling `run-hooks' directly to run the mode hook.  patch from
8143           Chiyuan Zhang <pluskid AT gmail.com> in [ruby-core:15915]
8145 Mon Mar 17 16:41:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8147         * configure.in: unset GREP_OPTIONS.  [ruby-core:15918]
8149 Sun Mar 16 18:07:07 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
8151         * enc/trans/utf_16_32.c: bug fix (some invalid UTF-8 sequences
8152           were legal)
8154         * test/ruby/test_transcode.rb: test for above bug
8156 Sun Mar 16 17:28:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8158         * common.mk (LIBRUBY_SO): add dependency to $(BUILTIN_ENCOBJS).
8160 Sun Mar 16 08:51:41 2008  Tadayoshi Funaba  <tadf@dotrb.org>
8162         * include/ruby/intern.h: added some declarations.
8164         * include/ruby/ruby.h: ditto.
8166         * common.mk: added some entries.
8168         * configure.in: added a check for signbit.
8170         * lib/complex.rb: nearly all of core definitions have been removed.
8172         * lib/rational.rb: ditto.
8174         * lib/mathn.rb: some trivial adjustments.
8176         * complex.c: new.
8178         * rational.c: ditto.
8180         * numeric.c (flo_{quo,rdiv}, fix_fdiv): added.
8182         * numeric.c ({num,int}_{numerator,denominator}): ditto.
8184         * bignum.c (rb_big_fdiv): ditto.
8186         * numeric.c (fix_{quo,pow}): now may yield rational number.
8188         * bignum.c (rb_big_{quo,pow}): ditto.
8190         * numeric.c (rb_{int,flo}_induced_from): now can accept rational.
8192         * gc.c (gc_mark_children, obj_free): now detects complex and rational.
8194         * inits.c (rb_call_inits): now calls Init_{Complex,Rational}.
8196         * test/ruby/test_complex.rb: new.
8198         * test/ruby/test_rational.rb: ditto.
8200 Sat Mar 15 17:48:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8202         * encoding.c (rb_enc_associate_index): pass unnecessary enc_capable().
8204         * string.c (rb_str_cmp): reduce invocation of rb_enc_compatible().
8206 Fri Mar 14 17:04:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8208         * include/ruby/ruby.h (inttypes.h): includes always if available.
8210         * string.c, ext/digest/defs.h: moved inttypes.h to ruby.h.
8212 Fri Mar 14 16:59:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8214         * configure.in (RUBY_LIB_PREFIX): fix for prefix.
8216 Fri Mar 14 16:35:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8218         * lib/cgi.rb (CGI::Cookie::initialize): performance patch from
8219           Makoto Kuwata <kwa@kuwata-lab.com> in [ruby-dev:34048].
8221 Fri Mar 14 15:49:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8223         * configure.in (RUBY_LIB_PREFIX): use libdir.
8225 Fri Mar 14 14:24:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8227         * ext/digest/defs.h: inttypes.h is still needed.
8229 Fri Mar 14 11:34:12 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8231         * {bcc,win}32/Makefile.sub: follow below changes.
8233 Fri Mar 14 11:24:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8235         * misc/ruby-mode.el (ruby-encoding-map, ruby-use-encoding-map): added
8236           to customize.
8238 Fri Mar 14 10:37:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8240         * configure.in (int8_t, uint8_t,  int16_t,  uint16_t int32_t,
8241           uint32_t int64_t, uint64_t, int128_t, uint128_t,
8242           intptr_t, uintptr_t): check if defined.
8244         * win32/Makefile.sub: follow configure.in.
8246         * ext/digest/defs.h: remove checks for uint8_t, uint32_t and uint64_t.
8248 Fri Mar 14 10:12:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8250         * configure.in (RUBY_CHECK_VARTYPE): should not indent preprocessor
8251           directives.
8253 Fri Mar 14 10:03:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8255         * string.c (UNALIGNED_WORD_ACCESS): IA64 cannot access unaligned word.
8257 Thu Mar 13 21:00:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8259         * array.c (rb_ary_slice_bang): should not use rb_ary_subseq()
8260           which shares internal pointer.  splice modifies the receiver
8261           right after subseq.  [ruby-dev:34005]
8263         * bootstraptest/test_struct.rb: some test moved from test to shut
8264           warning up.
8266 Thu Mar 13 19:42:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8268         * {bcc,win}32/Makefile.sub (config.h): define uint32_t.
8270 Thu Mar 13 14:14:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8272         * trunk/configure.in (AC_CHECK_HEADERS): stdint.h is not needed to
8273           check.
8275         * trunk/configure.in (rb_cv_type_uint32_t): unquoted.  [ruby-dev:34030]
8277         * trunk/string.c (hash): use inttypes.h instead of stdint.h.
8279 Thu Mar 13 10:42:46 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8281         * numeric.c (fix_divmod): should return integer division.  [ruby-dev:34006]
8283         * enum.c (zip_ary): wrong boundary condition.
8285         * test/ruby/test_numeric.rb (TestNumeric::test_num2long): bit-and
8286           should not raise RangeError.
8288 Thu Mar 13 03:12:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8290         * lib/irb/cmd/help.rb: should be updated for new ri structure.
8291           [ruby-core:15825]
8293         * lib/rdoc/ri/driver.rb (RDoc::initialize): allow options to be optional.
8295         * lib/rdoc/ri/driver.rb (RDoc::class_cache): map_dirs may be
8296           empty.
8298         * lib/rdoc/ri/driver.rb (RDoc::get_info_for): revive get_info_for
8299           method.  maybe broken.
8301         * lib/rdoc/ri/util.rb (RDoc::initialize): should not use RiError
8302           no more.
8304 Thu Mar 13 01:45:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8306         * configure.in (stdint.h): check if presence.
8308         * configure.in (uint32_t): check if defined.
8310         * string.c (hash): fix for portability.  [ruby-dev:34020]
8312 Wed Mar 12 17:33:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8314         * object.c (rb_cstr_to_dbl): fix for a mere underscore.
8316 Wed Mar 12 14:47:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8318         * eval_intern.h (rb_thread_raised_set): use generic flags.
8320         * eval.c (rb_longjmp): clear all raised flags.
8322         * eval.c (stack_check): leave clearing flag to rb_longjmp.
8324         * gc.c (rb_memerror): use thread raised flag instead of static flag.
8326 Tue Mar 11 23:38:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8328         * array.c (rb_ary_combination): argument check before creating
8329           Enumerator.
8331         * array.c (rb_ary_permutation): ditto.
8333         * enum.c (enum_zip): optimize if all arguments are arrays.
8335 Tue Mar 11 19:48:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8337         * numeric.c (fix_coerce): try conversion before type check.
8338           [ruby-core:15838]
8340 Tue Mar 11 12:39:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8342         * common.mk (clean-local): WINMAINOBJ is Windows specific.
8344 Tue Mar 11 10:19:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8346         * string.c (hash): replaced by MurmurHash described in
8347           <http://murmurhash.googlepages.com/>.
8349 Tue Mar 11 09:52:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8351         * string.c (rb_str_comparable): empty strings in any encoding are
8352           compatible each other.
8354 Tue Mar 11 00:46:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8356         * ruby.c (usage): remove some unimportant lines to fit -h message
8357           in a page.  [ruby-dev:34018]
8359 Mon Mar 10 17:11:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8361         * eval.c (rb_f_local_variables): local_variables should return an
8362           array of symbols.  [ruby-dev:34008]
8364         * vm.c (collect_local_variables_in_env): ditto.
8366 Mon Mar 10 15:53:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8368         * version.c (MKSTR): make US-ASCII.  [ruby-dev:34010]
8370 Mon Mar 10 02:08:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8372         * string.c (rb_str_index): if t == s + pos, the character beginning
8373           from s + pos is valid.
8375 Sun Mar  9 13:51:21 2008  Eric Hodel  <drbrain@segment7.net>
8377         * lib/rdoc/generator.rb: Restore missing line to #params.  Patch by
8378           Lincoln Stoll <lstoll at lstoll.net>
8380 Sun Mar  9 09:52:00 2008  Eric Hodel  <drbrain@segment7.net>
8382         * lib/rdoc/code_objects.rb: Remove debugging Kernel#p.  Patch by
8383           Lincoln Stoll <lstoll at lstoll.net>
8384         * lib/rdoc/generator/html.rb: Fully qualify AllReferences.  Patch by
8385           Lincoln Stoll <lstoll at lstoll.net>
8386         * lib/rdoc/ri/writer.rb: Fix 1.8 backwards compatibility.
8388 Sat Mar  8 18:50:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8390         * file.c (isdirsep): backslash is valid path separator on cygwin too.
8392 Sat Mar  8 06:53:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8394         * string.c (search_nonascii): Use VALUE instead of unsigned long
8395           because VALUE can be the fastest unsigned integer type.
8396           On LLP64 unsigned long isn't the fastest.
8397         * string.c (str_strlen): ditto.
8398         * string.c (str_utf8_nth): ditto.
8399         * string.c (count_utf8_lead_bytes_with_ulong): ditto.
8401         * string.c (count_utf8_lead_bytes_with_word): renamed.
8403 Fri Mar  7 21:27:43 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8405         * bignum.c: fix indent.
8407 Fri Mar  7 21:12:19 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8409         * bignum.c (power_cache_init, power_cache_get_power0, Init_Bignum):
8410           delayed initializing power cache per base.  [ruby-dev:34003]
8412 Fri Mar  7 20:30:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8414         * cont.c (cont_restore_0): fixed typo.  [ruby-core:15821]
8416 Fri Mar  7 19:56:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8418         * lib/mkmf.rb: rdoc added.  [ruby-Patches-9762]
8420 Thu Mar  6 17:26:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8422         * sprintf.c (rb_str_format): space flag is in effect for Inf/NaN too.
8423           [ruby-dev:34002]
8425 Thu Mar  6 15:44:20 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8427         * sprintf.c (rb_str_format): casting double to long is undefined
8428           if the integer part of double is out of the range of long.
8430 Thu Mar  6 15:11:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8432         * sprintf.c (rb_str_format): ignore 0 flag for NaN and Inf.
8433           [ruby-dev:33994]
8435 Thu Mar  6 15:05:25 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8437         * {bcc32,win32}/Makefile.sub (RUNRUBY): use $(PROGRAM) instead of
8438           ruby$(EXEEXT).
8439           suggested by KIMURA Koichi <kimura.koichi at canon.co.jp>.
8440           [ruby-dev:34000]
8442 Thu Mar  6 14:46:08 2008  Tanaka Akira  <akr@fsij.org>
8444         * missing/lgamma_r.c (loggamma): return 0 for 1 and 2.
8446         * test/ruby/test_math.rb: accept errors by functions under missing/.
8448 Thu Mar  6 14:29:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8450         * transcode.c (rb_str_transcode_bang): set coderange.
8452         * transcode.c (rb_str_transcode): use rb_str_transcode_bang.
8454 Thu Mar  6 14:00:10 2008  Tanaka Akira  <akr@fsij.org>
8456         * include/ruby/missing.h (cbrt): add declaration.
8458 Thu Mar  6 11:14:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8460         * misc/ruby-mode.el (ruby-add-log-current-method): use ruby style
8461           method name format.
8463 Thu Mar  6 11:12:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8465         * sprintf.c (rb_str_format): no need of loop.
8467 Thu Mar  6 08:30:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8469         * object.c (rb_mod_freeze): call rb_class_name() directly.
8470           [ruby-core:15802]
8472 Thu Mar  6 04:32:06 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8474         * string.c (count_utf8_lead_bytes_with_ulong): fix shift size.
8475           [ruby-dev:33993]
8477         * string.c (str_utf8_nth) fix wrong counting.
8479 Thu Mar  6 00:34:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8481         * sprintf.c (rb_str_format): size_t returned from strlen() can be
8482           unsigned.
8484 Thu Mar  6 00:31:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8486         * struct.c (make_struct): preserve encoding of struct name.
8488 Wed Mar  5 22:49:20 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8490         * string.c (is_utf8_lead_byte, count_utf8_lead_bytes_with_ulong):
8491           defined for UTF-8 optimization.
8493         * string.c (str_strlen): use is_utf8_lead_byte and
8494           count_utf8_lead_bytes_with_ulong.
8496         * string.c (str_utf8_nth) ditto.
8498 Wed Mar  5 17:53:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8500         * file.c (rb_file_flock): returns false on EAGAIN if non-blocking.
8501           [ruby-core:15795]
8503 Wed Mar  5 17:43:43 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
8505         * transcode.c (transcode_loop): Adjusted detection of invalid
8506           (ill-formed) UTF-8 sequences. Fixing potential security issue, see
8507           http://www.unicode.org/versions/Unicode5.1.0/#Notable_Changes.
8509         * test/ruby/test_transcode.rb: Added two tests for above fix.
8511 Wed Mar  5 14:00:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8513         * numeric.c (fix_to_s): avoid rb_scan_args() when no argument
8514           given.
8515         * bignum.c (rb_big_to_s): ditto.
8516         * enum.c (enum_first): ditto.
8517         * eval_jump.c (rb_f_catch): ditto.
8518         * io.c (rb_obj_display): ditto.
8519         * class.c (rb_obj_singleton_methods): ditto.
8520         * object.c (rb_class_initialize): ditto.
8521         * random.c (rb_f_srand): ditto.
8522         * range.c (range_step): ditto.
8523         * re.c (rb_reg_s_last_match): ditto.
8524         * string.c (rb_str_to_i): ditto.
8525         * string.c (rb_str_each_line): ditto.
8526         * string.c (rb_str_chomp_bang): ditto.
8527         * string.c (rb_str_sum): ditto.
8529         * string.c (str_modifiable): declare inline.
8530         * string.c (str_independent): ditto.
8532 Wed Mar  5 11:50:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8534         * lib/debug.rb: require 'continuation' to implement "restart"
8535           command.  [ruby-dev:33992]
8537         * lib/debug.rb (Context::debug_command): remove local variable
8538           shadowing to shut up warnings.  [ruby-dev:33992]
8540         * lib/debug.rb (Context::display_list): ditto.
8542         * lib/debug.rb (Context::resume): ditto.
8544         * lib/debug.rb (Context::get_thread): no longer use #index for Hash.
8546 Tue Mar  4 21:35:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8548         * lib/irb.rb (IRB::Irb::eval_input): SyntaxError should not be
8549           considered as IRB bug.  [ruby-dev:33991]
8551         * lib/irb/workspace.rb (IRB::WorkSpace::filter_backtrace): should
8552           filter 'irb.rb' as well for context mode 2 and 3.
8554 Tue Mar  4 19:10:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8556         * hash.c (rb_hash_aset): should not copy key string when
8557           compare_by_identity is set.  [ruby-dev:33604]
8559         * hash.c (hash_equal): two hash tables are different when internal
8560           comparison table differ.  [ruby-dev:33989]
8562 Tue Mar  4 16:29:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8564         * parse.y (parser_yylex): disallow non digits '0o' expression.
8566 Tue Mar  4 14:35:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8568         * io.c (open_key_args): use rb_io_open_with_args instead of rb_f_open.
8569           [ruby-core:15763]
8571 Tue Mar  4 13:41:46 2008  Tanaka Akira  <akr@fsij.org>
8573         * gc.c (add_heap): fix previous change.  [ruby-dev:33988]
8575 Tue Mar  4 10:21:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8577         * gc.c (add_heap): use binary search to find the place to insert the
8578           new heap slot.  [ruby-dev:33983]
8580 Tue Mar  4 05:30:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8582         * io.c (open_key_args): use rb_io_open instead of rb_f_open.
8583           [ruby-core:15746]
8585 Mon Mar  3 23:28:37 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
8587         * lib/webrick/httpservlet/filehandler.rb: should normalize path
8588           separators in path_info to prevent directory traversal
8589           attacks on DOSISH platforms.
8590           reported by Digital Security Research Group [DSECRG-08-026].
8592         * lib/webrick/httpservlet/filehandler.rb: pathnames which have
8593           not to be published should be checked case-insensitively.
8595 Mon Mar  3 17:25:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8597         * gc.c (add_heap): sort heaps array in ascending order to use
8598           binary search.
8600         * gc.c (is_pointer_to_heap): use binary search to identify object
8601           in heaps.  works better when number of heap segments grow big.
8603 Mon Mar  3 17:15:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8605         * re.c (rb_reg_regsub): remove too strict encoding check.
8606           [ruby-dev:33966]
8608 Mon Mar  3 16:14:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8610         * hash.c (rb_any_hash): shrinks all results in Fixnum range.
8611           [ruby-core:15713]
8613 Sun Mar  2 23:03:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8615         * io.c (rb_io_ungetc): reduce redundant call.
8617 Sun Mar  2 10:13:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8619         * ruby.c (load_file): parse shebang in us-ascii.  a patch from
8620           sheepman <sheepman AT sheepman.sakura.ne.jp> in [ruby-dev:33955]
8622 Sun Mar  2 00:08:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8624         * object.c (rb_cstr_to_dbl): check for successive underscores.
8625           [ruby-dev:33952]
8627 Sat Mar  1 17:59:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8629         * io.c (struct argf): packed ARGF stuffs.
8631         * ruby.c (proc_options): use ruby_set_inplace_mode().
8633 Sat Mar  1 17:51:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8635         * lib/test/unit/collector/dir.rb (recursive_collect): do not always
8636           include all test_*.rb.
8638 Sat Mar  1 14:14:17 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8640         * development snapshot 1.9.0-1 released.
8642 Sat Mar  1 13:46:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8644         * tool/make-snapshot: make prereq uses MINIRUBY.
8646         * tool/make-snapshot: allow packaging like 1.9.0-1 by second
8647           command-line argument.
8649 Sat Mar  1 13:11:03 2008  Tanaka Akira  <akr@fsij.org>
8651         * test/ruby/allpairs.rb: new file for all pairs method.
8653         * test/ruby/test_m17n_comb.rb: use allpairs.rb to reduce test cases.
8655         * test/ruby/test_sprintf_comb.rb: ditto.
8657 Sat Mar  1 12:34:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8659         * string.c (sym_inspect): use rb_str_inspect() instead of
8660           rb_str_dump().  [ruby-dev:33946]
8662 Sat Mar  1 12:15:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8664         * eval_method.c (rb_get_method_body): ent->method may be freed by
8665           GC.  [ruby-dev:31819]
8667         * thread.c (remove_event_hook): should not access freed memory.
8668           [ruby-dev:31820]
8670 Sat Mar  1 10:31:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8672         * io.c (read_all, rb_io_getline_fast): encoding is io_input_encoding.
8674 Sat Mar  1 10:09:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8676         * string.c (tr_setup_table, rb_str_split_m, rb_str_chomp_bang):
8677           simplified with rb_enc_ascget().  [ruby-dev:33944]
8679 Sat Mar  1 10:01:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8681         * string.c (rb_str_coderange_scan_restartable): should not return
8682           offset in the middle of a character.
8684         * string.c (rb_str_coderange_scan_restartable): should not return
8685           invalid cr value.
8687 Sat Mar  1 09:36:08 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8689         * sprintf.c (rb_str_format): "%#.0o" should keep prefix where
8690           "%#.0x" should not.
8692 Sat Mar  1 02:35:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8694         * bignum.c (big2str_find_n1): check integer overflow.
8696 Sat Mar  1 00:29:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8698         * encoding.c (rb_enc_dummy_p): bootstrap encodings can not be dummy.
8700         * encoding.c (rb_enc_ascget): no needs to call rb_enc_precise_mbclen()
8701           twice.
8703 Fri Feb 29 23:14:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8705         * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_chomp): test
8706           updated.
8708 Fri Feb 29 20:58:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8710         * test/ruby/test_iterator.rb (TestIterator::test_enumerator):
8711           adjust test for zip behavior reversion.
8713 Fri Feb 29 20:25:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8715         * string.c (rb_str_chomp_bang): now works on UTF-16.
8717         * string.c (tr_setup_table): negation should work on non ASCII
8718           compatible strings as well.
8720         * string.c (rb_str_split_m): awk split should work on non ASCII
8721           compatible strings as well.
8723 Fri Feb 29 18:08:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8725         * time.c (time_strftime): format should be ascii compatible.
8727         * parse.y (rb_intern3): non ASCII compatible symbols.
8729         * re.c (rb_reg_regsub): add encoding check.
8731         * string.c (rb_str_chomp_bang): ditto.
8733         * test/ruby/test_utf16.rb (TestUTF16::test_chomp): raises exception.
8735 Fri Feb 29 15:16:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8737         * string.c (rb_str_rpartition): calculation was done in byte indexing.
8739         * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_start_with):
8740           allow start_with? matching on broken strings.
8742 Fri Feb 29 15:12:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8744         * parse.y (opt_block_param): command can start just after block param
8745           definition.  [ruby-list:44479]
8747 Fri Feb 29 03:22:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8749         * test/ruby/test_time.rb (test_readers): fix typo.
8750           (test_strftime): "UTC" is also ok for time.gmtime.strftime("%Z").
8752 Fri Feb 29 02:50:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8754         * string.c (str_new): remove encoding assumption of empty string.
8756         * hash.c ( rb_f_getenv, env_fetch, env_inspect): result of ENV should
8757           be always ASCII-8BIT.
8759         * object.c (nil_to_s): nil.to_s should be US-ASCII.
8761 Fri Feb 29 02:24:22 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
8763         * ext/tk/lib/tk.rb: forgot to update RELEASE_DATE
8765         * ext/tk/lib/tk.rb, ext/tk/lib/tk/text.rb,
8766           ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: remove adhoc check
8767           of Ruby's features (use existence of some classes instead of
8768           comparing with RUBY_VERSION)
8770         * ext/tk/lib/tk/root.rb, ext/tk/lib/tk/autoload.rb: make TkRoot
8771           (Tk::Root) unswitchable
8773         * ext/tk/lib/multi-tk.rb: partial bug fix (still not work!!)
8775 Thu Feb 28 23:37:12 2008  Tanaka Akira  <akr@fsij.org>
8777         * lib/open-uri.rb (OpenURI::Meta#meta_setup_encoding): use ASCII-8BIT
8778           for charset unspecified non-text data.
8780 Thu Feb 28 22:19:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8782         * encoding.c (enc_capable): IMMEDIATE_P doesn't include Qnil and Qfalse.
8783           use SPECIAL_CONST_P.
8785 Thu Feb 28 19:45:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8787         * encoding.c (enc_find): check type of argument and convert to String
8788           if it is StringValue. [ruby-cvs:22866]
8790 Thu Feb 28 18:07:52 2008  Tanaka Akira  <akr@fsij.org>
8792         * lib/open-uri.rb (OpenURI::Meta#meta_setup_encoding): setup encoding
8793           by charset.
8794           (OpenURI::Meta#meta_add_field): call meta_setup_encoding when
8795           content-type.
8797 Thu Feb 28 15:29:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8799         * io.c (rb_io_getline_fast): scan coderange.
8801 Thu Feb 28 14:36:46 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8803         * string.c (rb_enc_str_copy): removed.
8805 Thu Feb 28 13:51:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8807         * eval.c (stack_check): made flag per threads.
8809         * thread.c (rb_thread_set_raised, rb_thread_reset_raised): prefixed.
8811 Thu Feb 28 11:43:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8813         * file.c (rb_file_flock): immediately returns on EAGAIN if
8814           non-blocking.  [ruby-core:15672]
8816 Thu Feb 28 11:23:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8818         * io.c (rb_io_getline_1): get rid of segfault.  [ruby-dev:33938]
8820 Thu Feb 28 11:19:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8822         * string.c (rb_str_reverse_bang): removed unused variables.
8824         * include/ruby/encoding.h (rb_str_coderange_scan_restartable): added
8825           prototype.
8827         * string.c (rb_str_coderange_scan_restartable, rb_str_times): removed
8828           unused variables.
8830         * string.c (rb_str_reverse_bang): ditto
8832         * string.c (rb_enc_str_copy): unused now.  may be used in future?
8834 Thu Feb 28 03:03:32 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
8836         * ext/tk/lib/tk.rb, ext/tk/lib/*: make default widget set
8837           switchable between Tk (standard Tcl/Tk widget set) and
8838           Ttk (Tile). Initial default widget set is Tk. Now, toplevel
8839           widget classes are removed and defined as aliases.
8840           For example, "TkButton" is an alias of the "Tk::Button" class.
8841           Those aliases are replaced when switching default widget set.
8842           "Tk.default_widget_set=" is the method for switching default
8843           widget set. "Tk.default_widget_set = :Ttk" defines Ttk (Tile)
8844           widget set as default. It means that "TkButton" denotes
8845           "Tk::Tile::Button" class. And then, "TkButton.new" creates
8846           a Tk::Tile::Button widget. Of course, you can back to use
8847           standard Tk widgets as the default widget set by calling
8848           "Tk.default_widget_set = :Tk", whenever you want. Based on
8849           the feature, you can use Ttk widget styling engine on your
8850           old Ruby/Tk application without modifying its source, if you
8851           don't use widget options unsupported on Ttk widgets (At first,
8852           call "Tk.default_widget_set = :Ttk", and next load and run
8853           your application).
8854           This is one step for supporting Tcl/Tk8.5 features.
8856 Wed Feb 27 22:55:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8858         * string.c (rb_str_coderange_scan_restartable): coderange scanning
8859           for partial read.
8861         * io.c (read_all): set coderange when not convert encoding.
8863 Wed Feb 27 03:55:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8865         * ext/extmk.rb, enc/make_encmake.rb: load current mkmf.rb even if
8866           cross-compiling.
8868         * ext/extmk.rb, enc/make_encmake.rb, lib/mkmf.rb: need to be 1.8
8869           compatible for cross-compiling.
8871 Tue Feb 26 16:53:13 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8873         * misc/ruby-mode.el (ruby-calculate-indent): should distinguish
8874           comment and # in strings.  [ruby-dev:33874]
8876 Tue Feb 26 16:41:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8878         * array.c (combi_len, rb_ary_product): check for overflow.
8879           [ruby-Bugs-18355]
8881 Tue Feb 26 16:38:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8883         * array.c (recursive_cmp): compare minimal length parts.
8885 Tue Feb 26 16:06:00 2008  Technorama Ltd.  <oss-ruby@technorama.net>
8887         * ext/openssl/ossl_{ec,dh,dsa,rsa}.c: Remove useless warnings.
8889         * ext/openssl/ossl_asn1.c: Simplify code.
8891         * ext/openssl/ossl_ssl_session.c Fix compiler warnings.
8892           Undefine #id if SSL_SESSION_get_id is not supported.
8894 Tue Feb 26 15:50:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8896         * parse.y (value_expr_gen): removed inappropriate warning.
8897           [ruby-core:15660]
8899 Tue Feb 26 15:43:42 2008  Tanaka Akira  <akr@fsij.org>
8901         * parse.y (tokadd_escape): refactored.  [ruby-core:15657]
8903 Tue Feb 26 15:30:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8905         * array.c (rb_ary_eql, rb_ary_cmp): get rid of stack overflow with
8906           self-recursive constructs.  [ruby-Bugs-18356]
8908 Tue Feb 26 01:16:01 2008  Tanaka Akira  <akr@fsij.org>
8910         * include/ruby/ruby.h (ROBJECT_NUMIV): renamed from ROBJECT_LEN.
8911           (ROBJECT_IVPTR): renamed from ROBJECT_PTR.
8913         * variable.c: follow the above renaming.
8915         * object.c: ditto.
8917         * gc.c: ditto.
8919         * marshal.c: ditto.
8921 Mon Feb 25 17:30:29 2008  Technorama Ltd.  <oss-ruby@technorama.net>
8923         * ext/openssl/digest.c ext/openssl/lib/openssl/digest.rb:
8924           Commit patch #9280 from Akinori MUSHA.
8925           Simplify the OpenSSL::Digest class and make use of the
8926           existing Digest framework.
8927           Enhance performance.
8929 Mon Feb 25 15:33:29 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8931         * bignum.c (big2str_karatsuba): initialize cache if not initialized.
8933         * bignum.c (Init_Bignum): delayed initializing cache.
8934           [ruby-dev:33930]
8936 Mon Feb 25 13:40:03 2008  Tanaka Akira  <akr@fsij.org>
8938         * process.c (Init_process): share bignum objects for RLIM_INFINITY,
8939           RLIM_SAVED_MAX and RLIM_SAVED_CUR if they are equal.
8941 Mon Feb 25 10:41:41 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
8943         * encoding.c (Encoding#dummy): minor grammatical fixes
8944           in rdoc documentation.
8946 Mon Feb 25 00:01:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8948         * cygwin/GNUmakefile.in (clean-local): should be double-colon.
8950 Sun Feb 24 23:39:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8952         * common.mk, {bcc,win}32/Makefile.sub (clean-local): remove
8953           intermediate files.
8955         * cygwin/GNUmakefile.in (clean-local): remove def file.
8957 Sun Feb 24 06:49:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8959         * debug.c (ruby_set_debug_option): separated ruby_each_words().
8961         * util.c (ruby_each_words): extracted from ruby_set_debug_option().
8963         * ruby.c (enable_option, disable_option): allow all for all known
8964           features.
8966         * ruby.c (proc_options): generalized enable/disable options.
8968         * ruby.c (ruby_init_gems): take enabled flag.  [ruby-core:14840]
8970         * ruby.c (process_options): added --disable-rubyopt flag.
8972         * include/ruby/util.h (ruby_each_words): prototype.
8974 Sun Feb 24 05:25:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8976         * ruby.c (proc_options): check if argument for -E exists.
8978 Sun Feb 24 05:09:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8980         * misc/ruby-style.el (ruby-style-label-indent): fix for labels inside
8981           blocks in switch.
8983 Sun Feb 24 03:52:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8985         * util.c (valid_filename): use O_EXCL to get rid of clobbering
8986           existing files in race conditions.
8988 Sat Feb 23 21:36:13 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8990         * ext/win32ole/win32ole.c (ole_init_cp): should return value.
8992 Sat Feb 23 20:16:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8994         * string.c (str_sublen): removed.
8996         * string.c (rb_str_reverse, rb_str_reverse_bang): use
8997           single_byte_optimizable.
8999 Sat Feb 23 19:25:18 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9001         * string.c (rb_enc_cr_str_copy_for_substr): renamed from
9002           rb_enc_cr_str_copy.
9004         * string.c: use rb_enc_cr_str_copy_for_substr and keep coderange.
9006 Sat Feb 23 18:50:17 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
9008         * ext/win32ole/win32ole.c (ole_encoding2cp): remove US-ASCII
9009           mapping.
9011 Sat Feb 23 01:09:47 2008  Tanaka Akira  <akr@fsij.org>
9013         * process.c (rlimit_resource_type): new function.
9014           (rlimit_resource_value): new function.
9015           (proc_getrlimit): use rlimit_resource_type to accept
9016           symbol and string as resource type.
9017           (proc_setrlimit): use rlimit_resource_type and rlimit_resource_value
9018           to accept symbol and string as resource type and values.
9020 Fri Feb 22 21:12:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9022         * string.c (rb_enc_cr_str_copy): check string's coderange is 7bit or
9023           valid.
9025 Fri Feb 22 19:50:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9027         * bignum.c (BIGZEROP): fix for longer Bignum zeros.  [ruby-Bugs-17454]
9029 Fri Feb 22 15:47:36 2008  Tanaka Akira  <akr@fsij.org>
9031         * encoding.c (rb_enc_mbclen): return minlen instead of 1 when
9032           a character is not found properly.
9034         * string.c (rb_enc_strlen): round up string length with fixed
9035           multibyte encoding such as UTF-32.
9036           (rb_enc_strlen_cr): ditto.
9037           (rb_str_substr): fix substring with fixed multibyte encoding.
9038           (rb_str_justify): check number of characters.
9040 Fri Feb 22 12:11:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9042         * string.c (rb_str_inspect): string of ascii incompatible encoding
9043           should be escaped and returned as US-ASCII encoding.
9045 Fri Feb 22 11:16:55 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9047         * string.c (rb_str_substr): copy encoding although empty string.
9049 Fri Feb 22 04:48:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9051         * string.c (rb_str_times): empty string's coderange is CODERANGE_7BIT.
9053         * string.c (rb_str_substr): ditto.
9055         * encoding.c (rb_enc_compatible): empty string is compatible with not
9056           only nonasciicompatible strings. [ruby-dev:33895]
9058 Thu Feb 21 17:15:15 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
9060         * transcode.c: Added basic support for passing options to String#encode
9061           via a hash. Currently only one option, with one value, is supported:
9062           invalid: :ignore (dropping invalid byte sequences instead of
9063           producing an error). Option naming is not yet stable!
9065         * test/ruby/test_transcode.rb: Added a single test for invalid: :ignore
9066           option. Not more tests because most data does not yet distinguish
9067           between INVALID and UNKNOWN.
9069 Thu Feb 21 16:35:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9071         * array.c (rb_ary_unshift_m): expands enough for argc.  [ruby-dev:33880]
9073 Thu Feb 21 14:49:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9075         * io.c (argf_set_encoding): uses current_file after check if next
9076           input is available.
9078 Thu Feb 21 14:13:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9080         * io.c (rb_f_putc): invoke stdout method so that redefining putc
9081           may take effect.   [ruby-talk:291844]
9083         * io.c (rb_f_puts): ditto.
9085 Thu Feb 21 11:10:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9087         * string.c: replace rb_enc_copy by rb_enc_cr_str_copy or
9088           rb_enc_cr_str_exact_copy.
9090 Thu Feb 21 10:35:04 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9092         * include/ruby/encoding.h (rb_enc_asciicompat): dummy encoding is not
9093           ascii compatible. [ruby-dev:33878]
9095 Thu Feb 21 00:01:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9097         * configure.in (RPATHFLAG): -R option of HP-UX ld is not for runtime
9098           load path.  [ruby-list:44600]
9100 Wed Feb 20 23:55:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9102         * win32/win32.c (rb_w32_map_errno): exported.
9104 Wed Feb 20 23:28:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9106         * ext/readline/extconf.rb (rl_event_hook): workaround for native
9107           windows.
9109 Wed Feb 20 19:42:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9111         * encoding.c (rb_enc_associate_index): doesn't clear coderange
9112           when new encoding equals to old one.
9114 Wed Feb 20 19:15:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9116         * string.c (rb_enc_str_copy): added for wrapper for rb_enc_copy.
9117           this also copy coderange when ptr and len is equal.
9119         * string.c (rb_enc_cr_str_copy): added for wrapper for rb_enc_copy.
9120           this always copy coderange.
9122         * string.c (str_replace_shared): use rb_enc_str_copy.
9124         * string.c (str_new3): don't rb_enc_copy because encoding is copied
9125           at str_replace_shared.
9127 Wed Feb 20 13:08:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9129         * instruby.rb (parse_args): added --dir-mode, --script-mode and
9130           --cmd-type options.  [ruby-dev:33816]
9132         * instruby.rb (parse_args): added bin-arch and bin-comm to install
9133           type, for compiled files and script files.
9135         * instruby.rb (parse_args): deal with make style command line macros,
9136           and count as long style options if prefixed with INSTALL_.
9138         * instruby.rb (makedirs): use $dir_mode.  [ruby-dev:33805]
9140         * instruby.rb (open_for_install): set file mode, which is now
9141           permission mode instead of access mode.
9143         * instruby.rb (bin-comm): installs scripts with replacing shebang
9144           lines.
9146 Wed Feb 20 10:04:22 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9148         * io.c (open_key_args): set arg->io even if no options passed.
9149           [ruby-dev:33072]
9151 Tue Feb 19 21:11:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9153         * string.c (rb_enc_strlen_cr): get length with coderange scan.
9155         * string.c (str_strlen): use rb_enc_strlen_cr. [ruby-dev:33849]
9157 Tue Feb 19 20:49:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9159         * eval.c (rb_raise_jump): moved adjustment for control frame.
9161 Tue Feb 19 18:34:32 2008  Tanaka Akira  <akr@fsij.org>
9163         * gc.c (STACK_LENGTH) [SPARC] : 0x80 offset removed.  [ruby-dev:33857]
9165 Tue Feb 19 14:27:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9167         * ext/readline/readline.c (readline_event): prevent polling.  based on
9168           a patch from error errorsson in [ruby-Bugs-17675].
9170 Tue Feb 19 11:14:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9172         * eval.c (ruby_exec_node): no thread starts inside iseq compilation.
9174         * eval.c (rb_f_raise): skip current control frame.  [ruby-core:15589]
9176         * insns.def (opt_div): raise as the ordinary method. [ruby-core:15589]
9178 Mon Feb 18 15:16:30 2008  Tanaka Akira  <akr@fsij.org>
9180         * string.c (rb_str_each_line): fix newline size.
9182 Mon Feb 18 13:06:37 2008  Tanaka Akira  <akr@fsij.org>
9184         * lib/irb/locale.rb (IRB::Locale#lc2kconv): check ja_JP.EUC-JP as well.
9186 Mon Feb 18 11:51:19 2008  Tanaka Akira  <akr@fsij.org>
9188         * re.c (re_warn): defined to restore warnings for /[a-c-e]/, etc.
9190 Mon Feb 18 10:17:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9192         * ext/pty/lib/expect.rb (IO#expect): check if peer is closed.
9193           [ruby-Bugs-17940]
9195 Mon Feb 18 00:33:03 2008  Tanaka Akira  <akr@fsij.org>
9197         * re.c (rb_reg_regsub): don't repeat repl twice with
9198           "X".sub!(/./, sprintf("\\%c", 255)).
9200 Sun Feb 17 23:06:55 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
9202         * lib/cgi.rb (CGI::escapeHTML): use gsub with Hash. [ruby-dev:33828]
9204 Sun Feb 17 21:38:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9206         * encoding.c (ENC_CODERANGE_AND): fix broken case. [ruby-dev:33826]
9208         * string.c (rb_str_times): fix broken case. [ruby-dev:33826]
9210 Sun Feb 17 20:45:10 2008  Tanaka Akira  <akr@fsij.org>
9212         * re.c (rb_reg_prepare_re): add enable_warning parameter.
9213           (rb_reg_adjust_startpos): disable warning by rb_reg_prepare_re.
9214           (rb_reg_search): follow rb_reg_prepare_re parameter change.
9216 Sun Feb 17 20:12:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9218         * test/ruby/test_regexp.rb: add tests to achieve over 90% test
9219           coverage of re.c.
9221 Sun Feb 17 15:25:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9223         * encoding.c (ENC_CODERANGE_AND): added.
9225         * string.c (rb_str_plus, rb_str_times): keep coderange.
9227         * parse.y (STR_NEW0) use rb_usascii_str_new.
9229 Sun Feb 17 14:07:24 2008  Tanaka Akira  <akr@fsij.org>
9231         * string.c (str_strlen): rb_enc_strlen doesn't fail.
9233 Sun Feb 17 13:03:48 2008  Tanaka Akira  <akr@fsij.org>
9235         * string.c (str_sublen): use rb_enc_strlen.
9237 Sun Feb 17 12:17:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9239         * enc/{euc_jp.c,gbk.c,iso_8859_1.c,iso_8859_11.c,iso_8859_13.c,
9240           iso_8859_2.c,iso_8859_6.c,iso_8859_7.c,iso_8859_8.c,iso_8859_9.c,
9241           shift_jis.c,windows_1251.c}: add document about encodings.
9243         * enc/cp949.c: divided into new file.
9245 Sun Feb 17 10:59:04 2008  Tanaka Akira  <akr@fsij.org>
9247         * re.c (rb_reg_quote): return US-ASCII string consistently.
9249 Sun Feb 17 09:17:08 2008  Tanaka Akira  <akr@fsij.org>
9251         * string.c (rb_str_times): reduce loop overhead.
9253 Sun Feb 17 03:37:01 2008  Tanaka Akira  <akr@fsij.org>
9255         * include/ruby/re.h (struct rmatch_offset): new struct for character
9256           offsets.
9257           (struct rmatch): new struct.
9258           (struct RMatch): reference struct rmatch.
9259           (RMATCH_REGS): new macro.
9261         * re.c (match_alloc): initialize struct rmatch.
9262           (pair_byte_cmp): new function.
9263           (update_char_offset): update character offsets.
9264           (match_init_copy): copy regexp and character offsets.
9265           (match_sublen): removed.
9266           (match_offset): use update_char_offset.
9267           (match_begin): ditto.
9268           (match_end): ditto.
9269           (rb_reg_search): make character offset updated flag false.
9270           (match_size): use RMATCH_REGS.
9271           (match_backref_number): ditto.
9272           (rb_reg_nth_defined): ditto.
9273           (rb_reg_nth_match): ditto.
9274           (rb_reg_match_pre): ditto.
9275           (rb_reg_match_post): ditto.
9276           (rb_reg_match_last): ditto.
9277           (match_array): ditto.
9278           (match_aref): ditto.
9279           (match_values_at): ditto.
9280           (match_inspect): ditto.
9282         * string.c (rb_str_subpat_set): use RMATCH_REGS.
9283           (rb_str_sub_bang): ditto.
9284           (str_gsub): ditto.
9285           (rb_str_split_m): ditto.
9286           (scan_once): ditto.
9288         * gc.c (obj_free): free character offsets.
9290 Sun Feb 17 03:13:40 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9292         * win32/resource.rb: made version infos confirm to OS spec.
9294         * {bcc32,win32}/Makefile.sub (*.rc): add dependency.
9296 Sat Feb 16 20:49:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9298         * string.c (rb_str_substr): optimized for UTF-8.
9300 Sat Feb 16 18:13:53 2008  Tanaka Akira  <akr@fsij.org>
9302         * encoding.c (rb_enc_compatible): check encoding incapable arguments.
9304 Sat Feb 16 20:12:47 2008  Tanaka Akira  <akr@fsij.org>
9306         * re.c (match_inspect): avoid SEGV with MatchData.allocate.inspect.
9308 Sat Feb 16 19:04:17 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9310         * string.c (str_strlen): revert r15507. [ruby-dev:33810]
9312 Sat Feb 16 18:25:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9314         * string.c (str_strlen): little more optimization.
9315           (rb_enc_nth): remove needless variable 'c'.
9317 Sat Feb 16 18:00:13 2008  Tanaka Akira  <akr@fsij.org>
9319         * encoding.c (rb_enc_compatible): empty strings are always compatible.
9321         * string.c (rb_enc_cr_str_buf_cat): ditto.
9323 Sat Feb 16 16:14:35 2008  Tanaka Akira  <akr@fsij.org>
9325         * string.c (rb_enc_strlen): UTF-8 character count moved to str_strlen.
9326           (str_strlen): UTF-8 character count is only applicable for valid
9327           UTF-8 string.  [ruby-dev:33807]
9329 Sat Feb 16 13:16:49 2008  Tanaka Akira  <akr@fsij.org>
9331         * string.c (rb_str_sub_bang): stringize replacing hash values.
9332           (str_gsub): ditto.
9334 Sat Feb 16 13:01:33 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9336         * string.c (rb_enc_strlen): add search_nonascii like character
9337           counter for UTF-8.
9339 Sat Feb 16 11:53:35 2008  Tanaka Akira  <akr@fsij.org>
9341         * encoding.c (rb_enc_strlen): moved to string.c.
9343         * string.c (rb_enc_strlen): use search_nonascii.
9344           (str_strlen): don't use search_nonascii.
9346 Sat Feb 16 11:45:31 2008  Tanaka Akira  <akr@fsij.org>
9348         * lib/require_relative.rb: check require_relative call in eval.
9350 Sat Feb 16 08:00:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9352         * ruby.c (process_options): set default_external before loading
9353           libraries. [ruby-dev:33801]
9355 Sat Feb 16 05:49:54 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9357         * enc/iso_8859_{4,13}.c: Windows-1257 is replica of ISO-8859-13.
9359         * string.c (single_byte_optimizable): rb_enc_mbminlen must be 1
9360           when rb_enc_mbmaxlen is 1.
9362 Sat Feb 16 03:43:18 2008  Tanaka Akira  <akr@fsij.org>
9364         * encoding.c (rb_enc_nth): moved to string.c.
9366         * string.c (rb_enc_nth): moved from string.c.  use search_nonascii
9367           for ASCII compatible string.
9368           (str_nth): wrong optimization removed to fix
9369           "a".force_encoding("EUC-JP").slice!(0,10) returns
9370           "a\x00\x00\x00\x00\x00\x00\x00\x00\x00"
9372 Sat Feb 16 00:21:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9374         * range.c (rb_range_beg_len): check if responds to "begin" and "end"
9375           methods for non-Range object.
9377 Fri Feb 15 20:29:42 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
9379         * ext/win32ole/win32ole.c (ole_init_cp): initialize WIN32OLE.codepage
9380           according to Encoding.default_external.
9382         * test/win32ole/test_win32ole.rb: ditto.
9384 Fri Feb 15 19:31:23 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9386         * include/ruby/node.h (NODE_FL_NEWLINE): renamed from NODE_NEWLINE
9387           to denote its a flag.  [ruby-core:15529]
9389 Fri Feb 15 18:23:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9391         * string.c (rb_str_sub_bang, str_gsub): allows hash for replacement.
9393 Fri Feb 15 17:12:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9395         * string.c (str_strlen): use search_nonascii() for performance.
9397         * string.c (str_nth): ditto.
9399 Fri Feb 15 16:22:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9401         * io.c (open_key_args): allow specifying both :mode and :encoding.
9403 Fri Feb 15 15:34:47 2008  Tanaka Akira  <akr@fsij.org>
9405         * string.c (rb_str_getbyte): new method.
9406           (rb_str_setbyte): new method.
9408 Fri Feb 15 15:29:03 2008  Tanaka Akira  <akr@fsij.org>
9410         * lib/require_relative.rb: new file.
9412 Fri Feb 15 15:23:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9414         * ext/iconv/iconv.c (iconv_convert): check upper bound.  a patch from
9415           Daniel Luz at [ruby-Bugs-17910].
9417 Fri Feb 15 10:35:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9419         * re.c (rb_reg_quote): set US-ASCII for ASCII-only string.
9420           [ruby-dev:33785]
9422 Fri Feb 15 10:27:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9424         * {win,bcc}32/Makefile.sub (config.h): added HAVE_FTRUNCATE.
9425           [ruby-dev:33786]
9427 Fri Feb 15 09:44:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9429         * parse.y (reg_compile_gen): reg_fragment_setenc might not raise an
9430           exception before rb_reg_compile.
9432 Fri Feb 15 07:37:40 2008  Eric Hodel  <drbrain@segment7.net>
9434         * lib/rdoc/ri/paths.rb: Preserve compatibility with 1.8.
9436 Fri Feb 15 02:42:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9438         * configure.in (ftruncate): check if available.
9440         * file.c (rb_file_truncate): check if ftruncate instead of truncate.
9442 Fri Feb 15 02:40:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9444         * configure.in (sigsetmask): check when signal semantics is not POSIX.
9446         * signal.c (USE_TRAP_MASK): set true if sigprocmask or sigsetmask is
9447           available.
9449 Thu Feb 14 23:56:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9451         * eval_error.c (error_print): append a newline to rest lines.
9453         * parse.y (reg_compile_gen): appends error message from
9454           rb_reg_compile() to one from reg_fragment_setenc().
9456 Thu Feb 14 21:00:14 2008  Tanaka Akira  <akr@fsij.org>
9458         * io.c (io_reopen): check STDIN, STDOUT and STDERR mode according to
9459           stdio streams.
9461 Thu Feb 14 16:07:40 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9463         * test/ruby/test_math.rb: actual-expected argument ordering for
9464           test_math.rb fixed.  a patch from Tadashi Saito
9465           <shiba AT mail2.accsnet.ne.jp> in [ruby-dev:33770].
9467 Thu Feb 14 16:02:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9469         * file.c (rb_file_s_utime): inhibits with secure level 2 or higher.
9471 Thu Feb 14 12:30:02 2008  Tanaka Akira  <akr@fsij.org>
9473         * re.c (rb_reg_preprocess_dregexp): use non-preprocessed regexp source
9474           for result.
9476 Thu Feb 14 01:43:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9478         * lib/timeout.rb (Timeout::timeout): made sensitive to location on the
9479           stack.  [ruby-core:15458]
9481 Thu Feb 14 00:49:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9483         * common.mk (INSTRUBY_ARGS): pass mode to install.  [ruby-dev:33766]
9485         * instruby.rb (parse_args): added --data-mode and --prog-mode options.
9487 Thu Feb 14 00:02:19 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9489         * eval.c (eval): allow to eval in a binding that has a singleton method.
9490           [ruby-dev:33763]
9492         * test/ruby/test_proc.rb: add tests to achieve over 70% test coverage
9493           of proc.c.
9495         * test/ruby/test_method.rb: ditto.
9497 Wed Feb 13 22:46:36 2008  Tanaka Akira  <akr@fsij.org>
9499         * lib/pathname.rb (Pathname#sub_ext): new method.  [ruby-list:44608]
9501 Wed Feb 13 21:50:32 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9503         * proc.c (proc_curry): new method. [ruby-dev:33676]
9505         * test/ruby/test_proc.rb: add tests for above.
9507 Wed Feb 13 20:48:50 2008  Tanaka Akira  <akr@fsij.org>
9509         * include/ruby/ruby.h (RObject): add iv_index_tbl for shortcut of
9510           RCLASS_IV_INDEX_TBL(rb_obj_class(obj)).
9511           (ROBJECT_IV_INDEX_TBL): defined.
9513         * object.c (init_copy): initialize iv_index_tbl in struct RObject.
9515         * variable.c (ivar_get): use ROBJECT_IV_INDEX_TBL.
9516           (rb_ivar_defined): ditto.
9517           (obj_ivar_each): ditto.
9518           (rb_obj_remove_instance_variable): ditto.
9519           (rb_ivar_set): update iv_index_tbl in struct RObject.
9521 Wed Feb 13 16:21:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9523         * lib/uri/generic.rb: revert r15442. 2nd argument of String#sub parse
9524           escapes. [ruby-dev:33726]
9526         * bootstraptest/test_method.rb, enc/depend, instruby.rb, lib/mkmf.rb,
9527           mkconfig.rb: revert r15443. ditto.
9529 Wed Feb 13 11:20:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9531         * enc/depend: fix typo.
9533         * lib/mkmf.rb: revert r15443. "\\1#{sep}\\2" is wrong if sep is ended
9534           with "\\".
9536 Wed Feb 13 08:57:21 2008  Eric Hodel  <drbrain@segment7.net>
9538         * lib/rdoc/markup/inline.rb:  Allow inline markup to have a leading
9539           '#' or '\', or trailing punctuation.  i.e. *#freeze?*, *\foo?*.
9541 Wed Feb 13 07:21:23 2008  Eric Hodel  <drbrain@segment7.net>
9543         * lib/rdoc/to_html_hyperlink.rb:  Moved linking to to_html.rb, move
9544           crossref to to_html_crossref.rb
9546 Wed Feb 13 04:15:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9548         * parse.y (arg_concat_gen, arg_append_gen): optimize for array push.
9550         * parse.y (arg_concat_gen): optimize for array concat.
9552         * parse.y (arg_add_gen): removed since identical to arg_append_gen.
9554 Tue Feb 12 21:04:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9556         * parse.y (exc_list): should use mrhs if non array.
9558 Tue Feb 12 20:32:50 2008  Tadayoshi Funaba  <tadf@dotrb.org>
9560         * lib/rational.rb (floor, ceil, truncate, round): do not use
9561           definitions of Numeric.
9563         * lib/rational.rb (to_i): should returns truncated self.
9565         * lib/complex.rb (numerator): requires
9566           Integer#{numerator,denominator}.
9568         * lib/complex.rb (quo): do not use definition of Numeric.
9570         * lib/complex.rb (>, >=, <, <=, between?, div, divmod, modulo,
9571           floor, ceil, truncate, round): undef'ed.
9573         * lib/mathn.rb (Rational#inspect): removed.
9575 Tue Feb 12 16:48:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9577         * parse.y (args, mrhs): flattens literal array splats.
9579         * parse.y (exc_list): splat literal array.
9581 Tue Feb 12 15:27:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9583         * bootstraptest/runner.rb, bootstraptest/test_method.rb, enc/depend,
9584           instruby.rb, lib/mkmf.rb, lib/test/unit/util/procwrapper.rb,
9585           mkconfig.rb, sample/test.rb, template/vm.inc.tmpl,
9586           test/ruby/test_stringchar.rb: fixes around String#gsub.
9589 Tue Feb 12 15:11:47 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9591         * ext/json/lib/json/pure/generator.rb,
9592           ext/json/lib/json/pure/parser.rb, ext/openssl/lib/openssl/x509.rb,
9593           ext/win32ole/sample/olegen.rb, lib/date/format.rb, lib/irb/context.rb,
9594           lib/irb/workspace.rb, lib/net/http.rb, lib/net/imap.rb,
9595           lib/rdoc/generator.rb, lib/rdoc/markup/to_html.rb,
9596           lib/rdoc/markup/to_latex.rb, lib/rdoc/parsers/parse_c.rb,
9597           lib/rdoc/ri/formatter.rb, lib/rexml/parsers/baseparser.rb,
9598           lib/rexml/quickpath.rb, lib/rexml/text.rb, lib/rss/parser.rb,
9599           lib/uri/common.rb, lib/uri/generic.rb, lib/webrick/httpresponse.rb,
9600           lib/webrick/httpservlet/filehandler.rb, lib/yaml/baseemitter.rb,
9601           lib/yaml/encoding.rb: performance tuning around String#gsub.
9603 Tue Feb 12 12:16:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9605         * string.c (rb_str_hash_cmp): lighter version of rb_str_cmp() for
9606           hash comparison function.
9608         * hash.c (rb_any_cmp): use rb_str_hash_cmp().
9610         * string.c (rb_str_casecmp): should return nil for incompatible
9611           comparison.
9613 Tue Feb 12 12:13:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9615         * instruby.rb: specify file mode to install.  a patch from
9616           pegacorn  <subscriber.jp AT gmail.com> in [ruby-dev:33699].
9618 Tue Feb 12 11:38:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9620         * numeric.c (rb_num_coerce_bin): add ID argument to specify
9621           caller's method name.  [ruby-dev:33663]
9623         * numeric.c (rb_num_coerce_cmp): ditto.
9625         * numeric.c (rb_num_coerce_relop): ditto.
9627         * ext/bigdecimal/bigdecimal.c (DoSomeOne): add function name argument.
9629 Tue Feb 12 10:25:02 2008
9631         * lib/rdoc/rdoc.rb:  Wrap parse_files' read in version check for
9632           backwards compatibility.
9634 Tue Feb 12 10:15:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9636         * ruby.c (load_file): enc must effect source encoding.
9637           [ruby-core:15496]
9639 Tue Feb 12 10:16:47 2008  Eric Hodel  <drbrain@segment7.net>
9641         * lib/rdoc/ri/paths.rb:  Restore require rubygems check.
9643 Tue Feb 12 02:42:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9645         * range.c (range_include): specialize single character string
9646           case (e.g. (?a ..?z).include(?x)) for performance.
9647           [ruby-core:15481]
9649         * string.c (rb_str_upto): specialize single character case.
9651         * string.c (rb_str_hash): omit coderange scan for performance.
9653         * object.c (rb_check_to_integer): check Fixnum first.
9655         * object.c (rb_to_integer): ditto.
9657         * string.c (rb_str_equal): inline memcmp to avoid unnecessary
9658           rb_str_comparable().
9660         * parse.y (rb_intern2): use US-ASCII encoding.
9662         * parse.y (rb_intern_str): ditto.
9664 Mon Feb 11 17:21:18 2008  Kouhei Sutou  <kou@cozmixng.org>
9666         * lib/rss/rss.rb (RSS::VERSION), test/rss/test_version.rb:
9667           0.2.3 -> 0.2.4.
9669         * lib/rss/maker.rb, lib/rss/maker/, test/rss/test_maker_2.0.rb:
9670           fixed a bug that RSS::Maker.make("0.9")'s item doesn't make some
9671           elements if description is missed.
9672           Reported by Michael Auzenne. Thanks!!!
9674         * lib/rss/maker/0.9.rb, test/rss/test_maker_0.9.rb:
9675           RSS::Maker.make("0.9") generates RSS 0.92 not RSS 0.91.
9677 Mon Feb 11 10:43:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9679         * ruby.c (load_file): the encoding of DATA follows the source
9680           file encoding. [ruby-dev:33693]
9682 Mon Feb 11 06:50:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9684         * test/ruby/test_pack.rb: fix tests for 64bit CPU.
9686         * test/ruby/test_bignum.rb: ditto.
9688         * test/ruby/test_file_exhaustive.rb: ditto.
9690         * test/ruby/test_integer.rb: ditto.
9692         * test/ruby/test_time.rb: ditto.
9694         * test/ruby/test_numeric.rb: ditto.
9696         * test/ruby/test_fixnum.rb: ditto.
9698 Mon Feb 11 00:18:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9700         * lib/benchmark.rb (Job::Benchmark#item): fix typo.
9702 Sun Feb 10 21:58:32 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9704         * common.mk (encdb, transdb): depend on $(PREP).
9706 Sun Feb 10 16:58:20 2008  Eric Hodel  <drbrain@segment7.net>
9708         * lib/rubygems*, test/rubygems*, gem_prelude.rb: Import RubyGems
9709           r1601.  [ruby-core:15381]
9711 Sun Feb 10 15:07:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9713         * {bcc32,win32,wince}/Makefile.sub (MISSING): added cbrt.obj.
9715 Sun Feb 10 12:58:33 2008  Eric Hodel  <drbrain@segment7.net>
9717         * lib/rdoc/code_objects.rb: Make some attributes accessible for reuse.
9718         * lib/rdoc/generator/html.rb: Pull out ContextUser classes and related
9719           methods for reuse.
9720         * lib/rdoc/generator.rb: Move ContextUser classes to
9721           RDoc::Generator::Context for reuse.
9722         * lib/rdoc/rdoc.rb: Make RDoc::RDoc initialization a little easier.
9723         * lib/rdoc/options.rb: Make RDoc::Options easier to use without
9724           parsing an ARGV.
9725         * lib/rdoc/markup/to_*.rb: Subclass RDoc::Markup::Formatter.
9726         * lib/rdoc/markup/formatter.rb: Add RDoc::Markup::Formatter to make
9727           RDoc markup conversion easier.
9728         * lib/rdoc/markup/fragments.rb: Make RDoc::Markup::ListItem easier to
9729           test.
9730         * lib/rdoc/markup/to_html_hyperlink.rb: Pulled out of the HTML
9731           generator for easier reusability.
9732         * lib/rdoc/markup.rb: Fix bug with labeled lists containing bullet
9733           lists.
9734         * lib/rdoc/generators/html/html.rb: Fix Constant display.
9736 Sat Feb  9 23:44:29 2008  Tanaka Akira  <akr@fsij.org>
9738         * missing/tgamma.c (tgamma): use lgamma_r if available.
9740 Sat Feb  9 23:22:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9742         * ext/bigdecimal/extconf.rb: simplified the condition.
9744 Sat Feb  9 21:20:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9746         * test/ruby/test_math.rb: add tests for Math.gamma, Math.lgamma and
9747           Math.cbrt, and use assert_in_delta instead of assert.
9749 Sat Feb  9 18:34:45 2008  Tanaka Akira  <akr@fsij.org>
9751         * math.c (math_cbrt): new method Math.cbrt.
9753         * configure.in (cbrt): check for replacement functions.
9755         * missing/cbrt.c: new file.
9757 Sat Feb  9 17:51:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9759         * ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): use strtod() for more
9760           precision.  [ruby-talk:290296]
9762         * ext/bigdecimal/bigdecimal.c (BASE_FIG): made constant.
9764         * ext/bigdecimal/extconf.rb: ditto.  [ruby-dev:33658]
9766 Sat Feb  9 12:06:45 2008  Tanaka Akira  <akr@fsij.org>
9768         * missing/tgamma.c (tgamma): add error check.
9770 Sat Feb  9 11:47:03 2008  Tanaka Akira  <akr@fsij.org>
9772         * math.c (math_gamma): add error check.
9773           (math_lgamma): ditto.
9775 Sat Feb  9 11:09:26 2008  Tanaka Akira  <akr@fsij.org>
9777         * missing/lgamma_r.c (lgamma_r): return HUGE_VAL for non-positive
9778           integers.
9780 Sat Feb  9 10:03:07 2008  Tanaka Akira  <akr@fsij.org>
9782         * string.c (rb_str_new4): copy encoding from orig, instead of shared
9783           one.
9785 Sat Feb 09 01:01:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9787         * file.c (lchmod_internal): fix warning cast from pointer to integer of
9788           different size.
9790 Sat Feb  9 00:44:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9792         * lib/irb.rb (IRB::Irb::eval_input): rescues Interrupt and other than
9793           SystemExit and SignalException.  [ruby-core:15359]
9795 Fri Feb  8 23:51:36 2008  Tanaka Akira  <akr@fsij.org>
9797         * missing/lgamma_r.c (lgamma_r): use smaller argument for sin function.
9799 Fri Feb  8 22:10:36 2008  Tanaka Akira  <akr@fsij.org>
9801         * lib/open-uri.rb (OpenURI.open_http): rescue URI::InvalidURIError by
9802           URI.parse for location URI.
9804 Fri Feb  8 19:22:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9806         * ext/iconv/iconv.c (rb_str_derive): uses rb_str_subseq() for byte
9807           length.  [ruby-dev:33653]
9809         * ext/iconv/iconv.c (iconv_convert): added toidx argument to set
9810           encoding of successfully converted string.  [ruby-dev:33221]
9812 Fri Feb  8 15:09:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9814         * lib/mkmf.rb (xsystem): expand macros like as make.
9816 Fri Feb  8 09:27:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9818         * lib/rdoc/ri/driver.rb (read_yaml): remove SM* for compatibility.
9820 Fri Feb  8 00:07:24 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9822         * test/ruby/test_hash.rb: follow the change of Hash#flatten.
9824         * test/ruby/test_time.rb: add tests to achieve over 70% test coverage
9825           of time.c.
9827         * test/ruby/test_prec.rb: ditto over 90% for prec.c.
9829 Thu Feb  7 19:11:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9831         * string.c (rb_str_dup): reverted unneeded change.  [ruby-dev:33634]
9833         * string.c (rb_str_replace): makes frozen shared string before
9834           sharing.
9836 Thu Feb  7 16:33:51 2008  Tanaka Akira  <akr@fsij.org>
9838         * io.c (io_reopen): don't change access mode for stdin, stdout and
9839           stderr.  [ruby-core:15360]
9841 Thu Feb  7 16:33:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9843         * string.c (str_replace_shared): replaces string with sharing.
9845         * string.c (rb_str_new4, rb_str_associate, rb_str_associated): allows
9846           associated strings shared.
9848         * string.c (rb_str_dup, rb_str_substr, rb_str_replace): shares memory.
9849           [ruby-core:15400]
9851 Thu Feb  7 15:42:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9853         * string.c (rb_str_end_with): compares with the suffix.
9855 Thu Feb  7 15:03:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9857         * enc/trans/korean.c: add support for CP949 by Park Ji-In.
9858           [ruby-dev:33626]
9860 Thu Feb  7 11:11:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9862         * missing/lgamma_r.c (lgamma_r): some compilers don't permit dividing
9863           by literal 0.0. use const variable instead.
9865         * {bcc32,win32,wince}/Makefile.sub (MISSING): add lgamma_r.obj and
9866           tgamma.obj.
9868 Thu Feb  7 10:39:21 2008  Tanaka Akira  <akr@fsij.org>
9870         * math.c (math_gamma): new method Math.gamma.
9871           (math_lgamma): new method Math.lgamma.
9873         * include/ruby/missing.h (tgamma): declared unless HAVE_TGAMMA.
9874           (lgamma_r): declared unless HAVE_LGAMMA_R.
9876         * configure.in (tgamma): check for replacement functions.
9877           (lgamma_r): ditto.
9879         * missing/tgamma.c: new file.  based on gamma.c from
9880           "C-gengo niyoru saishin algorithm jiten" (New Algorithm handbook
9881           in C language) (Gijyutsu hyouron sha, Tokyo, 1991)
9882           by Haruhiko Okumura.
9884         * missing/lgamma_r.c: ditto.
9886         * LEGAL (missing/tgamma.c): describe as public domain.
9887           (missing/lgamma_r.c): ditto.
9889 Thu Feb  7 09:05:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9891         * ext/nkf/nkf-utf8/nkf.c (nkf_enc_from_index): BINARY does not
9892           have in-bound encoding index.
9894 Thu Feb  7 04:26:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9896         * enc/trans/korean.c: add EUC-KR conversion support by Park Ji-In.
9897           [ruby-dev:33621]
9899 Wed Feb  6 01:47:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9901         * hash.c (rb_hash_flatten): do not flatten recursively by default.
9902           [ruby-dev:33603]
9904 Wed Feb  6 00:50:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9906         * insns.def (adjuststack): never use INC_SP with minus value because
9907           some compilers cannot deal it correctly. use DEC_SP instead.
9909 Wed Feb  6 00:48:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9911         * test/ruby/test_hash.rb: add tests to achieve over 90% test coverage
9912           of hash.c.
9914         * test/ruby/test_env.rb: ditto.
9916 Wed Feb  6 00:24:49 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9918         * hash.c (env_rassoc): remove access to free'd environment on mswin32.
9920 Tue Feb  5 21:57:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9922         * vm.c (rb_call_super): pass a passed block when super is called via
9923           rb_call_super.  [ruby-dev:33598]
9925 Tue Feb  5 11:14:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9927         * lib/mkmf.rb (INSTALL_DIRS, install_dirs): added BINDIR.
9929         * lib/mkmf.rb (install_files): rejects files matching to
9930           $NONINSTALLFILES.
9932         * lib/mkmf.rb (init_mkmf): defaults $NONINSTALLFILES to backup and
9933           temporary files.
9935 Mon Feb  4 21:52:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9937         * lib/delegate.rb (DelegateClass): use define_method instead of
9938           module_eval to improve performance.  [ruby-dev:33586]
9940 Mon Feb  4 16:44:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9942         * configure.in (darwin): NSIG is not defined if _XOPEN_SOURCE > 500L.
9943           [ruby-dev:33584]
9945 Mon Feb  4 14:51:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9947         * parse.y (rb_enc_symname2_p): support "!", "!=" and "!~".
9948           [ruby-dev:33592]
9950 Mon Feb  4 13:58:42 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9952         * lib/delegate.rb (Delegator.preserved, DelegateClass.methods): extend
9953           shouldn't be delegated. [ruby-dev:32987], etc.
9955 Mon Feb  4 08:59:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9957         * lib/cgi.rb (CGI::QueryExtension::[]): no more transition
9958           extend(CGI::Value).  a patch from <tommy AT tmtm.org> in
9959           [ruby-dev:33583].
9961 Sun Feb  3 21:13:13 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9963         * test/ruby/test_numeric.rb: forgot to add this (at r15360).
9965         * test/ruby/test_file_exhaustive.rb: add tests to achieve over 80% test
9966           coverage of file.c.
9968 Sat Feb  2 20:06:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9970         * lib/benchmark.rb (Benchmark::realtime): make Benchmark#realtime
9971           a bit faster.  a patch from Alexander Dymo <dymo AT ukrpost.ua> in
9972           [ruby-core:15337].
9974 Sat Feb  2 17:40:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9976         * time.c (time_cmp): Time.<=> no longer supports comparison with
9977           numeric. [ruby-core:15332]
9979 Sat Feb  2 09:53:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9981         * configure.in (darwin): disabled fat-binary support which confuses
9982           configure much, since ``universal'' implies hidden cross-compiling.
9983           TODO: ruby and libruby.bundle might be possible to bound with `lipo'
9984           after builds for each archs.  Anyway, config.h and rbconfig.rb must
9985           be separated definitely at least.
9987 Sat Feb  2 09:28:36 2008  Tanaka Akira  <akr@fsij.org>
9989         * random.c (limited_big_rand): fix buffer overflow when SIZEOF_BDIGITS
9990           is 2.  fixed by Kenta Murata.  [ruby-dev:33565]
9992 Fri Feb  1 21:42:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9994         * configure.in (darwin): _XOPEN_SOURCE is necessary to make ucontext_t
9995           consistent with the library implementation of MacOS X 10.5.
9996           [ruby-dev:33461]
9998         * configure.in (darwin): ucontext on PowerPC MacOS X 10.5 is broken.
10000 Fri Feb  1 11:44:22 2008  Tanaka Akira  <akr@fsij.org>
10002         * tool/compile_prelude.rb (C_ESC): use octal escape to avoid
10003           "\x09for (;;) ..." to be interpret the first character 0x9f.
10005 Thu Jan 31 23:06:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10007         * test/ruby/test_bignum.rb: suppress warnings during test.
10009         * test/ruby/test_enum.rb: ditto.
10011         * test/ruby/test_integer.rb: add tests to achieve over 90% test
10012           coverage of numeric.c.
10014         * test/ruby/test_float.rb: ditto.
10016         * test/ruby/test_fixnum.rb: ditto.
10018         * test/ruby/test_numeric.rb: ditto.
10020         * test/ruby/test_pack.rb: add tests to achieve over 90% test coverage
10021           of pack.c.
10023 Thu Jan 31 17:30:42 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10025         * marshal.c (r_object0): no need to call r_entry for immediate values.
10027 Thu Jan 31 15:46:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10029         * lib/rdoc/ri/formatter.rb (output): add accessor.
10031         * lib/rdoc/ri/display.rb (page): replace @formatter.output instead of
10032           $stdout.
10034 Thu Jan 31 15:06:50 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10036         * marshal.c (r_object0): call r_entry/r_leave to call proc when
10037           TYPE_FIXNUM, TYPE_NIL, TYPE_TRUE, TYPE_FALSE, TYPE_SYMBOL.
10039 Thu Jan 31 14:03:38 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10041         * lib/rdoc/ri/display.rb (display_method_list, display_class_list):
10042           use @formatter.raw_print_line instead of puts.
10044         * lib/rdoc/ri/driver.rb (select_methods): new method to collect all
10045           instance/class methods which match with passed pattern.
10047         * lib/rdoc/ri/driver.rb (run): use class_cache's result directly
10048           instead of select_classes' because it's removed now.
10050         * lib/rdoc/ri/driver.rb (run): search methods when passed name is not
10051           class name. [ruby-core:15309]
10053 Thu Jan 31 08:31:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10055         * common.mk (ext/extmk.rb, instruby.rb): inlined $(MAKE) so that can
10056           be executed even with -n.
10058 Thu Jan 31 06:24:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10060         * io.c (rb_io_close_read): replaces fptr with the tied writer if
10061           duplex.
10063         * io.c (rb_io_close_write): unties the tied IO for writing if duplex.
10064           [ruby-dev:33532]
10066 Thu Jan 31 02:22:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10068         * io.c (open_key_args): allow encoding key to take two encoding
10069           names.  a patch from <rubikitch AT ruby-lang.org>.  [ruby-dev:33540]
10071 Thu Jan 31 02:15:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10073         * parse.y (dsym): allow empty symbols.  [ruby-core:15248]
10075 Thu Jan 31 00:01:51 2008  Tanaka Akira  <akr@fsij.org>
10077         * io.c (select_internal): fix SEGV by `select [STDIN],nil,[STDIN]'.
10078           fixed by Petr Chromec.
10079           http://rubyforge.org/tracker/index.php?func=detail&aid=17275&group_id=426&atid=1698
10081 Wed Jan 30 17:32:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10083         * enc/*.c: add GB12345, UCS-{2,4}{BE,LE}.
10085 Wed Jan 30 14:32:18 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10087         * lib/rdoc/ri/driver.rb (cache_file_for): shouldn't use `:' in filename.
10089 Wed Jan 30 14:27:19 2008  Tanaka Akira  <akr@fsij.org>
10091         * string.c (rb_str_succ): use wrapped character as a carry for
10092           ASCII incompatible encoding.
10094 Wed Jan 30 12:26:59 2008  Tanaka Akira  <akr@fsij.org>
10096         * enc/utf_16be.c (UTF16_IS_SURROGATE_FIRST): avoid branch.
10097           (UTF16_IS_SURROGATE_SECOND): ditto.
10098           (UTF16_IS_SURROGATE): defined.
10099           (utf16be_mbc_enc_len): validation implemented.
10101         * enc/utf_16le.c (UTF16_IS_SURROGATE_FIRST): avoid branch.
10102           (UTF16_IS_SURROGATE_SECOND): ditto.
10103           (UTF16_IS_SURROGATE): defined.
10104           (utf16le_mbc_enc_len): validation implemented.
10106 Wed Jan 30 12:06:43 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10108         * bignum.c (rb_cstr_to_inum): '0_2' is a valid representation.
10110 Wed Jan 30 11:57:50 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10112         * bootstraptest/runner.rb: fix -I../../hoge case.
10114 Wed Jan 30 01:25:16 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10116         * test/ruby/test_range.rb: add tests to achieve over 90% test coverage
10117           of range.c.
10119 Wed Jan 30 00:09:37 2008  Tanaka Akira  <akr@fsij.org>
10121         * enc/euc_tw.c (euctw_mbc_enc_len): validation implemented.
10123 Tue Jan 29 22:58:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10125         * test/ruby/test_enumerator.rb: add tests to achieve over 90% test
10126           coverage of enumerator.c.
10128         * test/ruby/test_enum.rb: add for enum.c.
10130 Tue Jan 29 22:29:48 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10132         * enumerator.c: fix documents.
10134 Tue Jan 29 22:27:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10136         * range.c: fix SEGV by ("a" .. "z").step(2 ** 30) { }.
10138 Tue Jan 29 21:59:16 2008  Tanaka Akira  <akr@fsij.org>
10140         * enc/euc_tw.c (euctw_islead): 0x8e is a leading byte.
10142 Tue Jan 29 21:55:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10144         * bignum.c: move object allocation out of blocking_region.
10145           [ruby-dev:33139]
10147 Tue Jan 29 20:37:36 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10149         * enc/trans/make_transdb.rb: add for make transdb.h.
10151         * dmytranscode.c: add for miniruby.
10153         * enc/gbk.c (gbk_left_adjust_char_head, gbk_is_allowed_reverse_match):
10154           fix odd regexp match. [ruby-dev:33502]
10156 Tue Jan 29 20:17:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10158         * {bcc32,win32}/Makefile.sub (MINIOBJS): add dmytranscode.$(OBJEXT).
10160 Tue Jan 29 19:39:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10162         * configure.in, common.mk: fix rule for dmytranscode.o.
10164 Tue Jan 29 19:03:16 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10166         * enc/trans/japanese.c (rb_to_Windows_31J): to 'Windows-31J'.
10168         * common.mk: add rules for transdb.h.
10170         * transcode.c (init_transcoder_table): use transdb.h.
10172 Tue Jan 29 18:05:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10174         * encoding.c (encdb_{replicate,alias,dummy,declare}): define only if
10175           NO_ENCDB_H is not defined.
10177 Tue Jan 29 17:54:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10179         * enc/gbk.c (EncLen_gbk): too short. [ruby-dev:33497]
10181 Tue Jan 29 17:25:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10183         * dmyencoding.c, encoding.c (enc_init_db, NO_ENCDB_H):
10184           miniruby doesn't use encdb.
10186         * common.mk: encdb.h use miniruby.
10188 Tue Jan 29 17:37:36 2008  Tanaka Akira  <akr@fsij.org>
10190         * enc/gb18030.c (gb18030_mbc_enc_len): validation implemented.
10192 Tue Jan 29 17:01:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10194         * tool/ifchange: remove $temp when unchanged.
10196 Tue Jan 29 16:59:01 2008  Tanaka Akira  <akr@fsij.org>
10198         * insns.def (toregexp): generate a regexp from strings instead of one
10199           string.
10201         * re.c (rb_reg_new_ary): defined for toregexp.  it concatenates
10202           strings after each string is preprocessed.
10204         * compile.c (compile_dstr_fragments): split from compile_dstr.
10205           (compile_dstr): call compile_dstr_fragments.
10206           (compile_dregx): defined for dynamic regexp.
10207           (iseq_compile_each): use compile_dregx for dynamic regexp.
10209           [ruby-dev:33400]
10211 Tue Jan 29 16:25:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10213         * common.mk, ext/extmk.rb: always make encdb.h.
10215 Tue Jan 29 12:53:39 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10217         * enc/gbk.c: add GBK, CP936 and CP949.
10219         * enc/euc_kr.c: remove CP949.
10221         * enc/euc_cn.c: remove CP936 and rename to gb2312.c
10223         * enc/gb2312.c: GB2312 is preferred MIME name.
10225 Tue Jan 29 03:01:29 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10227         * parse.y (reg_fragment_setenc_gen): US-ASCII script special code.
10229         * parse.y (reg_fragment_check_len, reg_compile_gen): no need such
10230           trick.
10231           [ruby-dev:33399]
10233         * test/ruby/test_m17n.rb (test_regexp_usacii_literal): add tests.
10235 Tue Jan 29 01:38:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10237         * common.mk ($(srcdir)/revision.h): no need to show ifchange execution
10238           because ifchange echos updated or unchanged.
10240 Tue Jan 29 01:26:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10242         * common.mk (up): use last changed revision.
10244         * common.mk (up): force to update revision.h.
10246 Tue Jan 29 00:12:17 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10248         * bignum.c (rb_big2str0): should be US-ASCII.
10250 Tue Jan 29 00:10:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10252         * misc/ruby-mode.el (ruby-mode-set-encoding): updates magic comment.
10254 Mon Jan 28 23:47:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10256         * parse.y (rb_id2str, ripper_initialize, Init_ripper):
10257           use rb_usascii_str_new2. [ruby-dev:33449]
10259 Mon Jan 28 19:37:08 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10261         * ext/win32ole/win32ole.c (ole_cp2encoding): new function.
10263         * ext/win32ole/win32ole.c (ole_wc2vstr, ole_variant2val, fole_missing):
10264           set encoding to result.
10266         * ext/win32ole/win32ole.c (fole_s_set_code_page, Init_win32ole): set
10267           default encoding.
10268           [ruby-dev:33433]
10270 Mon Jan 28 11:17:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10272         * string.c, parse.y, re.c: use rb_ascii8bit_encoding.
10274 Mon Jan 28 17:54:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10276         * enc/utf_7.h: add dummy encoding UTF-7 and its alias CP65000.
10278 Mon Jan 28 17:41:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10280         * enc/utf_8.c: add alias CP65001.
10282 Mon Jan 28 15:33:23 2008  Tanaka Akira  <akr@fsij.org>
10284         * enc/big5.c (big5_mbc_enc_len): validation implemented.
10286 Mon Jan 28 13:02:02 2008  Tanaka Akira  <akr@fsij.org>
10288         * enc/euc_kr.c (euckr_mbc_enc_len): validation implemented.
10290 Mon Jan 28 11:24:49 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10292         * parse.y (parser_str_new): encoding of UTF-8 literal string in
10293           US-ASCII script is UTF-8. [ruby-dev:33406]
10295 Mon Jan 28 10:25:59 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10297         * test/ruby/test_m17n.rb (test_magic_comment): add test.
10299 Mon Jan 28 09:34:54 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10301         * common.mk (help): use double quotes for nmake.
10303 Mon Jan 28 00:39:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10305         * parse.y (parser_set_encode): check if encoding is ASCII compatible.
10307 Mon Jan 28 01:21:15 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10309         * io.c (rb_open_file): should check NUL in path.
10310           <http://www.rubyist.net/~matz/20080125.html#c01>.
10312         * io.c (rb_io_s_popen): ditto.
10314         * io.c (rb_io_reopen): ditto.
10316         * io.c (next_argv): ditto.
10318 Sun Jan 27 23:33:35 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10320         * sprintf.c (rb_str_format): fix for left justify flag.
10322         * sprintf.c (rb_str_format): zero-precision zero bug revised.
10323           [ruby-dev:33419]
10325 Sun Jan 27 23:20:54 2008  Tanaka Akira  <akr@fsij.org>
10327         * include/ruby/oniguruma.h: precise mbclen API redesigned to avoid
10328           inline functions.
10329           (onigenc_mbclen_charfound): removed.
10330           (onigenc_mbclen_needmore): removed.
10331           (onigenc_mbclen_recover): removed.
10332           (ONIGENC_MBCLEN_CHARFOUND): removed.
10333           (ONIGENC_MBCLEN_CHARFOUND_P): defined.
10334           (ONIGENC_MBCLEN_CHARFOUND_LEN): defined.
10335           (ONIGENC_MBCLEN_INVALID): removed.
10336           (ONIGENC_MBCLEN_INVALID_P): defined.
10337           (ONIGENC_MBCLEN_NEEDMORE): removed.
10338           (ONIGENC_MBCLEN_NEEDMORE_P): defined.
10339           (ONIGENC_MBCLEN_NEEDMORE_LEN): defined.
10340           (ONIGENC_MBC_ENC_LEN): use onigenc_mbclen_approximate.
10342         * regenc.c (onigenc_mbclen_approximate): defined.
10344         * include/ruby/encoding.h (MBCLEN_CHARFOUND): removed.
10345           (MBCLEN_INVALID): removed.
10346           (MBCLEN_NEEDMORE): removed.
10347           (MBCLEN_CHARFOUND_P): defined.
10348           (MBCLEN_INVALID_P): defined.
10349           (MBCLEN_NEEDMORE_P): defined.
10350           (MBCLEN_CHARFOUND_LEN): defined.
10351           (MBCLEN_NEEDMORE_LEN): defined.
10353         * encoding.c: use new API.
10355         * re.c: ditto.
10357         * string.c: ditto.
10359         * parse.y: ditto.
10361 Sun Jan 27 22:55:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10363         * parse.y (value_expr_gen): reverted r12880.  [ruby-dev:33388]
10365 Sun Jan 27 22:33:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10367         * sprintf.c (rb_str_format): fix for octal with precision.
10368           [ruby-dev:33411]
10370 Sun Jan 27 22:31:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10372         * misc/ruby-mode.el (ruby-mode-set-encoding): automatically insert
10373           encoding magic comment.
10375         * misc/ruby-mode.el (ruby-mode): set ruby-mode-set-encoding to buffer
10376           local before-save-hook.
10378 Sun Jan 27 19:51:15 2008  Tanaka Akira  <akr@fsij.org>
10380         * string.c (rb_str_inspect): avoid exception by
10381           "\#\xa1".force_encoding("euc-jp").inspect.
10383 Sun Jan 27 19:07:33 2008  Tanaka Akira  <akr@fsij.org>
10385         * string.c (rb_str_succ): warning suppressed.
10387 Sun Jan 27 18:18:13 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10389         * common.mk (help): show major targets.
10391 Sun Jan 27 17:54:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10393         * ext/nkf/nkf.c: raise error when no output encoding is given.
10395 Sun Jan 27 17:20:10 2008  Tanaka Akira  <akr@fsij.org>
10397         * string.c (rb_str_succ): don't increment/decrement codepoint.
10399 Sun Jan 27 16:03:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10401         * lib/irb/ruby-lex.rb (RubyLex#buf_input): use chars.to_a.
10403 Sun Jan 27 16:27:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10405         * ext/nkf/nkf-utf8: update nkf.
10407 Sun Jan 27 16:25:27 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10409         * re.c (rb_reg_source): set encoding as regexp encoding.
10411 Sun Jan 27 05:56:39 2008  Tanaka Akira  <akr@fsij.org>
10413         * re.c (rb_reg_preprocess): force fixed encoding when ASCII
10414           incompatible source string.
10416 Sat Jan 26 23:46:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10418         * sprintf.c (rb_str_format): zero-precision zero should be empty.
10419           [ruby-dev:33363]
10421         * sprintf.c (rb_str_format): not prepend octal prefix to negative or
10422           zero value.  [ruby-dev:33363], [ruby-dev:33367]
10424 Sat Jan 26 23:42:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10426         * parse.y (assignable_gen, keyword_to_name): __ENCODING__ was missing.
10428 Sat Jan 26 19:08:45 2008  Tanaka Akira  <akr@fsij.org>
10430         * marshal.c (w_object): dump string encoding in USERDEF.
10431           [ruby-dev:33401]
10433 Sat Jan 26 17:42:23 2008  Koichi Sasada  <ko1@atdot.net>
10435         * compile.c (iseq_compile_each): validate argument expr of "next"
10436           statement.
10438         * bootstraptest/test_syntax.rb: add a test.
10440 Sat Jan 26 17:22:46 2008  Koichi Sasada  <ko1@atdot.net>
10442         * compile.c, compile.h: fix to calculate correct stack depth
10443            at each instruction.
10445 Sat Jan 26 09:41:02 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10447         * lib/rexml/doctype.rb, test/rss/test_maker_itunes.rb: replace
10448           multi-byte string.
10450         * test/json/{test_json.rb, test_json_unicode.rb}:
10451           add magic comment.
10453 Sat Jan 26 09:30:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10455         * include/ruby/encoding.h (rb_usascii_encindex): added prototype.
10457         * include/ruby/intern.h (rb_usascii_str_new, rb_usascii_str_new2):
10458           ditto.
10460 Sat Jan 26 09:17:13 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10462         * string.c (rb_str_new): set US-ASCII and ENC_CODERANGE_7BIT when
10463           empty string (len == 0).
10465 Sat Jan 26 03:41:53 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10467         * parse.y (parser_initialize): set default script encoding as US-ASCII.
10469         * ruby.c (load_file): ditto.
10471         * ruby.c (process_options): set script encoding of -e from locale
10472           except when -K is specified.
10474         * ruby.c (load_file): set script encoding of stdin from locale except
10475           when -K is specified. [ruby-dev:33375]
10477 Sat Jan 26 02:51:06 2008  Koichi Sasada  <ko1@atdot.net>
10479         * compile.c, compile.h: fix stack pointer issues.
10480           calculate correct stack depth at compile time.
10482         * insns.def (emptstack): remove it and add a new insn "adjuststack".
10484         * bootstraptest/test_knownbug.rb: move/remove fixed test.
10486         * bootstraptest/test_syntax.rb: ditto.
10488 Sat Jan 26 00:17:18 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10490         * string.c (rb_str_usascii_new{,2}: defined.
10491           (rb_str_new): set US-ASCII and ENC_CODERANGE_7BIT when empty
10492           string.
10494         * encoding.c (rb_usascii_encoding, rb_usascii_encindex): defined.
10495           (rb_enc_inspect, enc_name, rb_locale_charmap, rb_enc_name_list_i):
10496           use rb_str_ascii_new.
10498         * array.c (recursive_join, inspect_ary): ditto.
10500         * object.c (nil_to_s, nil_inspect, true_to_s, false_to_s,
10501           rb_mod_to_s): ditto.
10503         * hash.c (inspect_hash, rb_hash_inspect, rb_f_getenv, env_fetch,
10504           env_clear, env_to_s, env_inspect): ditto.
10506         * numeric.c (flo_to_s, int_chr, rb_fix2str): ditto.
10508         * bignum.c (rb_big2str): ditto.
10510         * file.c (rb_file_ftype, rb_file_s_dirname, rb_file_s_extname,
10511           file_inspect_join, Init_file): ditto.
10513         * test/ruby/test_ruby_m17n.rb: add checks for encoding of string.
10515 Sat Jan 26 01:35:46 2008  Tanaka Akira  <akr@fsij.org>
10517         * marshal.c (r_byte): use getbyte instead of getc.
10518           (marshal_load): ditto.
10519           [ruby-dev:33264]
10521 Sat Jan 26 00:43:40 2008  Tanaka Akira  <akr@fsij.org>
10523         * io.c (rb_io_getline_fast): don't care ASCII incompatible encoding.
10524           (prepare_getline_args): generate a newline according to IO encoding
10525           when necessary.
10526           (rb_io_getline_1): call rb_io_getline_fast only for ASCII
10527           compatible encoding.
10529 Fri Jan 25 21:49:36 2008  Tanaka Akira  <akr@fsij.org>
10531         * string.c (rb_str_buf_cat_ascii): use rb_enc_cr_str_buf_cat.
10533 Fri Jan 25 19:38:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10535         * common.mk (version.$(OBJEXT)): depends on $(srcdir)/revision.h.
10537         * common.mk (revision.h): extracts revision number with ``svn info''.
10539         * common.mk (up): target to update from the repository.
10541         * Makefile.in, {win,bcc}32/Makefile.sub (IFCHANGE): tool to update a
10542           file if changed.
10544         * tool/ifchange: for unixen.
10546         * win32/ifchange.bat: some fix
10548 Fri Jan 25 17:12:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10550         * ruby.c (load_file): set default to ASCII-8BIT explicitly if -K
10551           option is not given.
10553 Fri Jan 25 16:31:47 2008  Tanaka Akira  <akr@fsij.org>
10555         * include/ruby/intern.h (rb_str_buf_cat_ascii): declared.
10557         * string.c (rb_str_buf_cat_ascii): defined.
10559         * re.c (rb_reg_s_union): use rb_str_buf_cat_ascii to support ASCII
10560           incompatible encoding.
10562 Fri Jan 25 16:11:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10564         * ruby.c (process_options, load_file, rb_load_file): propagates script
10565           encoding by -K to libraries.  [ruby-dev:33156]
10567 Fri Jan 25 15:56:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10569         * ruby.c (cmdline_arguments): split argc and argv from cmdline_options.
10571         * ruby.c (process_options): not set encoding of -e option from -E
10572           option if they are not compatible.
10574 Fri Jan 25 13:15:23 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10576         * ruby.c (proc_options, process_options, load_file): shouldn't effect
10577           --encoding to script encoding. [ruby-dev:33169]
10579 Fri Jan 25 10:31:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10581         * */*.bat: set svn:mime-type to text/batch.
10583 Thu Jan 24 23:23:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10585         * enum.c (enum_one, enum_take_while, enum_drop_while): fix documents.
10587 Thu Jan 24 21:46:24 2008  Tanaka Akira  <akr@fsij.org>
10589         * parse.y (reg_fragment_setenc_gen): associate ASCII-8BIT only if
10590           str has only ASCII characters.
10592 Thu Jan 24 20:46:17 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10594         * test/ruby/test_m17n.rb: follow to the following changes.
10596 Thu Jan 24 20:21:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10598         * parser.y (parser_str_new): automatically update string literal's
10599           encoding from US-ASCII to ASCII-8BIT when script encoding is US-ASCII
10600           and the string includes non-ascii bytes. [ruby-dev:33348]
10602         * parser.y (reg_fragment_check_gen, reg_compile_gen): automatically
10603           update regexp literal's encoding from US-ASCII to ASCII-8BIT when
10604           script encoding is US-ASCII, the regexp has no kcode option and the
10605           regexp includes non-ascii bytes. [ruby-dev:33353]
10607 Thu Jan 24 19:36:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10609         * lib/uri/generic.rb (URI::Generic::inspect): use Kernel#to_s instead
10610           object_id with printf.  [ruby-dev:33347]
10612 Thu Jan 24 19:29:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10614         * sprintf.c (remove_sign_bits): returns pointer to the first char to
10615           be used, instead of copying.
10617         * sprintf.c (rb_str_format): negative indicator dots should come
10618           before sign digits always.  [ruby-dev:33224]
10620 Thu Jan 24 18:19:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10622         * include/ruby/encoding.h (rb_enc_is_newline): parenthesized arguments.
10624 Thu Jan 24 18:14:14 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10626         * re.c (rb_reg_fixed_encoding_p): no need to treat ASCII-8BIT specially.
10628 Thu Jan 24 16:53:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10630         * re.c (rb_reg_initialize): 7bit clean regexp should be US-ASCII.
10631           [ruby-dev:33346]
10633 Thu Jan 24 16:31:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10635         * io.c (rb_io_getline_fast): the end point of left_char_head()
10636           must be the last character.  [ruby-cvs:22445]
10638 Thu Jan 24 16:24:25 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10640         * parse.y (reg_fragment_setenc_gen): recognize regexp with option n as
10641           as ASCII-8BIT instead of US-ASCII. [ruby-dev:33339]
10643 Thu Jan 24 15:44:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10645         * array.c (collect_bang_i): use rb_ary_store() to avoid potential
10646           memory corruption.  a patch from Yusuke Endoh <mame@tsg.ne.jp>
10647           in [ruby-dev:33328].
10649         * array.c (ITERATE): remove unnecessary macro.
10651         * array.c (sort_1): remove ary_sort_check().  in-place sort keep
10652           original elements even when it's modified.
10654         * array.c (sort_2): ditto.
10656 Thu Jan 24 15:09:40 2008  Tanaka Akira  <akr@fsij.org>
10658         * time.c (make_time_t): revert round trip test.  [ruby-dev:33058]
10660 Thu Jan 24 11:14:56 2008  Tanaka Akira  <akr@fsij.org>
10662         * string.c (rb_enc_cr_str_buf_cat): ASCII incompatible encoding is
10663           not compatible with any other encoding.
10665 Thu Jan 24 07:34:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10667         * parse.y (STR_NEW0): set encoding as US-ASCII.
10669 Thu Jan 24 03:47:41 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10671         * lib/rexml/text.rb, lib/rubygems/open-uri.rb, lib/open-uri.rb,
10672           test/logger/test_logger.rb, test/ruby/test_regexp.rb:
10673           fix tests. [ruby-dev:33336]
10675 Thu Jan 24 03:23:44 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10677         * string.c (rb_str_each_line): use memchr(3) for faster newline
10678           search.
10680         * io.c (appendline): remove unused arguments
10682         * io.c (rb_io_getline_fast): make much simpler (and faster).
10684 Thu Jan 24 02:13:07 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10686         * insns.def (expandarray): fix stack inc.  [ruby-dev:32892]
10688         * bootstraptest/test_knownbug.rb, test_massign.rb: move a fixed test.
10690 Thu Jan 24 01:00:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10692         * encoding.{c, h} (rb_usascii_encoding): added.
10694         * parse.y (parser_str_new, rb_intern3): ascii only string literal is
10695           US-ASCII.
10697         * ruby.c (proc_optionc): -Kn means ASCII-8BIT.
10699 Wed Jan 23 23:54:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10701         * sprintf.c: fix comment.  [ruby-dev:33275]
10703         * math.c: fix comment.  [ruby-dev:33276]
10705 Wed Jan 23 22:47:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10707         * test/ruby/test_struct.rb: add tests to achieve over 90% test
10708           coverage of struct.c.
10710         * test/ruby/test_sprintf.rb: ditto for sprintf.c.
10712         * test/ruby/test_math.rb: ditto for math.c.
10714 Wed Jan 23 22:14:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10716         * enc/trans/japanese.c (rb_from_Windows_31J, rb_to_Windows_31J):
10717           provisional workaround for Windows-31J.  [ruby-dev:33320]
10719 Wed Jan 23 15:25:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10721         * time.c (time_strftime): copy encoding from format.  [ruby-dev:33303]
10723 Wed Jan 23 15:04:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10725         * string.c (str_make_independent): should set length.
10727         * string.c (rb_str_associate): hide associated array from ObjectSpace.
10729         * string.c (rb_str_associated): return associated array with freezing
10730           instead of false.  [ruby-dev:33282]
10732         * string.c (rb_str_freeze): freeze associated array together.
10734 Wed Jan 23 13:39:48 2008  Tanaka Akira  <akr@fsij.org>
10736         * re.c (rb_reg_prepare_re): fix SEGV by
10737           /a/ =~ "aa".force_encoding("utf-16be").
10739 Wed Jan 23 11:53:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10741         * string.c (str_mod_check, str_nth, str_offset): constified.
10743         * string.c (rb_str_dump): dump in ASCII-8BIT always.
10745 Wed Jan 23 10:18:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10747         * eval_method.c (rb_export_method): set ruby_vm_redefined_flag for
10748           visibility change as well.  reported by K.Kosako in
10749           http://d.hatena.ne.jp/kkos/20080122#1201012720.
10751 Tue Jan 22 22:26:23 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10753         * test/ruby/test_bignum.rb: change some tests because rational
10754           redefines Bignum#quo and Bignum#**.
10756 Tue Jan 22 20:58:15 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10758         * lib/mkmf.rb (create_makefile): need to output sodir rule.
10760 Tue Jan 22 19:37:16 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10762         * lib/mkmf.rb (create_makefile): lib files shouldn't depend on install
10763           dir because if the dir is newer than lib files, lib files will be
10764           always copied.
10766 Tue Jan 22 17:52:52 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10768         * enc/trans/utf_16_32.c: Streamline parentheses, add more
10769           'static' qualifiers.
10771 Tue Jan 22 12:57:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10773         * configure.in (MINIRUBY): remove -I$(EXTOUT)/$(arch) from
10774           MINIRUBY since miniruby might not be able to load DLL.
10776         * test/ruby/test_m17n.rb: move tests from bootstrap test.
10778         * encoding.c (enc_find): should check name if ASCII compatible.
10780         * string.c (rb_str_end_with): should check character boundary.
10782         * encoding.c (rb_enc_compatible): encoding must be ASCII
10783           compatible before checking ENC_CODERANGE_7BIT.
10785         * encoding.c (rb_enc_compatible): wrong compatibility condition.
10786           [ruby-dev:33273]
10788 Tue Jan 22 09:26:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10790         * string.c (rb_str_each_char): iterates over a shadow.
10791           [ruby-dev:33243]
10793 Tue Jan 22 08:59:52 2008  Eric Hodel  <drbrain@segment7.net>
10795         * lib/rdoc/ri/formatter.rb:  Indent labeled lists like note lists.
10797         * test/rdoc/test_rdoc_ri_overstrike_formatter.rb:  Added.
10799         * test/rdoc/test_rdoc_ri_formatter.rb:  Added tests.
10801 Tue Jan 22 04:40:28 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10803         * parse.y (rb_intern3): do not call rb_enc_mbclen() if *m is
10804           ASCII.  [ruby-talk:287225]
10806         * string.c (rb_str_each_line): use rb_enc_is_newline() to gain
10807           performance if the record separator ($/) is not modified.
10809 Tue Jan 22 01:15:51 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
10811         * ChangeLog: format-time-string under C locale. [ruby-dev:33261]
10813 Tue Jan 22 00:45:12 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10815         * test/ruby/test_bignum.rb: add tests for bignum.c.
10817 Tue Jan 22 00:30:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10819         * bignum.c (big_shift): fix a bug that caused infinite loop when
10820           left shifting.
10822 Mon Jan 21 20:09:38 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10824         * lib/date.rb (marshal_load): initialize the cache.
10826 Mon Jan 21 19:42:42 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10828         * transcode.c, enc/trans/utf_16_32.c, test/ruby/test_transcode.rb:
10829           added UTF-32BE and UTF-32LE conversions.
10831 Mon Jan 21 14:36:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10833         * transcode.c (str_transcode): initialize transcoder in
10834           rb_transcoding.  [ruby-dev:33234]
10836         * transcode_data.h (rb_transcoding): transcoder constified.
10838 Mon Jan 21 12:50:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10840         * eval.c, gc.c (setjmp): sigsetjmp is a macro on cygwin.
10842 Mon Jan 21 12:35:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10844         * transcode.c (transcode_loop, str_transcoding_resize): use unsigned
10845           char.  [ruby-dev:33232]
10847         * transcode_data.h (rb_transcoding, rb_transcoder): removed callback
10848           parameters.
10850         * enc/trans/japanese.c: ditto.
10852         * enc/trans/utf_16_32.c: parenthesized bit-or operands.
10854 Mon Jan 21 11:59:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10856         * string.c (rb_str_each_char): move forward.  [ruby-dev:33231]
10858 Mon Jan 21 06:40:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10860         * transcode.c (transcode_dispatch): constified return value.
10862         * transcode_data.h (rb_transcoding): include pointer to rb_transcoder
10863           and auxiliary data.
10865         * transcode_data.h (rb_transcoder): all callback functions should have
10866           their own parameters.
10868         * enc/trans/{japanese,single_byte}.c: constified.
10870 Mon Jan 21 03:45:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10872         * string.c (rb_str_each_char): advance offset before get next char
10873           length.  [ruby-dev:33211]
10875 Sun Jan 20 20:00:20 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10877         * transcode.c, enc/trans/utf_16_32.c, test/ruby/test_transcode.rb:
10878           added UTF-16LE conversions.
10880         * fixed changelog for last commit
10882 Sun Jan 20 17:54:00 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10884         * added changelog for last commit
10886 Sun Jan 20 15:08:08 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10888         * enc/trans/utf_16_32.c: new file, currently implementing
10889           UTF-16BE conversions only.
10891         * test/ruby/test_transcode.rb: Added tests for UTF-16BE;
10892           made check_both_ways() use force_encoding differently.
10894         * transcode_data.h, transcode.c: Support for more conversion
10895           functions.
10897 Sun Jan 20 13:06:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10899         * string.c (rb_str_each_char): performance improvement, and stop if
10900           shortened in the block.  [ruby-dev:33189]
10902 Sun Jan 20 09:12:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10904         * common.mk: use -Ks when read insns.def. [ruby-dev#33185]
10906         * parse.y: fix -e and stdin strings aren't set encoding.
10908 Sun Jan 20 05:12:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10910         * enc/make_encdb.rb: fix duplication check.
10912 Sun Jan 20 05:03:46 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10914         * ascii.c: remove definition of replica KOI8-U.
10916 Sun Jan 20 00:33:59 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10918         * enc/koi8_u.c: added.
10920         * regenc.c, enc/utf_8.c, enc/unicode.c, enc/gb18030.c: add ARG_UNUSED.
10922 Sat Jan 19 22:41:39 2008  Tanaka Akira  <akr@fsij.org>
10924         * string.c (coderange_scan): don't call mbclen functions for ASCII
10925           characters with ASCII compatible encoding.
10927 Sat Jan 19 21:00:34 2008  Tanaka Akira  <akr@fsij.org>
10929         * lib/rdoc/template.rb (RDoc): defined to avoid uninitialized constant
10930           error by `./ruby test/rubygems/test_gem_server.rb'.
10932 Sat Jan 19 20:41:29 2008  Tanaka Akira  <akr@fsij.org>
10934         * encoding.c (enc_new): don't free rb_encoding to avoid SEGV by
10935           `miniruby -e exit' on x86_64 GNU/Linux.
10937 Sat Jan 19 18:40:19 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10939         * lib/date.rb (once): use an instance variable which points a hash
10940           as cache. [experimental]
10942 Sat Jan 19 17:21:29 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10944         * lib/date.rb, lib/date/format.rb: parse's hints as an
10945           experimental function has been removed.
10947 Sat Jan 19 11:21:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10949         * configure.in (sigsetjmp): check if available.
10951         * eval.c, gc.c (setjmp): do not use _setjmp if sigsetjmp is available.
10953 Sat Jan 19 11:10:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10955         * configure.in: Remove wrong assumptions about Cygwin.  a patch from
10956           Corinna Vinschen in [ruby-Bugs-17018].
10958 Sat Jan 19 09:23:14 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
10960         * ext/win32ole/win32ole.c (ole_set_safe_array): should not use
10961           recursive calling.
10963         * test/win32ole/test_win32ole_variant.rb: ditto.
10965 Sat Jan 19 08:58:47 2008  Eric Hodel  <drbrain@segment7.net>
10967         * lib/rdoc/markup: Remove ListBase and Line constants.
10969         * lib/rdoc/ri: Allow output IO to be specified.
10971         * test/rdoc/parser/test_parse_c.rb: Move up one level, fixed.
10973         * test/rdoc/parser/test_rdoc_markup_attribute_manager.rb: Renamed to
10974           match new class name, updated to match new classes.
10976         * test/rdoc/test_rdoc_ri_formatter.rb: Start of RI formatting tests.
10978         * test/rdoc/test_rdoc_ri_attribute_manager.rb: Start of
10979           RDoc::RI::AttributeManager tests.
10981         * test/rdoc/test_simple_markup.rb: Moved to match new class name.
10983 Sat Jan 19 08:35:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10985         * parse.y (parser_prepare): get encoding from the first line.
10986           [ruby-dev:33168]
10988         * ruby.c (load_file): set encoding to input with set_encoding.
10990 Sat Jan 19 03:46:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10992         * thread.c (thread_create_core): prohibit thread creation in the
10993           frozen thread group.  a patch in [ruby-dev:33176] from sheepman
10994           <sheepman AT sheepman.sakura.ne.jp>.
10996         * thread.c (thread_create_core): should inherit ThreadGroup from
10997           the current thread.
10999 Sat Jan 19 00:37:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11001         * sprintf.c (rb_str_format): set result encoding for wider width.
11003 Sat Jan 19 00:13:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11005         * thread_win32.c (w32_wait_events): shouldn't invoke interrupt handle
11006           by timer_thread.
11008 Fri Jan 18 23:49:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11010         * thread.c (thread_create_core): set thread group before creating
11011           thread.
11013 Fri Jan 18 20:19:51 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11015         * parse.y (ripper_initialize): too early to set parser->enc.
11017 Fri Jan 18 20:03:05 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11019         * win32/setup.mak (BASERUBY): nmake cannot execute ruby correctly
11020           if the path of ruby.exe is quoted.
11022         * win32/setup.mak ($(ARCH)): if a macro is appended by $(APPEND),
11023           a space will be inserted on the top of the line.
11025 Fri Jan 18 17:56:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11027         * eval_intern.h, insnhelper.h, thread_pthread.h, vm_core.h, vm_opts.h:
11028           prefixed include guards with RUBY.
11030         * id.h: added include guard.
11032         * regenc.h, regint.h, regparse.h: prefixed include guards with
11033           ONIGURUMA.
11035 Fri Jan 18 15:57:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11037         * thread.c (thread_cleanup_func): ignore errors from destroying mutex
11038           of dead thread.  [ruby-core:15069]
11040         * thread_pthread.c, thread_win32.c (native_thread_destroy): ditto.
11042 Fri Jan 18 15:56:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11044         * encoding.c (rb_enc_name_list_i, rb_enc_aliases_enc_i): freeze
11045           element strings to be returned.
11047 Fri Jan 18 14:36:34 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
11049         * test/ruby/test_m17n.rb (test_str_dump): added test for
11050           String#dump. [ruby-dev:33142]
11052 Fri Jan 18 12:25:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11054         * encoding.c (load_encoding): check if successfully loaded.
11056         * encoding.c (rb_enc_find_index): use original encoding name to
11057           replicate loaded encoding instead alias.
11059 Fri Jan 18 09:43:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11061         * re.c (rb_char_to_option_kcode): Regexp switch `s' should mean
11062           Windows-31J, as wells as `-Ks'.
11064 Fri Jan 18 09:22:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11066         * parse.y (parser_initialize): explicitly call rb_ascii8bit_encoding().
11068         * parse.y (parser_prepare): lex_input may not be have encoding (e.g. IO).
11070         * parse.y (rb_parser_compile_string): set encoding from input string.
11072         * encoding.c (rb_enc_find_index): use ASCII-8BIT if loading known
11073           encoding failed.
11075         * parse.y (ripper_initialize): move parser->enc initialization.
11077         * encoding.c (rb_enc_aliases_enc_i): exclude non alias names from
11078           Encoding.aliases.
11080         * encoding.c (rb_enc_find_index): use original encoding name to
11081           load DLL.
11083 Fri Jan 18 07:06:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11085         * io.c (Init_IO): stdin/stdout may not be duplex.
11087 Fri Jan 18 04:27:57 2008  Eric Hodel  <drbrain@segment7.net>
11089         * sample/rdoc/markup/rdoc2latex.rb:  Fix for new namespacing.
11091         * lib/rdoc/markup/to_latex.rb:  Fix namespacing.
11093 Fri Jan 18 02:02:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11095         * bootstraptest/runner.rb (assert_valid_syntax): added.
11097         * bootstraptest/test_knownbug.rb: added test for [ruby-list:44479]
11099 Fri Jan 18 01:48:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11101         * vm_insnhelper.c (vm_call_method): check argument number to
11102           attr_reader.  [ruby-core:15120]
11104 Fri Jan 18 00:49:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11106         * io.c (rb_io_check_readable): flush tied write IO too.
11108         * io.c (Init_IO): tie stdin with stdout.  [ruby-core:15107]
11110 Fri Jan 18 00:23:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11112         * encoding.c (enc_free): removed since rb_encoding may be used while
11113           cleanup.
11115 Fri Jan 18 00:17:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11117         * enc/euc_cn.c: split from enc/euc_kr.c.
11119 Fri Jan 18 00:03:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11121         * ext/stringio/stringio.c (strio_init): use default external encoding
11122           if nothing is given.  a patch from sheepman <sheepman AT
11123           sheepman.sakura.ne.jp> in [ruby-dev:33159].
11125 Thu Jan 17 23:56:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11127         * common.mk (encdb.h): give output file name to make_encdb.rb.
11129         * encoding.c (enc_table): simplified.
11131         * encoding.c (enc_register_at): lazy loading.  [ruby-dev:33013]
11133         * regenc.h (ENC_DUMMY): added.
11135         * enc/make_encdb.rb: now emits macros only.
11137         * enc/iso_2022_jp.h: split from encoding.c.
11139 Thu Jan 17 21:48:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11141         * re.c (rb_char_to_option_kcode): fixed typo.
11143 Thu Jan 17 21:01:25 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11145         * lib/date.rb (Date::Infinity#<=>): didn't work.  A patch from
11146           Dirkjan Bussink <d.bussink AT gmail.com> [ruby-core:15098].
11147           This is a bug obviously.  However it didn't affect the library's
11148           functions.
11150         * lib/date.rb, lib/date/format.rb: some trivial changes.
11152 Thu Jan 17 13:07:18 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11154         * string.c (rb_str_dump): preserve the encoding of source string
11155           if it is ASCII compatible.  otherwise, add '.force_encoding()'
11156           for ugly work around.  maybe we should implement some other way
11157           to keep non ASCII encoding in dumped string.  [ruby-dev:33142]
11159 Thu Jan 17 10:30:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11161         * io.c (io_fwrite): always flush IO on tty, even without newlines.
11162           [ruby-core:15107]
11164 Wed Jan 16 22:45:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11166         * encoding.c (enc_register_at): make own copy.  [ruby-dev:33136]
11168 Wed Jan 16 18:03:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11170         * io.c (pipe_open, rb_io_s_popen): clear temporary object to release
11171           and prevent from GC.
11173 Wed Jan 16 17:55:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11175         * numeric.c (fix_quo): typo. a patch from Shin-ichiro HARA
11176           <sinara AT blade.nagaokaut.ac.jp> in [ruby-dev:33130]
11178 Wed Jan 16 17:36:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11180         * test/test_delegate.rb: add new test file for delegate.rb.
11182 Wed Jan 16 16:14:00 2008  Akinori MUSHA  <knu@iDaemons.org>
11184         * ruby.1: Fix grammar.
11186 Wed Jan 16 15:26:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11188         * file.c (sys_fail2): get rid of unlimited alloca.
11190         * io.c (mode_enc, pipe_open, rb_io_s_popen): ditto.
11192         * load.c (rb_feature_p): ditto.
11194         * object.c (rb_cstr_to_dbl): ditto.
11196         * io.c (mode_enc): fixed uninitialized variable.
11198 Wed Jan 16 12:51:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11200         * include/ruby/intern.h (rb_str_tmp_new, rb_str_shared_replace):
11201           prototype moved.
11203 Tue Jan 15 23:52:51 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11205         * enc/*: add ARG_UNUSED.
11207         * enc/koi8_u.c: added.
11209 Tue Jan 15 23:00:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11211         * enc/utf_{16,32}{be,le}.c: remove some ARG_UNUSED.  replace struct
11212           OnigEncodingST by OnigEncoding.
11214 Tue Jan 15 22:30:43 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11216         * encoding.c (ENC_REGISTER): use &OnigEncoding*.
11217           (ENCINDEX_UTF_8): renamed from ENCINDEX_UTF8.
11218           (rb_enc_init): use ENC_REGISTER.
11220         * include/ruby/oniguruma.h (OnigEncodingUTF8, ONIG_ENCODING_UTF8):
11221           removed.
11223         * enc/*.c: remove use of &encoding_*; use enc argument instead.
11225 Tue Jan 15 18:44:46 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11227         * enc/utf_8.c: remove use of ONIG_ENCODING_UTF8 altogether; use
11228           enc argument instead.
11230 Tue Jan 15 18:05:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11232         * enc/utf_8.c (ONIG_ENCODING_UTF8): reverted.
11234 Tue Jan 15 18:01:55 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11236         * win32/Makefile.sub (MKFILES): add dependencies.
11238 Tue Jan 15 18:00:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11240         * enc/utf_8.c (OnigEncodingDefine): encoding name should be kept
11241           unchanged.
11243 Tue Jan 15 17:53:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11245         * enc/utf_8.c: renamed as IANA name.
11247         * enc/Makefile.in: ditto.
11249 Tue Jan 15 16:59:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11251         * ruby.c (proc_options): encoding libraries cannot be loaded until
11252           load path is set.
11254 Tue Jan 15 15:09:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11256         * win32/setup.mak: strip out empty lines from CPP output.
11258 Tue Jan 15 14:57:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11260         * {win,bcc}32/setup.mak (-basic-vars-): expand BASERUBY to full path
11261           to get rid of ./ruby.exe.
11263         * win32/enc-setup.mak: workaround for Borland make.
11265 Tue Jan 15 14:44:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11267         * encoding.c (rb_locale_charmap): use ASCII-8BIT in miniruby.
11269 Tue Jan 15 13:54:41 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11271         * {bcc32,win32}/Makefile.sub (RUNRUBY): need to set archdir when
11272           invoking ruby.
11274 Tue Jan 15 13:43:18 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11276         * common.mk (us_ascii.o): add dependencies. [ruby-dev:33111]
11278 Tue Jan 15 03:41:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11280         * eval.c (eval): check if backtrace is empty.  [ruby-core:15040]
11282 Tue Jan 15 01:28:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11284         * common.mk: simplified dummy objects dependencies.
11286 Tue Jan 15 01:19:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11288         * common.mk (OBJS): moved encoding.o from COMMONOBJS.
11290         * common.mk (dmyencoding.o): added.  [ruby-dev:33099]
11292         * configure.in, {win,bcc}32/Makefile.sub (MINIOBJS): added
11293           dmyencoding.o.
11295         * dmyencoding.c (rb_locale_charmap): returns nil for miniruby.
11297 Tue Jan 15 00:05:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11299         * io.c (appendline): specifying limit should not generate broken
11300           byte sequence.  strings should be rounded.  [ruby-dev:33088]
11302 Mon Jan 14 23:33:02 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11304         * ext/nkf/lib/kconv.rb (Kconv.tolocale): argument is str.
11306 Mon Jan 14 23:31:05 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11308         * configure.in (setup): add -I$(EXTOUT)/$(arch) to MINIRUBY.
11310         * bootstraptest/runner.rb (main): expand -I directory path.
11312 Mon Jan 14 23:28:10 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11314         * win32/enc-setup.mak (BUILTIN_ENCOBJS): depends on enc/Makefile.in.
11316 Mon Jan 14 22:48:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11318         * re.c (rb_char_to_option_kcode): use rb_enc_find_index() instead
11319           of using fixed index value.
11321         * enc/Makefile.in (encsrcdir): make US-ASCII built-in.
11323 Mon Jan 14 22:25:02 2008  WATANABE Hirofumi  <eban@ruby-lang.org>
11325         * golf_prelude.rb: Shorter method name completion.  Same method
11326           used for const missing. do_while and do_until added.  Enumerator
11327           gains all of Array's abilities. Ex:
11328             '123'.m{|i|i*2} #=> "112233"
11329             '123'.pe #=> '123'.perm*' ' #=> "123 132 213 231 312 321"
11330           base on a patch from Darren Smith <darrenks AT ml1.net>.
11332 Mon Jan 14 21:10:02 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11334         * enc/us_ascii.c: wrong alias name: ANSI_X3.4-1986.
11336         * rubytest.rb: add -I#{srcdir} to load encoding DLL.
11338 Mon Jan 14 18:53:58 2008  Koichi Sasada  <ko1@atdot.net>
11340         * thread.c: clear thread structure.
11341           (TODO: survey that child process should clear mutex or not).
11343         * bootstraptest/test_knownbug.rb, test_thread.rb: move a fixed test.
11345 Mon Jan 14 18:43:38 2008  Koichi Sasada  <ko1@atdot.net>
11347         * bootstraptest/runner.rb: add "flunk" method.
11349         * bootstraptest/test_knownbug.rb: fix to use flunk.
11351 Mon Jan 14 18:10:59 2008  Koichi Sasada  <ko1@atdot.net>
11353         * vm.h: remove dangerous assembler sentence.
11355 Mon Jan 14 18:06:37 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11357         * encoding.c (rb_locale_encoding): return US-ASCII when charmap is
11358           nil.
11360 Mon Jan 14 16:12:58 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11362         * lib/shellwords.rb: scape should be an alias to shellescape.  a
11363           patch from Masahiro Kawato <m-kawato AT mwb.biglobe.ne.jp> in
11364           [ruby-dev:33060].
11366 Mon Jan 14 16:09:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11368         * ruby.1: a patch to describe --encoding.  a patch from Yugui
11369           <yugui AT yugui.sakura.ne.jp> in [ruby-dev:33079].
11371         * ruby.c: ditto.
11373 Mon Jan 14 13:49:26 2008  Tanaka Akira  <akr@fsij.org>
11375         * re.c (rb_reg_prepare_re): initialize error message buffer.
11376           (rb_reg_search): ditto.
11377           (rb_reg_check_preprocess): ditto.
11378           (rb_reg_new_str): ditto.
11379           (rb_enc_reg_new): ditto.
11380           (rb_reg_compile): ditto.
11381           (rb_reg_initialize_m): ditto.
11382           (rb_reg_s_union_m): ditto.
11384 Mon Jan 14 12:33:07 2008  Eric Hodel  <drbrain@segment7.net>
11386         * lib/rdoc/markup*:  Renamespace from SM::SimpleMarkup to
11387           RDoc::Markup.
11389 Mon Jan 14 10:45:45 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
11391         * enc/ascii.c: Exchanged order of arguments for one ENC_ALIAS
11393 Mon Jan 14 09:19:07 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11395         * lib/time.rb: do not reference Time directly from the inside of
11396           definitions. [ruby-dev:33059]
11398 Mon Jan 14 05:44:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11400         * enc/*.c: add replicas and aliases.
11402         * enc/make_encdb.h: add duplicate and undefined check.
11404 Mon Jan 14 02:03:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11406         * include/ruby/oniguruma.h: remove ONIG_ENCODING_* and OnigEncoding*
11407           which are not builtin.
11409         * regenc.{c,h} (onigenc_mb2_code_to_mbclen, onigenc_mb4_code_to_mbclen):
11410           fix prototype.
11412         * enc/big5.c, enc/euc_kr.c, enc/euc_tw.c, enc/gb18030.c,
11413           enc/koi8_r.c, enc/windows_1251.c: imported from Oniguruma.
11415 Sun Jan 13 22:47:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11417         * enc/make_encdb.h: sort encoding names by original name.
11419         * encoding.c, enc/*.c: define replicas and aliases.
11421 Sun Jan 13 20:24:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11423         * encoding.c: add documents.
11425 Sun Jan 13 18:41:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11427         * encoding.c (Init_Encoding): moved initialization from encdb.h.
11429         * enc/make_encdb.rb (enc_name_list): constified.
11431         * enc/make_encdb.rb (enc_init_db): moved some functions to encoding.c.
11433 Sun Jan 13 13:53:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11435         * ruby.c (load_file): local variable was not initialized when -x flag
11436           is given.
11438         * ruby.c (load_file): script files should not be affected by locale.
11439           [ruby-dev:33054]
11441 Sun Jan 13 12:01:32 2008  Eric Hodel  <drbrain@segment7.net>
11443         * lib/rdoc/generators*: Reorganize RDoc generators.
11445 Sun Jan 13 11:41:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11447         * encoding.c (ENCINDEX_EUC_JP, ENCINDEX_SJIS): removed.
11448           (rb_enc_init): EUC-JP and Shift_JIS are not builtin now.
11450         * enc/Makefile.in: ditto.
11452         * common.mk: ditto.
11454         * ruby.c (proc_options): ditto.
11456         * enc/shift_jis.c, enc/euc_jp.c: fixes for remove from builtin.
11458 Sun Jan 13 10:21:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11460         * encoding.c (enc_table): packed all enc_table stuff.
11462 Sun Jan 13 09:58:17 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11464         * encoding.c (rb_enc_init): revert removing SJIS.
11466         * enc/sjis.c: move to enc/shift_jis.c, to make encoding name equal to
11467           filename for convenience of loading lib.
11469         * enc/shift_jis.c: moved from enc/sjis.c.
11471         * common.mk: follows enc/shift_jis.c.
11473         * enc/Makefile.in: ditto.
11475 Sun Jan 13 09:22:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11477         * common.mk (incs): includes encdb.h.
11479 Sun Jan 13 09:17:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11481         * {bcc,win}32/Makefile.sub (MV): use move instead of ren.  [ruby-Bugs-17019]
11483 Sun Jan 13 01:52:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11485         * enc/make_encdb.rb: should work on Ruby 1.8.  [ruby-dev:33069]
11487         * common.mk (encdb.h): pass enc dir from outside to make_encdb.rb.
11489 Sun Jan 13 00:01:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11491         * enc/make_encdb.rb: added. search enc/*.c and make encoding database.
11493         * regenc.h (ENC_REPLICATE, ENC_ALIAS): added for defining replica
11494           encoding and encoding alias.
11496         * encoding.c (rb_enc_init): move alias definitions to enc/*.c.
11497           (rb_enc_find_index): search original of replica and alias when no
11498           encoding library.
11499           (rb_enc_name_list, rb_enc_aliases_enc_i, rb_enc_aliases_str_i,
11500            rb_enc_aliases, Encoding.name_list, Encoding.aliases): added.
11501           (Init_Encoding): init encdb.
11503         * enc/ascii.c, enc/us_ascii.c, enc/euc_jp.c, enc/sjis.c:
11504           add replica encoding and encoding alias definition.
11506         * common.mk (dist-clean-local): add rule for remove encdb.h.
11508 Sat Jan 12 18:27:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11510         * eval.c (rb_define_alloc_func, rb_undef_alloc_func): should
11511           define/undef on a singleton class.  [ruby-core:09959]
11513 Sat Jan 12 12:44:36 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11515         * ext/nkf/nkf.c: rdoc update.
11517 Sat Jan 12 12:01:49 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11519         * lib/date.rb, lib/date/format.rb: tuning for performance.
11521 Sat Jan 12 11:29:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11523         * bootstraptest/test_proc.rb: fixed wrong expected result.  pointed
11524           out by Kornelius "murphy" Kalnbach <murphy AT rubychan.de> in
11525           [ruby-core:15022].
11527 Sat Jan 12 04:38:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11529         * ruby.c (process_options): -e'script' is locale encoding by default.
11530           (load_file): ruby script from stdin is locale encoding by default.
11532 Sat Jan 12 04:31:59 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11534         * ext/nkf/nkf-utf8/nkf.c: fix bug: -m was -m0.
11536 Fri Jan 11 23:22:31 2008  Tanaka Akira  <akr@fsij.org>
11538         * string.c (string.c): call rb_str_buf_append to update encoding of
11539           str1, even if str2 is empty.
11541 Fri Jan 11 20:20:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11543         * proc.c (proc_mark): needs to mark the receiver too.  a patch from
11544           Chris Heath <chris AT heathens.co.nz> in [ruby-core:14983].
11545           [ruby-core:14885]
11547 Fri Jan 11 18:28:49 2008  Eric Hodel  <drbrain@segment7.net>
11549         * lib/rdoc/usage.rb: Removed.
11551         * lib/getoptlong.rb: Update example to not use lib/rdoc/usage.rb.
11553 Fri Jan 11 18:17:10 2008  Eric Hodel  <drbrain@segment7.net>
11555         * lib/rdoc/ri/driver.rb (read_yaml): Follow namespace change
11556           [ruby-core:14964].
11558 Fri Jan 11 16:55:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11560         * string.c (rb_str_append): performance improvement.
11562 Fri Jan 11 12:35:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11564         * configure.in: moved broken syscall checks from process.c etc.
11566         * defines.h (WORDS_BIGENDIAN): honor __BIG_ENDIAN__ than the result of
11567           configure.
11569         * lib/rdoc/options.rb (check_diagram): more precise check, darwin
11570           is not Windows but mingw is on it.
11572 Fri Jan 11 09:59:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11574         * ext/nkf/nkf-utf8/nkf.c: update to r1.163.
11576         * ext/nkf/nkf.c: ASCII's canonical name is US-ASCII.
11578         * ext/nkf/lib/kconv.rb (Kconv.isjis): force_encoding('BINARY').
11580 Fri Jan 11 09:23:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11582         * encoding.c (set_base_encoding): must use rb_enc_dummy_p.
11584 Fri Jan 11 06:13:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11586         * encoding.c (rb_to_encoding_index, rb_to_encoding): disallow nil.
11587           [ruby-dev:33003]
11589 Fri Jan 11 01:08:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11591         * thread.c (rb_mutex_unlock): proper error message for unlocking
11592           mutex that is not locked.  a patch from Yusuke ENDOH
11593           <mame at tsg.ne.jp> in [ruby-dev:33010].
11595 Thu Jan 10 18:00:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11597         * prelude.rb (Mutex::synchronize): capture exception from unlock.
11598           [ruby-dev:32935]
11600 Thu Jan 10 10:15:03 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11602         * io.c (io_encoding_set): IO.pipe("euc-jp", nil) should work as
11603           IO.pipe("euc-jp", nil).  [ruby-dev:33000]
11605         * io.c (io_encoding_set): handle nil for v1.
11607 Thu Jan 10 02:41:22 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11609         * io.c (rb_io_binmode): should not alter encoding.  [ruby-dev:32918]
11611         * io.c (io_read_encoding): need not to return ASCII-8BIT for
11612           binary IO.
11614 Wed Jan  9 22:04:17 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
11616         * lib/mathn.rb (Prime#each): returns an enumerator if no block
11617           given. [ruby-dev:32815]
11619 Wed Jan  9 22:03:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11621         * encoding.c (rb_enc_replicate): replica of dummy is a dummy.
11623 Wed Jan  9 20:55:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11625         * lib/e2mmap.rb (Exception2MessageMapper::Raise): define fail.
11626           [ruby-dev:32854]
11628 Wed Jan  9 20:35:42 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
11630         * lib/webrick/httprequest.rb: support X-Forwarded-* header fields.
11631           WEBrick::HTTPRequest#{host,port,request_uri} is derived having
11632           regards to X-Forwarded-Proto and X-Forwarded-Host.
11634         * lib/webrick/httprequest.rb
11635           (WEBrick::HTTPRequest#server_name?): new method.
11636           (WEBrick::HTTPRequest#remote_ip?): new method.
11637           (WEBrick::HTTPRequest#ssl?): new method.
11639 Wed Jan  9 18:24:39 2008  WATANABE Hirofumi  <eban@ruby-lang.org>
11641         * golf_prelude.rb (Array#to_s): alias to join.
11643         * golf_prelude.rb (FalseClass#to_s): return "".
11645 Wed Jan  9 16:59:54 2008  Tanaka Akira  <akr@fsij.org>
11647         * string.c (rb_enc_cr_str_buf_cat): fix self appending.
11649 Wed Jan  9 15:54:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11651         * ruby.c (process_options): give priority command line encoding option
11652           to RUBYOPT, and enable -E option in RUBYOPT.
11654         * ruby.c (load_file): deal with encoding option in shebang line if
11655           nothing in command line and RUBYOPT.
11657 Wed Jan  9 14:55:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11659         * parse.y (yycompile0): remove setting parser->enc because it is set
11660           in parser_prepare() by previous change of parser_prepare().
11662 Wed Jan  9 14:52:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11664         * string.c (rb_enc_cr_str_buf_cat, rb_str_buf_append): deal with self
11665           appending.
11667 Wed Jan  9 14:44:57 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11669         * parse.y (parser_prepare): set parser->enc from lex_input for ripper.
11671 Wed Jan  9 13:45:52 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
11673         * lib/webrick/server.rb (WEBrick::HTTPServer#start):
11674           :DoNotReverseLookup option had not been performed.
11676 Wed Jan  9 13:03:34 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11678         * string.c (rb_enc_cr_str_buf_cat): do not recalculate coderange
11679           value if it's given from outside.
11681 Wed Jan  9 08:42:01 2008  James Edward Gray II  <jeg2@ruby-lang.org>
11683         * enum.c:  Updating the documentation of Enumerable#zip to reflect
11684           the recent changes Matz made to the method.
11686 Wed Jan  9 01:35:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11688         * enc/Makefile.in (BUILTIN_ENCS): UTF-{16,32}{BE,LE} are not builtin.
11690 Tue Jan  8 23:55:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11692         * encoding.c (rb_enc_init): UTF-{16,32}{BE,LE} are not builtin.
11694 Tue Jan  8 22:33:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11696         * encoding.c, Makefile.in, include/ruby/oniguruma.h,
11697           enc/Makefile.in: fix rules for UTF-{16,32}{BE,LE}.
11699 Tue Jan  8 20:02:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11701         * win{32,ce}/Makefile.sub: merged.
11703 Tue Jan  8 19:48:15 2008  Eric Hodel  <drbrain@segment7.net>
11705         * lib/rdoc/ri/driver.rb: Speed up Marshal.load. Fix bug with nested
11706           classes' methods.
11708 Tue Jan  8 19:17:29 2008  Eric Hodel  <drbrain@segment7.net>
11710         * lib/rdoc/*: Clean up namespacing of RI's classes.
11712 Tue Jan  8 18:05:35 2008  Eric Hodel  <drbrain@segment7.net>
11714         * bin/ri, lib/rdoc/ri/*: Replace with Ryan Davis' cached ri.
11716 Tue Jan  8 17:32:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11718         * enum.c (enum_zip): honor length of the receiver, not the
11719           shortest length.  [ruby-core:14738]
11721         * enum.c (enum_zip): returns array not enumerator for no block
11722           form.  [ruby-core:14738]
11724         * enumerator.c (next_ii): do not ignore multiple values yielded.
11726         * array.c (rb_ary_zip): faster version without creating generators.
11728 Tue Jan  8 15:47:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11730         * enc/utf{16,32}_{be,le}.c: use &OnigEncodingName(*) instead of
11731           ONIG_ENCODING_*.
11733 Tue Jan  8 15:40:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11735         * regenc.c (onigenc_strlen_null, onigenc_str_bytelen_null): suppressed
11736           warnings.
11738         * regenc.h, enc/unicode.c (onigenc_unicode_ctype_code_range): added
11739           encoding argument.
11741         * enc/utf{16,32}_{be,le}.c: added init functions.
11743         * enc/utf{16,32}_{be,le}.c: imported from Oniguruma 5.9.1.
11745 Tue Jan  8 15:03:10 2008  Tanaka Akira  <akr@fsij.org>
11747         * string.c (str_gsub): avoid appending empty pre-match substr.
11749 Tue Jan  8 13:05:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11751         * compile.c (iseq_build_from_ary), iseq.c (iseq_load): fix for format change.
11753 Tue Jan  8 07:56:11 2008  Tanaka Akira  <akr@fsij.org>
11755         * string.c (rb_str_buf_append): fix append itself.
11757 Tue Jan  8 01:13:50 2008  Tanaka Akira  <akr@fsij.org>
11759         * string.c (STR_ENC_GET): defined.  same as rb_enc_get without
11760           enc_capable.
11761           (coderange_scan): ASCII-8BIT test refined.
11762           (rb_enc_cr_str_buf_cat): new internal function to accumulate
11763           strings with encoding.
11764           (rb_enc_str_buf_cat): use rb_enc_cr_str_buf_cat.
11765           (rb_str_buf_append): ditto
11766           (str_gsub): use rb_str_buf_append.
11767           (rb_str_hash): use ENCODING_GET.
11768           (rb_str_comparable): ditto.
11769           (rb_str_cmp): compare encoding index, not rb_encoding address.
11771 Mon Jan  7 20:37:55 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
11773         * lib/webrick/httpservlet/cgihandler.rb: external encoding of
11774           tempfiles is set to "ASCII-8BIT".
11776 Mon Jan  7 19:39:50 2008  Eric Hodel  <drbrain@segment7.net>
11778         * lib/rdoc/template.rb:  Use ERB instead of custom template language.
11780         * lib/rdoc/generators/template/html/old_html.rb:  Remove.
11782         * lib/rdoc/generators/template/*: Convert to ERB.
11784 Mon Jan  7 19:11:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11786         * string.c (Init_String): sym_match arity spec was wrong.  a patch
11787           from Hiroyuki Iwatsuki <don at na.rim.or.jp> in [ruby-dev:32957].
11789 Mon Jan  7 18:10:33 2008  Tanaka Akira  <akr@fsij.org>
11791         * string.c (str_gsub): move rb_enc_get(str) to out of loop.
11793 Mon Jan  7 15:52:10 2008  Tanaka Akira  <akr@fsij.org>
11795         * include/ruby/oniguruma.h (OnigEncodingType): new member
11796           ruby_encoding_index to avoid linear search in rb_enc_to_index.
11798         * include/ruby/encoding.h (rb_enc_to_index): macro defined to use
11799           ruby_encoding_index.
11801         * encoding.c (rb_enc_to_index): removed.
11802           (enc_register_at): initialize ruby_encoding_index member.
11804 Mon Jan  7 16:10:35 2008  Eric Hodel  <drbrain@segment7.net>
11806         * lib/rdoc/tokenstream.rb:  Namespace under RDoc.
11808 Mon Jan  7 16:06:09 2008  Eric Hodel  <drbrain@segment7.net>
11810         * lib/rdoc/dot.rb:  Namespace under RDoc.
11812         * lib/rdoc/diagram.rb:  Clean up formatting.
11814 Mon Jan  7 15:51:35 2008  Eric Hodel  <drbrain@segment7.net>
11816         * lib/rdoc/options.rb:  Convert to OptionParser, clean up -h output,
11817           namespace under RDoc.
11818         * lib/rdoc/*:  Namespace RDoc::Options.
11820 Mon Jan  7 15:42:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11822         * common.mk, Makefile.in, */Makefile.sub (distclean-local): move
11823           removing rule of ext/ripper/y.output from common.mk to Makefiles
11824           that depend on platforms.
11826 Mon Jan  7 13:54:57 2008  Tanaka Akira  <akr@fsij.org>
11828         * re.c (rb_reg_preprocess): fix fixed_enc condition.
11830 Mon Jan  7 11:51:49 2008  Eric Hodel  <drbrain@segment7.net>
11832         * lib/rdoc/generators/ri_generator.rb:  Merge documentation from the
11833           same class on output.  Fixes bug where documentation could
11834           disappear.
11836         * lib/rdoc/options.rb:  Fix typo.
11838         * lib/rdoc/generators/*: Clean up some namespacing and make RDoc
11839           consistent.
11841 Mon Jan  7 11:44:45 2008  Tanaka Akira  <akr@fsij.org>
11843         * encoding.c (rb_enc_internal_get_index): extracted from
11844           rb_enc_get_index.
11845           (rb_enc_internal_set_index): extracted from rb_enc_associate_index
11847         * include/ruby/encoding.h (ENCODING_SET): work over ENCODING_INLINE_MAX.
11848           (ENCODING_GET): ditto.
11849           (ENCODING_IS_ASCII8BIT): defined.
11850           (ENCODING_CODERANGE_SET): defined.
11852         * re.c (rb_reg_fixed_encoding_p): use ENCODING_IS_ASCII8BIT.
11854         * string.c (rb_enc_str_buf_cat): use ENCODING_IS_ASCII8BIT.
11856         * parse.y (reg_fragment_setenc_gen): use ENCODING_IS_ASCII8BIT.
11858         * marshal.c (has_ivars): use ENCODING_IS_ASCII8BIT.
11860 Mon Jan  7 02:14:07 2008  Tanaka Akira  <akr@fsij.org>
11862         * string.c (coderange_scan): avoid rb_enc_to_index.
11863           (rb_enc_str_buf_cat): ditto.
11864           (str_cat_char): use rb_enc_str_buf_cat.
11865           (rb_str_inspect): ditto.
11867 Mon Jan  7 01:36:49 2008  Tanaka Akira  <akr@fsij.org>
11869         * string.c (coderange_scan): optimize ASCII-8BIT string.
11870           (rb_enc_str_buf_cat): don't call coderange_scan if possible.
11872 Mon Jan  7 01:05:45 2008  Tanaka Akira  <akr@fsij.org>
11874         * lib/erb.rb (ERB::Revision): cut off locale dependent string in Date
11875           keyword.
11877 Mon Jan  7 00:48:02 2008  Tanaka Akira  <akr@fsij.org>
11879         * Date keyword removed to avoid inclusion of locale dependent
11880           string.  [ruby-dev:32940]
11882 Sun Jan  6 21:14:12 2008  Tanaka Akira  <akr@fsij.org>
11884         * re.c (rb_reg_initialize_str): forbid raw non ASCII character
11885           for ASCII-8BIT regexp in non ASCII-8BIT script.
11887 Sun Jan  6 18:19:12 2008  Tanaka Akira  <akr@fsij.org>
11889         * include/ruby/encoding.h (rb_enc_str_buf_cat): declared.
11891         * string.c (coderange_scan): extracted from rb_enc_str_coderange.
11892           (rb_enc_str_coderange): use coderange_scan.
11893           (rb_str_shared_replace): copy encoding and coderange.
11894           (rb_enc_str_buf_cat): new function for linear complexity string
11895           accumulation with encoding.
11896           (rb_str_sub_bang): don't conflict substituted part and replacement.
11897           (str_gsub): use rb_enc_str_buf_cat.
11898           (rb_str_clear): clear coderange.
11900         * re.c (rb_reg_regsub): use rb_enc_str_buf_cat.
11902 Sun Jan  6 17:55:44 2008  Technorama Ltd.  <oss-ruby@technorama.net>
11904         * lib/securerandom.rb: Add Win32 support.
11906 Sun Jan  6 09:32:58 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11908         * lib/date.rb, lib/date/format.rb: introduced some constants
11909           (for internal use) and aliases (minute and second).
11911         * sample/cal.rb: trivial adjustments.
11913 Sun Jan  6 01:38:07 2008  Tanaka Akira  <akr@fsij.org>
11915         * re.c (rb_reg_initialize_str): /\x80/n is not an error even if script
11916           encoding is EUC-JP.
11918 Sun Jan  6 00:48:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11920         * lib/resolv.rb (Resolv::DNS#each_address): get A record and then AAAA
11921           record. [ruby-dev:32925]
11923 Sat Jan  5 21:48:03 2008  Tanaka Akira  <akr@fsij.org>
11925         * vm_insnhelper.c (vm_callee_setup_arg): it is not inlinable because
11926           alloca is used.
11928 Sat Jan  5 16:50:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11930         * string.c (rb_str_resize): copy if old data is not empty
11931           [ruby-core:14785]
11933 Sat Jan  5 13:04:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11935         * ruby.c (proc_options): no need for intermediate object.
11937 Sat Jan  5 11:48:19 2008  Tanaka Akira  <akr@fsij.org>
11939         * encoding.c (Init_Encoding): alias csWindows31J to Windows-31J.
11940           IE6 accepts csWindows31J but Windows-31J.
11942 Sat Jan  5 02:21:10 2008  Tanaka Akira  <akr@fsij.org>
11944         * include/ruby/ruby.h (rb_intern): memorize interned ID for constant
11945           string, using gcc's __builtin_constant_p and statement expression.
11947 Sat Jan  5 02:14:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11949         * string.c (trnext): should enable backslash escape.
11951 Sat Jan  5 01:50:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11953         * eval.c (Init_eval): move instance_eval and instance_exec to
11954           BasicObject.  [ruby-core:14747]
11956         * lib/delegate.rb: should preserve new methods in BasicObject.
11958 Sat Jan  5 01:46:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11960         * ruby.c (proc_options): update according to the last API revert.
11962 Sat Jan  5 01:30:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11964         * include/ruby/intern.h, re.c (rb_reg_new): keep interface same as
11965           1.8.  [ruby-core:14583]
11967         * include/ruby/intern.h, re.c (rb_reg_new_str): renamed, and defines
11968           HAVE_RB_REG_NEW_STR macro to tell if it is available.
11970         * include/ruby/encoding.h (rb_enc_reg_new): added.
11972         * insns.def (toregexp), marshal.c (r_object0): use rb_reg_new_str().
11974         * re.c (rb_reg_regcomp, rb_reg_s_union): ditto.
11976 Fri Jan  4 23:08:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11978         * time.c (time_arg): use converted object.  [ruby-core:14759]
11980 Fri Jan  4 16:24:58 2008  Tanaka Akira  <akr@fsij.org>
11982         * ext/digest/lib/digest/hmac.rb (Digest::HMAC#initialize): use
11983           String#bytesize to avoid test errors on EUC-JP environment.
11985 Fri Jan  4 14:00:50 2008  Tanaka Akira  <akr@fsij.org>
11987         * re.c (rb_reg_prepare_re): check string encoding.  Oniguruma doesn't
11988           support invalid encoding.
11990 Fri Jan  4 10:22:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11992         * re.c (rb_reg_search): avoid inner loop for reverse search.
11994         * regexec.c: unset USE_MATCH_RANGE_MUST_BE_INSIDE_OF_SPECIFIED_RANGE
11995           which is turned on since oniguruma 5.9.1.
11997 Fri Jan  4 02:53:31 2008  Tanaka Akira  <akr@fsij.org>
11999         * enc/euc_jp.c: remove eucjp_ prefix.  breakpoint can be specified as
12000           euc_jp.c:mbc_enc_len.  avoid needless conflict by merge.
12002         * enc/sjis.c: remove sjis_ prefix.
12004         * enc/utf8.c: remove utf8_ prefix.
12006         * enc/iso_8859_1.c: remove iso_8859_1_ prefix.
12008         * enc/iso_8859_2.c: remove iso_8859_2_ prefix.
12010         * enc/iso_8859_3.c: remove iso_8859_3_ prefix.
12012         * enc/iso_8859_4.c: remove iso_8859_4_ prefix.
12014         * enc/iso_8859_5.c: remove iso_8859_5_ prefix.
12016         * enc/iso_8859_6.c: remove iso_8859_6_ prefix.
12018         * enc/iso_8859_7.c: remove iso_8859_7_ prefix.
12020         * enc/iso_8859_8.c: remove iso_8859_8_ prefix.
12022         * enc/iso_8859_9.c: remove iso_8859_9_ prefix.
12024         * enc/iso_8859_10.c: remove iso_8859_10_ prefix.
12026         * enc/iso_8859_11.c: remove iso_8859_11_ prefix.
12028         * enc/iso_8859_13.c: remove iso_8859_13_ prefix.
12030         * enc/iso_8859_14.c: remove iso_8859_14_ prefix.
12032         * enc/iso_8859_15.c: remove iso_8859_15_ prefix.
12034         * enc/iso_8859_16.c: remove iso_8859_16_ prefix.
12036 Fri Jan  4 02:47:06 2008  Tanaka Akira  <akr@fsij.org>
12038         * re.c (rb_reg_search): iterate onig_match for reverse mode.
12040 Fri Jan  4 01:20:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12042         * win32.h: only VC6 needs extern "C++" for math.h.  [ruby-talk:285660]
12044 Fri Jan  4 00:54:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
12046         * include/ruby/oniguruma.h: Oniguruma 5.9.1 merged.
12048 Fri Jan  4 00:20:47 2008  Tanaka Akira  <akr@fsij.org>
12050         * io.c (io_ungetc): move data in buffer if it is required to store the
12051           argument.
12053 Thu Jan  3 21:56:07 2008  Tanaka Akira  <akr@fsij.org>
12055         * include/ruby/ruby.h (st_strcasecmp): declared for STRCASECMP.
12056           (st_strncasecmp): declared for STRNCASECMP.
12058 Thu Jan  3 20:24:48 2008  Koichi Sasada  <ko1@atdot.net>
12060         * eval_jump.c (rb_f_catch): Restore cfp if caught thrown object.
12062 Thu Jan  3 19:45:57 2008  Koichi Sasada  <ko1@atdot.net>
12064         * bootstraptest/test_eval.rb, test_knownbug.rb: move a fixed test.
12066 Thu Jan  3 18:39:12 2008  Tanaka Akira  <akr@fsij.org>
12068         * encoding.c: (rb_tolower, rb_toupper): body was exchanged.
12070 Thu Jan  3 17:54:01 2008  Tanaka Akira  <akr@fsij.org>
12072         * regenc.h (onigenc_ascii_is_code_ctype): put back.
12074 Thu Jan  3 17:33:09 2008  Tanaka Akira  <akr@fsij.org>
12076         * encoding.c (rb_isalnum): defined.
12077           (rb_isalpha): ditto.
12078           (rb_isblank): ditto.
12079           (rb_iscntrl): ditto.
12080           (rb_isdigit): ditto.
12081           (rb_isgraph): ditto.
12082           (rb_islower): ditto.
12083           (rb_isprint): ditto.
12084           (rb_ispunct): ditto.
12085           (rb_isspace): ditto.
12086           (rb_isupper): ditto.
12087           (rb_isxdigit): ditto.
12088           (rb_tolower): ditto.
12089           (rb_toupper): ditto.
12091         * include/ruby/ruby.h: don't include include/ruby/encoding.h.
12092           (rb_isascii): defined.
12093           (rb_isalnum): declared.
12094           (rb_isalpha): ditto.
12095           (rb_isblank): ditto.
12096           (rb_iscntrl): ditto.
12097           (rb_isdigit): ditto.
12098           (rb_isgraph): ditto.
12099           (rb_islower): ditto.
12100           (rb_isprint): ditto.
12101           (rb_ispunct): ditto.
12102           (rb_isspace): ditto.
12103           (rb_isupper): ditto.
12104           (rb_isxdigit): ditto.
12105           (rb_tolower): ditto.
12106           (rb_toupper): ditto.
12107           (ISASCII): simplified.
12108           (ISPRINT): ditto.
12109           (ISSPACE): ditto.
12110           (ISUPPER): ditto.
12111           (ISLOWER): ditto.
12112           (ISALNUM): ditto.
12113           (ISALPHA): ditto.
12114           (ISDIGIT): ditto.
12115           (ISXDIGIT): ditto.
12116           (TOUPPER): ditto.
12117           (TOLOWER): ditto.
12119         * include/ruby/encoding.h (rb_isascii): removed.
12120           (rb_isalnum): ditto.
12121           (rb_isalpha): ditto.
12122           (rb_isblank): ditto.
12123           (rb_iscntrl): ditto.
12124           (rb_isdigit): ditto.
12125           (rb_isgraph): ditto.
12126           (rb_islower): ditto.
12127           (rb_isprint): ditto.
12128           (rb_ispunct): ditto.
12129           (rb_isspace): ditto.
12130           (rb_isupper): ditto.
12131           (rb_isxdigit): ditto.
12132           (rb_tolower): ditto.
12133           (rb_toupper): ditto.
12135         * common.mk: dependency updated.
12137 Thu Jan  3 15:10:26 2008  Tanaka Akira  <akr@fsij.org>
12139         * include/ruby/encoding.h (rb_isascii): simplified.
12140           (rb_isalnum): call onigenc_ascii_is_code_ctype without indirect call.
12141           (rb_isalpha): ditto.
12142           (rb_isblank): ditto.
12143           (rb_iscntrl): ditto.
12144           (rb_isdigit): ditto.
12145           (rb_isgraph): ditto.
12146           (rb_islower): ditto.
12147           (rb_isprint): ditto.
12148           (rb_ispunct): ditto.
12149           (rb_isspace): ditto.
12150           (rb_isupper): ditto.
12151           (rb_isxdigit): ditto.
12153         * include/ruby/oniguruma.h (onigenc_ascii_is_code_ctype): declaration
12154           moved from regenc.h.
12156 Thu Jan  3 14:37:17 2008  Tanaka Akira  <akr@fsij.org>
12158         * parse.y (parser_magic_comment): use STRNCASECMP.
12159           (set_file_encoding): ditto.
12161 Thu Jan  3 11:44:37 2008  Tanaka Akira  <akr@fsij.org>
12163         * time.c: don't mention an obsolete library, ParseDate.
12165 Thu Jan  3 11:28:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12167         * io.c (fptr_finalize): clear errno first.  [ruby-talk:284492]
12169 Thu Jan  3 05:02:36 2008  Tanaka Akira  <akr@fsij.org>
12171         * enc/us_ascii.c: add us_ascii_ prefix for functions to ease
12172           setting breakpoint when debugging.
12174         * enc/euc_jp.c: add eucjp_ prefix.
12176         * enc/sjis.c: add sjis_ prefix.
12178         * enc/iso_8859_1.c: add iso_8859_1_ prefix.
12180         * enc/iso_8859_2.c: add iso_8859_2_ prefix.
12182         * enc/iso_8859_3.c: add iso_8859_3_ prefix.
12184         * enc/iso_8859_4.c: add iso_8859_4_ prefix.
12186         * enc/iso_8859_5.c: add iso_8859_5_ prefix.
12188         * enc/iso_8859_6.c: add iso_8859_6_ prefix.
12190         * enc/iso_8859_7.c: add iso_8859_7_ prefix.
12192 Thu Jan  3 02:44:34 2008  Tanaka Akira  <akr@fsij.org>
12194         * bignum.c (conv_digit): use ISDIGIT, ISLOWER and ISUPPER.
12196 Wed Jan  2 23:50:15 2008  Tanaka Akira  <akr@fsij.org>
12198         * util.c (ruby_strtoul): "0x", "+" and "-" is not a valid integer.
12199           end of integer should be just after "0", the beginning, the
12200           beginning respectively.
12202 Wed Jan  2 15:23:15 2008  Tanaka Akira  <akr@fsij.org>
12204         * util.c (ruby_strtoul): locale independent strtoul is implemented to
12205           avoid "i".to_i(36) cause 0 under tr_TR locale on Debian GNU/Linux
12206           4.0 (Etch).
12207           This is newly implemented, not a copy of missing/strtoul.c.
12209         * include/ruby/ruby.h (ruby_strtoul): declared.
12210           (STRTOUL): defined to use ruby_strtoul.
12212         * bignum.c, pack.c, ext/socket/socket.c: use STRTOUL.
12214         * configure.in (strtoul): don't check.
12216         * missing/strtoul.c: removed.
12218         * include/ruby/missing.h (strtoul): removed.
12220         * common.mk (strtoul.o): removed.
12222         * LEGAL (missing/strtoul.c): removed.
12224 Wed Jan  2 14:41:08 2008  Tanaka Akira  <akr@fsij.org>
12226         * common.mk (strcasecmp.o): removed.
12227           (strncasecmp.o): removed.
12229         * include/ruby/missing.h (strcasecmp): removed.
12230           (strncasecmp): removed.
12232 Wed Jan  2 11:34:57 2008  Tanaka Akira  <akr@fsij.org>
12234         * missing/strcasecmp.c: removed.  Ruby don't use locale dependent
12235           strcasecmp.
12237         * missing/strncasecmp.c: ditto.
12239         * configure.in: don't check strcasecmp and strncasecmp.
12241         * LEGAL: missing/strcasecmp.c and missing/strncasecmp.c removed.
12243 Wed Jan  2 10:13:54 2008  Tadayoshi Funaba  <tadf@dotrb.org>
12245         * sample/time.rb: use Process.times instead of Time.times.
12247 Wed Jan  2 09:09:53 2008  Tadayoshi Funaba  <tadf@dotrb.org>
12249         * sample/goodfriday.rb: examples for date are enough.  retired.
12251 Wed Jan  2 08:58:54 2008  Tadayoshi Funaba  <tadf@dotrb.org>
12253         * sample/cal.rb: just updated with the newest version.
12255 Wed Jan  2 01:19:31 2008  Tanaka Akira  <akr@fsij.org>
12257         * enc/depend: dependency updated.
12259 Wed Jan  2 00:14:41 2008  NARUSE, Yui  <naruse@ruby-lang.org>
12261         * ext/nkf/nkf-utf8/{nkf.c, utf8tbl.c}: Update nkf.
12263         * ext/nkf/nkf.c: fix documents.
12265         * ext/nkf/lib/kconv.rb: fix documents.
12266           (Kconv.is*): use valid_encoding?.
12267           (Kconv.isjis): defined.
12269 Tue Jan  1 23:17:03 2008  Tanaka Akira  <akr@fsij.org>
12271         * common.mk: dependency updated.
12273 Tue Jan  1 21:11:33 2008  Tanaka Akira  <akr@fsij.org>
12275         * include/ruby/encoding.h (rb_isascii): defined.
12276           (rb_isalnum): ditto.
12277           (rb_isalpha): ditto.
12278           (rb_isblank): ditto.
12279           (rb_iscntrl): ditto.
12280           (rb_isdigit): ditto.
12281           (rb_isgraph): ditto.
12282           (rb_islower): ditto.
12283           (rb_isprint): ditto.
12284           (rb_ispunct): ditto.
12285           (rb_isspace): ditto.
12286           (rb_isupper): ditto.
12287           (rb_isxdigit): ditto.
12288           (rb_tolower): ditto.
12289           (rb_toupper): ditto.
12291         * include/ruby/st.h (st_strcasecmp): declared.
12292           (st_strncasecmp): ditto.
12294         * st.c (type_strcasehash): use st_strcasecmp instead of strcasecmp.
12295           (st_strcasecmp): defined.
12296           (st_strncasecmp): ditto.
12298         * include/ruby/ruby.h: include include/ruby/encoding.h.
12299           (ISASCII): use rb_isascii.
12300           (ISPRINT): use rb_isprint.
12301           (ISSPACE): use rb_isspace.
12302           (ISUPPER): use rb_isupper.
12303           (ISLOWER): use rb_islower.
12304           (ISALNUM): use rb_isalnum.
12305           (ISALPHA): use rb_isalpha.
12306           (ISDIGIT): use rb_isdigit.
12307           (ISXDIGIT): use rb_isxdigit.
12308           (TOUPPER): defined.
12309           (TOLOWER): ditto.
12310           (STRCASECMP): ditto.
12311           (STRNCASECMP): ditto.
12313         * dir.c, encoding.c, file.c, hash.c, process.c, ruby.c, time.c,
12314           transcode.c, ext/readline/readline.c: use locale insensitive
12315           functions.  [ruby-core:14662]
12317 Tue Jan  1 17:50:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12319         * io.c (rb_io_mode_enc): encoding spec is not allowed in binary mode.
12320           [ruby-dev:32913]
12322 Tue Jan  1 14:41:56 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
12324         * lib/rexml: 1.9 patch from Sam Ruby mentioned in his blog:
12325           <http://intertwingly.net/blog/2007/12/31/Porting-REXML-to-Ruby-1-9>
12326           [ruby-core:14639]
12328 Tue Jan  1 14:15:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
12330         * string.c (rb_str_substr): offset movement bug.  a patch from
12331           Vincent Isambart <vincent.isambart at gmail.com> in
12332           [ruby-core:14647].  [ruby-core:14644]
12334 Tue Jan  1 01:29:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12336         * encoding.c (rb_to_encoding): raises for non-nil, non-encoding,
12337           non-string object.  [ruby-core:14634]
12339 Tue Jan  1 01:04:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12341         * ruby.c (process_options): rejects dummy encoding.
12343 Mon Dec 31 23:53:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12345         * ruby.c (proc_options, process_options): delays finding encoding
12346           until load_path is set.
12348 Mon Dec 31 23:27:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12350         * string.c (rb_str_resize): embeds if ptr is null.  [ruby-dev:32819]
12352 Mon Dec 31 23:17:22 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12354         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_service):
12355           call do_XXX which correspond with request method.
12356           (WEBrick::HTTPProxyServer#do_CONNECT,do_GET,do_POST,do_HEAD): added.
12358         * test/webrick/test_httpproxy.rb: add test for WEBrick::HTTPProxyServer.
12360 Mon Dec 31 22:53:29 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12362         * thread_pthread.c (native_sleep): timespec tv_sec may overflow on
12363           some platform.  a patch from zunda <zunda616e AT yahoo.co.jp> in
12364           [ruby-dev:32904].
12366 Mon Dec 31 19:35:20 2007  Tanaka Akira  <akr@fsij.org>
12368         * string.c (IS_7BIT): removed.
12369           (single_byte_optimizable): new function to test optimizationability
12370           using single byte string.
12371           (str_strlen): use single_byte_optimizable instead of
12372           is_ascii_string.
12373           (str_nth): rename argument: asc -> singlebyte.
12374           (str_offset): ditto.
12375           (rb_str_substr): use single_byte_optimizable instead of IS_7BIT.
12376           (rb_str_index): ditto.
12377           (rb_str_rindex): ditto.
12378           (rb_str_splice): ditto.
12379           (rb_str_justify): ditto.
12381 Mon Dec 31 07:39:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12383         * main.c, goruby.c (RUBY_MAIN_INIT): removed.
12385         * goruby.c (goruby_run_node): run after ruby_init_loadpath() so that
12386           require works, and protect the call.
12388 Mon Dec 31 06:50:38 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12390         * common.mk: not use -I$(srcdir)/lib with $(MINIRUBY) for cross
12391           compiling.
12393         * configure.in, {win,bcc}32/Makefile.sub (MINIRUBY): -I$(srcdir)/lib
12394           moved.
12396 Mon Dec 31 06:08:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12398         * include/ruby/encoding.h (rb_enc_sprintf, rb_enc_vsprintf): prototyped.
12400         * sprintf.c (rb_enc_sprintf, rb_enc_vsprintf): new functions to format
12401           arguments with encoding.
12403 Sun Dec 30 23:48:00 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12405         * golf_prelude.rb (String#/): define / as split, as association of
12406           Array#*.
12408 Sun Dec 30 23:19:06 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
12410         * golf_prelude.rb (@@golf_hash): for performance improvement.
12412 Sun Dec 30 22:44:50 2007  Tadayoshi Funaba  <tadf@dotrb.org>
12414         * lib/date.rb (_valid_time?): I'm not sure to recommend such an
12415           expression.  but anyway it is acceptable now.  [ruby-core:14580]
12417 Sun Dec 30 21:54:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12419         * parse.y (program, yycompile0): too early to drop lex_lastline in
12420           rules.
12422 Sun Dec 30 19:23:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12424         * bootstraptest/test_knownbug.rb: support DOSISH.
12426 Sun Dec 30 17:43:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12428         * encoding.c (Init_Encoding): registered rb_encoding differs from
12429           ONIG_ENCODINGs.
12431 Sun Dec 30 13:56:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12433         * parse.y (program): clear input strings after all process.
12435         * parse.y (parser_nextc, parser_yylex): should not drop lex_lastline
12436           while lex_p is valid.  [ruby-dev:32896]
12438 Sun Dec 30 10:54:49 2007  NARUSE, Yui  <naruse@ruby-lang.org>
12440         * configure.in: rm largefile.h.
12442         * common.mk: clean golf, conf*, preludes, and so on.
12444         * enc/depend: silent and ignore error for rm.
12446         * enc/Makefile.in: should define prefix and exec_prefix.
12448 Sun Dec 30 06:31:11 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12450         * encoding.c (Init_encoding): register Windows-31J and its alias.
12451           [ruby-dev:32843]
12453         * ruby.c (proc_options): -Ks options means Windows-31J, not Shift_JIS.
12455 Sun Dec 30 06:27:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12457         * lib/mkmf.rb (depend_rules): need to convert `/' to `\' for windows
12458           native commands.
12460 Sun Dec 30 01:43:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12462         * enc/Makefile.in (DLDFLAGS): like as extensions.  [ruby-core:14567]
12464 Sat Dec 29 23:48:13 2007  Tanaka Akira  <akr@fsij.org>
12466         * io.c (io_fflush): don't retry when wbuf modified by other threads.
12468 Sat Dec 29 22:44:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12470         * re.c (rb_reg_regsub): returns the given string itself if nothing
12471           changed.
12473         * string.c (rb_str_sub_bang): keeps code-range as possible.
12475         * string.c (str_gsub): adjusts code-range.  [ruby-core:14566]
12477 Sat Dec 29 21:54:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12479         * common.mk (clean, distclean, realclean): should include clean-enc
12480           and others.  [ruby-dev:32887]
12482 Sat Dec 29 13:29:29 2007  Tanaka Akira  <akr@fsij.org>
12484         * bootstraptest/test_knownbug.rb: add a test reported by
12485           Kazuhiro NISHIYAMA.  [ruby-dev:32819].
12486           add a test reported by Frederick Cheung.  [ruby-core:14556].
12488         * test/ruby/test_m17n.rb (test_gsub): add a test reported by
12489           Sam Ruby.  [ruby-core:14566]
12491 Sat Dec 29 04:46:58 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12493         * lib/test/unit/assertions.rb (Test::Unit::Assertions#assert_throws):
12494           throw won't raise NameError nor ThreadError but ArgumentError on 1.9.
12495           (Test::Unit::Assertions#assert_not_throws): ditto.
12497         * test/testunit/test_assertions.rb: add assertions for throwing some
12498           objects other than Symbol.
12500 Sat Dec 29 03:10:12 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12502         * io.c (io_unread): fix typo.
12504 Sat Dec 29 02:18:45 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12506         * io.c (io_unread): adhoc workaround for non-binary mode of some DOSish
12507           platforms. this is not perfect and safety, but works with most cases.
12509 Fri Dec 28 23:53:18 2007  Tanaka Akira  <akr@fsij.org>
12511         * ext/strscan/strscan.c (str_new): new function for allocate an string
12512           with encoding propagation.
12513           (extract_range): use str_new.
12514           (extract_beg_len): ditto.
12515           (strscan_peek): ditto.
12516           (strscan_rest): ditto.
12518 Fri Dec 28 20:18:42 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
12520         * golf_prelude.rb (Object.say): derived from Perl 5.10.
12522 Fri Dec 28 19:39:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12524         * encoding.c (rb_locale_encoding): should check return value from
12525           rb_locale_charmap().
12527         * ruby.c (locale_encoding): removed.
12529         * ruby.c (process_options): use rb_locale_encoding() instead of
12530           locale_encoding().
12532         * ext/readline/readline.c (readline_readline): use locale encoding
12533           instead of input IO's encoding. [ruby-dev:32872]
12535 Fri Dec 28 19:29:07 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12537         * ext/readline/readline.c (readline_readline, readline_s_set_input):
12538           use mReadline directly because self is not always same.
12540 Fri Dec 28 19:11:28 2007  Tanaka Akira  <akr@fsij.org>
12542         * encoding.c (rb_locale_encoding): defined.
12544         * include/ruby/encoding.h (rb_locale_encoding): declared.
12546 Fri Dec 28 18:45:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12548         * ext/readline/readline.c (readline_readline): set encoding to result.
12550         * ext/readline/readline.c (readline_s_set_input, Init_readline): save
12551           input IO to hidden instance variable.
12553 Fri Dec 28 01:55:04 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
12555         * transcode.c (transcode_dispatch): reverted some of the changes
12556           in r14746.
12558         * transcode.c, enc/trans/single_byte.c: Added conversions to/from
12559           US-ASCII and ASCII-8BIT (using data tables).
12561         * enc/trans/single_byte.c: Some spacing/ordering changes due to
12562           automatic data file generation.
12564         * transcode_data.h, transcode.c: Preliminary code for using
12565           micro-conversion functions.
12567         * test/ruby/test_transcode.rb: Added some tests for US-ASCII and
12568           ASCII-8BIT conversions.
12570 Fri Dec 28 17:33:44 2007  Tanaka Akira  <akr@fsij.org>
12572         * time.c (make_time_t): verify mktime and timegm result.
12574 Fri Dec 28 16:36:33 2007  NARUSE, Yui  <naruse@airemix.com>
12576         * lib/resolv.rb (Resolv::DNS#each_address): now returns IPv6 address.
12578 Fri Dec 28 16:10:00 2007  Eric Hodel  <drbrain@segment7.net>
12580         * lib/rdoc/dot/dot.rb: Move to lib/rdoc/dot.rb. Fix namespacing.
12582         * lib/rdoc/diagram.rb: Update for 1.9.
12584 Fri Dec 28 15:38:29 2007  Eric Hodel  <drbrain@segment7.net>
12586         * lib/rdoc/markup/sample/: Move to sample/rdoc/markup directory.
12588 Fri Dec 28 15:15:12 2007  Akinori MUSHA  <knu@iDaemons.org>
12590         * lib/irb/completion.rb: Remove garbage ("X=1").
12592 Fri Dec 28 15:12:05 2007  Eric Hodel  <drbrain@segment7.net>
12594         * lib/rdoc, test/rdoc: Move RDoc tests out of lib/.
12596 Fri Dec 28 15:10:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12598         * encoding.c (set_base_encoding, enc_base_encoding): renamed
12599           based_encoding as base_encoding.
12601 Fri Dec 28 13:57:49 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12603         * golf_prelude.rb (Integer#each): use alias simply.
12605 Fri Dec 28 13:45:21 2007  Akinori MUSHA  <knu@iDaemons.org>
12607         * golf_prelude.rb (Object.const_missing): No need to delegate to
12608           superclass.  Just raise a NameError when none matches.
12610 Fri Dec 28 13:18:47 2007  Kouhei Sutou  <kou@cozmixng.org>
12612         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.2 -> 0.2.3.
12614         * lib/rss/parser.rb, test/rss/test_parser.rb: supported "-" in tag name.
12615           Reported by Ray Chen. Thanks.
12617 Fri Dec 28 13:07:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12619         * gc.c (os_obj_of): returns an enumerator if no block given.  based on
12620           a patch from Yugui <yugui AT yugui.sakura.ne.jp>.  [ruby-dev:32828]
12622 Fri Dec 28 11:46:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12624         * tool/ytab.sed: skip yydestruct hack unless yymsg exists, for bison
12625           1.8 series.  [ruby-dev:32825]
12627 Fri Dec 28 11:39:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12629         * golf_prelude.rb (Object.quine): need to join because SCRIPT_LINES__[]
12630           returns an array of lines.
12632 Fri Dec 28 11:16:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12634         * golf_prelude.rb (Object.quine): get the script itself.
12636 Fri Dec 28 10:06:54 2007  Akinori MUSHA  <knu@iDaemons.org>
12638         * golf_prelude.rb (Object.const_missing): Auto-complete constants.
12640 Fri Dec 28 01:55:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12642         * transcode.c (transcode_dispatch): allows transcoding from/to
12643           ASCII-8BIT.
12645 Fri Dec 28 01:47:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12647         * golf_prelude.rb (Integer): Integer is now enumerable on goruby.
12649 Fri Dec 28 01:27:47 2007  Tanaka Akira  <akr@fsij.org>
12651         * lib/rdoc/rdoc.rb (parse_files): don't depend on the default external
12652           encoding.
12654 Fri Dec 28 00:01:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12656         * common.mk (golf_prelude.c): use MINIRUBY instead of BASERUBY because
12657           tool/compile_prelude.rb requires rbconfig.rb.
12659 Thu Dec 27 23:56:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12661         * mkconfig.rb: should not use the libraries under the source directory
12662           at cross compiling.
12664 Thu Dec 27 23:43:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12666         * cygwin/GNUmakefile.in (EXTOBJS): uses ruby.rc always for other than
12667           rubyw.exe.
12669 Thu Dec 27 22:31:37 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12671         * lib/rubygems/commands/update_command.rb (do_rubygems_update): use
12672           portable and safely ENV operation. reported in
12673           <http://slashdot.jp/developers/comments.pl?sid=384937&cid=1273085>.
12675 Thu Dec 27 21:47:04 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12677         * mkconfig.rb (prefix): archdir is "1.9.0", not "1.9". reported in
12678           <http://slashdot.jp/developers/comments.pl?sid=384937&cid=1273085>.
12680 Thu Dec 27 17:57:30 2007  Tanaka Akira  <akr@fsij.org>
12682         * parse.y, transcode_data.h, transcode.c, lib/weakref.rb,
12683           lib/irb/ruby-lex.rb, lib/irb/lc/error.rb, enc/trans/japanese.c:
12684           change "illegal" to "invalid" in a context which doesn't against
12685           a law.
12687 Thu Dec 27 16:37:06 2007  Tanaka Akira  <akr@fsij.org>
12689         * re.c (rb_reg_s_union): show encodings in error message.
12691 Thu Dec 27 15:25:16 2007  Tanaka Akira  <akr@fsij.org>
12693         * encoding.c (rb_enc_codelen): show codepoint in error message.
12695         * include/ruby/encoding.h (rb_enc_codelen): comment it returns
12696           positive integer.
12698         * string.c (rb_str_concat): rb_enc_codelen doesn't return 0.
12700 Thu Dec 27 15:18:44 2007  Tanaka Akira  <akr@fsij.org>
12702         * encoding.c (rb_enc_codelen): error message refined.
12704 Thu Dec 27 15:11:27 2007  Tanaka Akira  <akr@fsij.org>
12706         * encoding.c (rb_enc_check): show encodings in error message.
12708 Thu Dec 27 15:02:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12710         * string.c (rb_str_casecmp): fixed using a wrong variable.
12711           [ruby-list:44402]
12713 Thu Dec 27 14:34:38 2007  Tanaka Akira  <akr@fsij.org>
12715         * io.c (io_fflush): checks wbuf modification by other threads.
12716           not perfect.  it need locks.
12718 Thu Dec 27 10:44:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12720         * ext/socket/socket.c: a patch to support IRIX from Andrew
12721           Thompson <andrew@hijacked.us> in [ruby-core:14447].
12723 Thu Dec 27 02:25:45 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12725         * lib/mkmf.rb (create_tmpsrc): retry to create file if Errno::EACCES
12726           occurs. this is a workaround for mswin32.
12728 Wed Dec 26 22:47:31 2007  NARUSE, Yui <naruse@ruby-lang.org>
12730         * lib/resolv.rb (Resolv::DNS::Name.==): fix for other is array of
12731           Resolv::DNS::Label::Str.
12733         * lib/resolv.rb (Resolv::DNS::MessageEncoder#put_label): String#string
12734           is not defined, so replace to_s.
12736         * lib/resolv.rb (Resolv::IPv6#to_name): ip6.int is obsoleted by
12737           ip6.arpa.
12740 Wed Dec 26 21:27:02 2007  Tadayoshi Funaba  <tadf@dotrb.org>
12742         * lib/date/format.rb (_xmlschema): some improvements.
12744         * lib/date/format.rb (_parse): a new hint compfunc. [experimental]
12746 Wed Dec 26 17:31:08 2007  Tanaka Akira  <akr@fsij.org>
12748         * io.c (io_fflush): check closed fptr after rb_write_internal to avoid
12749           SEGV on MacOS X.
12751 Wed Dec 26 16:10:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12753         * string.c (Init_String): defines chars method.
12755 Wed Dec 26 14:38:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12757         * instruby.rb: install goruby if exists.
12759 Wed Dec 26 13:55:02 2007  James Edward Gray II  <jeg2@ruby-lang.org>
12761         * lib/csv.rb:  Cleaned up some code with Ruby 1.9 idioms.
12763 Wed Dec 26 13:29:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12765         * array.c (tmpbuf): use rb_str_tmp_new().
12767 Wed Dec 26 00:57:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12769         * ext/json/ext/generator/generator.c (Init_generator): requires
12770           json/common.rb for GeneratorError, when static linked.  a patch from
12771           Kenta Murata <muraken AT gmail.com> in [ruby-dev:32789].
12773 Tue Dec 25 23:33:55 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12775         * development version 1.9.0 released.
12777 Tue Dec 25 23:25:29 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12779         * lib/rexml/node.rb (REXML::Node::indent): should initialize rv
12780           variable.  a patch from Tadayoshi Funaba <tadf AT dotrb.org> in
12781           [ruby-dev:32783].
12783 Tue Dec 25 23:16:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12785         * ruby.c (proc_options): encoding option in shebang and RUBYOPT did not
12786           work, do not store alloca()ed string in a parent scope struct.
12788 Tue Dec 25 22:56:52 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12790         * win32/Makefile.sub (config.status): keep this file.
12792 Tue Dec 25 22:55:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12794         * configure.in (TIMEZONE_VOID): typo.
12796 Tue Dec 25 22:45:10 2007  Koichi Sasada  <ko1@atdot.net>
12798         * insns2vm.rb: add encoding option to shebang.
12800 Tue Dec 25 22:13:51 2007  Koichi Sasada  <ko1@atdot.net>
12802         * bootstraptest/pending.rb: add pending issue.
12804 Tue Dec 25 22:12:40 2007  Koichi Sasada  <ko1@atdot.net>
12806         * thread.c: remove Thread.critical(=).
12808 Tue Dec 25 21:44:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12810         * tool/make-snapshot: add version number.
12812 Tue Dec 25 21:32:54 2007  Koichi Sasada  <ko1@atdot.net>
12814         * compile.c (iseq_compile_each): fix stack consistency error
12815           (break is compiled to throw instead of jump insn).
12816           these problems are reported by Yusuke ENDOH <mame AT tsg.ne.jp>
12818         * bootstraptest/test_knownbug.rb, test_syntax.rb: move fixed test.
12820 Tue Dec 25 21:32:44 2007  Tanaka Akira  <akr@fsij.org>
12822         * parse.y (struct parser_params): make parser_ruby_sourcefile common
12823           field.  it is used by node_newnode.
12824           new field parser_ruby_sourcefile_string for ripper.
12825           (parser_initialize): initialize parser_ruby_sourcefile in ripper.
12826           (ripper_initialize): initialize parser_ruby_sourcefile_string.
12828 Tue Dec 25 21:26:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12830         * common.mk (parse.c): depends on tool/ytab.sed.
12832         * tool/ytab.sed: hack for bison 2.1.
12834 Tue Dec 25 20:24:58 2007  Technorama Ltd.  <oss-ruby@technorama.net>
12836         * ext/openssl/ossl_ssl.c: Only show a warning if the default
12837           DH callback is actually used.
12839         * ext/openssl/ossl_rand.c: New method: random_add().
12841 Tue Dec 25 20:24:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12843         * tool/make-snapshot: argument check, and cleanup exported directory.
12845 Tue Dec 25 20:07:13 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
12847         * tool/make-snapshot: more portable.
12849 Tue Dec 25 19:01:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12851         * encoding.h (rb_enc_mbc_to_codepoint): wrapper for
12852           ONIGENC_MBC_TO_CODE().
12854         * string.c (rb_str_succ): deal with invalid sequence as binary.
12856 Tue Dec 25 18:40:46 2007  Koichi Sasada  <ko1@atdot.net>
12858         * iseq.c: all methods need $SAFE < 1.
12860          vm.c: comment out debug functions.
12862 Tue Dec 25 18:37:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12864         * io.c (appendline): move RS comparison to rb_io_getline_1().
12866 Tue Dec 25 18:27:51 2007  Tanaka Akira  <akr@fsij.org>
12868         * string.c (rb_str_each_line): don't call rb_enc_codepoint with empty
12869           string.
12871 Tue Dec 25 18:06:04 2007  Tanaka Akira  <akr@fsij.org>
12873         * string.c (rb_str_inspect): don't call rb_enc_codepoint with empty
12874           string.  fix '#'.inspect.
12876         * encoding.c (rb_enc_codepoint): raise on empty string.
12878 Tue Dec 25 17:48:28 2007  Shugo Maeda  <shugo@ruby-lang.org>
12880         * vm.c (rb_frame_method_id_and_class): new function to get the
12881           method id and class of the current frame.
12883 Tue Dec 25 17:32:04 2007  Akinori MUSHA  <knu@iDaemons.org>
12885         * lib/mkmf.rb (create_makefile): Add a missing dependency on the
12886           target directory for each .rb file.  This will hopefully fix
12887           parallel make (-jN).  Tested on FreeBSD.
12889 Tue Dec 25 16:51:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12891         * enc/trans/japanese.c (rb_{from,to}_{SHIFT_JIS,EUC_JP}): inversed
12892           from_encoding and to_encoding.
12894 Tue Dec 25 16:41:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12896         * golf_prelude.rb (h): add new method for all golfers.
12898 Tue Dec 25 16:37:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12900         * enc/trans/japanese.c (rb_to_EUC_JP): fixed typo.
12902 Tue Dec 25 16:34:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12904         * ext/dl/depend: add dependencies. [ruby-dev:32760]
12906 Tue Dec 25 16:26:48 2007  Koichi Sasada  <ko1@atdot.net>
12908         * include/ruby/ruby.h, thread.c: rename is_ruby_native_thread() to
12909           ruby_native_thread_p().
12911         * ext/tk/tcltklib.c: apply it.
12913 Tue Dec 25 16:15:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12915         * common.mk (clean-enc): clean encoding objects.
12917 Tue Dec 25 16:04:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12919         * common.mk, goruby.c, golf_prelude.rb: for golfers.
12921         * main.c (main): hook for embedding applications.
12923         * tool/compile_prelude.rb: can change initialize function name.
12925 Tue Dec 25 15:59:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12927         * encoding.c (rb_enc_register): do not use based_encoding to check if
12928           dummy encoding.
12930 Tue Dec 25 15:55:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12932         * string.c (rb_str_succ): fix for string with non-alphanumeric chars.
12934 Tue Dec 25 15:42:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12936         * io.c (rb_io_external_encoding): should return nil for
12937           pass-through write IO.  [ruby-dev:32740]
12939 Tue Dec 25 15:24:57 2007  Tanaka Akira  <akr@fsij.org>
12941         * io.c (appendline): initialize rslen to 1 if rsptr is 0.
12942           rslen is the length of the delimiter.
12943           if only delim is given, it should be 1.
12944           [ruby-dev:32746]
12946 Tue Dec 25 15:21:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12948         * transcode.c (transcode_dispatch): fix for multistep transcode.
12950 Tue Dec 25 15:07:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12952         * enc/trans/single_byte.c (Init_single_byte): renamed.
12954 Tue Dec 25 15:00:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12956         * enum.c (enum_yield): when multiple values yielded from #each
12957           pack them into an array.  [ruby-dev:32708]
12959         * enum.c: all method but all?, any?, one? and none? passed packed
12960           multiple values to the block.
12962         * enum.c (collect_all): should pack all values.  [ruby-core:14410]
12964 Tue Dec 25 14:57:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12966         * common.mk (COMMONOBJS): transcode_data_*.c moved under enc/trans.
12968         * transcode_data.h (rb_transcoding, rb_transcoder): prefixed.
12970         * transcode.c (rb_register_transcoder, rb_declare_transcoder): split
12971           declaration and registration.  [ruby-dev:32704]
12973         * transcode.c (transcode_dispatch): autoload pre-declared transcoder.
12975         * transcode.c (str_transcode): use rb_define_dummy_encoding().
12977         * transcode.c (Init_transcode): initialize transcoder tables.
12979         * enc/trans/single_byte.c, enc/trans/japanese.c: moved from top.
12981 Tue Dec 25 14:20:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12983         * lib/mkmf.rb (map_dir): should generate path including $top_srcdir.
12985 Tue Dec 25 14:09:16 2007  James Edward Gray II  <jeg2@ruby-lang.org>
12987         * lib/csv.rb:  Fixed test failures caused by changes to Ruby.
12989         * test/csv/tc_serialization, test/csv/tc_csv_parsing, test/csv/tc_features:
12990           Fixed test failures caused by changes to Ruby.
12992 Tue Dec 25 14:11:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12994         * io.c (io_encoding_set): missing return type.
12996 Tue Dec 25 14:03:48 2007  NARUSE, Yui <naruse@ruby-lang.org>
12998         * test/rinda/test_rinda.rb (MockClock#{_forward, forward, sleep}):
12999           Change default value of n as @reso from nil.  If default value is
13000           nil, n.+ is not defined.
13002 Tue Dec 25 13:54:01 2007  Tanaka Akira  <akr@fsij.org>
13004         * test/ruby/test_io_m17n.rb (test_pipe): fixed.
13005           [ruby-dev:32743]
13007 Tue Dec 25 13:44:51 2007  Koichi Sasada  <ko1@atdot.net>
13009         * thread.c (rb_thread_wait_fd_rw): should check EBADF on select().
13011 Tue Dec 25 13:30:03 2007  Koichi Sasada  <ko1@atdot.net>
13013         * thread_pthread.c, thread_pthread.h, thread_win32.c,
13014           thread_win32.c: make some functions static functions.
13015           a patch from Tadashi Saito <shiba AT mail2.accsnet.ne.jp>
13016           in [ruby-core:14407]
13018 Tue Dec 25 13:23:13 2007  Tanaka Akira  <akr@fsij.org>
13020         * test/ruby/test_io_m17n.rb (test_write_noenc): don't mix text and
13021           binary mode.  [ruby-dev:32743]
13023 Tue Dec 25 13:13:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13025         * README.EXT.ja, dir.c, eval.c, eval_intern.h, lex.c.src,
13026           lex.c.blt, keywords, load.c, thread.c: more ANSI'ize.
13027           a patch from Tadashi Saito <shiba AT mail2.accsnet.ne.jp>
13028           in [ruby-dev:32725]
13030 Tue Dec 25 13:07:56 2007  Koichi Sasada  <ko1@atdot.net>
13032         * vm_core.h, thread.c, cont.c: add RUBY_VM_SET_INTERRUPT(),
13033           RUBY_VM_SET_TIMER_INTERRUPT(), RUBY_VM_INTERRUPTED().
13035         * thread.c, thread_pthread.c, thread_win32.c: fix to ignore time slice
13036           event until sleep.
13038         * bootstraptest/test_thread.rb: add a test for time limited join test.
13040 Tue Dec 25 12:42:59 2007  Koichi Sasada  <ko1@atdot.net>
13042         * vm.c (Init_VM): remove unused code.
13043           [ruby-dev:32732]
13045 Tue Dec 25 12:32:32 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13047         * transcode.c: Moving a static counter from inside register_transcoder()
13048           and register_functional_transcoder() to outside the functions, renaming
13049           from n to next_transcoder_position. Fixes 3) in [ruby-dev:32715].
13051 Tue Dec 25 12:22:17 2007  NARUSE, Yui <naruse@ruby-lang.org>
13053         * sample/from.rb: follow Ruby 1.9 libraries.
13055 Tue Dec 25 12:21:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13057         * proc.c (method_inspect): preserve encoding of the method name.
13059 Tue Dec 25 12:07:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13061         * configure.in (BASERUBY): delayed error until BASERUBY is used.
13063 Tue Dec 25 11:48:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13065         * sample/README: removed obsoleted files: dbmtest.rb,
13066           getopts.test, mrshtest.rb, regx.rb.
13068 Tue Dec 25 11:45:34 2007  James Edward Gray II  <jeg2@ruby-lang.org>
13070         * lib/csv.rb:  Import the FasterCSV source as the new CSV class.
13072         * test/csv/*:  Added all applicable tests from FasterCSV.
13074 Tue Dec 25 11:33:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13076         * error.c (report_bug): uses ruby_description.
13078 Tue Dec 25 11:20:38 2007  Koichi Sasada  <ko1@atdot.net>
13080         * compile.c (iseq_compile_each): fix stack consistency error.
13081           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>  [ruby-dev:32720]
13083         * bootstraptest/test_syntax.rb: add 2 tests for above.
13085 Tue Dec 25 11:14:20 2007  Koichi Sasada  <ko1@atdot.net>
13087         * iseq.c, vm_core.h: comment out unused fields.
13089 Tue Dec 25 11:02:10 2007  Koichi Sasada  <ko1@atdot.net>
13091         * vm.c: check frame is FINAL when creating env.
13092           [ruby-core:14395]
13094         * bootstraptest/test_block.rb: add a test for above.
13096 Tue Dec 25 09:12:13 2007  Eric Hodel  <drbrain@segment7.net>
13098         * lib/rdoc/:  Enable RDoc debugging only with $DEBUG_RDOC.
13100 Tue Dec 25 08:37:43 2007  James Edward Gray II  <jeg2@ruby-lang.org>
13102         * lib/csv.rb, test/csv/test_csv.rb:  Removed in preparation for
13103           FasterCSV code import.
13105 Tue Dec 25 08:27:43 2007  Eric Hodel  <drbrain@segment7.net>
13107         * lib/rubygems.rb:  Fix test failures.
13109         * test/rubygems/test_gem.rb:  Fix test failure.
13111 Tue Dec 25 06:23:40 2007  Koichi Sasada  <ko1@atdot.net>
13113         * bootstraptest/test_knownbug.rb, test_literal.rb: move fixed test.
13115 Tue Dec 25 06:19:04 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13117         * sample/biorhythm.rb: follow Ruby 1.9 libraries.
13119 Tue Dec 25 06:15:01 2007  Koichi Sasada  <ko1@atdot.net>
13121         * vm.c: add dummy toplevel frame.
13123 Tue Dec 25 05:44:56 2007  Eric Hodel  <drbrain@segment7.net>
13125         * lib/net/http.rb:  Fix uninitialized variable warning.
13126           [ruby-talk:284582]
13128         * lib/irb/output-method.rb:  Remove unused #foo method.
13129           [ruby-talk:284582]
13131 Tue Dec 25 05:24:12 2007  Koichi Sasada  <ko1@atdot.net>
13133         * compile.c (iseq_compile): clear local table if node == 0.
13134           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>  [ruby-dev:32530]
13136         * vm.c: clear VM stack.
13138 Tue Dec 25 04:23:32 2007  Tanaka Akira  <akr@fsij.org>
13140         * parse.y (rb_id2str): fill klass of returned string as rb_cString.
13141           some strings are allocated before rb_cString is created.
13142           This prevents a "called on terminated object" error by
13143           ObjectSpace.each_object(Module) {|m| p m.name }.
13145 Tue Dec 25 03:51:55 2007  Koichi Sasada  <ko1@atdot.net>
13147         * compile.c (iseq_compile_each): fix stack consistency bug.
13148           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
13150 Tue Dec 25 03:19:47 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
13152         * tool/make-snapshot: must create configure and lex.c.
13154 Tue Dec 25 03:16:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13156         * io.c (rb_io_s_pipe): now takes up to two arguments.  allow its
13157           external/internal encoding by Encoding objects.
13159         * io.c (rb_io_set_encoding): new method to set encoding of the IO.
13161         * io.c (argf_set_encoding): ditto.
13163 Tue Dec 25 03:08:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13165         * pack.c (pack_pack): use NUM2LONG instead of NUM2INT.
13167         * numeric.c (fix_lshift, fix_aref): use SIZEOF_LONG instead of
13168           SIZEOF_VALUE.
13170         * bignum.c (big2ulong, rb_big_aref): ditto.
13172 Tue Dec 25 02:55:26 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13174         * lib/rexml/element.rb (REXML::Elements#each): yield in each
13175           should be called with one parameter. [ruby-dev:32708]
13177 Tue Dec 25 02:15:39 2007  Koichi Sasada  <ko1@atdot.net>
13179         * compile.c (iseq_compile_each): add a "pop" insn after break
13180           to fix stack consistency error.  [ruby-core:14385]
13182         * bootstraptest/test_syntax.rb: add tests for above.
13184         * bootstraptest/test_knownbug.rb: remove fixed bug.
13186 Tue Dec 25 01:54:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13188         * id.c (Init_id): remove several unused symbols. [ruby-core:14362]
13190         * compile.c (iseq_specialized_instruction): do not use
13191           VM_CALL_SEND_BANG flag any longer.
13193 Tue Dec 25 01:42:41 2007  Tanaka Akira  <akr@fsij.org>
13195         * lib/rdoc/rdoc.rb (parse_files): interpret coding cookie.
13197 Tue Dec 25 01:38:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13199         * proc.c (method_name): preserve Symbol's encoding.
13201         * numeric.c (fix_id2name): ditto.
13203 Tue Dec 25 01:19:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13205         * include/ruby/encoding.h (rb_enc_left_char_head): new utility macro.
13207         * include/ruby/encoding.h (rb_enc_right_char_head): ditto.
13209         * io.c (appendline): does multibyte RS search in the function.
13211         * io.c (prepare_getline_args): RS may be nil.
13213         * io.c (rb_io_getc): should process character based on external
13214           encoding, when transcoding required.
13216 Tue Dec 25 01:07:57 2007  Tanaka Akira  <akr@fsij.org>
13218         * lib/irb/output-method.rb: translate a comment to English to
13219           avoid mix of EUC-JP comment and UTF-8 Date keyword.
13220           svn substitute Date keyword with UTF-8 weekday on UTF-8 locale.
13222 Tue Dec 25 00:27:28 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13224         * lib/webrick/httpservley/cgihandler.rb
13225           (WEBrick::HTTPServlet::CGIHandler#do_GET): m17nized.
13227 Mon Dec 24 23:55:29 2007  Tanaka Akira  <akr@fsij.org>
13229         * lib/cgi.rb (CGI::escape): m17nized.
13230           (CGI::unescape): ditto.
13231           (CGI::escapeHTML): ditto.
13232           (CGI::unescapeHTML): ditto.
13234 Mon Dec 24 23:32:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13236         * transcode_data_japanese.c (select_iso_2022_mode): '\e' is not valid.
13238 Mon Dec 24 23:13:09 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13240         * lib/rdoc/diagram.rb (RDoc::Diagram#initialize): use fileuitls
13241           instead of ftools.
13243 Mon Dec 24 23:04:57 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
13245         * lib/ftools.rb: removed obsoleted lib.  use fileutils instead (by eban).
13247         * lib/rdoc/rdoc.rb, lib/rdoc/generators/*, lib/rake.rb: let it use
13248           fileutils instead of ftools.
13250         * lib/shell/command-processor.rb: removed unused references to ftools.
13252         * lib/parsedate.rb: removed.  see [ruby-core:12535], [ruby-dev:31969].
13254         * lib/README: updated.
13256 Mon Dec 24 23:01:04 2007  Tanaka Akira  <akr@fsij.org>
13258         * lib/open-uri.rb (OpenURI::Buffer): use Meta ===.  [ruby-core:14295]
13260 Mon Dec 24 22:46:42 2007  NARUSE, Yui <naruse@ruby-lang.org>
13262         * transcode.c: register_functional_transcoder() added.
13263           (init_transcoder_table(: register ISO-2022-JP.
13264           (str_transcode): add preprocessor and postprocessor.
13266         * transcode_data_japanese.c: add ISO-2022-JP support.
13268         * transcode_data.h: moved transcoder and transcoding definition from
13269           transcode.c.
13271 Mon Dec 24 20:29:28 2007  Koichi Sasada  <ko1@atdot.net>
13273         * test/io/nonblock/test_flush.rb: fix test for 1.9.
13275 Mon Dec 24 20:23:44 2007  Koichi Sasada  <ko1@atdot.net>
13277         * test/rinda/test_rinda.rb: revert last commit because this test seems
13278           to have timing problem to halt all tests.
13280 Mon Dec 24 20:18:52 2007  Koichi Sasada  <ko1@atdot.net>
13282         * test/rinda/test_rinda.rb: enable rinda test.
13284 Mon Dec 24 20:16:54 2007  Koichi Sasada  <ko1@atdot.net>
13286         * instruby.rb: fix rdoc install dir.
13288 Mon Dec 24 18:37:32 2007  Tanaka Akira  <akr@fsij.org>
13290         * re.c (rb_reg_prepare_re): show regexp encoding in the error message.
13292 Mon Dec 24 18:23:32 2007  Tanaka Akira  <akr@fsij.org>
13294         * eval.c (rb_exc_raise): ANSI style.
13295           (rb_exc_fatal): ditto.
13296           (rb_raise_jump): ditto.
13297           (rb_jump_tag): ditto.
13298           (rb_block_given_p): ditto.
13300         * variable.c (original_module): ditto.
13302 Mon Dec 24 18:05:09 2007  Koichi Sasada  <ko1@atdot.net>
13304         * iseq.c (Init_ISeq): disable ISeq.load() because there is no verifier.
13306         * iseq.c, proc.c: add ISeq.disasm(method).
13308 Mon Dec 24 18:06:03 2007  Tanaka Akira  <akr@fsij.org>
13310         * eval_method.c (Init_eval_method): extracted from Init_eval
13311           for rdoc to find rb_mod_remove_method, rb_mod_undef_method and
13312           rb_mod_alias_method.
13314         * eval.c (Init_eval): call Init_eval_method.
13316 Mon Dec 24 17:59:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13318         * load.c (load_lock): reverted.
13320         * thread.c (rb_barrier_wait): check for recursive wait.
13322 Mon Dec 24 17:50:54 2007  Tanaka Akira  <akr@fsij.org>
13324         * eval.c (function_call_may_return_twice_jmp_buf): removed.
13325           (function_call_may_return_twice_false): removed.
13326           [ruby-core:14335]
13328 Mon Dec 24 17:40:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13330         * common.mk (node_name.inc, miniprelude.c, prelude.c): nmake cannot
13331           handle target vpath in other than implicit rules.
13333 Mon Dec 24 17:20:34 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
13335         * lib/{mailread.rb,getopts.rb,parsearg.rb}: removed.
13336           see [ruby-core:12535], [ruby-dev:31969].
13338 Mon Dec 24 17:12:57 2007  Tanaka Akira  <akr@fsij.org>
13340         * include/ruby/intern.h, random.c, array.c:
13341           change exported name.
13342           genrand_int32 -> rb_genrand_int32.
13343           genrand_real -> rb_genrand_real.
13344           [ruby-core:14335]
13346 Mon Dec 24 17:06:37 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
13348         * {lib,test}/{soap,wsdl,xsd}: removed soap4r along to the discussion
13349           at ruby-core and ruby-dev.  see [ruby-core:12535], [ruby-dev:31969].
13351 Mon Dec 24 17:06:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13353         * load.c (rb_feature_p): returns loading path name too.
13355         * load.c (search_required): returns path too if feature is being
13356           loaded.  [ruby-dev:32048]  [TODO: refactoring]
13358 Mon Dec 24 16:29:12 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13360         * sample/openssl: reviewed and remove dependency on getopts.rb.
13362 Mon Dec 24 16:18:57 2007  Koichi Sasada  <ko1@atdot.net>
13364         * mkconfig.rb: add teeny to CONFIG['ruby_version'].
13366 Mon Dec 24 15:55:50 2007  Koichi Sasada  <ko1@atdot.net>
13368         * tool/compile.rb, getrev.rb, runruby.rb: remove unused tools.
13370 Mon Dec 24 15:42:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13372         * configure.in, cygwin/GNUmakefile.in, */Makefile.sub,
13373           djgpp/config.hin.: version dependent directory names now contain
13374           teeny.
13376 Mon Dec 24 15:29:13 2007  Tanaka Akira  <akr@fsij.org>
13378         * tool/serb.rb: removed.
13380 Mon Dec 24 13:55:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13382         * proc.c (rb_proc_new), vm.c (invoke_block): removed u3.state magic.
13383           [ruby-core:14310]
13385         * test/ruby/test_symbol.rb (test_to_proc): a test from Frederick
13386           Cheung <frederick.cheung AT gmail.com>.
13388 Mon Dec 24 13:43:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13390         * thread.c (rb_thread_atfork): should not leave living_threads
13391           referring freed table while allocating new table.
13393 Mon Dec 24 12:49:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13395         * Makefile.in, configure.in, lib/mkmf.rb, */Makefile.sub: specify
13396           compiled output file name explicitly.
13398         * enc/Makefile.in, enc/depend: now makes compiler to put generated
13399           files under directories corresponding to the each source.
13400           enc/trans supported.
13402         * enc/make_encmake.rb: evaluates depend file before Makefile.in so
13403           that the former can influence to CONFIG.
13405 Mon Dec 24 12:35:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13407         * win{32,ce}/Makefile.sub (MFLAGS): defaulted to -l.
13409 Mon Dec 24 12:08:10 2007  Eric Hodel  <drbrain@segment7.net>
13411         * /, ext/:  Add svn:ignore for OS X Xcode 3's conftest.dSYM
13412           directories.
13414 Mon Dec 24 11:56:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13416         * common.mk: should not pass MAKEFLAGS to recursive make.
13417           + normal make: MFLAGS are set and command line options and macros
13418             are all passed silently.
13419           + GNU make: ditto, and all options and macros in MAKEFLAGS are in
13420             effect.
13421           + nmake: MFLAGS is not set and MAKEFLAGS has only options without
13422             hyphen, no macros exist in any variables.
13423           + Borland make: ditto, and command line macros cannot override
13424             macros in makefile, so passing them is vain.
13426         * {bcc32,win{32,ce}}/Makefile.sub (SET_MAKE): set MFLAGS which is not
13427           set by default, to get rid of chaotic situation of MFLAGS/MAKEFLAGS.
13429 Mon Dec 24 11:32:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13431         * string.c (rb_str_comparable): fixed to keep transitivity.
13432           [ruby-dev:32693]
13434 Mon Dec 24 11:20:31 2007  Eric Hodel  <drbrain@segment7.net>
13436         * lib/rdoc/ri/ri_options.rb:  Fix display of GEMDIRS, make command
13437           examples match ri's name.
13439         * lib/rdoc/ri/ri_paths.rb:  Only allow latest ri dirs in ri output.
13441 Mon Dec 24 10:49:04 2007  Eric Hodel  <drbrain@segment7.net>
13443         * lib/uri/mailto.rb, lib/uri/common.rb:  Fix Regexp warnings.  Patch
13444           #16524 from Kornelius Kalnbach, [ruby-core:14302].
13446 Mon Dec 24 10:37:38 2007  Eric Hodel  <drbrain@segment7.net>
13448         * gem_prelude.rb:  Remove methods from Gem, not QuickLoader, to fix
13449           warnings.
13451 Mon Dec 24 09:45:45 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13453         * transcode.c, transcode_data_one_byte.c, transcode_data_japanese.c:
13454           added rb_ prefix to external data symbols.
13456 Mon Dec 24 05:32:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13458         * enum.c (enum_inject): updated documentation.  a patch from Keita
13459           Yamaguchi <keita.yamaguchi AT gmail.com> in [ruby-dev:32686].
13461         * README.EXT: updated.  a patch from Tadashi Saito
13462           <shiba AT mail2.accsnet.ne.jp> in [ruby-core:14328].
13464         * array.c (rb_ary_at): updated documentation. a patch from Tadashi
13465           Saito <shiba AT mail2.accsnet.ne.jp> in [ruby-core:14330].
13467 Mon Dec 24 05:13:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13469         * string.c (tr_trans): should associate new encoding if modified.
13471 Mon Dec 24 04:04:12 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13473         * test/net/http/test_https.rb: should rescue LoadError.
13475 Mon Dec 24 03:57:28 2007  Koichi Sasada  <ko1@atdot.net>
13477         * cont.c, vm.h: fix to support sparc machine.
13478           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
13480 Mon Dec 24 03:35:19 2007  Koichi Sasada  <ko1@atdot.net>
13482         * common.mk: remove additional "-".
13484 Mon Dec 24 02:59:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13486         * io.c (rb_io_check_readable): should not fill fptr->enc always.
13487           read-write IO (e.g. socket) does not work.  [ruby-dev:32685]
13489         * io.c (io_read_encoding): retrieve reading encoding.
13491         * io.c (prepare_getline_args): convert RS to external encoding.
13493         * string.c (str_new_shared): was setting embedding flag of wrong
13494           string object.  [ruby-dev:32685]
13496         * io.c (io_enc_str): should preserve default_external encoding.
13498         * io.c (appendline): should do multibyte aware RS search.
13500 Mon Dec 24 02:06:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13502         * io.c (rb_f_open): documentation update.
13504         * io.c (rb_io_s_pipe): ditto.
13506         * io.c (io_fwrite): wrong encoding destination.
13508         * io.c (rb_io_external_encoding): should return the encoding of
13509           the file reading.
13511         * io.c (rb_io_internal_encoding): should return the encoding of
13512           read string.
13514 Mon Dec 24 01:46:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13516         * io.c (rb_io_s_pipe): allow specifying read-side encoding.
13518         * io.c (io_enc_str): wrong encoding destination.
13520 Mon Dec 24 01:03:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13522         * string.c (rb_str_comparable): comparison including broken
13523           coderange strings do not consider encoding.
13525 Mon Dec 24 00:57:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13527         * io.c (open_key_args): IO direct methods (foreach, readlines,
13528           read) now takes keyword argument: encoding, mode, open_args.
13530 Mon Dec 24 00:52:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13532         * io.c (rb_io_s_read): encoding argument reverted.
13534         * io.c (mode_enc): independent function to share code.
13536         * io.c (rb_io_internal_encoding): new method.
13538 Mon Dec 24 00:47:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13540         * test/ruby/test_beginendblock.rb (TestBeginEndBlock::test_endblockwarn):
13541           rename endblockwarn.rb to endblockwarn_rb to avoid unnecessary
13542           warning in make test.
13544 Sun Dec 23 23:03:13 2007  Tanaka Akira  <akr@fsij.org>
13546         * encoding.c (rb_enc_codepoint): implemented to raise invalid
13547           encoding.
13549         * include/ruby/encoding.h (rb_enc_codepoint): macro is replaced as a
13550           declaration.
13552 Sun Dec 23 19:45:22 2007  Tanaka Akira  <akr@fsij.org>
13554         * lib/time.rb (Time.httpdate): fix 2 digits year for 20xx.
13555           reported by Tadayoshi Funaba.  [ruby-dev:32687]
13557 Sun Dec 23 19:33:42 2007  Eric Hodel  <drbrain@segment7.net>
13559         * lib/open-uri.rb:  Fix method redefined warning.  [ruby-core:14304]
13561 Sun Dec 23 18:31:49 2007  NARUSE, Yui <naruse@ruby-lang.org>
13563         * ext/nkf/nkf.c (rb_nkf_enc_get): use rb_define_dummy_encoding.
13565         * ext/nkf/nkf.c (Init_nkf): use rb_nkf_enc_get("ASCII").
13567         * ext/nkf/nkf-utf8/nkf.c: Update 1.161.
13569         * ext/nkf/nkf-utf9/config.h: default output encoding is now UTF-8.
13571         * ext/nkf/lib/kconv.rb (Kconv.kconv): replace Encoding#name by
13572           Encoding#to_s.
13574 Sun Dec 23 18:02:52 2007  Eric Hodel  <drbrain@segment7.net>
13576         * lib/rubygems/gem_open_uri.rb:  Fix version check.
13578 Sun Dec 23 17:24:48 2007  Tanaka Akira  <akr@fsij.org>
13580         * encoding.c (rb_enc_init): add eucJP as an alias of EUC-JP.
13582 Sun Dec 23 17:00:23 2007  Tanaka Akira  <akr@fsij.org>
13584         * lib/time.rb (Time.httpdate): use Time.utc for
13585           "day-of-week, dd-mon-yy HH::MM:SS GMT" format.
13587 Sun Dec 23 16:12:40 2007  Eric Hodel  <drbrain@segment7.net>
13589         * lib/rdoc:  Fix 1.9 warnings.
13591 Sun Dec 23 15:28:37 2007  Eric Hodel  <drbrain@segment7.net>
13593         * lib/rubygems, test/rubygems:  Fix new 1.9 warnings.
13595 Sun Dec 23 14:43:10 2007  Eric Hodel  <drbrain@segment7.net>
13597         * gem_prelude.rb:  Use require to load rubygems.rb so the correct path
13598           is in $LOADED_FEATURES on RubyGems upgrade.
13600 Sun Dec 23 11:26:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13602         * string.c (sym_call): use exact argument array interface.
13603           [ruby-core:14279]
13605 Sun Dec 23 11:01:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13607         * io.c (rb_io_binmode_m): removed C99ism.
13609 Sun Dec 23 10:23:23 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13611         * transcode_data_one_byte.c: Better (and more honest) optimization.
13613         * transcode_data_japanese.c: First optimization step.
13615 Sun Dec 23 09:07:02 2007  Tanaka Akira  <akr@fsij.org>
13617         * include/ruby/encoding.h, encoding.c, re.c, io.c, parse.y, numeric.c,
13618           ruby.c, transcode.c, ext/nkf/nkf.c: rename rb_ascii_encoding to
13619           rb_ascii8bit_encoding.  rb_ascii_encoding is ambiguous with
13620           ASCII-8BIT and US-ASCII.
13622 Sun Dec 23 03:35:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13624         * version.h: use patchlevel if revision is not set.
13626         * {bcc32,win{32,ce}}/setup.mak (-version-): skip including revision.h.
13628         * common.mk (srcs): new target to generated sources.
13630         * common.mk (encs, ext/ripper/ripper.c): MAKEFLAGS needs -.
13632         * enc/depend, enc/make_encmake.rb: use erb.
13634 Sun Dec 23 01:56:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13636         * io.c (rb_io_mode_enc): do not set encoding unless explicitly
13637           specified.
13639         * io.c (rb_io_check_readable): fill fptr->enc by default_external
13640           if it's empty.
13642         * io.c (io_enc_str): fptr->enc is always set for reading IO (by
13643           rb_io_check_readable(fptr)).
13645 Sun Dec 23 01:18:06 2007  David Flanagan  <david@davidflanagan.com>
13647         * io.c, io.h: temporary patch to partially implement
13648           transcode-on-read and transcode-on-write
13650 Sun Dec 23 00:48:05 2007  Shugo Maeda  <shugo@ruby-lang.org>
13652         * test/net/imap/test_imap.rb: added tests for SSL.
13654 Sat Dec 22 21:10:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13656         * ext/syck/rubyext.c (syck_genericresolver_node_import): should
13657           not set instance variable "@kind" before initializing it.
13658           [ruby-dev:32677]
13660 Sat Dec 22 19:52:23 2007  Koichi Sasada  <ko1@atdot.net>
13662         * bootstraptest/test_objectspace.rb: fix condition.
13664 Sat Dec 22 19:17:10 2007  Koichi Sasada  <ko1@atdot.net>
13666         * ext/probeprofiler/: removed.
13668 Sat Dec 22 19:14:38 2007  Koichi Sasada  <ko1@atdot.net>
13670         * process.c (rb_f_fork): Unsupport Kernel.fork() on NetBSD.
13672 Sat Dec 22 15:54:54 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13674         * test/ruby/test_transcode.rb: Added simple tests for
13675           EUC-JP and Shift_JIS and tests for ASCII-only range
13677 Sat Dec 22 18:20:13 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13679         * common.mk (version.o): add dependency. [ruby-dev:32680]
13681 Sat Dec 22 17:45:11 2007  NARUSE, Yui <naruse@ruby-lang.org>
13683         * ext/nkf/nkf.c (Init_nkf): use rb_ascii_encoding() for
13684           rb_nkf_enc_get("US-ASCII").
13685           * if use rb_nkf_enc_get("US-ASCII"), ruby will crash - this is bug?
13687 Sat Dec 22 17:39:03 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13689         * lib/mkmf.rb ($extmk): fixed broken condition.
13691 Sat Dec 22 17:35:59 2007  NARUSE, Yui <naruse@ruby-lang.org>
13693         * ext/nkf/nkf-utf8.c: Update nkf.c rev:1.157.
13695         * ext/nkf/nkf.c (rb_nkf_enc_get): replicate proper based encoding.
13697         * ext/nkf/kconv.c (Kconv#kconv, to*): use self.encoding as from_enc
13698           when from_enc isn't given.
13700 Sat Dec 22 17:06:50 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13702         * ext/openssl/lib/net/ssl.rb (OpenSSL::SSL::SSLContext.build): removed.
13704         * ext/openssl/lib/net/ssl.rb (OpenSSL::SSL::SSLContext#set_params):
13705           new method to set suitable SSL parameters.
13707         * lib/net/pop.rb, lib/net/http.rb, lib/net/imap.rb,
13708           test/openssl/test_ssl.rb: follow above change.
13710         * test/net/http/test_https.rb: refine error case.
13712 Sat Dec 22 16:58:49 2007  Shugo Maeda  <shugo@ruby-lang.org>
13714         * lib/net/imap.rb (encode_utf7): accept UTF-8 strings.
13716         * lib/net/imap.rb (decode_utf7): return UTF-8 strings.
13718 Sat Dec 22 15:56:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13720         * transcode_data_japanese: typo.
13722 Sat Dec 22 15:54:54 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13724         * ChangeLog: Information for last patch got lost, fixed
13726 Sat Dec 22 15:45:45 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13728         * transcode_data_one_byte: slightly optimized
13730         * transcode_data_japanese: new data file for EUC-JP and SHIFT_JIS
13731           (not yet optimized; tests to follow; data from
13732           http://nkf.sourceforge.jp/ucm/{SJIS|eucJP}-nkf.ucm)
13734         * common.mk, transcode.c: Adjusted for transcode_data_japanese
13736 Sat Dec 22 15:30:13 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13738         * */Makefile.sub (MFLAGS): define unless defined.
13740 Sat Dec 22 15:17:40 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13742         * lib/mkmf.rb ($extmk): set true only when under ext/ or tool/.
13744 Sat Dec 22 15:14:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13746         * common.mk (encs, ext/ripper/ripper.c): needs MFLAGS.
13748         * configure.in (STRINGIZE): stringizing macro.
13750         * include/ruby/defines.h (STRINGIZE): fallback.
13752         * tool/make-snapshot: new file.
13754         * version.c (ruby_description, ruby_copyright): string constants for
13755           -v option.
13757 Sat Dec 22 15:03:37 2007  Shugo Maeda  <shugo@ruby-lang.org>
13759         * lib/net/imap.rb (initialize): fixed documentation.
13761 Sat Dec 22 15:01:16 2007  Shugo Maeda  <shugo@ruby-lang.org>
13763         * lib/net/pop.rb (enable_ssl): use OpenSSL::SSL::SSLContext.build
13764           instead of SSLContext.new (default verify mode is now
13765           OpenSSL::SSL::VERIFY_PEER).
13767 Sat Dec 22 14:45:21 2007  Tadayoshi Funaba  <tadf@dotrb.org>
13769         * lib/date.rb: shouldn't freeze nil. [ruby-dev:32677]
13771 Sat Dec 22 14:27:27 2007  Tanaka Akira  <akr@fsij.org>
13773         * regenc.c (onigenc_ascii_is_code_ctype): moved from enc/ascii.c.
13775         * regenc.h (onigenc_ascii_is_code_ctype): declared.
13777         * enc/ascii.c: use onigenc_ascii_is_code_ctype.
13779         * enc/us_ascii.c: new file for US-ASCII.
13781 Sat Dec 22 14:30:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13783         * parse.y (reg_named_capture_assign_iter): allows non-ascii names and
13784           get rid of reserved word IDs.
13786 Sat Dec 22 14:18:45 2007  Koichi Sasada  <ko1@atdot.net>
13788         * test/ruby/test_float.rb, test_sprintf.rb: fix test place.
13790 Sat Dec 22 14:17:02 2007  Koichi Sasada  <ko1@atdot.net>
13792         * bootstraptest/test_objectspace.rb: skip frozen string.
13794 Sat Dec 22 14:02:58 2007  Koichi Sasada  <ko1@atdot.net>
13796         * array.c (rb_ary_permutation): add volatile to avoid GC problem.
13798 Sat Dec 22 11:47:42 2007  Koichi Sasada  <ko1@atdot.net>
13800         * eval.c (rb_obj_instance_eval): use class of immediate objects.
13802         * test/ruby/test_eval.rb: fix a test.
13804 Sat Dec 22 11:37:06 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13806         * encoding.c (rb_locale_charmap): win32 support.
13808 Sat Dec 22 11:31:14 2007  Eric Hodel  <drbrain@segment7.net>
13810         * gem_prelude.rb:  Place bin dir before lib dir so gem bin stubs work.
13812 Sat Dec 22 11:05:44 2007  Jim Weirich  <jim@tardis.local>
13814         * lib/rake.rb (Rake): Added Rake and related libraries to the
13815           source code base.
13817 Sat Dec 22 10:30:45 2007  Koichi Sasada  <ko1@atdot.net>
13819         * tool/insns2vm.rb: moved from lib/vm/instruction.rb.
13821 Sat Dec 22 10:25:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13823         * parse.y (reg_named_capture_assign_iter): captured name should
13824           not be reserved word.  a patch from Keita Yamaguchi
13825           <keita.yamaguchi AT gmail.com> in [ruby-dev:32675].
13827         * parse.y (reg_named_capture_assign_iter): just ignore the
13828           captures that do not have valid local variable name.
13830 Sat Dec 22 10:19:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13832         * eval.c (rb_f_method_name): now __method__ and __callee__ are
13833           aliases.  [ruby-core:14244]
13835 Sat Dec 22 08:29:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13837         * string.c (rb_str_buf_append): improvement for non-broken coded
13838           strings.
13840 Sat Dec 22 06:30:04 2007  Koichi Sasada  <ko1@atdot.net>
13842         * bootstraptest/test_fork.rb: skip if fork is not unsupported.
13844         * bootstraptest/test_io.rb: skip if require failed.
13846 Sat Dec 22 06:09:12 2007  David Flanagan  <david@davidflanagan.com>
13848         * io.c: fix typo in rdoc comment
13850 Sat Dec 22 05:09:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13852         * parse.y (parser_str_new, rb_intern3): rb_default_encoding() renamed.
13854         * ext/nkf/nkf.c (rb_nkf_putchar): ditto.
13856 Sat Dec 22 03:54:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13858         * encoding.c (rb_ascii_encoding): renamed from previous
13859           rb_default_encoding().
13861 Sat Dec 22 02:49:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13863         * parse.y (command): block from cmd_brace_block was ignored.
13864           [ruby-dev:32644]
13866         * re.c (rb_reg_prepare_re): stop ENCODING_NONE warning if the
13867           encoding of the str is ASCII-8BIT.
13869 Sat Dec 22 01:52:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13871         * io.c (io_ungetc): avoid buffer relocation, which might cause
13872           serious problem under concurrent situation.
13874 Sat Dec 22 01:35:41 2007  Tanaka Akira  <akr@fsij.org>
13876         * re.c (ARG_ENCODING_NONE): defined for /.../n option.
13877           (REG_ENCODING_NONE): ditto.
13878           (rb_char_to_option_kcode): return ARG_ENCODING_NONE for n.
13879           (rb_reg_prepare_re): warn /ascii/n =~ "non-ascii".
13880           (rb_reg_initialize): set REG_ENCODING_NONE from ARG_ENCODING_NONE.
13882 Sat Dec 22 01:23:10 2007  Shugo Maeda  <shugo@ruby-lang.org>
13884         * test/json/test_json_addition.rb (test_core): do not use Time.now
13885           because JSON can't hold nsec.
13887 Sat Dec 22 01:10:30 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13889         * ext/tk/sample/tkextlib/vu/canvSticker2.rb,
13890           ext/tk/sample/demos-{en,jp}/bind.rb: fix typo. [ruby-dev:32668]
13892 Sat Dec 22 00:56:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13894         * sample/test.rb (valid_syntax): force_encoding input script.
13896 Fri Dec 21 23:48:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13898         * lib/mkmf.rb (depend_rules): suffixes list broken. fixed.
13900 Fri Dec 21 20:18:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13902         * bignum.c (rb_big_mul0): remove unused variable.
13904         * bignum.c (bigdivrem): ditto.
13906 Fri Dec 21 20:13:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13908         * include/ruby/ruby.h (rb_catch_obj, rb_throw_obj): prototyped.
13910         * include/ruby/intern.h (rb_fiber_alive_p): prototyped.
13912 Fri Dec 21 20:09:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13914         * string.c (rb_str_succ): retry increasing until valid char is found.
13916 Fri Dec 21 20:00:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13918         * encoding.c (rb_enc_replicate): now creates first class encoding.
13920         * encoding.c (rb_define_dummy_encoding): always based on the default
13921           encoding.
13923         * encoding.c (rb_enc_dummy_p): check if dummy.
13925         * encoding.c (enc_inspect): shows if dummy.
13927         * encoding.c (Init_Encoding): added dummy? method
13929         * include/ruby/encoding.h (ENCODING_INLINE_MAX): increased.
13931 Fri Dec 21 18:40:54 2007  Koichi Sasada  <ko1@atdot.net>
13933         * io.c: write() should be in blocking region.
13935         * bootstraptest/test_io.rb, test_knownbug.rb: move a fixed test.
13937 Fri Dec 21 17:56:30 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
13939         * ext/tk/tcltklib.c: provisional support on Ruby-VM.
13941         * ext/tk/MANUAL_tcltklib.eng, ext/tk/MANUAL_tcltklib.eucj:
13942           modify document about new functions.
13944         * ext/tk/lib/tk.rb, ext/tk/lib/tk/labelframe.rb,
13945           ext/tk/lib/tk/frame.rb, ext/tk/lib/tk/toplevel.rb,
13946           ext/tk/lib/tk/scrollbar.rb, ext/tk/lib/tk/message.rb,
13947           ext/tk/lib/tk/listbox.rb, ext/tk/lib/tk/text.rb,
13948           ext/tk/lib/tk/scale.rb, ext/tk/lib/tk/entry.rb,
13949           ext/tk/lib/tk/ttk_selector.rb, ext/tk/lib/tk/menu.rb,
13950           ext/tk/lib/tk/label.rb, ext/tk/lib/tk/spinbox.rb,
13951           ext/tk/lib/tk/textmark.rb, ext/tk/lib/tk/winpkg.rb,
13952           ext/tk/lib/tk/checkbutton.rb, ext/tk/lib/tk/panedwindow.rb,
13953           ext/tk/lib/tk/texttag.rb, ext/tk/lib/tk/root.rb,
13954           ext/tk/lib/tk/textimage.rb, ext/tk/lib/tk/radiobutton.rb,
13955           ext/tk/lib/tk/package.rb, ext/tk/lib/tk/macpkg.rb,
13956           ext/tk/lib/tk/composite.rb, ext/tk/lib/tk/autoload.rb,
13957           ext/tk/lib/tk/canvas.rb, ext/tk/lib/tk/button.rb,
13958           ext/tk/lib/tk/textwindow.rb,
13959           ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb,
13960           ext/tk/lib/tkextlib/tile/style.rb,
13961           ext/tk/lib/tkextlib/tile/tscrollbar.rb,
13962           ext/tk/lib/tkextlib/tile/tpaned.rb, ext/tk/lib/tkextlib/tile.rb,
13963           ext/tk/extconf.rb: support Tcl/Tk8.5 (partial, not complete).
13965         * ext/tk/sample/demos-jp/widget,
13966           ext/tk/sample/demos-jp/pendulum.rb,
13967           ext/tk/sample/demos-jp/bind.rb,
13968           ext/tk/sample/tkextlib/vu/canvSticker2.rb,
13969           ext/tk/sample/demos-en/pendulum.rb,
13970           ext/tk/sample/demos-en/bind.rb: remove $KCODE and minor bug fix.
13972 Fri Dec 21 17:49:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13974         * transcode.c (rb_str_transcode_bang): returns self if no conversion.
13975           [ruby-dev:32662]
13977 Fri Dec 21 17:44:47 2007  Eric Hodel  <drbrain@segment7.net>
13979         * lib/rubygems*:  Update to RubyGems 1.0.1, r1581
13981 Fri Dec 21 17:32:49 2007  Koichi Sasada  <ko1@atdot.net>
13983         * bootstraptest/pending.rb: renamed from featurebug.rb.
13984           This file contains bugs which is known but will not be
13985           fixed in days.
13987 Fri Dec 21 17:31:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13989         * debug.c (dummy_gdb_enums.various): added ENCODING and CODERANGE
13990           constants.
13992         * .gdbinit: use enum constants.
13994 Fri Dec 21 17:28:17 2007  Koichi Sasada  <ko1@atdot.net>
13996         * bootstraptest/featurebug.rb: added.
13998         * bootstraptest/test_knownbug.rb: move a feature bug.
14000 Fri Dec 21 17:25:22 2007  Koichi Sasada  <ko1@atdot.net>
14002         * thread.c (rb_thread_atfork): fix to mark thread object.
14003           [ruby-dev:32404]
14005         * bootstraptest/test_knownbug.rb, test_fork.rb: move a fixed test.
14007 Fri Dec 21 17:07:13 2007  Koichi Sasada  <ko1@atdot.net>
14009         * gc.h: extern variable should not be initialized.
14011         * thread_pthread.c: add a parameter.
14013 Fri Dec 21 16:50:43 2007  Tanaka Akira  <akr@fsij.org>
14015         * encoding.c (Init_Encoding): use enc_name as to_s.
14016           (enc_inspect): renamed from enc_to_s.  add "#" at beginning.
14018 Fri Dec 21 16:37:43 2007  NARUSE, Yui <naruse@ruby-lang.org>
14020         * ext/nkf/nkf-utf8/config.h (MIME_DECODE_DEFAULT, X0201_DEFAULT):
14021          defined as FALSE.  nkf and kconv don't decode MIME encoded string
14022          and don't convert JIS X 0201 Katakana.
14024         * test/nkf/test_kconv.rb: fix tests.
14026 Fri Dec 21 16:33:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14028         * enumerator.c (enumerator_iter_i): adjusted for rb_block_call_func.
14030         * include/ruby/ruby.h (rb_block_call_func): function to be called back
14031           as block.
14033 Fri Dec 21 16:25:25 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
14035         * common.mk, transcode_data_iso_8859.c: renamed to
14036           transcode_data_one_byte.c.
14038 Fri Dec 21 16:10:30 2007  Shigeo Kobayashi  <shigeo@tinyforest.jp>
14040         * ext/bigdecimal/bigdecimal.c (VpMidRound): Round method bug
14041           pointed by Ryan Platte fixed(Patch to the patch from "NATORI
14042           Shin").  [ruby-talk:273360]
14044 Fri Dec 21 16:06:13 2007  Tanaka Akira  <akr@fsij.org>
14046         * re.c (append_utf8): use rb_utf8_encoding() instead of
14047           rb_enc_find("utf-8").
14049 Fri Dec 21 15:59:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14051         * encoding.c (rb_enc_init): use enc_register_at() directly.
14053         * encoding.c (rb_utf8_encoding): returns utf-8 encoding.
14055         * include/ruby/encoding.h (rb_utf8_encoding): prototyped.
14057         * parse.y (UTF8_ENC): uses rb_utf8_encoding().
14059 Fri Dec 21 15:31:59 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14061         * io.c (rb_io_s_read): allow specifying encoding explicitly.
14063         * io.c (rb_io_binmode): specifies encoding to ASCII-8BIT (binary).
14065         * io.c (rb_io_s_read): IO should be in binary mode when offset is
14066           specified.
14068         * encoding.c (rb_to_encoding): returns default encoding if no
14069           corresponding encoding found.
14071 Fri Dec 21 15:24:22 2007  Shugo Maeda  <shugo@ruby-lang.org>
14073         * lib/net/imap.rb (initialize): accept service name.  changed
14074           the default value of the old style +verify+ argument to true.
14076 Fri Dec 21 15:15:44 2007  Tanaka Akira  <akr@fsij.org>
14078         * gc.c (rb_garbage_collect): new function for debugging.
14080 Fri Dec 21 15:16:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14082         * encoding.c (rb_to_encoding_index): should return error instead of
14083           exception even if type is incorrect.
14085 Fri Dec 21 14:58:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14087         * enumerator.c (enumerator_init_copy): prohibit cloning of
14088           generators since Fibers cannot be copied.
14090         * enumerator.c (enumerator_init_copy): typo fixed.
14092 Fri Dec 21 14:46:07 2007  Tanaka Akira  <akr@fsij.org>
14094         * io.c (Init_IO): define IO::BINARY even if O_BINARY is not exist.
14096 Fri Dec 21 14:01:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14098         * test/ruby/test_system.rb (TestSystem::valid_syntax): apply
14099           ASCII-8BIT encoding explicitly.
14101         * re.c (rb_reg_prepare_re): add encoding name in the message.
14103 Fri Dec 21 13:54:05 2007  Tanaka Akira  <akr@fsij.org>
14105         * re.c: change "character encodings differ" error messages.
14107 Fri Dec 21 13:46:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14109         * encoding.c (rb_enc_register): set encoding constant.
14111         * encoding.c (rb_enc_find_index): replace non-alphanumeric chars with
14112           underscores, so that initialize function can be called.
14114         * encoding.c (rb_enc_find_index): extension libraries have lower case
14115           names conventionally.
14117         * ruby.c (proc_options, process_options): finds encoding after
14118           load_path is initialized.
14120 Fri Dec 21 13:10:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14122         * io.c (rb_io_external_encoding): new method.
14124         * encoding.c (rb_enc_from_encoding): returns Qnil for NULL
14125           encoding.
14127         * io.c (rb_io_external_encoding): should fill delayed
14128           initialization for STDIN.
14130 Fri Dec 21 13:09:11 2007  Tanaka Akira  <akr@fsij.org>
14132         * encoding.c (rb_locale_charmap): return nil if no locale information.
14134 Fri Dec 21 12:55:39 2007  Tanaka Akira  <akr@fsij.org>
14136         * lib/runit, lib/rubyunit.rb, test/testunit/runit: removed.
14138 Fri Dec 21 12:45:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14140         * string.c (rb_str_chomp_bang): avoid unnecessary loop using
14141           ONIGENC_LEFT_ADJUST_CHAR_HEAD().
14143 Fri Dec 21 12:32:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14145         * file.c (Init_File): File.exists? revived.
14147         * dir.c (Init_Dir): Dir.exists? again.
14149 Fri Dec 21 12:26:36 2007  Koichi Sasada  <ko1@atdot.net>
14151         * compile.c: remove "illegal".
14153 Fri Dec 21 12:22:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14155         * keywords, parse.y (__ENCODING__): represent script encoding.
14157 Fri Dec 21 12:16:50 2007  Tanaka Akira  <akr@fsij.org>
14159         * string.c (rb_str_is_ascii_only_p): new method ascii_only?.
14161 Fri Dec 21 12:11:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14163         * io.c (rb_io_mode_enc): set default external encoding if no
14164           encoding specified explicitly.
14166 Fri Dec 21 12:00:34 2007  Tanaka Akira  <akr@fsij.org>
14168         * configure.in: check langinfo.h and locale.h.
14170         * encoding.c: use langinfo.h only if available.
14172         * main.c: use locale.h only if available.
14174 Fri Dec 21 11:47:56 2007  Tanaka Akira  <akr@fsij.org>
14176         * encoding.c: include locale.h
14177           (rb_locale_charmap): new method Encoding.locale_charmap for
14178           nl_langinfo(CODESET).
14180         * include/ruby/encoding.h (rb_locale_charmap): declared.
14182         * main.c (main): call setlocale with LC_CTYPE.
14184         * ruby.c (locale_encoding): use rb_locale_charmap.
14186 Fri Dec 21 11:35:10 2007  Koichi Sasada  <ko1@atdot.net>
14188         * vm.c, vm_dump.c: fix typo.  Reported by Yuki Mitsui.
14190 Fri Dec 21 11:28:00 2007  Tanaka Akira  <akr@fsij.org>
14192         * regerror.c, string.c, io.c, lib/getoptlong.rb, lib/net/imap.rb,
14193           compile.c, sprintf.c, parse.y, ext/win32ole/win32ole.c,
14194           ext/tk/sample/demos-en/entry3.rb, ext/tk/lib/tcltk.rb,
14195           ext/openssl/ossl_bn.c, numeric.c, vm.c,
14196           benchmark/bm_so_meteor_contest.rb, bignum.c, ruby.c: don't "illegal"
14197           for non law violation context.
14199 Fri Dec 21 11:23:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14201         * common.mk (enc.mk): depends on $(RBCONFIG) instead of rbconfig.rb.
14203         * encoding.c (Init_Encoding): ISO-8859-1 is no longer a replica.
14205         * regenc.h (OnigEncodingDefine): names of extension and encoding can
14206           differ.
14208         * enc/Makefile.in: always shared.
14210         * enc/depend (deffile): should not upcase.
14212         * enc/{ascii,euc_jp,sjis,utf8,iso_8859_{1..16}}.c: fix for Init.
14214 Fri Dec 21 09:26:48 2007  Tanaka Akira  <akr@fsij.org>
14216         * tool/compile_prelude.rb: use erb.
14218 Fri Dec 21 08:07:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14220         * enumerator.c (enumerator_next): should call next_init() if fiber
14221           is dead already. [ruby-dev:32459]
14223 Fri Dec 21 01:21:49 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14225         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLContext.build):
14226           enable CRL checking by default.
14228 Fri Dec 21 01:20:56 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14230         * lib/net/http.rb (Net::HTTP#connect): use
14231           OpenSSL::SSL::SSLContext.build instead of SSLContext.new (default
14232           verify mode is now OpenSSL::SSL::VERIFY_PEER).
14234         * lib/net/https.rb: SSL parameters are defined by attr_accessor.
14236         * test/net/http/test_https.rb: add test for HTTPS features.
14238 Fri Dec 21 01:11:37 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14240         * io.c (select_internal): should return original value.
14242 Fri Dec 21 00:26:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14244         * string.c (tr_trans): wrong encoding check for tree strings.
14246         * test/ruby/test_m17n.rb (TestM17N::test_tr_s): "invalid mbstring
14247           sequence" is not an error to be tested.
14249         * test/ruby/test_m17n.rb (TestM17N::test_tr): ditto.
14251 Thu Dec 20 19:29:07 2007  Shugo Maeda  <shugo@ruby-lang.org>
14253         * lib/net/imap.rb (initialize): the second argument is an option
14254           hash now.  use SSLContext.build to specify SSL parameters.
14256 Thu Dec 20 19:11:56 2007  Koichi Sasada  <ko1@atdot.net>
14258         * thread_pthread.c (native_thread_apply_priority): check
14259           _POSIX_PRIORITY_SCHEDULING for OpenBSD.
14261 Thu Dec 20 18:33:54 2007  Koichi Sasada  <ko1@atdot.net>
14263         * configure.in: add libthr for FreeBSD.
14265 Thu Dec 20 18:17:14 2007  Koichi Sasada  <ko1@atdot.net>
14267         * common.mk, *.ci: renamed to *.c.
14269         * eval_load.c: renamed to load.c.
14271 Thu Dec 20 17:36:01 2007  Eric Hodel  <drbrain@segment7.net>
14273         * lib/rubygems*:  Import RubyGems 1.0.0, r1575.
14275 Thu Dec 20 17:18:38 2007  Koichi Sasada  <ko1@atdot.net>
14277         * proc.c: support Proc#binding.
14279         * sample/test.rb: add a test.
14281 Thu Dec 20 17:15:15 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
14283         * pack.c: Slight change to documentation ('character' ->
14284           'byte (C char)'). [ruby-core:13126], see also [ruby-core:13998].
14286 Thu Dec 20 17:07:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14288         * common.mk (enc.mk): depends on rbconfig.rb.
14290         * regenc.h (OnigEncodingDefine): external encoding definition macro.
14292         * enc/Makefile.in: fix for linking.
14294         * enc/depend, enc/make_encmake.rb: fix for Windows.
14296         * enc/{ascii,euc_jp,sjis,utf8,iso_8859_{1..16}}.c: renamed.
14298 Thu Dec 20 16:42:55 2007  Koichi Sasada  <ko1@atdot.net>
14300         * iseq.c (find_line_no): return 0 if not found.
14302 Thu Dec 20 16:04:17 2007  Koichi Sasada  <ko1@atdot.net>
14304         * insnhelper.ci, vm.c, vm_core.h: change interface of
14305           vm_invoke_block() to specify block ptr.  [ruby-talk:266422]
14307         * cont.c, eval_jump.ci, insns.def, proc.c, signal.c, thread.c:
14308           apply above change.
14310         * bootstraptest/test_knownbug.rb: move fixed bug.
14312         * bootstraptest/test_block.rb: ditto. and add a test.
14314 Thu Dec 20 15:47:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14316         * enc/iso_8859_{1..16}.c: renamed.
14318 Thu Dec 20 09:59:27 2007  Koichi Sasada  <ko1@atdot.net>
14320         * insnhelper.ci (vm_expandarray): fix sp increase place.
14321           a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32581].
14323         * bootstraptest/test_massign.rb: add a test for above.
14325         * bootstraptest/test_syntax.rb: fix last committed test.
14327 Thu Dec 20 09:47:58 2007  Koichi Sasada  <ko1@atdot.net>
14329         * bootstraptest/test_syntax.rb: add a test.
14331 Thu Dec 20 09:40:51 2007  Koichi Sasada  <ko1@atdot.net>
14333         * compile.c (iseq_compile_each/NODE_RETURN): fix stack consistency.
14335 Thu Dec 20 09:42:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14337         * bignum.c (big2str_orig): access beyond memory region cause crash
14338           on interrupt.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in
14339           [ruby-dev:32651].  [ruby-dev:32641]
14341 Thu Dec 20 09:06:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14343         * string.c (rb_str_index): wrong starting position.
14345 Thu Dec 20 06:34:27 2007  Koichi Sasada  <ko1@atdot.net>
14347         * compile.c (iseq_compile_each): add pop after throw as return.
14349         * bootstraptest/test_knownbug.rb, test_syntax.rb: move resolved test.
14351         * vm_core.h, iseq.c, compile.h: add debug output code.
14353 Thu Dec 20 04:57:18 2007  Koichi Sasada  <ko1@atdot.net>
14355         * compile.c (iseq_compile_each): remove unused retry entry.
14357 Thu Dec 20 04:15:41 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14359         * */Makefile.sub (DEFS, RM): output to config.status.
14361 Thu Dec 20 02:59:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14363         * common.mk (encs): create encoding directory.
14365 Thu Dec 20 02:50:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14367         * enc/iso8859_{1..16}.c: adjust for ruby.
14369 Thu Dec 20 02:28:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14371         * enc/iso8859_{1..16}.c: imported from Onigiruma 5.9.0.
14373 Thu Dec 20 02:23:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14375         * enc/Makefile.in (RM): added.
14377         * enc/depend (encs): sort in alpha-numeric order.
14379         * enc/depend (clean, distclean): added.
14381 Thu Dec 20 01:10:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14383         * compile.c (iseq_compile_each): should handle upper level eval iseq
14384           from break/next, and COMPILE_ERROR() breaks only one block.
14385           [ruby-dev:31372]
14387 Thu Dec 20 00:07:36 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
14389         * test/drb/drbtest.rb (test_07_public_private_protected_missing):
14390           followed current Ruby specification.
14392 Wed Dec 19 23:57:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14394         * dir.c (dir_inspect, dir_path, dir_tell): check for frozen and closed
14395           is not needed.  [ruby-dev:32640]
14397 Wed Dec 19 22:59:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14399         * string.c (str_sublen): adjust position if position is not at the
14400           head of a character.
14402         * string.c (rb_str_chomp_bang): check if match start at the head
14403           of a character.
14405         * string.c (rb_str_chomp_bang): wrong adjust condition.
14407         * string.c (rb_str_rindex): comparison length should be based on
14408           bytes, not characters.
14410         * string.c (rb_str_rindex_m): too much adjustment.
14412         * re.c (reg_match_pos): pos adjustment should be based on
14413           characters.
14415         * test/ruby/test_m17n.rb (TestM17N::test_str_insert): test updated
14416           to check negative offset behavior.
14418         * string.c (rb_str_each_line): should consider rslen.
14420         * string.c (rb_str_buf_append): should propagate encoding.
14422         * string.c (rb_str_each_line): ditto.
14424         * test/ruby/test_m17n.rb (TestM17N::test_str_each_line): should
14425           check encoding as well.
14427         * test/ruby/test_m17n.rb (TestM17N::test_str_each_line): empty
14428           array can not propagate encoding;  should not check.
14430 Wed Dec 19 21:42:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14432         * re.c (rb_reg_regsub): should set checked encoding.
14434         * string.c (rb_str_sub_bang): applied r14212 too.
14436 Wed Dec 19 20:40:01 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14438         * bignum.c (bigmul1): C99ism.
14440         * bignum.c (bigdivrem1): need dummy return value.
14442 Wed Dec 19 19:18:06 2007  NARUSE, Yui <naruse@ruby-lang.org>
14444         * ext/nkf/nkf-utf8/nkf.c: Updated.
14446         * ext/nkf/nkf.c (rb_nkf_enc_get): added.
14447           (find encoding or replicate default encoding)
14449         * ext/nkf/nkf.c (NKF::<ENCODING>): redefine encoding constant.
14451         * ext/nkf/lib/kconv.rb (Kconv::<ENCODING>): redefined as Encoding.
14453         * ext/nkf/lib/kconv.rb: refactoring.
14455 Wed Dec 19 19:11:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14457         * bignum.c (rb_big_mul0): blocking check for bigger numbers.
14458           a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32632].
14460         * bignum.c (bigdivrem): ditto.
14462 Wed Dec 19 17:34:50 2007  Koichi Sasada  <ko1@atdot.net>
14464         * compile.c (iseq_compile_each): remove "retry" in block.
14465           ("iter{retry}" cause syntax error)
14466           Currently, "begin; ...; rescue; iter{retry}; end" cause
14467           syntax error too.
14469         * bootstraptest/test_jump.rb: ditto.
14471         * lib/drb/invokemethod.rb: ditto.
14473         * sample/drb/darrayc.rb: ditto.
14475         * sample/test.rb: ditto.
14477         * test/drb/drbtest.rb: ditto.
14479         * test/ruby/test_iterator.rb: ditto.
14481         * sample/test.rb: add a 'test' directory on the SYSTEM test.
14483 Wed Dec 19 17:12:59 2007  Koichi Sasada  <ko1@atdot.net>
14485         * bootstraptest/test_knownbug.rb, test_block.rb:
14486           move fixed bug.
14488         * bootstraptest/test_m17n.rb: added.
14490 Wed Dec 19 16:59:55 2007  Koichi Sasada  <ko1@atdot.net>
14492         * eval.c (errinfo_place): skip if error is Fixnum.  [ruby-dev:32608]
14494         * bootstraptest/test_exception.rb, test_known_bug.rb: move fixed bug.
14496 Wed Dec 19 16:31:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14498         * parse.y (reg_named_capture_assign_iter): remove C99 dependency.
14500         * parse.y (reg_named_capture_assign_iter): get rid of creating
14501           unnecessary ID.
14503         * parse.y (rb_enc_symname2_p): check for non-nul-terminated string.
14505 Wed Dec 19 15:37:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14507         * insnhelper.ci (vm_yield_with_cfunc): call cfunc with
14508            (argv[0], data, argc, argv) to pass all arguments.
14510         * enumerator.c (enumerator_each_i): adapted to new calling
14511           convention.
14513 Wed Dec 19 15:13:20 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14515         * string.c (rb_str_justify): should propagate encoding from pad
14516           string too.
14518 Wed Dec 19 13:57:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14520         * configure.in (TIMEZONE_VOID): check whether timezone requires zero
14521           arguments.  [ruby-dev:32631]
14523 Wed Dec 19 13:22:14 2007  NARUSE, Yui <naruse@ruby-lang.org>
14525         * ext/nkf/nkf.c (NKF::_ENCODING): removed.
14527         * ext/nkf/nkf.c (rb_nkf_kconv): renamed to rb_nkf_convert.
14529         * ext/nkf/nkf.c (rb_nkf_convert): set encoding.
14531         * ext/nkf/nkf.c (rb_nkf_guess1): removed.
14533         * ext/nkf/nkf.c (rb_nkf_guess2): renamed to rb_nkf_guess.
14535         * ext/nkf/nkf.c (rb_nkf_guess):
14536           guess method now returns encoding object.
14538         * ext/nkf/nkf-utf8/nkf.c: Update to nkf 2.0.8 2007-12-19.
14540 Wed Dec 19 10:52:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14542         * bignum.c (rb_cstr_to_inum): an underscore succeeding after octal
14543           prefix is allowed.  [ruby-core:14139]
14545 Wed Dec 19 00:09:19 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14547         * bignum.c (rb_cstr_to_inum): wrong radix check.  a patch from
14548           Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32628].
14550         * bignum.c (big2str_find_n1): ditto.
14552 Tue Dec 18 23:53:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14554         * compile.c (iseq_compile_each): fix for segfault.  [ruby-dev:31372]
14556 Tue Dec 18 23:44:32 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14558         * test/net/http/utils.rb: split TestNetHTTPUtils module from
14559           test/net/http/test_http.rb. and start HTTP server in each test case.
14561 Tue Dec 18 23:27:51 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14563         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
14564           should rescue Errno::EINVAL from TCPServer#accept. this exception
14565           might occur if the server socket is not in ready to listen.
14567         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
14568           don't call TCPServer#close if the :ShutdownSocketWithoutClose is set.
14570         * lib/webrick/config.rb (WEBrick::Config::General): add new parameter
14571           :ShutdownSocketWithoutClose.
14573 Tue Dec 18 22:51:47 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14575         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLServer#shutdown):
14576           new method which calls TCPSocket#shutdown of the underlying socket.
14578 Tue Dec 18 22:11:50 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14580         * lib/rss/parser.rb, lib/rss/atom.rb, lib/rss/rss.rb,
14581           test/rss/rss-assertions.rb, test/rss/test_atom.rb: use
14582           pack/unpack("m") instead of base64 library.
14584         * lib/webrick/httpproxy.rb: use delete("\n") instead of chomp/chop
14585           because the result of pack("m") might be multi-line.
14587 Tue Dec 18 22:12:35 2007  Koichi Sasada  <ko1@atdot.net>
14589         * insnhelper.ci, vm.c: rewrite sp manipulation around method/block
14590           invocation.  [ruby-dev:32547]
14592 Tue Dec 18 22:11:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14594         * ext/dl/win32/lib/win32/sspi.rb: use pack/unpack("m") instead of
14595           base64 library which was already removed.
14597 Tue Dec 18 21:09:23 2007  Koichi Sasada  <ko1@atdot.net>
14599         * vm.c (invoke_block): merge 2 stack overflow checks.
14601 Tue Dec 18 20:58:35 2007  Koichi Sasada  <ko1@atdot.net>
14603         * compile.c, insnhelper.ci, insns.def, object.c, vm.c, vm.h:
14604           optimize !@, != method invocation.
14606         * id.c, id.h: ditto.
14608         * bootstraptest/test_syntax.rb: add tests for above.
14610 Tue Dec 18 18:10:05 2007  Koichi Sasada  <ko1@atdot.net>
14612         * bootstraptest/test_knownbug.rb: add issues.
14614 Tue Dec 18 20:22:44 2007  Tanaka Akira  <akr@fsij.org>
14616         * parse.y (arg tMATCH arg): call reg_named_capture_assign_gen if regexp
14617           literal is used.
14618           (reg_named_capture_assign_gen): assign the result of named capture
14619           into local variables.
14620           [ruby-dev:32588]
14622         * re.c: document the assignment by named captures.
14624 Tue Dec 18 18:09:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14626         * string.c (rb_str_splice): propagate encoding.
14628         * string.c (rb_str_subpat_set): ditto.
14630 Tue Dec 18 17:27:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14632         * object.c (rb_obj_freeze): preserve frozen state of immediate
14633           values in internal hash table, a la generic_ivar.
14635         * object.c (rb_obj_frozen_p): check immediate values too.
14637         * variable.c (generic_ivar_set): add frozen check fro immediate
14638           values.
14640 Tue Dec 18 17:04:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14642         * transcode.c (rb_str_transcode_bang, rb_str_transcode): set new
14643           encoding even if no conversion is done because of 7bit only.
14644           [ruby-dev:32591]
14646 Tue Dec 18 15:43:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14648         * common.mk (encs, ext/ripper/ripper.c): other options must come
14649           before MAKEFLAGS in GNU make.
14651 Tue Dec 18 15:19:55 2007  Eric Hodel  <drbrain@segment7.net>
14653         * lib/rdoc/parsers/parse_rb.rb: Don't call private fail anymore.
14655 Tue Dec 18 15:17:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14657         * common.mk (encs, ext/ripper/ripper.c): pass MAKEFLAGS.
14659 Tue Dec 18 14:45:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14661         * parse.y (op_tbl): remove duplication to avoid symbol aliases.
14663 Tue Dec 18 14:39:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14665         * string.c (str_nth): need not to raise out-of-range exception.
14667         * test/ruby/test_m17n.rb (TestM17N::test_str_aref_len): removed
14668           debug print.
14670 Tue Dec 18 14:05:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14672         * enc/depend: get rid of target expanded as empty for nmake.
14674 Tue Dec 18 07:56:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14676         * proc.c (rb_obj_public_method): Object#public_method to retrieve
14677           public method object.
14679         * proc.c (rb_mod_public_instance_method): Module#public_instance_method
14680           to retrieve public instance method from class / module.
14682         * proc.c (mnew): visibility check added.
14684         * eval_error.ci (rb_print_undef): add rb_ prefix.
14686         * eval_error.ci (rb_print_undef): add visibility in the error
14687           message.
14689 Tue Dec 18 05:54:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14691         * lib/Env.rb, lib/base64.rb, lib/importenv.rb, lib/eregex.rb: removed.
14693         * lib/ping.rb, lib/readbytes.rb: removed
14695 Tue Dec 18 02:30:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14697         * configure.in (BUILTIN_ENCS): removed.
14699         * common.mk (enc.mk): pass BUILTIN_ENCS from command line.
14701         * enc/depend: ditto.
14703         * enc/make_encmake.rb: ditto.
14705 Tue Dec 18 01:46:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14707         * sprintf.c (rb_str_format): need to clear output buffer to avoid
14708           broken encoding compatibility check.
14710 Tue Dec 18 01:40:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14712         * lib/mkmf.rb (depend_rules): inserts ruby to only headers.
14714 Tue Dec 18 01:21:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14716         * parse.y (parser_encode_length): chomp eol style modifiers.
14718         * parse.y (parser_magic_comment): ditto.
14720         * parse.y (set_file_encoding): ditto.
14722 Tue Dec 18 01:15:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14724         * common.mk (encs): added dependencies.
14726         * enc/Makefile.in, enc/depend, enc/make_encmake.rb: moved serb code.
14728         * lib/mkmf.rb (depend_rules): now takes content string, not file name.
14730         * win32/enc-setup.mak: overrides default target.
14732 Tue Dec 18 00:26:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14734         * re.c (rb_reg_initialize): raise error if non-Unicode fixed
14735           encoding option is specified for regexp literals with \u{}
14736           escapes.
14738         * string.c (rb_str_squeeze_bang): should squeeze multibyte
14739           characters as well.
14741 Mon Dec 17 21:41:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14743         * win32/enc-setup.mak: extracts BUILTIN_ENCOBJS.
14745         * tool/compile_prelude.rb: needs srcdir.
14747 Mon Dec 17 21:24:04 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14749         * common.mk (miniprelude.c): add -I$(srcdir).
14751 Mon Dec 17 20:53:27 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14753         * ext/openssl/ossl_ssl.c (ossl_sslctx_set_ssl_version):
14754           new method OpenSSL::SSL::SSLContext#ssl_version to wrap
14755           SSL_CTX_set_ssl_version.
14757         * ext/openssl/ossl_ssl.c (ossl_ssl_get_verify_result):
14758           new method OpenSSL::SSL::SSLSocket#verify_result to wrap
14759           SSL_get_verify_result.
14761         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLContext.build):
14762           new method to build OpenSSL::SSL::SSLContext with Hash parameters.
14763           this method provides safety default parameters than SSLContext.new.
14765         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL.verify_certificate_identity):
14766           new module function: pull out identity verification process
14767           from OpenSSL::SSL::SSLSocket#post_connection_check.
14769 Mon Dec 17 18:42:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14771         * string.c (scan_once): need no encoding compatibility check.
14772           it's done inside of re_reg_search().
14774         * string.c (rb_str_split_m): ditto.
14776         * re.c (rb_reg_regsub): ditto.
14778 Mon Dec 17 17:50:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14780         * string.c (rb_str_index): check if substring is broken.
14782         * string.c (rb_str_rindex): ditto.
14784         * string.c (rb_str_succ): should carry over.
14786 Mon Dec 17 17:47:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14788         * common.mk (encs): new target to compile external encodings.
14790         * enc/Makefile.in: became a serb template.
14792         * enc/make_encmake.rb: creates enc.mk from enc/Makefile.in using serb.
14794         * lib/mkmf.rb (relative_from): moved from ext/extmk.rb.
14796         * lib/mkmf.rb ($extmk): true if under to top source directory, not
14797           only ext.
14799         * lib/mkmf.rb (depend_rules): extracted from create_makefile.
14801         * tool/serb.rb (serb): splitted from tool/compile_prelude.rb.
14803 Mon Dec 17 17:32:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14805         * configure.in (MAKEFILES): removed enc/Makefile.
14807         * configure.in (EXTERNAL_ENCOBJS, ENCSOS): removed.
14809         * enc/Makefile.in (BUILTIN_ENCS): includes .c suffix.
14811         * enc/depend: splitted from Makefile.in.
14813         * {bcc32,win32,wince}/setup.mak (-encs-): extracts BUILTIN_ENCOBJS.
14815 Mon Dec 17 17:07:53 2007  Tanaka Akira  <akr@fsij.org>
14817         * string.c (rb_enc_str_asciionly_p): use rb_enc_str_coderange.
14819 Mon Dec 17 16:39:25 2007  Tanaka Akira  <akr@fsij.org>
14821         * string.c (rb_enc_str_coderange): set ENC_CODERANGE_BROKEN using
14822           rb_enc_precise_mbclen.
14823           (rb_str_valid_encoding_p): just check coderange is
14824           ENC_CODERANGE_BROKEN or not.
14826 Mon Dec 17 16:04:16 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14828         * ext/openssl/lib/openssl/buffering.rb (Buffering#gets): added second
14829           optional argument to specify maximum length limit.
14831 Mon Dec 17 16:02:30 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14833         * lib/webrick/httprequest.rb, lib/webrick/cgi.rb: Request-Line or
14834           header fields should be read with maximum length. [ruby-talk:231745]
14836 Mon Dec 17 14:03:39 2007  Tanaka Akira  <akr@fsij.org>
14838         * include/ruby/encoding.h (ENC_CODERANGE_VALID): rename from
14839           ENC_CODERANGE_8BIT.
14841         * string.c (rb_enc_str_coderange): follow the renaming.
14843 Mon Dec 17 13:56:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14845         * string.c (tr_find): wrong condition fixed.
14847         * sprintf.c (rb_str_format): check encoding based on result, not
14848           the format string.
14850         * string.c (rb_str_upto): add encoding check.
14852 Mon Dec 17 12:21:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14854         * Makefile.in (RUNRUBY): added RUNRUBYOPT.
14856 Mon Dec 17 11:38:59 2007  Tanaka Akira  <akr@fsij.org>
14858         * thread_win32.ci (native_thread_create): initialize
14859           th->machine_stack_maxsize as rb_gc_stack_maxsize.
14861 Sun Dec 16 17:07:35 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
14863         * transcode.c (transcode_loop): removed special case (-1)
14864           for undefined conversions.
14866         * transcode_data_iso_8859.c: Changed from character constants
14867           ('\xC2') to integer constants (0xC2) for shorter files and
14868           better readability; eliminated duplicated tables; changed
14869           from -1 offset to actual UNDEF entry (not yet distinguishing
14870           UNDEF and ILLEGAL correctly).
14872         * test/ruby/test_transcode.rb: added a test for UNDEF conversion.
14874 Sun Dec 16 14:51:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14876         * configure.in (MAKEFILES): should be enc/Makefile, not GNUmakefile.
14877           [ruby-dev:32609]
14879         * configure.in (BUILTIN_ENCS): removed escapes for OpenBSD.
14881 Sat Dec 15 23:58:46 2007  Tanaka Akira  <akr@fsij.org>
14883         * test/openssl/test_pair.rb (SSLPair#ssl_pair): join the thread, even
14884           on an error.
14886 Sat Dec 15 23:50:31 2007  Tanaka Akira  <akr@fsij.org>
14888         * test/xmlrpc/webrick_testing.rb: join webrick server thread.
14890 Sat Dec 15 22:27:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14892         * configure.in (BUILTIN_ENCS): splitted command line instead of
14893           semicolons for Solaris.
14895 Sat Dec 15 21:38:24 2007  Tanaka Akira  <akr@fsij.org>
14897         * lib/timeout.rb: join the background thread to make sure it is dead.
14899 Sat Dec 15 20:20:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14901         * configure.in (enc/Makefile): add external encoding objects list.
14903         * common.mk (BUILTIN_ENCOBJS): renamed from ENCOBJS.
14905         * configure.in (BUILTIN_ENCS): [] needs to be enclosed because of m4.
14907         * Makefile.in (BUILTIN_ENCOBJS): substituted by autoconf.
14909         * enc/Makefile.in: new file to compile external encoding sources.
14911         * encoding.c (rb_enc_find_index): auto-load external encoding objects
14912           as "ext/ENCODING_NAME".  [ruby-dev:32606]
14914 Sat Dec 15 13:04:30 2007  Tanaka Akira  <akr@fsij.org>
14916         * vm_core.h (rb_thread_t): new member machine_stack_maxsize and
14917           machine_register_stack_maxsize.
14919         * gc.c (rb_gc_stack_maxsize): new global variable for the thread size
14920           of the main thread.
14921           (STACK_LEVEL_MAX): use machine_stack_maxsize of current thread.
14922           (ruby_stack_check): check IA64 register stack.
14923           (ruby_set_stack_size): set rb_gc_stack_maxsize.
14924           (Init_stack): set rb_gc_stack_maxsize.
14926         * thread_pthread.ci (native_thread_create): initialize
14927           th->machine_stack_maxsize and th->machine_register_stack_maxsize.
14929         * vm.c (Init_BareVM): initialize th->machine_stack_maxsize and
14930           th->machine_register_stack_maxsize.
14932         * thread_win32.ci (native_thread_create): initialize
14933           th->machine_stack_maxsize.  not tested.  just a guess at all.
14935         [ruby-dev:32604]
14937 Sat Dec 15 12:58:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14939         * encoding.c (rb_enc_register, rb_enc_replicate, rb_enc_alias): check
14940           if already registered.
14942 Sat Dec 15 01:57:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14944         * lib/rdoc/options.rb (Options::parse): do not access $KCODE any
14945           longer.  [ruby-core:14079]
14947         * lib/irb/init.rb (IRB::IRB.parse_opts): ditto.
14949         * lib/cgi.rb (CGI::CGI): ditto.
14951 Fri Dec 14 18:18:31 2007  Tanaka Akira  <akr@fsij.org>
14953         * thread_pthread.ci (native_thread_create): twice the stack size.
14954           512KB is not enough to complete test-all on Debian GNU/Linux on
14955           IA64.
14957 Fri Dec 14 16:10:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14959         * io.c (rb_f_p): RDoc update.  a patch from murphy <murphy AT rubychan.de>.
14960           [ruby-core:14010]
14962 Fri Dec 14 16:06:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14964         * string.c (rb_str_cmp): encoding aware comparison.
14966         * string.c (rb_str_casecmp): ditto.
14968 Fri Dec 14 15:25:30 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
14970         * transcode.c (encoding_equal): new function.
14972         * transcode.c (str_transcode, transcode_dispatch): added two-step
14973           conversion logic via UTF-8.
14975         * transcode.c: some minor formatting fixes
14977         * transcode_data.h, transcode_data_iso_8859.c: Shortened
14978           extremely frequently used macros to shorten file length.
14980         * test/ruby/test_transcode.rb: Fixed name of test class;
14981           added setup method to ensure all necessary encodings exist;
14982           split tests into more test methods; added tests; fixed ordering
14983           of arguments in assert_equal to have expected result first.
14985 Fri Dec 14 13:47:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14987         * common.mk (ruby.imp): fix for circular dependency.  a patch from
14988           Yutaka Kanemoto <kinpoco AT gmail.com> in [ruby-dev:32590].
14990         * regint.h, st.c, ext/json/ext/generator/generator.c: suppress
14991           warnings on AIX.
14993 Fri Dec 14 12:36:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14995         * configure.in (RUBY_CHECK_VARTYPE): check if a variable is defined
14996           and its type.
14998         * configure.in (timezone, altzone): check for recent cygwin.
15000         * missing/strftime.c (strftime): fix for timezone.  [ruby-dev:32536]
15002         * lib/mkmf.rb (try_var): should fail for functions.
15004         * ext/readline/extconf.rb: should use have_func for functions instead
15005           of have_var.
15007 Fri Dec 14 10:25:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15009         * lib/e2mmap.rb (Exception2MessageMapper::E2MM.Raise): $! no
15010           longer modifiable in 1.9.
15012 Fri Dec 14 08:17:24 2007  Tanaka Akira  <akr@fsij.org>
15014         * eval.c (rb_protect): restore root_jmpbuf even if proc exits by
15015           break such as dbm.delete_if { break }.
15017 Fri Dec 14 02:55:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15019         * string.c (str_nth): direct jump if string is 7bit only.  great
15020           performance boost for worst case.
15022         * string.c (str_strlen): direct size if string is 7bit only.
15024 Fri Dec 14 02:29:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15026         * encoding.c (rb_enc_compatible): 1st argument (typically the
15027           receiver) would have higher priority in encoding detection.
15029 Fri Dec 14 02:05:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15031         * io.c (rb_io_synchronized): should check if initialized.
15032           [ruby-dev:32585]
15034 Fri Dec 14 00:54:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15036         * re.c (rb_reg_initialize): embedded string may override encoding
15037           of the regular expression.
15039         * re.c (rb_reg_initialize): fix encoding of regular expression if
15040           embedded string has its own encoding specified.
15042 Thu Dec 13 22:16:46 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15044         * encoding.c (rb_enc_compatible): encoding should never fall back
15045           to ASCII-8BIT unless both encodings are ASCII-8BIT.
15047 Thu Dec 13 20:31:28 2007  Tanaka Akira  <akr@fsij.org>
15049         * string.c (rb_str_shared_replace): make str noembed after free.
15051 Thu Dec 13 20:09:09 2007  Tanaka Akira  <akr@fsij.org>
15053         * eval.c (rb_protect): restore root_jmpbuf to avoid SEGV by
15054           'IO.pipe; [].each.next' with gcc version 3.3.5 (Debian 1:3.3.5-13)
15055           on IA64.
15057 Thu Dec 13 17:51:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15059         * string.c (rb_str_split_m): need not to check encoding if regexp
15060           is empty.
15062         * string.c (rb_str_justify): associate encoding of original to the
15063           result.
15065         * string.c (rb_str_chomp_bang): need to check encoding of record
15066           separator.
15068         * string.c (str_gsub): should copy encoding to the result.
15070         * sprintf.c (rb_str_format): ditto.
15072         * string.c (rb_str_succ): should not enter infinite loop for
15073           non-ASCII, non-alphanumeric character at the bottom.
15075 Thu Dec 13 17:03:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15077         * encoding.c (rb_enc_compatible): should swap encoding indexes too.
15079 Thu Dec 13 16:41:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15081         * encoding.c (rb_enc_compatible): should not judge compatibility
15082           based on rb_enc_asciicompat().
15084 Thu Dec 13 13:09:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15086         * include/ruby/io.h (MakeOpenFile): fptr->enc should be
15087           initialized to zero.  [ruby-dev:32569]
15089 Thu Dec 13 08:56:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15091         * io.c (rb_io_getc): use default external encoding if fptr->enc is
15092           not set.  [ruby-dev:32565]
15094         * lib/rubygems/package.rb (Gem::TarReader::Entry::rewind): typo fixed.
15095           [ruby-dev:32565]
15097 Thu Dec 13 08:24:16 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15099         * io.c (read_all): should associate default external encoding.
15101         * io.c (io_read): should NOT associate default external encoding.
15103 Wed Dec 12 23:22:58 2007  Tanaka Akira  <akr@fsij.org>
15105         * re.c, regerror.c, string.c, parse.y, ruby.c, file.c:
15106           use capital letter for \xHH notation.  [ruby-dev:32511]
15108 Wed Dec 12 22:21:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15110         * io.c (rb_io_mode_enc): allow specifying external encoding in
15111           open mode, e.g. open(path, "r:utf-8").
15113 Wed Dec 12 21:26:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15115         * eval_method.ci (rb_alias): no need to skip aliasing when new
15116           equals to old.  [ruby-core:13990]
15118 Wed Dec 12 16:34:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15120         * io.c (rb_io_check_readable): set default external encoding to
15121           STDIN.
15123         * io.c (io_enc_str): associate encoding to output string.
15125 Wed Dec 12 12:44:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15127         * parse.y (expr): 'not' and '!' should act as conditional
15128           expression.   [ruby-dev:32548]
15130 Wed Dec 12 12:11:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15132         * re.c (rb_reg_regsub): should copy encoding.
15134         * string.c (rb_str_sub_bang, str_gsub): should check and copy encoding
15135           to be replaced.
15137 Tue Dec 11 23:04:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15139         * pack.c (pack_pack): RDoc update.  a patch from Gary Wright
15140           <radar2002 AT gmail.com>.  [ruby-core:13998]
15142         * pack.c (pack_unpack): ditto.
15144 Tue Dec 11 16:37:47 2007  Tanaka Akira  <akr@fsij.org>
15146         * encoding.c (rb_enc_ascget): renamed from rb_enc_get_ascii.
15148         * include/ruby/encoding.h: follow the renaming.
15150         * re.c: ditto.
15152 Tue Dec 11 16:19:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15154         * Makefile.in, */Makefile.sub (CP, MV): added.
15156         * common.mk (.y.c): not discard the old target until successfully
15157           created.
15159 Tue Dec 11 15:20:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15161         * object.c (Init_Object): singleton_method_{added,removed,undefined}
15162           hooks should be defined for BasicObject.  [ruby-dev:32531]
15164         * eval.c (Init_eval): method_missing should be defined for all
15165           objects; moved to BasicObject.
15167 Tue Dec 11 14:27:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15169         * transcode.c (transcode_loop): get rid of SEGV at sequence can not be
15170           converted.
15172         * transcode.c (rb_str_transcode_bang): copy encoding.  [ruby-dev:32532]
15174         * test/ruby/test_transcode.rb: added tests from Martin Duerst <duerst
15175           AT it.aoyama.ac.jp>.  [ruby-dev:32532]
15177 Tue Dec 11 12:05:51 2007  Tanaka Akira  <akr@fsij.org>
15179         * encoding.c (rb_enc_get_ascii): add an argument to provide the
15180           length of the returned character.
15182         * include/ruby/encoding.h (rb_enc_get_ascii): add the argument.
15184         * re.c (rb_reg_expr_str): modify rb_enc_get_ascii call.
15185           (rb_reg_quote): ditto.
15186           (rb_reg_regsub): ditto.
15188 Tue Dec 11 09:40:21 2007  Tanaka Akira  <akr@fsij.org>
15190         * include/ruby/oniguruma.h (ONIGENC_CONSTRUCT_MBCLEN_NEEDMORE):
15191           parenthesize an argument.
15193 Tue Dec 11 02:23:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15195         * eval.c (rb_method_missing): RDoc update patch from Hugh Sasse
15196           <hgs AT dmu.ac.uk>.  [ruby-core:12932]
15198 Tue Dec 11 01:51:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15200         * lib/net/http.rb (Net::HTTP::get): now supports gzip
15201           content-encoding.  a patch from Hugh Sasse <hgs AT dmu.ac.uk>.
15202           [ruby-core:13451]
15204 Tue Dec 11 01:21:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15206         * parse.y (shadowing_lvar_gen): no duplicate error for "_".
15208 Mon Dec 10 22:08:47 2007  Akinori MUSHA  <knu@iDaemons.org>
15210         * array.c (rb_ary_slice_bang): If an invalid range is given, do
15211           not raise an exception but return nil just like slice() does.
15213 Mon Dec 10 21:47:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15215         * transcode.c (str_transcode): allow non-registered encodings.
15216           [ruby-dev:32520]
15218 Mon Dec 10 21:00:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15220         * array.c (rb_ary_slice_bang): should return nil if position out
15221           of range.  a patch from Akinori MUSHA <knu AT iDaemons.org>.
15222           [ruby-dev:32518]
15224 Mon Dec 10 19:02:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15226         * re.c (rb_reg_match): should calculate offset by converted
15227           operand.  [ruby-cvs:21416]
15229 Mon Dec 10 18:28:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15231         * lib/uri/common.rb (URI::REGEXP::PATTERN): typo in REG_NAME
15232           regular expression.  a patch from Ueda Satoshi
15233           <s-ueda AT livedoor.jp>.  [ruby-dev:32514]
15235 Mon Dec 10 17:46:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15237         * string.c (rb_str_tmp_new): creates hidden temporary buffer.
15239         * transcode.c (transcoding): added a pointer to function to flush.
15241         * transcode.c (transcode_loop): do not use string internal.
15242           [ruby-dev:32512]
15244         * transcode.c (str_transcode): allow Encoding objects.
15246         * transcode_data.h (BYTE_LOOKUP): use actual struct name.
15248 Mon Dec 10 16:52:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15250         * string.c (rb_str_insert): should not add length in bytes to index in
15251           chars.
15253 Mon Dec 10 14:33:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15255         * eval.c (rb_f_public_send): rename invoke_method to public_send.
15256           it now invokes public method only no matter how it's called.
15258 Mon Dec 10 14:00:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15260         * transcode.c: new file to provide encoding conversion features.
15261           code contributed by Martin Duerst.
15263 Mon Dec 10 13:50:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15265         * re.c (rb_reg_search): return byte offset.  [ruby-dev:32452]
15267         * re.c (rb_reg_match, rb_reg_match2, rb_reg_match_m): convert byte
15268           offset to char index.
15270         * string.c (rb_str_index): return byte offset.  [ruby-dev:32472]
15272         * string.c (rb_str_split_m): calculate in byte offset.
15274 Mon Dec 10 09:56:29 2007  Koichi Sasada  <ko1@atdot.net>
15276         * benchmark/bm_vm1_neq.rb, bm_vm1_not.rb: added.
15278 Mon Dec 10 07:48:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15280         * parse.y (parser_yylex): wrong token was generated.  [ruby-dev:32498]
15282         * object.c (rb_obj_not_match): wrong test.
15284 Mon Dec 10 06:44:47 2007  Tanaka Akira  <akr@fsij.org>
15286         * re.c (rb_reg_expr_str): use \xHH instead of \OOO.
15288         * regerror.c (to_ascii): ditto.
15289           (onig_snprintf_with_pattern): ditto.
15290           (onig_snprintf_with_pattern): ditto.
15292         * string.c (rb_str_inspect): ditto.
15293           (rb_str_dump): ditto.
15295         * parse.y (parser_yylex): ditto.
15297         * ruby.c (proc_options): ditto.
15299         * file.c (rb_f_test): ditto.
15301         [ruby-dev:32495]
15303 Mon Dec 10 06:41:00 2007  Tanaka Akira  <akr@fsij.org>
15305         * re.c (rb_reg_names): new method Regexp#names.
15306           (rb_reg_named_captures): new method Regexp#named_captures
15307           (match_regexp): new method MatchData#regexp.
15308           (match_names): new method MatchData#names.
15310         * lib/pp.rb (MatchData#pretty_print): show names of named captures.
15312         [ruby-dev:32493]
15314 Mon Dec 10 01:35:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15316         * parse.y (expr): redefinable not (!) operator.
15318         * parse.y (arg): ditto.
15320         * object.c (rb_obj_not): new method "!".
15322         * object.c (rb_obj_not_equal): new method "!=".
15324         * object.c (rb_obj_not_match): new method "!~".
15326 Sun Dec  9 22:31:36 2007  Tanaka Akira  <akr@fsij.org>
15328         * re.c (rb_reg_s_last_match): accept named capture's name.
15330 Sun Dec  9 15:57:53 2007  Tanaka Akira  <akr@fsij.org>
15332         * re.c (match_backref_number): new function for converting a backref
15333           name/number to an integer.
15334           (match_offset): use match_backref_number.
15335           (match_begin): ditto.
15336           (match_end): ditto.
15337           (name_to_backref_number): raise IndexError instead of RuntimeError.
15338           (match_inspect): show capture index.
15340 Sun Dec  9 14:59:15 2007  Koichi Sasada  <ko1@atdot.net>
15342         * eval_intern.h (CHECK_STACK_OVERFLOW): reserve frame size.
15343           [ruby-dev:32485]
15345 Sun Dec  9 14:38:25 2007  Koichi Sasada  <ko1@atdot.net>
15347         * vm.c (rb_thread_mark): use rb_gc_mark_maybe() for
15348           VM stack specified by mark_stack_len.  [ruby-dev:32462]
15350         * insnhelper.ci: clear vm stack extended by opt value.
15352 Sun Dec  9 14:08:47 2007  Tanaka Akira  <akr@fsij.org>
15354         * include/ruby/ruby.h (FilePathStringValue): defined.  similar to
15355           FilePathValue but no taint check.
15357         * file.c (rb_get_path_no_checksafe): implementation of
15358           FilePathStringValue.
15359           (rb_file_s_basename): use FilePathStringValue.
15360           (rb_file_s_dirname): ditto.
15361           (rb_file_s_extname): ditto.
15362           (rb_file_s_split): ditto.
15363           (rb_file_join): ditto.
15365         * dir.c (file_s_fnmatch): ditto.
15367 Sun Dec  9 12:49:34 2007  Tanaka Akira  <akr@fsij.org>
15369         * re.c (append_utf8): check unicode range.
15371 Sun Dec  9 12:39:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15373         * lib/cgi.rb (read_multipart): exclude blanks from header values.
15374           [ruby-list:44327]
15376 Sun Dec  9 12:18:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15378         * file.c (rb_get_path): use the original object if to_path method is
15379           not defined.  [ruby-dev:32473]
15381         * io.c (rb_f_open): call to_open on non-string objects, instead of
15382           to_str.  [ruby-dev:32473]
15384 Sun Dec  9 12:12:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15386         * string.c (tr_find): returns true if no characters to be removed is
15387           specified.
15389 Sun Dec  9 12:03:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15391         * parse.y (parser_magic_comment): delimits with a semicolon.
15393 Sun Dec  9 11:29:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15395         * string.c (tr_trans): get rid of segfaults when has multibytes but
15396           source sets have no multibytes.
15398 Sun Dec  9 04:01:28 2007  Tanaka Akira  <akr@fsij.org>
15400         * encoding.c (rb_enc_mbclen): return 1 if underlying implementation
15401           returns a length longer than e-p.
15402           (rb_enc_precise_mbclen): return needmore if underlying
15403           implementation returns a length longer than e-p.
15405 Sat Dec  8 17:59:40 2007  Tanaka Akira  <akr@fsij.org>
15407         * signal.c (posix_signal): return value.
15409 Sat Dec  8 17:22:16 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
15411         * test/openssl/test_pkcs7.rb: Remove redundant module namespace.
15413 Sat Dec  8 17:07:10 2007  Tanaka Akira  <akr@fsij.org>
15415         * ruby.c (proc_options): make rb_raise format as a string literal to
15416           avoid warning.
15418 Sat Dec  8 16:18:16 2007  Tanaka Akira  <akr@fsij.org>
15420         * re.c (rb_reg_check_preprocess): new function for validating regexp
15421           fragment.
15423         * parse.y (regexp): invoke reg_fragment_check.
15424           (reg_fragment_check): defined.
15425           (reg_fragment_check_gen): defined.
15427 Sat Dec  8 11:06:29 2007  Tanaka Akira  <akr@fsij.org>
15429         * encoding.c (rb_enc_mbclen): make it never fail.
15430           (rb_enc_nth): don't check the return value of rb_enc_mbclen.
15431           (rb_enc_strlen): ditto.
15432           (rb_enc_precise_mbclen): return needmore(1) if e <= p.
15433           (rb_enc_get_ascii): new function for extracting ASCII character.
15435         * include/ruby/encoding.h (rb_enc_get_ascii): declared.
15437         * include/ruby/regex.h (ismbchar): removed.
15439         * re.c (rb_reg_expr_str): use rb_enc_get_ascii.
15440           (unescape_escaped_nonascii): use rb_enc_precise_mbclen to determine
15441           the termination of escaped non-ASCII character.
15442           (unescape_nonascii): use rb_enc_precise_mbclen.
15443           (rb_reg_quote): use rb_enc_get_ascii.
15444           (rb_reg_regsub): use rb_enc_get_ascii.
15446         * string.c (rb_str_reverse) don't check the return value of
15447           rb_enc_mbclen.
15448           (rb_str_split_m): don't call rb_enc_mbclen with e <= p.
15450         * parse.y (is_identchar): use ISASCII.
15451           (parser_ismbchar): removed.
15452           (parser_precise_mbclen): new macro.
15453           (parser_isascii): new macro.
15454           (parser_tokadd_mbchar): use parser_precise_mbclen to check invalid
15455           character precisely.
15456           (parser_tokadd_string): use parser_isascii.
15457           (parser_yylex): ditto.
15458           (is_special_global_name): don't call is_identchar with e <= p.
15459           (rb_enc_symname_p): ditto.
15461           [ruby-dev:32455]
15463         * ext/tk/sample/tkextlib/vu/canvSticker2.rb: remove coding cookie
15464           because the encoding is not UTF-8.  [ruby-dev:32475]
15466 Fri Dec  7 20:21:35 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
15468         * ext/openssl/lib/net/ftptls.rb, ext/openssl/lib/net/telnets.rb:
15469           half-finished libraries are discontinued.
15471 Fri Dec  7 15:44:40 2007  Tanaka Akira  <akr@fsij.org>
15473         * lib/pp.rb: use Hash for recursion check as inspect.
15475 Fri Dec  7 15:04:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15477         * array.c (flatten): some performance improvements, based on a patch
15478           from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-core:13877].
15479           [ruby-core:13851]
15481         * thread.c (rb_exec_recursive): use Hash instead of Array for
15482           performance improvement.  [ruby-core:13898]
15484         * thread.c (recursive_pop): use object ID.
15486 Thu Dec  6 19:52:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15488         * parse.y (arg): typo fixed ("!" -> "|") in the ripper code.
15490 Thu Dec  6 19:48:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15492         * parse.y (arg): tUPLUS no longer works as identity operation any
15493           more.  inspired by [ruby-talk:265532].
15495 Thu Dec  6 18:22:11 2007  Tanaka Akira  <akr@fsij.org>
15497         * encoding.c (rb_enc_precise_mbclen): new function for mbclen with
15498           validation.
15500         * include/ruby/encoding.h (rb_enc_precise_mbclen): declared.
15501           (MBCLEN_CHARFOUND): new macro.
15502           (MBCLEN_INVALID): new macro.
15503           (MBCLEN_NEEDMORE): new macro.
15505         * include/ruby/oniguruma.h (OnigEncodingTypeST): replace mbc_enc_len
15506           by precise_mbc_enc_len.
15507           (ONIGENC_PRECISE_MBC_ENC_LEN): new macro.
15508           (ONIGENC_CONSTRUCT_MBCLEN_CHARFOUND): new macro.
15509           (ONIGENC_CONSTRUCT_MBCLEN_INVALID): new macro.
15510           (ONIGENC_CONSTRUCT_MBCLEN_NEEDMORE): new macro.
15511           (ONIGENC_MBCLEN_CHARFOUND): new macro.
15512           (ONIGENC_MBCLEN_INVALID): new macro.
15513           (ONIGENC_MBCLEN_NEEDMORE): new macro.
15514           (ONIGENC_MBC_ENC_LEN): use ONIGENC_PRECISE_MBC_ENC_LEN.
15516         * enc/euc_jp.c: validation implemented.
15518         * enc/sjis.c: ditto.
15520         * enc/utf8.c: ditto.
15522         * string.c (rb_str_inspect): use rb_enc_precise_mbclen for invalid
15523           encoding.
15524           (rb_str_valid_encoding_p): new method String#valid_encoding?.
15526         * io.c (rb_io_getc): use rb_enc_precise_mbclen.
15528         [ruby-dev:32438]
15530 Thu Dec  6 01:37:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15532         * regparse.c (i_apply_case_fold): fix for negative character class.  a
15533           patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-core:13884].
15535 Thu Dec  6 01:00:38 2007  NARUSE, Yui <naruse@ruby-lang.org>
15537         * ext/iconv/iconv.c (iconv_s_list): support NetBSD/Citrus iconv.
15539 Wed Dec  5 16:18:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15541         * proc.c (rb_proc_s_new): call initialize.  [ruby-core:13824]
15543         * proc.c (rb_proc_location): return file name and line number where
15544           the proc is defined.
15546         * thread.c (thread_s_new): call initialize.  [ruby-core:13835]
15548         * thread.c (thread_initialize): split initialize method.
15550 Wed Dec  5 15:25:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15552         * parse.y (rb_intern3): fix to changing encoding to default, and
15553           uncommented r13835, which is rare but not impossible.
15555 Wed Dec  5 15:15:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15557         * range.c (step_i, range_step): support non-fixnum steps.
15558           [ruby-talk:282100]
15560 Wed Dec  5 14:25:11 2007  Koichi Sasada  <ko1@atdot.net>
15562         * compile.c (iseq_compile_each): fix typo.
15564 Wed Dec  5 13:41:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15566         * parse.y (yycompile): get rid of tracing while parsing.
15567           [ruby-dev:31351]
15569         * thread.c (ruby_suppress_tracing): added a new parameter, which
15570           directs to call func always.
15572 Tue Dec  4 19:56:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15574         * ext/iconv/iconv.c (iconv_convert): should not set encoding unless
15575           the target encoding is supported.  [ruby-dev:32451]
15577 Tue Dec  4 17:34:17 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15579         * ext/nkf/lib/kconv.rb (tojis, tosjis, toeuc, toutf8):
15580           set encoding. [ruby-dev:32447]
15582 Tue Dec  4 17:07:25 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15584         * lib/json.rb, lib/json/*: moved to ext/json/lib.
15586 Tue Dec  4 16:34:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15588         * ext/iconv/iconv.c (iconv_create): achieve target encoding.
15590         * ext/iconv/iconv.c (iconv_convert, iconv_finish, iconv_iconv,
15591           iconv_conv): set result string encoding.  [ruby-dev:32446]
15593         * ext/iconv/iconv.c (iconv_initialize, iconv_s_open): set encoding to
15594           Iconv instance.
15596 Tue Dec  4 14:34:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15598         * ruby.c (process_options): reverted c flag.
15600 Tue Dec  4 11:23:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15602         * bignum.c (rb_cstr_to_inum): trailing spaces may exist at squeezing
15603           preceding 0s.  [ruby-core:13873]
15605 Mon Dec  3 11:51:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15607         * ext/Win32API/*: removed or moved to ext/dl/win32.
15609         * ext/dl/win32/*: new. [ruby-dev:32387]
15611 Sun Dec  2 22:08:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15613         * parse.y (parser_tokadd_mbchar): fix for ASCII chars.  [ruby-dev:32432]
15615         * parse.y (parser_parse_string, parser_here_document): prevent false
15616           error messages.
15618 Sun Dec  2 20:43:22 2007  Tanaka Akira  <akr@fsij.org>
15620         * re.c (unescape_escaped_nonascii): fix mbclen argument.
15622 Sun Dec  2 15:47:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15624         * parse.y (parser_tokadd_mbchar): check insufficient multibyte char.
15625           [ruby-dev:32429]
15627 Sun Dec  2 15:42:16 2007  Kouhei Sutou  <kou@cozmixng.org>
15629         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.1 -> 0.2.2.
15631         * lib/rss/maker/itunes.rb: fixed new_itunes_category.
15632         * lib/rss/maker/taxonomy.rb: new_taxo_topic -> new_topic because
15633           of consistency.
15635         * test/rss/test_maker_itunes.rb, test/rss/test_itunes.rb: removed
15636           needless UTF-8 characters.
15638 Sun Dec  2 15:18:37 2007  Koichi Sasada  <ko1@atdot.net>
15640         * insnhelper.ci (vm_callee_setup_arg): fix error message.
15641           [ruby-dev:32430]
15643 Sun Dec  2 09:12:48 2007  Tanaka Akira  <akr@fsij.org>
15645         * parse.y (regexp): fix /#{}\xa1\xa2/e to be EUC-JP.
15646           (reg_fragment_setenc_gen): extracted from reg_compile_gen.
15648 Sun Dec  2 01:39:51 2007  Tanaka Akira  <akr@fsij.org>
15650         * include/ruby/intern.h (rb_uv_to_utf8): declared.
15652         * re.c (rb_reg_preprocess): new function for dynamic regexp with
15653           \u{} such as Regexp.new("\\u{6666}").
15654           (rb_reg_prepare_re): preprocess regexp for recompiling.
15655           (read_escaped_byte): new function.
15656           (unescape_escaped_nonascii): new function.
15657           (append_utf8): new function.
15658           (unescape_unicode_list): new function.
15659           (unescape_unicode_bmp): new function.
15660           (unescape_nonascii): new function.
15661           (rb_reg_initialize): preprocess regexp.
15663         * pack.c (rb_uv_to_utf8): renamed from uv_to_utf8.
15665         * parse.y (STR_NEW3): take func instead of has8 and hasmb.
15666           (parser_str_new): use default coderange mechanism except for regexp.
15667           (parser_tokadd_utf8): copy regexp source as-is.
15668           (parser_read_escape): UTF-8 stuff removed.
15669           (parser_tokadd_escape): has8bit and hasmb removed.
15670           (parser_tokadd_string): fix 8-bit single byte character with \u.
15671           (parser_parse_string): has8bit and hasmb removed.
15672           (parser_here_document): has8bit and hasmb removed.
15673           (parser_yylex): call parser_tokadd_utf8 instead of read_escape for
15674           UTF-8 character.
15676 Wed Dec  2 01:00:07 2007  James Edward Gray II  <jeg2@ruby-lang.org>
15678         * lib/xmlrpc/server.rb (XMLRPC::Server#server): Improve signal handling so
15679           pressing control-c in the controlling terminal or sending SIGTERM stops
15680           the XML-RPC server.
15682 Sat Dec  1 23:04:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15684         * encoding.c: rename primary_encoding -> default_external (encoding).
15686 Sat Dec  1 19:52:57 2007  Tadayoshi Funaba  <tadf@dotrb.org>
15688         * lib/date.rb (Time#to_datetime): use nsec instead of usec.
15690         * lib/date.rb (DateTime#to_time): second minute as an argument to
15691           Time::utc contains fractional part in rational; hence Time
15692           object may keep resolution at most nanosecond.
15694 Sat Dec  1 14:36:05 2007  Koichi Sasada  <ko1@atdot.net>
15696         * bootstraptest/test_knownbug.rb: move fixed bugs.
15698         * test/ruby/test_sprintf.rb: ditto.
15700         * test/yaml/test_yaml.rb: ditto.
15702 Sat Dec  1 13:24:47 2007  Koichi Sasada  <ko1@atdot.net>
15704         * insnhelper.ci (vm_yield_with_cfunc): fix to passing argc on third
15705           parameter of IFUNC.  [ruby-dev:32329]
15707         * enumerator.c: fix to pass exact number of argument.
15709         * eval.c (rb_yield_values2): added.
15711         * include/ruby/ruby.h: ditto.
15713         * bootstraptest/test_knownbug.rb: move a fixed test.
15715         * bootstraptest/test_block.rb: ditto.
15717 Sat Dec  1 10:45:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15719         * io.c (rb_f_open): use to_open for every non-string object.  path
15720           object may use method_missing.
15722 Sat Dec  1 09:44:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15724         * insns.def (concatarray, splatarray): use to_a instead of
15725           to_splat.
15727         * insnhelper.ci (caller_setup_args): ditto.
15729 Sat Dec  1 03:34:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15731         * parse.y (newline_node): always remove NODE_BEGIN.
15733 Fri Nov 30 23:48:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15735         * signal.c (ruby_signal): use SA_SIGINFO if available.
15736           [ ruby-Patches-6418 ]
15738 Fri Nov 30 22:52:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15740         * signal.c (trap_signm): SIGVTALRM no longer used for green
15741           thread.  [ruby-talk:281318]
15743         * signal.c (ruby_sig_finalize): do not install SIG_DFL handler if
15744           previous handler is sighandler().
15746 Fri Nov 30 21:02:15 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15748         * lib/json.rb, lib/json/add/{core.rb, rails.rb},
15749           test/json/test_json_rails.rb: additional files of JSON 1.1.2.
15750           [ruby-dev:32405]
15752 Fri Nov 30 19:33:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15754         * ext/syck/rubyext.c (rb_syck_mktime): avoid segmentation fault.
15755           [ruby-core:13735]
15757 Fri Nov 30 19:05:55 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15759         * enum.c (enum_count): precise argument number check.
15761         * enum.c (enum_count): return Enumerator if no block given.
15763 Fri Nov 30 16:42:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15765         * enum.c (enum_take_while): returns Enumerator if no block given.
15767         * enum.c (enum_drop_while): ditto.
15769 Thu Nov 29 16:59:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15771         * parse.y (stmt): remove unnecessary NODE_BEGIN.  [ruby-core:13814]
15773 Thu Nov 29 06:45:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15775         * hash.c (rb_hash_eql): recursive comparison should be based on
15776           eql?  [ruby-core:13803]
15778 Wed Nov 28 18:08:00 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15780         * ext/json, lib/json, test/json: Update to JSON 1.1.2.
15781           (RubyForge#15447)
15783         * math.c: fix typo.
15785 Wed Nov 28 16:29:35 2007  Koichi Sasada  <ko1@atdot.net>
15787         * insnhelper.ci (vm_invoke_block): should splat args.
15788           [ruby-dev:32392]
15790         * test/ruby/test_yield.rb: add tests for above.
15792 Wed Nov 28 14:43:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15794         * ext/extmk.rb (extract_makefile): use dldflags instead of DLDFLAGS to
15795           get rid of mixing $LDFLAGS and $ARCH_FLAG.
15797         * lib/mkmf.rb (configuration): ditto.
15799         * lib/mkmf.rb (create_makefile): support for extensions which has no
15800           shared object.
15802 Wed Nov 28 02:42:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15804         * bignum.c (big2str_find_n1): removed extraneous element.
15805           [ruby-dev:32351], [ruby-dev:32365]
15807         * bignum.c (big2str_find_n1): returns necessary digits now.
15809         * sprintf.c (remove_sign_bits): extends sign bit first.
15811 Tue Nov 27 15:53:43 2007  Koichi Sasada  <ko1@atdot.net>
15813         * compile.c (iseq_compile_each): "when *[],1" dumps core.
15814           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32350]
15816         * bootstraptest/test_syntax.rb: add a test for above.
15818 Tue Nov 27 15:40:05 2007  Koichi Sasada  <ko1@atdot.net>
15820         * compile.c (iseq_compile_each): "a[*b] += 1" dumps core.
15821           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32354]
15823         * bootstraptest/test_syntax.rb: add a test for above.
15825 Tue Nov 27 12:47:23 2007  Koichi Sasada  <ko1@atdot.net>
15827         * compile.c, insns.def: change return value of "defined?"
15828           for $&, $1, ... .  If such variables are defined,
15829           return "global-variable".
15831         * test/ruby/test_defined.rb: add tests.
15833         * bootstraptest/test_syntax.rb: fix a test.
15835 Tue Nov 27 11:54:46 2007  Koichi Sasada  <ko1@atdot.net>
15837         * insns.def: fix typo.
15839 Tue Nov 27 11:23:20 2007  Koichi Sasada  <ko1@atdot.net>
15841         * test_beginendblock.rb: add loop to wait signal.
15842           [ruby-dev:32332]
15844 Tue Nov 27 11:14:57 2007  Tanaka Akira  <akr@fsij.org>
15846         * include/ruby/encoding.h, encoding.c, re.c, string.c, parse.y:
15847           rename ENC_CODERANGE_SINGLE to ENC_CODERANGE_7BIT.
15848           rename ENC_CODERANGE_MULTI to ENC_CODERANGE_8BIT.
15849           Because single byte 8bit character, such as Shift_JIS 1byte katakana,
15850           is represented by ENC_CODERANGE_MULTI even if it is not multi byte.
15852 Tue Nov 27 10:45:45 2007  Koichi Sasada  <ko1@atdot.net>
15854         * eval.c (rb_method_missing): fix stack trace.
15856         * bootstraptest/test_knownbug.rb: move solved tests.
15858         * bootstraptest/test_method.rb, test/ruby/test_regexp.rb: ditto.
15860 Tue Nov 27 09:57:42 2007  Koichi Sasada  <ko1@atdot.net>
15862         * insns.def, compile.c: fix to allow dsym for alias/undef.
15863           [ruby-dev:32355]
15865         * bootstraptest/test_method.rb: add tests for above.
15867 Mon Nov 26 23:18:46 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
15869         * lib/drb/extserv.rb (initialize, stop_service): synchronize with
15870           ExtServManager.
15872         * test/drb/test_drb.rb (TestDRbEval): ignored.
15874 Mon Nov 26 17:32:16 2007  Tanaka Akira  <akr@fsij.org>
15876         * re.c (Init_Regexp): new method Regexp#fixed_encoding?
15877           [ruby-dev:32361]
15879 Mon Nov 26 13:28:14 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
15881         * lib/complex.rb: be able to create Complex(0, -0.0). [ruby-list:44268]
15883 Mon Nov 26 11:24:04 2007  Tanaka Akira  <akr@fsij.org>
15885         * re.c (rb_reg_fixed_encoding_p): extracted from rb_reg_prepare_re and
15886           rb_reg_s_union.
15887           (rb_reg_s_union): refactored.
15889 Mon Nov 26 10:44:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15891         * io.c (rb_read_internal, rb_sysopen_internal): remove C99 dependency.
15893 Sun Nov 25 22:21:35 2007  Tanaka Akira  <akr@fsij.org>
15895         * include/ruby/encoding.h (rb_enc_str_asciionly_p): declared.
15896           (rb_enc_str_asciicompat_p): defined.
15898         * re.c (rb_reg_initialize_str): use rb_enc_str_asciionly_p.
15899           (rb_reg_quote): return ascii-8bit string if the argument is
15900           ascii-only to generate encoding generic regexp if possible.
15901           (rb_reg_s_union): fix encoding handling.  [ruby-dev:32094]
15903         * string.c (rb_enc_str_asciionly_p): defined.
15905 Sun Nov 25 12:12:03 2007  Eric Hodel  <drbrain@segment7.net>
15907         * gem_prelude.rb: Import fast-loading gem_prelude.rb from RubyGems.
15909         * lib/rubygems*: Import RubyGems r1516.
15911 Sat Nov 24 23:25:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15913         * test/ruby/test_eval.rb (TestEval::test_instance_eval_cvar):
15914           updated not to modify class variable of Object class.
15916 Fri Nov 23 17:34:24 2007  Koichi Sasada  <ko1@atdot.net>
15918         * io.c: add rb_read_internal() as blocking function.
15920 Fri Nov 23 17:33:39 2007  Koichi Sasada  <ko1@atdot.net>
15922         * vm.c: fix comment.
15924 Fri Nov 23 17:26:11 2007  Koichi Sasada  <ko1@atdot.net>
15926         * bootstraptest/test_knownbug.rb: move solved tests.
15928         * bootstraptest/test_io.rb, test_marshal.rb, test_objectspace.rb:
15929           ditto.
15931         * test/ruby/test_integer.rb, test_regexp.rb: ditto.
15933 Fri Nov 23 15:59:04 2007  Tanaka Akira  <akr@fsij.org>
15935         * struct.c (rb_struct_alloc_noinit): new function.
15936           (rb_struct_define_without_accessor): add allocator to the arguments.
15938         * range.c (range_alloc): re-introduced using rb_struct_alloc_noinit.
15940 Fri Nov 23 15:27:43 2007  Tanaka Akira  <akr@fsij.org>
15942         * re.c (REG_CASESTATE): unused macro removed.
15943           (rb_reg_prepare_re): check encoding difference.
15944           (rb_reg_initialize): check 8bit byte.
15946         * parse.y (parser_tokadd_escape): fix has8bit.
15948           [ruby-dev:32113]
15950 Fri Nov 23 15:16:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15952         * variable.c (rb_f_global_variables): variable names should not
15953           duplicate.  [ruby-dev:32344]
15955 Fri Nov 23 13:34:08 2007  Tanaka Akira  <akr@fsij.org>
15957         * struct.c (rb_struct_define_without_accessor): new function.
15959         * range.c (range_alloc): removed.
15960           (Init_Range): use rb_struct_define_without_accessor.
15962           based on [ruby-dev:32327].
15964 Fri Nov 23 11:01:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15966         * re.c (match_begin): should return offset by character.
15967           [ruby-dev:32331]
15969         * re.c (match_end): ditto.
15971         * re.c (rb_reg_search): ditto.
15973 Fri Nov 23 10:44:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15975         * compile.c (defined_expr): defined(method(x)) dumped core.  a
15976           patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32335]
15978 Wed Nov 21 18:03:49 2007  Koichi Sasada  <ko1@atdot.net>
15980         * vm.c: fix to recycle thread data (VM stack).
15982         * thread.c: ditto.
15984         * benchmark/bm_vm3_thread_create_join.rb: add loop count.
15986 Wed Nov 21 18:02:10 2007  Koichi Sasada  <ko1@atdot.net>
15988         * benchmark/driver.rb: add path to trunk/lib if driver runner is
15989           in build directory.
15991 Wed Nov 21 16:39:21 2007  Tanaka Akira  <akr@fsij.org>
15993         * test/fileutils/fileasserts.rb (assert_equal_timestamp): new assert
15994           to test tv_sec only for filestamp resolution portability.
15995           (assert_same_entry): use assert_same_entry for mtime comparison.
15997 Wed Nov 21 14:55:13 2007  Koichi Sasada  <ko1@atdot.net>
15999         * array.c (rb_ary_permutation): add gc guard codes.
16001 Wed Nov 21 11:16:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16003         * insnhelper.ci (vm_search_normal_superclass): rename function.
16005         * insnhelper.ci (vm_search_superclass): ditto.
16007         * proc.c (struct METHOD): rename rklass -> rclass.
16009 Wed Nov 21 03:12:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16011         * process.c (rb_f_system): returns nil on execution failure.
16012           [ruby-core:13715]
16014 Wed Nov 21 01:04:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16016         * object.c (nil_plus): remove unused function.  [ruby-core:13737]
16018 Tue Nov 20 21:46:46 2007  Tanaka Akira  <akr@fsij.org>
16020         * time.c (time_mload): ignore invalid digits in submicro.
16022 Tue Nov 20 20:33:32 2007  Koichi Sasada  <ko1@atdot.net>
16024         * include/ruby/ruby.h: rename RFloat#double_value -> float_value.
16026         * numeric.c, parse.y: ditto.
16028 Tue Nov 20 19:36:21 2007  Koichi Sasada  <ko1@atdot.net>
16030         * gc.h, vm_core.h: decl of rb_gc_save_machine_context()
16031           should be at vm_core.h.
16033         * include/ruby/ruby.h, intern.h: remove type rb_thread_t.
16035         * include/ruby/intern.h: change rb_unblock_function_t,
16036           rb_unblock_function_t.
16038         * file.c, process.c: apply above changes.
16040         * thread.c, thread_pthread.ci, thread_win32.ci: ditto.
16042         * io.c: support blocking open (2). [ruby-core:13614]
16044 Tue Nov 20 17:10:11 2007  Tanaka Akira  <akr@fsij.org>
16046         * io.c (rb_io_close_on_exec_p): new method IO#close_on_exec?.
16047           (rb_io_set_close_on_exec): new method IO#close_on_exec=.
16048           [ruby-dev:32323]
16050 Tue Nov 20 16:24:31 2007  Tanaka Akira  <akr@fsij.org>
16052         * gc.c (gc_mark_children): obj->as.file.fptr may be 0 for T_FILE.
16054 Tue Nov 20 15:09:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16056         * parse.y (parser_read_escape): has8bit flag may be set with control
16057           escape.  [ruby-core:13722]
16059         * parse.y (parser_prepare): set begging after BOM if exists.
16060           [ruby-core:13718]
16062 Tue Nov 20 14:55:37 2007  Eric Hodel  <drbrain@segment7.net>
16064         * lib/rubygems*: Update to RubyGems 0.9.5.
16066 Tue Nov 20 13:00:44 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16068         * include/ruby/win32.h win32/win32.c (rb_w32_pipe_exec): use dual fd
16069           instead of socketpair when mode is RDWR.
16071         * io.c (pipe_open): pass &write_fd to rb_w32_pipe_exec().
16073         * io.c (popen_redirect): define only when HAVE_FORK.
16075 Tue Nov 20 12:12:04 2007  Tanaka Akira  <akr@fsij.org>
16077         * include/ruby/io.h (rb_io_t): add tied_io_for_writing member.
16079         * io.c: use tied_io_for_writing for duplex popen.
16081         * gc.c: mark tied_io_for_writing.
16083         * common.mk: gc.o depends io.h.
16085           [ruby-dev:32205]
16087 Tue Nov 20 11:59:33 2007  Tanaka Akira  <akr@fsij.org>
16089         * test/drb/test_drb.rb: rename TestRubyYield to TestDRbRubyYield to
16090           avoid name crash with test/ruby/test_yield.rb.
16091           TestRuby18Yield is renamed to TestDRbRuby18Yield too.
16093 Tue Nov 20 03:24:42 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
16095         * lib/drb/extservm.rb: merged from ruby_1_8 branch.
16097         * lib/drb/acl.rb: ditto.
16099         * lib/drb/ssl.rb: ditto.
16101         * lib/drb/unix.rb: ditto.
16103         * lib/drb/drb.rb: ditto.
16105         * lib/drb/observer.rb: ditto.
16107         * lib/drb/invokemethod.rb: ditto.
16109         * test/drb/test_drbssl.rb: ditto.
16111         * test/drb/test_drb.rb: ditto.
16113         * test/drb/drbtest.rb: ditto.
16115         * test/drb/test_drbunix.rb: ditto.
16117 Tue Nov 20 00:52:46 2007  Tanaka Akira  <akr@fsij.org>
16119         * test/fileutils/fileasserts.rb (assert_equal_time): show nsec if
16120           assertion fails but time.to_s equals.
16121           (assert_same_entry): use assert_equal_time.
16123         * test/fileutils/test_fileutils.rb (test_install): use
16124           assert_equal_time.
16126 Mon Nov 19 18:46:49 2007  Tanaka Akira  <akr@fsij.org>
16128         * file.c (utime_internal): fallback utimensat to utimes.
16130 Mon Nov 19 17:51:27 2007  Tanaka Akira  <akr@fsij.org>
16132         * configure.in: check struct timespec, clock_gettime, utimensat,
16133           struct stat.st_atim,
16134           struct stat.st_atimespec,
16135           struct stat.st_atimensec,
16136           struct stat.st_mtim,
16137           struct stat.st_mtimespec,
16138           struct stat.st_mtimensec,
16139           struct stat.st_ctim,
16140           struct stat.st_ctimespec,
16141           struct stat.st_ctimensec.
16143         * include/ruby/missing.h: provide struct timespec if not available.
16145         * time.c: support nanosecond-resolution using struct timespec.
16146           (time_nsec): new method: Time#nsec and Time#tv_nsec.
16148         * include/ruby/intern.h: provide rb_time_nano_new.
16150         * file.c (utime_internal): use utimensat if available.
16151           (rb_file_s_utime): refactored.
16152           (rb_f_test): use stat_atime, stat_mtime, stat_ctime.
16153           (rb_stat_cmp): check tv_nsec.
16154           (stat_atimespec): new function.
16155           (stat_atime): ditto.
16156           (stat_mtimespec): ditto.
16157           (stat_mtime): ditto.
16158           (stat_ctimespec): ditto.
16159           (stat_ctime): ditto.
16160           (rb_stat_atime): use stat_atime.
16161           (rb_file_s_atime): ditto.
16162           (rb_file_atime): ditto.
16163           (rb_stat_mtime): use stat_mtime.
16164           (rb_file_s_mtime): ditto.
16165           (rb_file_mtime): ditto.
16166           (rb_file_ctime): use stat_ctime.
16167           (rb_file_s_ctime): ditto.
16168           (rb_stat_ctime): ditto.
16170         * variable.c (rb_copy_generic_ivar): clear clone's instance variables
16171           if obj has no instance variable.
16173         * marshal.c (w_object): dump instance variables of generated string
16174           for TYPE_USERDEF, even if original object has instance variables.
16176         * lib/time.rb (Time#xmlschema): use nsec instead of usec.
16178         [ruby-dev:32306]
16180 Mon Nov 19 17:48:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16182         * object.c (rb_class_superclass): should not raise exception for
16183           BasicObject.  [ruby-Bugs-15668]
16185 Mon Nov 19 16:04:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16187         * array.c (rb_ary_permutation): gives all permutations of elements
16188           if no argument given.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
16189           [ruby-dev:32309]
16191 Mon Nov 19 02:44:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16193         * compile.c (iseq_compile_each): alias and undef accept dsyms as well
16194           as literals.  [ruby-dev:32308]
16196 Mon Nov 19 02:31:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16198         * eval_method.ci (rb_add_method): no redefinition warning for undef.
16200 Mon Nov 19 01:53:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16202         * parse.y (parser_read_escape): disallow control and meta modifiers
16203           for non-ASCII characters.  [ruby-core:13685]
16205 Sun Nov 18 20:47:41 2007  Tanaka Akira  <akr@fsij.org>
16207         * marshal.c (mark_dump_arg): it may be called after dump_ensure.
16209 Sun Nov 18 18:27:47 2007  Tanaka Akira  <akr@fsij.org>
16211         * time.c (time_minus): fix Time.at(2**60+1) - Time.at(2**60).
16213 Sun Nov 18 17:28:49 2007  Tanaka Akira  <akr@fsij.org>
16215         * time.c (time_arg): show actual year in 2-3 digits year warning.
16216           (time_mdump): show actual year in "year too big to marshal" error.
16218 Sun Nov 18 14:03:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16220         * eval_method.ci (rb_alias): do not call hook functions until
16221           initialization finishes.  [ruby-talk:279538]
16223 Sun Nov 18 09:09:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16225         * lib/mkmf.rb (String#tr_cpp): make preprocessor identifiers.
16227 Sun Nov 18 05:19:46 2007  Tanaka Akira  <akr@fsij.org>
16229         * lib/mkmf.rb (have_struct_member): define HAVE_type_member.
16231 Sat Nov 17 23:51:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
16233         * ext/win32ole/win32ole.c (ole_invoke): bug fix. [ruby-talk:279100]
16235 Sat Nov 17 23:21:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16237         * parse.y (parser_yylex): should clear parser->tokp as well.
16238           [ruby-dev:32250]
16240         * parse.y: remove NEED_ASSOC that break test_parser_events.
16242         * parse.y (parser_yylex): should not decrement line numbers at the
16243           end of file.
16245         * file.c (rb_find_file_ext): search .rb files first through in the
16246           loadpath.
16248 Fri Nov 16 23:31:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16250         * bignum.c (rb_big_odd_p): new method added.  a patch from Tadashi
16251           Saito <shiba AT mail2.accsnet.ne.jp>.  [ruby-dev:32305]
16253         * bignum.c (rb_big_even_p): ditto.
16255 Fri Nov 16 17:41:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16257         * ext/iconv/iconv.c (Document-class): moved the simplest example to
16258           the top.
16260         * ext/iconv/iconv.c (iconv_s_iconv): Document-method: needs class
16261           prefix for class method.  [ruby-core:13542]
16263         * ext/iconv/iconv.c (iconv_iconv): also instance method needs to be
16264           qualified.
16266 Fri Nov 16 16:26:57 2007  Shugo Maeda  <shugo@ruby-lang.org>
16268         * include/ruby/ruby.h: added some declarations for event hooks.
16270         * lib/profile.rb: set VM::InstructionSequence.compile_option.
16272 Fri Nov 16 11:16:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16274         * lib/yaml/rubytypes.rb (String#is_binary_data?): use Integer#fdiv.
16276 Fri Nov 16 03:36:01 2007  why the lucky stiff  <why@ruby-lang.org>
16278         * ext/syck/rubyext.c: Node#value defined twice.
16280         * lib/yaml/: several method redefinitions causing warnings.
16282 Fri Nov 16 03:01:00 2007  why the lucky stiff  <why@ruby-lang.org>
16284         * lib/yaml/types.rb: Likewise, pass self to YAML::quick_emit.
16286 Fri Nov 16 02:51:59 2007  why the lucky stiff  <why@ruby-lang.org>
16288         * lib/yaml.rb (quick_emit): use combination of object_id and hash to
16289           identify repeated object references, since GC will reuse memory of
16290           objects during output of YAML. [ruby-Bugs-8548] [ruby-Bugs-3698]
16292 Thu Nov 15 19:49:03 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16294         * ext/curses/extconf.rb: check macro if cannot find func.
16295           [ruby-list:44224]
16297 Thu Nov 15 18:04:06 2007  Tanaka Akira  <akr@fsij.org>
16299         * tool/compile_prelude.rb: fix TMP_RUBY_PREFIX for relative load path
16300           environment.
16302 Thu Nov 15 17:28:21 2007  Tanaka Akira  <akr@fsij.org>
16304         * tool/compile_prelude.rb: absolute path may not start with a slash.
16305           pointed by usa.
16307 Thu Nov 15 17:07:54 2007  Tanaka Akira  <akr@fsij.org>
16309         * tool/compile_prelude.rb: fix first substitution.
16310           use constant for prefix.
16311           pointed by Richard Kilmer.
16313 Thu Nov 15 14:29:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16315         * common.mk (prereq): added auto generated sources.  [ruby-dev:32280]
16317 Thu Nov 15 12:31:13 2007  Tanaka Akira  <akr@fsij.org>
16319         * tool/compile_prelude.rb: use constant for prefix.
16321 Thu Nov 15 12:24:39 2007  Tanaka Akira  <akr@fsij.org>
16323         * tool/compile_prelude.rb: use simple template system for source
16324           code generation.
16326 Thu Nov 15 12:19:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16328         * lib/cgi/session.rb (CGI::Session::FileStore::restore): use
16329           lockfile for exclusive locks.  a patch from <tommy AT tmtm.org>.
16330           [ruby-dev:32296]
16332 Thu Nov 15 12:14:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16334         * tool/compile_prelude.rb (c_esc): need to escape closing brace.
16336 Thu Nov 15 11:52:16 2007  Tanaka Akira  <akr@fsij.org>
16338         * tool/compile_prelude.rb: adjust RbConfig::CONFIG paths relative
16339           to the installation path.
16341 Thu Nov 15 11:25:20 2007  Tanaka Akira  <akr@fsij.org>
16343         * ruby.c (usage): fix typo on --disable-gems option.
16344           pointed by Richard Kilmer.
16346 Wed Nov 14 16:16:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16348         * test/net/http/test_https_proxy.rb
16349           (HTTPSProxyTest::test_https_proxy_authentication): initialize
16350           local variable 't' first.  [ruby-dev:32253]
16352 Wed Nov 14 15:39:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16354         * test/socket/test_socket.rb: update not to use 1.8 assignment to
16355           external local variable in the block parameters.  [ruby-dev:32251]
16357         * test/strscan/test_stringscanner.rb: avoid $KCODE, and use
16358           String#force_encoding().  [ruby-dev:32251]
16360 Wed Nov 14 14:04:42 2007  Tanaka Akira  <akr@fsij.org>
16362         * common.mk, Makefile.in: rename prelude.c to miniprelude.c.
16363           rename ext_prelude.c to prelude.c
16365         * win32/Makefile.sub: ditto.
16367         * bcc32/Makefile.sub: ditto.
16369 Wed Nov 14 07:09:48 2007  Koichi Sasada  <ko1@atdot.net>
16371         * blockinlining.c, compile.c, compile.h, debug.c, debug.h,
16372           id.c, insnhelper.h, insns.def, thread.c, thread_pthread.ci,
16373           thread_pthread.h, thread_win32.ci, thread_win32.h, vm.h,
16374           vm_dump.c, vm_evalbody.ci, vm_opts.h: fix comments and
16375           copyright year.
16377 Wed Nov 14 07:07:51 2007  Koichi Sasada  <ko1@atdot.net>
16379         * tool/makedocs.rb, template/insnstbl.html: removed.
16381 Wed Nov 14 02:50:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16383         * common.mk (parse.c): dependency also needs vpath.
16385         * common.mk (node_name.inc, prelude.c): VPATH in nmake does not
16386           work for targets of explicit rules.
16388 Wed Nov 14 02:11:38 2007  Tanaka Akira  <akr@fsij.org>
16390         * missing/isinf.c (isinf): don't define if the macro is defined.
16392         * configure.in: no need to set ac_cv_func_isinf=yes on non-gcc
16393           solaris.
16395 Wed Nov 14 01:34:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16397         * numeric.c (round): fallback definition.
16399         * numeric.c (flo_divmod, flo_round): use round() always.
16400           [ruby-dev:32269]
16402 Wed Nov 14 00:33:49 2007  Koichi Sasada  <ko1@atdot.net>
16404         * include/ruby/ruby.h: introduce 2 macros:
16405           RFLOAT_VALUE(v), DOUBLE2NUM(dbl).
16406           Rename RFloat#value -> RFloat#double_value.
16407           Do not touch RFloat#double_value directly.
16409         * bignum.c, insns.def, marshal.c, math.c, numeric.c, object.c,
16410           pack.c, parse.y, process.c, random.c, sprintf.c, string.c,
16411           time.c: apply above changes.
16413         * ext/dl/mkcallback.rb, ext/json/ext/generator/generator.c:
16414           ditto.
16416 Wed Nov 14 00:15:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16418         * tool/ytab.sed: get rid of GNU sed feature.  a patch from Laurent
16419           Sansonetti <laurent.sansonetti AT gmail.com> in [ruby-core:13470].
16421 Tue Nov 13 21:41:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16423         * common.mk (parse.c), ext/ripper/depend (ripper.c): process after
16424           bison with sed.  [ruby-dev:32204]
16426         * ruby.c (proc_options): use yydebug in cmdline_options.
16428         * ruby.c (process_options): set yydebug flag of parser.
16430         * parse.y (yydebug): moved into struct parser_params.
16432         * parse.y (rb_parser_get_yydebug, rb_parser_set_yydebug): parser
16433           generic methods.
16435         * */Makefile.sub (parse.c): moved to common.mk.
16437         * tool/ytab.sed: comment out yydebug definition, and substitute
16438           yyerror with parser_yyerror.
16440 Tue Nov 13 16:33:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16442         * numeric.c (flodivmod): work around for infinity.
16444         * numeric.c (flo_divmod): work around for platforms have no round().
16445           [ruby-dev:32247]
16447 Tue Nov 13 15:26:33 2007  Tanaka Akira  <akr@fsij.org>
16449         * lex.c.blt: moved from lex.c.
16451         * lex.c.src: copied from keywords.  This is the source of lex.c.blt.
16453         * Makefile.in (lex.c): use lex.c.blt if keywords is same as lex.c.src.
16455         * win32/Makefile.sub (lex.c): re-introduce copy rule.
16457         * bcc32/Makefile.sub (lex.c): ditto.
16459         * wince/Makefile.sub (lex.c): ditto.
16461 Tue Nov 13 15:21:52 2007  Koichi Sasada  <ko1@atdot.net>
16463         * compile.c (iseq_specialized_instruction): check argc.
16465 Tue Nov 13 14:44:32 2007  why the lucky stiff  <why@ruby-lang.org>
16467         * test/yaml/test_yaml.rb: fixed the failing YAML Struct test
16468           at ko1's request.
16470 Tue Nov 13 02:57:04 2007  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
16472         * numeric.c (flo_divmod): round to the nearest integer.
16473           [ ruby-Bugs-14540 ]
16475 Tue Nov 13 00:36:16 2007  Shugo Maeda  <shugo@ruby-lang.org>
16477         * test/ruby/test_settracefunc.rb: fixed tests for set_trace_func.
16479 Mon Nov 12 19:47:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16481         * thread.c (call_trace_proc): should return value.
16483 Mon Nov 12 19:45:18 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16485         * {bcc,win}32/Makefile.sub (miniruby): use $(COMMONOBJS) and $(DMYEXT)
16486           instead of $(LIBRUBY_A).
16488 Mon Nov 12 18:32:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16490         * {bcc,win}32/Makefile.sub (MINIOBJS): added prelude.$(OBJEXT).
16492 Mon Nov 12 17:13:23 2007  Tanaka Akira  <akr@fsij.org>
16494         * Makefile.in, common.mk: add prelude.o to MINIOBJS.
16496 Mon Nov 12 16:52:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16498         * lib/mkmf.rb (create_makefile): rdoc about srcprefix.  a patch from
16499           Daniel Berger <djberg96 AT gmail.com> in [ruby-core:13378].
16501 Mon Nov 12 16:48:09 2007  Tanaka Akira  <akr@fsij.org>
16503         * Makefile.in, common.mk: add ext_prelude.o to OBJS.
16505 Mon Nov 12 13:57:39 2007  Tanaka Akira  <akr@fsij.org>
16507         * configure.in (MINIDLNOBJS): removed.
16508           (MINIOBJS): set to dln.o if dmydln.o is not used.
16510         * Makefile.in (miniruby): use MINIOBJS instead of MINIDLNOBJS.
16512 Mon Nov 12 13:53:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16514         * misc/ruby-mode.el (ruby-parse-partial): handle stringified
16515           symbols properly using ruby-forward-string.
16517 Mon Nov 12 12:17:59 2007  Tanaka Akira  <akr@fsij.org>
16519         * configure.in (MINIDLNOBJS): defined.
16521         * Makefile.in (miniruby): use MINIDLNOBJS and COMMONOBJS instead of
16522           MINIOBJS and OBJS to avoid linking both dmydln.o and dln.o.
16524 Sun Nov 11 20:32:45 2007  Tanaka Akira  <akr@fsij.org>
16526         * {win32,wince,bcc32}/Makefile.sub: delete lex.c rule.
16528 Sun Nov 11 19:40:52 2007  Tanaka Akira  <akr@fsij.org>
16530         * Makefile.in (lex.c): simplified.
16532 Sun Nov 11 18:31:48 2007  Tanaka Akira  <akr@fsij.org>
16534         * Makefile.in (lex.c): touch lex.c if gperf failed but lex.c exists.
16535           Although this may cause non-updated lex.c,
16536           svn co may generate keywords newer than lex.c especially on
16537           a file system which can record fractional mtime such as XFS.
16539 Sun Nov 11 17:32:46 2007  Shugo Maeda  <shugo@ruby-lang.org>
16541         * insnhelper.ci (vm_call_method): pass mn->nd_clss to
16542           vm_call_cfunc() instead of klass.
16544         * vm.c (rb_thread_method_id_and_klass): traverse parent_iseq.
16546         * thread.c (call_trace_proc): use rb_thread_method_id_and_klass().
16548 Sun Nov 11 16:54:25 2007  Tanaka Akira  <akr@fsij.org>
16550         * lex.c: renamed from lex.c.blt.
16552         * Makefile.in (lex.c): use find command to check mtime.
16554 Sun Nov 11 05:34:13 2007  Eric Hodel  <drbrain@segment7.net>
16556         * bin/gem: Add forgotten gem command.
16558 Sat Nov 10 23:50:31 2007  Tanaka Akira  <akr@fsij.org>
16560         * string.c (tr_trans): cast to unsigned char after dereference
16561           a pointer to a char to avoid SEGV with "\377".tr("a", "b").
16562           on FreeBSD/amd64.
16564 Sat Nov 10 23:08:53 2007  Tanaka Akira  <akr@fsij.org>
16566         * configure.in, common.mk, Makefile.in: don't generate
16567           libminiruby-static.a.
16569 Sat Nov 10 19:46:54 2007  Tanaka Akira  <akr@fsij.org>
16571         * configure.in, common.mk, Makefile.in: generate libminiruby-static.a
16572           which contains prelude.o for miniruby.
16574 Sat Nov 10 18:10:07 2007  Tanaka Akira  <akr@fsij.org>
16576         * gem_prelude.rb: new file for gem libraries.  currently empty.
16578         * common.mk: generate ext_prelude.c by prelude.rb and gem_prelude.rb.
16579           ruby (not miniruby) is linked with ext_prelude.o instead of
16580           prelude.o.
16582         * inits.c (rb_call_inits): don't call Init_prelude.
16584         * ruby.c: support --disable-gems option.
16585           (ruby_init_gems): new function to define Gem::Enable and
16586           invoke Init_prelude.
16587           (process_options): call ruby_init_gems just after
16588           ruby_init_loadpath.
16590         * tool/compile_prelude.rb: support multiple files.
16592 Sat Nov 10 17:27:55 2007  Shugo Maeda  <shugo@ruby-lang.org>
16594         * thread.c (call_trace_proc): don't call ID2SYM() for ID_ALLOCATOR
16595           to avoid SEGV.
16597 Sat Nov 10 16:37:07 2007  Eric Hodel  <drbrain@segment7.net>
16599         * lib/rubygems: Import RubyGems revision 1493.
16601         * lib/rubygems.rb: ditto.
16603         * lib/ubygems.rb: ditto.
16605         * lib/rbconfig/datadir.rb: ditto.
16607         * test/rubygems: ditto.
16609 Sat Nov 10 16:34:21 2007  Eric Hodel  <drbrain@segment7.net>
16611         * lib/soap/property.rb: Don't override Enumerable#inject for 1.9.
16613 Sat Nov 10 14:43:30 2007  David Flanagan  <davidflanagan@ruby-lang.org>
16615         * parse.y: use ASCII encoding for string literals that are
16616           7-bit clean, fixing regression from my previous patch
16618 Sat Nov 10 13:18:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16620         * {bcc32,win32}/Makefile.sub: vendor_ruby support.
16622 Fri Nov  9 23:33:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16624         * parse.y (parser_nextc): added single line read forward buffer.
16626         * parse.y (parser_yylex): adjust line number for fluent interface.
16628 Fri Nov  9 22:04:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16630         * vm.h (FRAME_MAGIC_MASK_BITS): bits of FRAME_MAGIC_MASK.
16632         * insnhelper.ci (vm_call_cfunc, vm_cfunc_flags): use shift operations.
16634 Fri Nov  9 21:46:28 2007  Koichi Sasada  <ko1@atdot.net>
16636         * eval.c (eval): should be volatile value for GC.
16638 Fri Nov  9 17:48:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16640         * ruby.c (locale_encoding): guesstimate encoding from environment
16641           variables.  [ruby-core:13315]
16643         * ruby.c (process_options): set primary encoding from environment.
16645 Fri Nov  9 16:51:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16647         * io.c (rb_io_each_byte): should update rbuf_off and rbuf_len for
16648           each iteration.  [ruby-dev:31659][ruby-dev:32192]
16650         * variable.c (rb_cvar_set): cvar assignment obey same rule to cvar
16651           reference.  [ruby-dev:32192]
16653 Fri Nov  9 15:52:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16655         * encoding.c (enc_check_encoding, rb_set_primary_encoding): ENCODING
16656           is no longer in FL_USERS flags.
16658 Fri Nov  9 15:20:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16660         * string.c (rb_str_squeeze_bang): initialize squeezing table if no
16661           arguments given.
16663 Fri Nov  9 13:57:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16665         * enum.c (each_with_index_i): use rb_yield_values() for
16666           compatibility with Enumerator#with_index().  a patch from Yusuke
16667           ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32195]
16669 Fri Nov  9 13:45:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16671         * test/ruby/test_iterator.rb (TestIterator::IterTest::each):
16672           #each_pair is now alias to #each.  [ruby-dev:32192]
16674         * test/ruby/test_iterator.rb (TestIterator::test_assoc_yield):
16675           ditto
16677 Fri Nov  9 12:56:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16679         * eval_load.c (loaded_feature_path): check with type of given feature.
16681 Fri Nov  9 12:43:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16683         * test/ruby/test_basicinstructions.rb: updated for new class
16684           behavior.  [ruby-dev:32192]
16686         * encoding.c (enc_name): Encoding should not rely on ENCODING in
16687           the FL_USERS flags.
16689         * encoding.c (rb_enc_from_encoding): do not call rb_enc_associate
16690           for encoding itself.
16692         * encoding.c (enc_register_at): ditto.
16694         * marshal.c (r_ivar): do not set real instance variable for
16695           encoding data associated.
16697 Fri Nov  9 10:43:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16699         * eval.c (send_internal): use self in the previous frame to check for
16700           protected methods.  [ruby-core:13254]
16702         * insnhelper.ci (vm_call_method): send! method has gone.
16704 Fri Nov  9 10:38:13 2007  Koichi Sasada  <ko1@atdot.net>
16706         * marshal.c (w_object): should be SPECIAL_CONST_P() instead of
16707           IMMEDIATE_P().
16709 Fri Nov  9 10:29:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16711         * eval.c (rb_invoke_method): check if invoked in function style.
16712           [ruby-core:13245]
16714         * insnhelper.ci (vm_call_cfunc, vm_cfunc_flags): stores and returns VM
16715           calling flags.
16717         * vm.c (rb_vm_cfunc_funcall_p): returns if the current method is
16718           invoked in function style.
16720 Fri Nov  9 10:10:21 2007  Koichi Sasada  <ko1@atdot.net>
16722         * cont.c: add rb_context_t#type.
16724 Fri Nov  9 10:05:54 2007  Koichi Sasada  <ko1@atdot.net>
16726         * ruby.c (set_arg0): fix breaking environ bugs.
16728 Fri Nov  9 07:26:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16730         * random.c: update MT URL.[ruby-core:13305].
16732 Thu Nov  8 17:09:55 2007  David Flanagan  <davidflanagan@ruby-lang.org>
16734         * object.c: improve docs for Object.tap
16736         * ChangeLog: fix bogus dates on my previous entries
16738 Thu Nov  8 15:13:56 2007 David Flanagan <davidflanagan@ruby-lang.org>
16740         * parse.y: fix segfault with \x escapes in regexps
16741           delete unused #if 0 code regions from previous patch
16743 Thu Nov  8 12:12:10 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16745         * parse.y (parser_read_escape): remove C99/gcc-ism.
16747 Thu Nov  8 07:54:22 2007 David Flanagan <davidflanagan@ruby-lang.org>
16749         * parse.y: patch, based on Nobu's, work to support \u escapes
16750                    also modifications for better coderange detection
16752         * test/ruby/test_unicode_escapes.rb: test cases
16754         * test/ruby/test_mixed_unicode_escapes.rb: mixed encoding test cases
16756 Thu Nov  8 07:14:37 2007 David Flanagan <davidflanagan@ruby-lang.org>
16758         * parse.y (rb_intern3): commented out broken code that prevented
16759           correct interning of multi-byte symbols.  Without this patch
16760           :x==:x is false when x is a multi-byte character.
16762 Thu Nov  8 07:04:31 2007 David Flanagan <davidflanagan@ruby-lang.org>
16764         * string.c (tr_setup_table, tr_trans): fix test failures
16765           in test/ruby/test_string.rb
16767 Wed Nov  7 15:07:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16769         * enum.c (enum_each_with_index): make different arrays at each
16770           iteration.  [ruby-dev:32181]
16772 Wed Nov  7 05:17:24 2007  David Flanagan <davidflanagan@ruby-lang.org>
16774         * eval.c: fix typo in invoke_method documentation
16776 Wed Nov  7 03:52:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16778         * array.c (rb_ary_product): core dumped with non array arguments.
16779           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32180]
16781 Wed Nov  7 03:32:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16783         * lib/rexml/encodings/SHIFT-JIS.rb (REXML::Encoding): place -x for
16784           nkf conversion.  a patch from <moonwolf AT moonwolf.com>.
16785           [ruby-dev:32183]
16787 Wed Nov  7 02:59:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16789         * array.c (rb_ary_each_index): should return meaningful value.
16791 Tue Nov  6 16:37:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16793         * eval_load.c (loaded_feature_path): need to expand relative paths.
16795         * eval_load.c (rb_feature_p): check if the feature is loading with
16796           load path.  [ruby-dev:31932]
16798         * eval_load.c (load_lock): check the result of barrier waiting.
16800         * thread.c (rb_barrier_wait): check if owned by the current thread.
16802         * thread.c (rb_barrier_release): ditto.
16804 Mon Nov  5 08:01:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16806         * eval.c (Init_eval): move #send to Kernel module from BasicObject.
16808 Mon Nov  5 05:17:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16810         * lib/optparse.rb (OptionParser::Switch::summarize): fix for long form
16811           option with very long argument.  a patch from Kobayashi Noritada
16812           <nori1 AT dolphin.c.u-tokyo.ac.jp> in [ruby-list:44179].
16814 Mon Nov  5 01:20:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16816         * parse.y (call_args): remove "parenthesize argument(s) for future
16817           version" warning.  when I added this warning, I had a plan to
16818           reimplement the parser that is simpler than the current one.
16819           since we abandoned the plan, warning no longer required.
16821 Mon Nov  5 01:02:56 2007  Minero Aoki  <aamine@loveruby.net>
16823         * lib/net/http.rb (HTTPHeader#initialize): provide default
16824           User-Agent to fix 500 error on some corrupted HTTP servers.
16825           [ruby-core:13135]
16827 Mon Nov  5 00:32:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16829         * eval.c (rb_f_send): allow send/__send__ to call methods of all
16830           visibility again.  we no longer provide __send, __send!.
16832         * eval.c (rb_invoke_method): new method to honor private
16833           visibility.  if it's invoked in a function call style, it calls
16834           private methods as well (previous 1.9 send behavior).
16836 Mon Nov  5 00:24:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16838         * win32/Makefile.sub: vendor_ruby support.
16840         * configure.in (RUBY_LIB): duplicated.
16842 Mon Nov  5 00:01:33 2007  Tanaka Akira  <akr@fsij.org>
16844         * re.c (rb_reg_quote): quote \v as well.
16846 Sun Nov  4 23:51:59 2007  Tanaka Akira  <akr@fsij.org>
16848         * re.c (rb_reg_initialize_m): use StringValuePtr instead of
16849           StringValueCStr because \0 exists when Regexp.new("\0").
16851 Sun Nov  4 08:11:19 2007  Tanaka Akira  <akr@fsij.org>
16853         * gc.c (count_objects): count TOTAL.
16855 Sun Nov  4 03:58:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16857         * string.c (tr_setup_table): use C array for characters that fit
16858           in a byte to gain performance.
16860         * string.c (rb_str_delete_bang): ditto.
16862         * string.c (rb_str_squeeze_bang): ditto.
16864         * string.c (rb_str_count): ditto.
16866         * string.c (tr_trans): ditto.
16868 Sun Nov  4 00:06:40 2007  Tanaka Akira  <akr@fsij.org>
16870         * gc.c (count_objects): ObjectSpace.count_objects implemented.
16871           [ruby-core:12301]
16873 Sat Nov  3 22:49:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16875         * hash.c (rb_hash_each_pair): make Hash#each to be alias to
16876           Hash#each_pair for compatibility and clarity.
16878         * hash.c (env_each_pair): ditto.
16880 Sat Nov  3 22:41:05 2007  Tanaka Akira  <akr@fsij.org>
16882         * configure.in: --with-vendor-hdrdir implemented.
16884         * lib/mkmf.rb: check --vendor argument.
16886         * README.EXT: explain --vendor option for extconf.rb
16888         * README.EXT.ja: ditto.
16890 Sat Nov  3 20:30:48 2007  Tanaka Akira  <akr@fsij.org>
16892         * configure.in: --with-vendordir implemented.
16894         * mkconfig.rb: add config to vendorlibdir and vendorarchdir.
16896         * instruby.rb: make vendor library directories.
16898         * ruby.c: insert vendor library directories into load path.
16900 Fri Nov  2 20:55:49 2007  Kouhei Sutou  <kou@cozmixng.org>
16902         * lib/rss/content.rb, lib/rss/content/, lib/rss/maker/content.rb,
16903           test/rss/test_content.rb, test/rss/test_maker_content.rb,
16904           test/rss/rss-testcase.rb (RSS::TestCase): supported
16905           content:encoded with RSS 2.0.
16906           Suggested by Sam Lown. Thanks.
16908 Fri Nov  2 20:47:04 2007  Kouhei Sutou  <kou@cozmixng.org>
16910         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.0 -> 0.2.1.
16912 Thu Nov  1 21:56:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16914         * error.c (Init_Exception): make NameError to be subclass of
16915           StandardError again.
16917         * error.c (Init_Exception): make SecurityError to be subclass of
16918           Exception, since it's too important to be handled implicitly.
16920 Thu Nov  1 14:51:39 2007 David Flanagan <davidflanagan@ruby-lang.org>
16921         * enum.c (take_while_i, drop_while_i) add RTEST to handle nil return
16923 Thu Nov  1 02:12:50 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16925         * common.mk (prereq): update the path of prelude.c.
16927         * common.mk (prelude.c): rollback a part of r13675, because it is not
16928           documented and causes build error.
16930 Thu Nov  1 01:52:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16932         * enum.c (enum_drop): fix typo.
16934 Thu Nov  1 01:51:01 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16936         * vm_core.h (ruby_current_thread): RUBY_EXTERN'ed for probeprofiler.
16938 Thu Nov  1 00:46:30 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16940         * win32/configure.bat, setup.mak: now can recognize OS even if
16941           the ``--target'' option of configure is omitted.
16943         * win32/README.win32: update the descriptions about compiler.
16945 Wed Oct 31 03:13:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16947         * enum.c (enum_take_while): separate with-block form.
16949         * enum.c (drop_while_i): ditto.
16951         * enum.c (enum_butfirst): abandon butfirst method.  reverted.
16953 Tue Oct 30 10:03:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16955         * enum.c (enum_butfirst): add a new method to iterates over
16956           elements but first n.  RDoc need to be updated.
16958         * enumerator.c (Init_Enumerator): remove unnecessary symbol
16959           initialization.
16961 Mon Oct 29 18:42:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16963         * parse.y (bvar): block-local variable can shadow outer variable.
16964           [ruby-core:13036]
16966 Mon Oct 29 17:58:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16968         * string.c (rb_str_substr): performance improvement.  [ruby-dev:31806]
16970 Mon Oct 29 17:20:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16972         * encoding.c (rb_enc_replicate): new function to replicate encoding.
16974         * encoding.c (enc_based_encoding): Encoding#base_encoding returns
16975           based encoding of replica.
16977 Mon Oct 29 17:18:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16979         * encoding.c (rb_enc_compatible): ASCII encoding is compatible with
16980           ASCII-compatible encoding, even for non-string objects.
16982 Sun Oct 28 21:50:02 2007  Tanaka Akira  <akr@fsij.org>
16984         * lib/open-uri.rb: :redirect option implemented to disable redirects.
16985           (OpenURI::HTTPRedirect): new exception class for redirection.
16987 Fri Oct 26 17:38:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16989         * numeric.c (int_chr): take an optional encoding parameter.
16990           [ruby-core:12816]
16992 Fri Oct 26 17:14:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16994         * numeric.c (fix_pow): returns 1.0 for 0**0.0.
16996         * numeric.c (fix_pow): returns infinity for 0**-1.  [ruby-dev:32084]
16998 Fri Oct 26 15:00:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17000         * misc/ruby-style.el (ruby-style-{case,label}-indent): adjust for
17001           labels inside switch block.
17003 Fri Oct 26 05:48:57 2007  David Flanagan <davidflanagan@ruby-lang.org>
17004         * array.c: raise IndexError for negative length in rb_ary_fill
17006 Wed Oct 25 07:12:03 2007  James Edward Gray II  <jeg2@ruby-lang.org>
17008         * lib/net/telnet.rb (Net::Telnet#login): Allowing "passphrase" in
17009           addition to "password" for Telnet login prompts. [ruby-Bugs-10746]
17011 Wed Oct 25 06:34:11 2007  James Edward Gray II  <jeg2@ruby-lang.org>
17013         * lib/net/telnet.rb (Net::Telnet#login): Making the password prompt
17014           pattern case insensitive. [ruby-Bugs-10746]
17016 Fri Oct 26 04:21:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17018         * lib/net/pop.rb (Net::POP3::do_start): type fixed.  a patch from
17019           Dan Zwell <dzwell AT zwell.net> in [ruby-core:12941].
17021 Fri Oct 26 01:48:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17023         * array.c (rb_ary_assoc): check and convert inner arrays (assocs)
17024           using #to_ary.
17026         * hash.c (rb_hash_s_create): check and convert argument hash
17027           using #to_hash.
17029         * hash.c (rb_hash_s_create): Hash#[] now takes assocs as source of
17030           hash conversion.
17032 Thu Oct 25 16:46:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17034         * parse.y (parser_yylex): dot at the head of the line denote line
17035           continuation from previous one to support fluent interface.
17036           [experimental]
17038         * misc/ruby-mode.el (ruby-calculate-indent): support fluent dot.
17040 Thu Oct 25 14:19:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17042         * io.c (rb_io_tell, rb_io_seek): check errno too.  [ruby-dev:32093]
17044 Thu Oct 25 13:59:53 2007 David Flanagan <davidflanagan@ruby-lang.org>
17046         * parse.y (parser_tokspace): increment tokidx
17047           fixes test failure at [test/ruby/test_stringchar.rb:72]
17049 Thu Oct 25 09:49:49 2007  akira yamada  <akira@ruby-lang.org>
17051         * lib/uri.rb, lib/uri/ldaps.rb: added LDAPS
17052           scheme. [ruby-dev:31896]
17054 Wed Oct 25 06:23:14 2007  James Edward Gray II  <jeg2@ruby-lang.org>
17056         * lib/xmlrpc/parser.rb (XMLRPC::Convert::dateTime): Fixing a bug that
17057           caused time zone conversion to fail for some ISO 8601 date formats.
17058           [ruby-Bugs-12677]
17060 Wed Oct 25 04:59:28 2007  James Edward Gray II  <jeg2@ruby-lang.org>
17062         * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): Explicitly start
17063           the HTTP connection to support keepalive requests. [ruby-Bugs-9353]
17065 Wed Oct 25 04:46:53 2007  James Edward Gray II  <jeg2@ruby-lang.org>
17067         * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): Improving the error
17068           message for Content-Type check failures. [ruby-core:12163]
17070 Wed Oct 25 03:45:08 2007  James Edward Gray II  <jeg2@ruby-lang.org>
17072         * lib/xmlrpc/utils.rb (XMLRPC::ParseContentType#parse_content_type):
17073           Making Content-Type checks case insensitive. [ruby-Bugs-3367]
17075 Wed Oct 24 17:09:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17077         * parse.y (parser_tokspace): make space in token buffer.
17079         * parse.y (parser_yylex): fix encoding of single character literal.
17081 Tue Oct 23 13:44:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17083         * parse.y (call_args2): nd_head of NODE_BLOCK_PASS should be a list.
17084           [ruby-core:12850]
17086 Tue Oct 23 10:42:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17088         * ruby.c (process_options): encoding set by command line option takes
17089           priority over the encoding in the source, as the primary encoding.
17091 Mon Oct 22 19:24:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17093         * ruby.c (proc_options): allow space after -E (encoding) option.
17095 Mon Oct 22 11:03:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17097         * encoding.c (enc_check_encoding): returns index now.
17099         * encoding.c (rb_enc_compatible): check if two objects have compatible
17100           encodings.
17102         * encoding.c (enc_compatible_p): added Encoding.compatible?.
17104         * include/ruby/encoding.h (rb_enc_compatible): prototype.
17106 Sun Oct 21 18:29:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17108         * encoding.c (rb_enc_default, rb_enc_primary): return pointers to
17109           rb_encoding of default and primary respectively.  [ruby-core:12795]
17111         * encoding.c (set_primary_encoding): removed primary_encoding setter.
17113 Sat Oct 20 13:17:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17115         * enum.c (enum_cycle): hide temporary array from ObjectSpace.
17116           [ruby-core:12762]
17118 Sat Oct 20 11:49:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17120         * file.c (rb_get_path): returns frozen string.
17122         * file.c (rb_file_s_chown, rb_file_s_lchown): use uid_t and gid_t.
17124 Fri Oct 19 20:08:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17126         * encoding.c (rb_id_encoding): returns ID "encoding".
17128         * marshal.c (w_encoding): dump encoding name.
17130         * marshal.c (r_ivar): load encoding.
17132 Fri Oct 19 16:41:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17134         * parse.y (parser_regx_options, reg_compile_gen): relaxened encoding
17135           matching rule.
17137         * re.c (rb_reg_initialize): always set encoding of Regexp.
17139         * re.c (rb_reg_initialize_str): fix encoding for non 7bit-clean
17140           strings.
17142         * re.c (rb_reg_initialize_m): use ascii encoding for 'n' option.
17144 Fri Oct 19 11:09:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17146         * ruby.c (process_options): set primary encoding from the parser
17147           always.  [ruby-core:12758]
17149         * ruby.c (load_file): should not discard the parser parameter.
17151 Fri Oct 19 10:55:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17153         * range.c (range_last): removed unused variables.
17155 Thu Oct 18 17:08:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17157         * enum.c (enum_find_index): update RDoc.  a patch from David Flanagan
17158           <david AT davidflanagan.com> in [ruby-core:12710].
17160         * enum.c (enum_take, enum_drop): ditto.
17162         * enum.c (enum_cycle): should not cause infinite loop for empty
17163           arrays.  [ruby-core:12710]
17165         * range.c (Init_Range): typo fixed.
17167 Thu Oct 18 16:39:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17169         * lib/rexml/source.rb (REXML::SourceFactory::SourceFactory): more
17170           duck typed.  better performance on JRuby.
17171           http://headius.blogspot.com/2007/10/another-performance-discovery-rexml.html
17173 Thu Oct 18 09:33:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17175         * range.c (range_first): takes first n element if argument is
17176           given.  [ruby-core:12697]
17178         * range.c (range_last): returns last n elements if argument is
17179           given.
17181         * array.c (rb_ary_subseq, rb_ary_last): export.
17183 Wed Oct 17 17:39:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17185         * ruby.c (proc_options): fixed reversed condition.  [ruby-core:12722]
17187 Wed Oct 17 13:54:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17189         * re.c (rb_reg_s_union): the last check was not complete.
17191 Wed Oct 17 11:30:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17193         * encoding.c (rb_enc_from_encoding, rb_enc_register): associate index
17194           to self.
17196         * encoding.c (enc_capable): Encoding objects are encoding capable.
17198         * re.c (rb_reg_s_union): check if encoding matching by exact encoding
17199           objects.
17201 Wed Oct 17 06:18:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17203         * encoding.c (rb_enc_alias, rb_enc_find_index): changed
17204           enc_table_alias to a name-to-index hash.
17206         * encoding.c (rb_enc_init): use upper case names for aliases to use as
17207           constant names.
17209         * encoding.c (enc_find): allow symbols.
17211         * encoding.c (Init_Encoding): define encoding constants.
17213         * st.c (strcasehash): fix wrong code range condition.
17215 Wed Oct 17 05:07:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17217         * encoding.c (rb_primary_encoding): added Encoding.primary_encoding.
17219         * parse.y (rb_parser_encoding): added.
17221         * ruby.c (proc_options): added -E and --encoding options.
17223         * ruby.c (process_options): set primary encoding from command line
17224           option if set, or source encoding.
17226         * include/ruby/encoding.h (rb_enc_from_encoding,
17227           rb_get_primary_encoding, rb_set_primary_encoding): prototypes.
17229         * include/ruby/node.h (rb_parser_encoding): prototype.
17231 Wed Oct 17 03:37:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17233         * re.c (rb_reg_desc): set encoding.
17235         * re.c (rb_reg_s_union): check encodings.
17237         * enc/utf8.c (utf8_code_to_mbclen): 0xfe and 0xff are valid Unicode to
17238           be encoded to 2bytes in UTF-8.  [ruby-core:12700]
17240 Wed Oct 17 02:50:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17242         * string.c (rb_str_ord): use encoding.
17244 Wed Oct 17 01:57:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17246         * re.c (rb_reg_initialize_m): allow binary encoding option.
17247           [ruby-dev:32083]
17249 Tue Oct 16 19:48:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17251         * re.c (rb_reg_s_union): check for encoding of original object.
17253 Tue Oct 16 18:28:51 2007  Tanaka Akira  <akr@fsij.org>
17255         * debug.c: use enum for constants for gdb if possible.
17257 Tue Oct 16 18:20:10 2007  Tanaka Akira  <akr@fsij.org>
17259         * ruby.c, debug.c: move debug enum and constants to debug.c.
17261 Tue Oct 16 18:16:15 2007  Tanaka Akira  <akr@fsij.org>
17263         * ruby.c (RUBY_ENCODING_SHIFT): added as enum.
17265         * .gdbinit (rp): show encoding and coderange for strings.
17267 Tue Oct 16 14:48:38 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17269         * parse.y (parser_regx_options): check if regexp encoding option
17270           matches to current encoding.
17272         * re.c (char_to_option, rb_char_to_option_kcode): 'n' is not kcode
17273           option now.
17275         * re.c (rb_reg_to_s, rb_reg_error_desc): copy encoding rather than
17276           append as an option.
17278         * re.c (make_regexp, rb_reg_prepare_re): use encoding of Regexp and
17279           String instead of kcode.
17281         * re.c (rb_reg_initialize): set fixed option if none is set.
17283         * re.c (rb_reg_regcomp): ditto.
17285         * re.c (rb_reg_equal): check if encodings are equal.
17287         * re.c (rb_reg_initialize_m): encoding option is obsolete.
17289         * re.c (rb_kcode, rb_get_kcode, rb_set_kcode): removed.
17291         * re.c (Init_Regexp): removed Regexp#kcode method.
17293         * ruby.c (proc_options): allow long encoding name.
17295 Tue Oct 16 14:03:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17297         * re.c (rb_reg_s_union): encoding of all regexp objects should
17298           match.  [ruby-dev:32076]
17300 Tue Oct 16 13:49:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17302         * encoding.c (enc_to_s): rename function.
17304 Tue Oct 16 13:25:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17306         * string.c (rb_str_new4): should copy encoding.  a patch from NARUSE,
17307           Yui <naruse AT airemix.com>.  [ruby-dev:32076]
17309 Tue Oct 16 01:31:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17311         * enum.c (enum_inject): RDoc update.  a patch from David Flanagan
17312           <david AT davidflanagan.com> in [ruby-core:12710].
17314 Tue Oct 16 01:25:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17316         * encoding.c (Init_Encoding): define #to_s to show encoding name
17317           in to_s representation as well as #inspect.
17319 Mon Oct 15 13:24:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17321         * numeric.c (flo_round): should be number but not rounding factor.
17322           [ruby-dev:32060]
17324 Mon Oct 15 11:45:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17326         * marshal.c (r_bytes0): refined length check.  [ruby-dev:32059]
17328 Mon Oct 15 10:24:19 2007  Tanaka Akira  <akr@fsij.org>
17330         * process.c (pst_to_s): returns a string such as "pid 10220 exit 1"
17331           instead of "256".  [ruby-dev:32053]
17332           (pst_inspect): change format
17333           "#<Process::Status: pid=10220,exited(1)>" to
17334           "#<Process::Status: pid 10220 exit 1>".
17336 Mon Oct 15 09:58:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17338         * marshal.c (r_bytes0): check if source has enough data.
17339           [ruby-dev:32054]
17341 Mon Oct 15 01:15:09 2007  Tanaka Akira  <akr@fsij.org>
17343         * ext/socket/socket.c (s_accept_nonblock): make accepted fd
17344           nonblocking.  [ruby-talk:274079]
17346 Sun Oct 14 17:31:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17348         * encoding.c (rb_obj_encoding): rdoc update.  a patch from David
17349           Flanagan <david AT davidflanagan.com>.  [ruby-core:12664]
17351         * encoding.c (enc_dump, enc_load): marshaling feature.  a patch from
17352           David Flanagan.  [ruby-core:12665]
17354         * encoding.c (Init_Encoding): undefine allocator of Encoding.
17355           [ruby-core:12665], [ruby-core:12666]
17357         * test/ruby/test_encoding.rb: tests for Encoding from David Flanagan
17358           [ruby-core:12665]
17360 Sun Oct 14 11:09:09 2007  Tanaka Akira  <akr@fsij.org>
17362         * lib/pp.rb (PP::PPMethods#pp_hash): don't sort keys because hash is
17363           ordered.
17364           (ENV.pretty_print): call pp_hash with sorted hash.
17366 Sun Oct 14 04:08:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17368         * configure.in (AC_SYS_LARGEFILE): keep results also in command
17369           options, to vail out of mismatch.  [ruby-list:44114]
17371         * mkconfig.rb, lib/mkmf.rb (configuration): add DEFS.
17373 Sun Oct 14 03:55:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17375         * win32/mkexports.rb: deal with __fastcall name decorations.
17376           [ruby-list:44111]
17378 Sun Oct 14 02:20:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17380         * encoding.c (rb_cEncoding): new Encoding class.
17382         * encoding.c (rb_to_encoding, rb_to_encoding_index): helper functions.
17384         * encoding.c (rb_obj_encoding): return Encoding object now.
17386         * gc.c (garbage_collect): mark Encoding objects.
17388         * inits.c (rb_call_inits): call Init_Encoding.
17390         * string.c (rb_str_force_encoding): accept Encoding object as well as
17391           encoding name.
17393         * include/ruby/encoding.h (rb_to_encoding_index, rb_to_encoding):
17394           prototypes.
17396 Sun Oct 14 01:03:30 2007  Tanaka Akira  <akr@fsij.org>
17398         * lib/open-uri.rb (OpenURI.open_http): fix :ssl_ca_cert option.
17400 Sat Oct 13 21:23:21 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17402         * ext/win32ole/win32ole.c (foletype_s_ole_classes,
17403           foletype_s_typelibs): refactoring.
17405         * test/win32ole/test_win32ole_type.rb: add some test.
17407         * ext/win32ole/win32ole.c (Init_win32ole): change method name
17408           WIN32OLE_TYPELIB.ole_types from WIN32OLE_TYPELIB.ole_classes.
17410         * test/win32ole/test_win32ole_typelib.rb: ditto.
17412         * test/win32ole/test_folderitem2_invokeverb.rb: check create
17413           shortcut string more strictly (This test is invoked in Japanese
17414           Windows environment).
17416 Sat Oct 13 09:11:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17418         * parse.y (set_file_encoding): case-insensitive search, a patch from
17419           David Flanagan <david AT davidflanagan.com> [ruby-core:12629]
17421 Sat Oct 13 09:02:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17423         * {bcc,win}32/mkexports.rb: explicit data.  [ruby-list:44108]
17425 Sat Oct 13 00:17:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17427         * lib/rexml/document.rb (REXML::Document::write): leaky
17428           modification trans -> transitive.  [ruby-dev:32040]
17430 Sat Oct 13 00:00:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17432         * parse.y: encoding specifier should work if the line matches
17433           /coding[:=] ?/, a la Python PEP-263, so that VIM comments like
17434           "# vim: set fileencoding=<encoding name>" should be recognized.
17436 Fri Oct 12 15:04:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17438         * parse.y (magic_comments): add "encoding" as same as "coding".
17440         * parse.y (set_file_encoding): special file encoding handling.
17442         * parse.y (parser_yylex): ditto.
17444 Fri Oct 12 12:44:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17446         * array.c (rb_ary_combination): fixed memory corruption due to too
17447           small memory allocation
17449         * array.c (rb_ary_product): accessing out of memory bounds.
17450           condition fixed.
17452 Fri Oct 12 11:22:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17454         * re.c (match_values_at): make #select to be alias to #values_at
17455           to adapt RDoc description.  [ruby-core:12588]
17457 Thu Oct 11 21:10:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17459         * include/ruby/node.h (NOEX_LOCAL): remove unused local visibility.
17461         * class.c (ins_methods_push): ditto.
17463         * class.c (rb_class_local_methods): method removed.
17465 Thu Oct 11 14:29:31 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17467         * */Makefile.sub (COMMON_MACROS): workaround for old SDK's bug.
17468           [ruby-core:12584]
17470 Thu Oct 11 06:35:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17472         * Makefile.in, */Makefile.sub (VPATH): add enc directory.
17474         * common.mk (ENCOBJS): encoding objects.
17476         * enc: directory for encodings.
17478 Thu Oct 11 00:04:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17480         * include/ruby/oniguruma.h (OnigEncodingTypeST): add OnigEncoding
17481           parameter to every function members.
17483         * include/ruby/oniguruma.h (OnigEncodingTypeST): add auxiliary
17484           data member to provide user defined data for an encoding.
17486 Wed Oct 10 23:32:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17488         * re.c (rb_reg_s_quote): no longer takes optional second argument
17489           that has never been documented.
17491 Wed Oct 10 15:39:04 2007  Tanaka Akira  <akr@fsij.org>
17493         * encoding.c (rb_enc_init): don't alias iso-8859-1 to ascii.
17495         * ascii.c (OnigEncodingASCII): change the name US-ASCII to ASCII-8BIT.
17497 Wed Oct 10 14:31:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17499         * string.c (rb_enc_str_coderange): fixed check for non-ascii.
17501 Tue Oct  9 21:35:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17503         * array.c (rb_ary_permutation, rb_ary_combination): missing type
17504           names.
17506         * array.c (rb_ary_permutation): used buffer should be t1.
17508         * array.c (rb_ary_permutation): use frozen shared hidden array.
17509           [ruby-dev:31985]
17511 Tue Oct  9 16:58:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17513         * array.c: remove to_a completely.
17515         * array.c (tmpbuf): keep DRY to clear klass of temporary objects.
17517 Tue Oct  9 16:33:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17519         * array.c (rb_ary_permutation, rb_ary_combination, rb_ary_product):
17520           hide internal buffer objects.  [ruby-dev:31982]
17522 Tue Oct  9 16:00:32 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17524         * parse.y (parser_read_escape, parser_tokadd_escape): check code range.
17525           [ruby-dev:31980]
17527 Tue Oct  9 15:40:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17529         * parse.y (STR_NEW3): check for if single byte sequence.
17531 Mon Oct  8 20:06:29 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
17533         * lib/net/imap.rb, lib/net/smtp.rb, lib/net/pop.rb: hostname should
17534           be verified against server's identity as presented in the server's
17535           certificate. [ruby-dev:31960]
17537         * ext/openssl/lib/net/telnets.rb, ext/openssl/lib/net/ftptls.rb: ditto.
17539 Sun Oct  7 22:37:47 2007  Kouhei Sutou  <kou@cozmixng.org>
17541         * test/rss/test_taxonomy.rb, test/rss/test_parser_1.0.rb,
17542           test/rss/test_image.rb, test/rss/rss-testcase.rb: ensured
17543           declaring XML namespaces.
17545 Sun Oct  7 22:00:01 2007  Tanaka Akira  <akr@fsij.org>
17547         * include/ruby/node.h: make node flags as VALUE type.
17548           enum ruby_node_flags removed.
17550         * ruby.c: define RUBY_NODE_* as const for gdb.
17552 Sun Oct  7 18:57:12 2007  Tanaka Akira  <akr@fsij.org>
17554         * include/ruby/ruby.h: enum ruby_value_flags removed.  [ruby-dev:31959]
17556         * ruby.c: define RUBY_FL_* as const VALUE for gdb.
17558 Sun Oct  7 17:50:14 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
17560         * lib/net/http.rb: remove enable_post_connection_check flag.
17562         * lib/open-uri.rb: ditto.
17564 Sun Oct  7 15:48:40 2007  Koichi Sasada  <ko1@atdot.net>
17566         * insns.def (opt_eq): fix to use rb_str_equal().
17568 Sat Oct  6 23:14:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17570         * string.c (rb_str_to_i): update RDoc since base can be any value
17571           between 2 and 36.  [ruby-talk:272879]
17573 Sat Oct  6 16:24:02 2007  Koichi Sasada  <ko1@atdot.net>
17575         * cont.c (cont_free): check Fiber or Continuation.
17577         * bootstraptest/test_knownbug.rb: remove a fixed test.
17579 Sat Oct  6 14:56:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17581         * encoding.c (rb_enc_register): returns new index or -1 if failed.
17583         * encoding.c (rb_enc_alias): check if original name is registered.
17585         * encoding.c (rb_enc_init): register in same order as kcode options in
17586           re.c.  added new aliases.
17588         * string.c (rb_str_force_encoding): check if valid encoding name.
17590 Sat Oct  6 14:32:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17592         * insns.def (opt_eq): get rid of gcc bug.
17594 Sat Oct  6 02:34:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17596         * include/ruby/defines.h: no longer provide DEFAULT_KCODE.
17598 Fri Oct  5 21:24:59 2007  Tanaka Akira  <akr@fsij.org>
17600         * re.c (rb_reg_s_union_m): Regexp.union accepts single argument which
17601           is an array of patterns.  [ruby-list:44084]
17603 Fri Oct  5 16:42:27 2007  Tanaka Akira  <akr@fsij.org>
17605         * bootstraptest/runner.rb (assert_not_match): new method.
17607 Fri Oct  5 16:15:52 2007  Akinori MUSHA  <knu@iDaemons.org>
17609         * configure.in: Turn on --enable-pthread by default for FreeBSD
17610           5.2.1-RELEASE and later, and remove pthread support for older
17611           versions which has never worked perfectly.
17613 Fri Oct  5 16:11:50 2007  Akinori MUSHA  <knu@iDaemons.org>
17615         * time.c (time_to_s): Fix documentation.  Time format changed.
17617 Fri Oct  5 04:02:39 2007  Akinori MUSHA  <knu@iDaemons.org>
17619         * lib/ipaddr.rb (in_addr, in6_addr, addr_mask): Make some minor
17620           code optimization.
17622 Fri Oct  5 03:25:51 2007  Akinori MUSHA  <knu@iDaemons.org>
17624         * lib/ipaddr.rb (<=>): Implement IPAddr#<=> and make IPAddr
17625           comparable.
17627         * lib/ipaddr.rb (succ): Implement IPAddr#succ.  You can now create
17628           a range between two IPAddr's, which (Range) object is
17629           enumerable.
17631         * lib/ipaddr.rb (to_range): A new method to create a Range object
17632           for the (network) address.
17634 Fri Oct  5 03:14:45 2007  Akinori MUSHA  <knu@iDaemons.org>
17636         * lib/ipaddr.rb (coerce_other): Support type coercion and make &,
17637           |, == and include? accept a string or an integer instead of an
17638           IPAddr object as the argument.
17640         * lib/ipaddr.rb (initialize): Give better error messages.
17642         * lib/ipaddr.rb: Improve documentation.
17644 Thu Oct  4 20:45:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17646         * process.c (Init_process): win32 has our own WNOHANG definition, so
17647           remove unnecessary #ifdef guard.
17649 Thu Oct  4 20:17:19 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17651         * array.c (rb_ary_permutation, rb_ary_product): support non C99
17652           compilers.
17654 Thu Oct  4 17:33:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17656         * re.c (kcode_setter): Perl-ish global variable `$=' no longer
17657           effective.
17659         * io.c (Init_IO): remove obsolete variables: $defout, $deferr.
17661         * re.c (Init_Regexp): remove obsolete const alias: MatchingData.
17663         * time.c (Init_Time): remove obsolete Time::times.
17665         * re.c (ignorecase_setter): change warning message.
17667         * re.c (ignorecase_getter): now gives warning.
17669         * string.c (rb_str_cmp_m): update RDoc document.
17671         * re.c (kcode_setter): restore erroneously removed setter.
17673 Thu Oct  4 16:28:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17675         * encoding.c (rb_obj_encoding): returns encoding of the given object.
17677         * parse.y (reg_compile_gen): copy encoding from source string if
17678           non-empty.
17680         * re.c (Init_Regexp): new method Regexp#encoding.
17682         * string.c (str_encoding): moved to encoding.c
17684 Thu Oct  4 15:49:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17686         * array.c (rb_ary_permutation): remove C99 dependency.
17687           [ruby-dev:31934]
17689         * array.c (rb_ary_product): ditto.
17691 Wed Oct  3 23:37:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17693         * ext/nkf/nkf.c, bin/ri, bin/irb: fixed typos in doc and comments.
17694           a patch from Eugene Ossintsev  <eugoss AT gmail.com>.
17695           [ruby-core:12375]
17697 Wed Oct  3 17:56:22 2007  Koichi Sasada  <ko1@atdot.net>
17699         * benchmark/driver.rb: enable specify label to executable.
17700           (-e "ruby1::/path/to/ruby1; ruby2::/path/to/ruby2; ...")
17702 Wed Oct  3 16:58:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17704         * parse.y (parser_str_new, parser_yylex, rb_intern3): set code-range
17705           bits.
17707         * parse.y (parser_tokadd_string): check code-range.
17709         * parse.y (parser_parse_string, parser_here_document): ditto.
17711         * parse.y (parser_set_encode): check if valid encoding.
17713 Wed Oct  3 15:43:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17715         * variable.c (rb_cvar_set): check whether class variable is
17716           defined in superclasses.  root classes have higher priority.
17717           removes lower class variable entry from IV_TBL (if it's defined
17718           in classes, not modules).
17720         * variable.c (rb_cvar_get): ditto.
17722 Wed Oct  3 10:06:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17724         * ruby.c (ruby_process_options): push frame with program name.
17725           [ruby-core:12351]
17727 Tue Oct  2 20:16:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17729         * win32/win32.c (init_env): refactoring. remove unused code.
17731 Tue Oct  2 12:30:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17733         * array.c (rb_ary_product): generalized product, now takes
17734           arbitrary number of arrays.  a patch from David Flanagan
17735           <david AT davidflanagan.com>.  [ruby-core:12346]
17737 Tue Oct  2 08:25:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17739         * array.c (rb_ary_permutation): implementation contributed from
17740           David Flanagan.  [ruby-core:12344]
17742         * array.c (rb_ary_combination): RDoc update to clarify.  a patch
17743           from David Flanagan.  [ruby-core:12344]
17745         * array.c (rb_ary_permutation): small dirty hack by Matz to avoid
17746           arrays on stack.
17748 Tue Oct  2 07:01:05 2007  Koichi Sasada  <ko1@atdot.net>
17750         * proc.c (proc_dup): proc->block.proc should be self.
17752         * bootstraptest/test_knownbug.rb, test_method.rb:
17753           move a fixed test.
17755 Mon Oct  1 16:17:44 2007  Tanaka Akira  <akr@fsij.org>
17757         * bootstraptest/test_method.rb: use assert_normal_exit to test
17758           [ruby-dev:31818].
17760 Mon Oct  1 15:57:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17762         * gc.c (id2ref): skip ICLASS.
17764 Mon Oct  1 15:29:35 2007  Tanaka Akira  <akr@fsij.org>
17766         * bootstraptest/runner.rb (assert_normal_exit): use `` instead of
17767           system.
17769 Mon Oct  1 15:17:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17771         * gc.c (id2ref): T_VALUES is less than T_BLOCK.  [ruby-dev:31911]
17773 Mon Oct  1 10:58:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17775         * ruby.c (require_libraries): use require method instead of calling
17776           rb_require directly.  [ruby-dev:31322]
17778 Mon Oct  1 10:52:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17780         * eval.c (ruby_options), ruby.c (proc_options, process_options): not
17781           call exit(2) directly.  [ruby-dev:31912]
17783         * eval.c (ruby_run_node): deal with direct exit code.
17785 Sun Sep 30 17:12:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17787         * string.c (rb_str_append): always set encoding, and coderange
17788           cache bits.
17790         * include/ruby/encoding.h (ENC_CODERANGE_SET): fixed a bug not to
17791           set cache bits.
17793 Sun Sep 30 11:52:11 2007  Tanaka Akira  <akr@fsij.org>
17795         * bootstraptest/runner.rb (pretty): don't show beginning empty line.
17797 Sun Sep 30 11:32:34 2007  Tanaka Akira  <akr@fsij.org>
17799         * numeric.c: use #ifdef for test LONG_LONG_VALUE.
17801 Sun Sep 30 04:30:55 2007  Tanaka Akira  <akr@fsij.org>
17803         * bignum.c: use SIZEOF_LONG instead of SIZEOF_ULONG which is not
17804           defined.
17806 Sun Sep 30 04:03:43 2007  Tanaka Akira  <akr@fsij.org>
17808         * re.c (Init_Regexp): test DEFAULT_KCODE in C code because
17809           KCODE_EUC, etc. are enum.
17811 Sun Sep 30 00:55:40 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17813         * variable.c (obj_ivar_each): get rid of warning.
17815 Sat Sep 29 17:45:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17817         * main.c (main): use platform-independent per-process initialization.
17818           [ruby-dev:31900]
17820         * ruby.c (ruby_sysinit): new function for per-process initialization.
17822         * include/ruby/ruby.h (RUBY_GLOBAL_SETUP): toplevel setup declaration.
17824         * include/ruby/win32.h, win32/mkexports.rb: alias NtInitialize
17825           ruby_sysinit.
17827         * win32/win32.c (rb_w32_sysinit): renamed from NtInitialize.
17829 Sat Sep 29 17:31:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17831         * array.c (rb_ary_combination): new method to give all combination
17832           of elements from an array.  [ruby-list:42671]
17834         * array.c (rb_ary_product): a new method to get all combinations
17835           of elements from two arrays.  can be extended to combinations of
17836           n-arrays, e.g. a.product(b,c,d).  anyone volunteer?
17838         * array.c (rb_ary_permutation): empty function body to calculate
17839           permutations of array elements.  need volunteer.
17841 Sat Sep 29 17:14:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17843         * marshal.c (r_leave): move proc invocation from r_entry() to
17844           avoid potential crash.
17846 Sat Sep 29 12:28:08 2007  Tanaka Akira  <akr@fsij.org>
17848         * bootstraptest/runner.rb (assert_normal_exit): new method.
17850         * bootstraptest/test_knownbug.rb: add test for Marshal.load.
17852 Sat Sep 29 10:12:20 2007  Tanaka Akira  <akr@fsij.org>
17854         * variable.c (rb_ivar_set): fix class instance variable.
17856         * object.c (rb_class_real): cl argument may be 0.
17858 Sat Sep 29 09:12:02 2007  Tanaka Akira  <akr@fsij.org>
17860         * object.c (rb_class_real): use BUILTIN_TYPE instead of TYPE.
17861           access flags directly instead of FL_TEST.
17862           they are enough because cl argument is a class.
17864 Sat Sep 29 08:57:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17866         * include/ruby/win32.h (strcasecmp): needed for type_strcasehash.
17868 Sat Sep 29 06:47:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17870         * ruby.c (struct cmdline_options): static variables packed.
17872 Sat Sep 29 05:29:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17874         * io.c (rb_io_fdopen): create IO object from fd.
17876         * parse.y (yycompile): use encoding of the source as default.
17878         * ruby.c (proc_options, load_file): ditto.
17880 Sat Sep 29 04:27:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17882         * encoding.c (rb_enc_alias): allow encodings multiple aliases.
17884         * encoding.c (rb_enc_find_index): search the encoding which has the
17885           given name and return its index if found, or -1.
17887         * st.c (type_strcasehash): case-insensitive string hash type.
17889         * string.c (rb_str_force_encoding): force encoding of self.  this name
17890           comes from [ruby-dev:31894] by Martin Duerst.  [ruby-dev:31744]
17892         * include/ruby/encoding.h (rb_enc_find_index, rb_enc_associate_index):
17893           prototyped.
17895         * include/ruby/encoding.h (rb_enc_isctype): direct interface to ctype.
17897         * include/ruby/st.h (st_init_strcasetable): prototyped.
17899 Sat Sep 29 03:53:26 2007  Koichi Sasada  <ko1@atdot.net>
17901         * cont.c: Thread local storage should be fiber local.
17903         * bootstraptest/test_knownbug.rb, test/ruby/test_fiber.rb:
17904           move a fixed test.
17906 Fri Sep 28 23:15:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17908         * insnhelper.ci (vm_call_method): allow send! to call protected
17909           methods as well.  [ruby-core:12280]
17911 Fri Sep 28 22:33:47 2007  Koichi Sasada  <ko1@atdot.net>
17913         * benchmark/bm_so_fasta.rb: added.
17915         * benchmark/bm_so_k_nucleotide.rb: added.
17917         * benchmark/bm_so_reverse_complement.rb: added.
17919         * benchmark/make_fasta_output.rb: added.
17921         * benchmark/prepare_so_k_nucleotide.rb: added.
17923         * benchmark/prepare_so_reverse_complement.rb: added.
17925 Fri Sep 28 19:14:51 2007  Koichi Sasada  <ko1@atdot.net>
17927         * benchmark/driver.rb: fix notations.
17929         * benchmark/bm_loop_whileloop.rb: ditto.
17931         * benchmark/bm_loop_whileloop2.rb: ditto.
17933         * benchmark/bm_app_uri.rb: added.
17935         * benchmark/bm_vm1_ivar_set.rb: ditto.
17937         * benchmark/bm_so_binary_trees.rb: added from Computer Language
17938           Benchmarks Game (http://shootout.alioth.debian.org/).
17940         * benchmark/bm_so_fannkuch.rb: ditto.
17942         * benchmark/bm_so_mandelbrot.rb: ditto.
17944         * benchmark/bm_so_meteor_contest.rb: ditto.
17946         * benchmark/bm_so_nbody.rb: ditto.
17948         * benchmark/bm_so_nsieve.rb: ditto.
17950         * benchmark/bm_so_nsieve_bits.rb: ditto.
17952         * benchmark/bm_so_partial_sums.rb: ditto.
17954         * benchmark/bm_so_pidigits.rb: ditto.
17956         * benchmark/bm_so_spectralnorm.rb: ditto.
17958 Fri Sep 28 16:22:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17960         * vm_core.h (rb_vm_struct): fix typo: bufferd -> buffered.
17962 Fri Sep 28 15:47:48 2007  Koichi Sasada  <ko1@atdot.net>
17964         * benchmark/driver.rb: fix to output benchmark results
17965           to file "bmlog-#{Time.now.strftime('%Y%m%d-%H%M%S')}.#{$$}".
17967         * benchmark/bm_io_file_create.rb: remove useless codes.
17969         * benchmark/bm_vm2_eval.rb: added.
17971 Fri Sep 28 15:05:24 2007  Tanaka Akira  <akr@fsij.org>
17973         * include/ruby/intern.h: export rb_ivar_foreach.
17975         * include/ruby/ruby.h: modify struct RObject and RClass for optimizing
17976           T_OBJECT space.  [ruby-dev:31853]
17977           (ROBJECT_LEN, ROBJECT_PTR)
17978           (RCLASS_IV_TBL, RCLASS_M_TBL, RCLASS_SUPER, RCLASS_IV_INDEX_TBL)
17979           (RMODULE_IV_TBL, RMODULE_M_TBL, RMODULE_SUPER): abstract accessor
17980           defined.
17982         * variable.c: support the modified RObject and RClass.
17984         * object.c: ditto.
17986         * class.c: ditto.
17988         * gc.c: ditto.
17990         * marshal.c: ditto.
17992         * eval_method.ci: use the abstract accessor.
17994         * insns.def: ditto.
17996         * proc.c: ditto.
17998         * struct.c: ditto.
18000         * eval.c: ditto.
18002         * error.c: ditto.
18004         * vm.c: ditto.
18006         * insnhelper.ci: ditto.
18008         * ext/digest/digest.c: ditto.
18010 Fri Sep 28 13:20:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18012         * io.c (rb_io_getline_fast, rb_io_getline_1): set encoding to the
18013           result string, as well as getc.
18015 Fri Sep 28 12:51:42 2007  Koichi Sasada  <ko1@atdot.net>
18017         * benchmark/bm_app_erb.rb: added.
18019         * benchmark/bm_io_file_(create|read|write).rb: added.
18021 Fri Sep 28 12:49:05 2007  Koichi Sasada  <ko1@atdot.net>
18023         * benchmark/driver.rb: fix file selection algorithm.
18025 Fri Sep 28 02:05:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18027         * string.c (rb_str_comparable): need not to check asciicompat here.
18029         * encoding.c (rb_enc_check): ditto.
18031         * string.c (rb_enc_str_coderange): tuned a bit; no broken check.
18033         * encoding.c (rb_enc_check): new encoding comparison criteria.
18035 Thu Sep 27 17:36:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
18037         * win32/REAMDE.win32: follow recent changes.
18039 Thu Sep 27 16:01:53 2007  Koichi Sasada  <ko1@atdot.net>
18041         * benchmark/driver.rb: fix to output some helpful messages.
18043 Thu Sep 27 15:44:51 2007  Koichi Sasada  <ko1@atdot.net>
18045         * benchmark/driver.rb: added.
18047         * common.mk: fix to use above driver.
18049         * benchmark/prepare_so_count_words.rb: added.
18051         * benchmark/bm_so_count_words.rb: fix benchmark process.
18053 Thu Sep 27 15:42:34 2007  Koichi Sasada  <ko1@atdot.net>
18055         * ext/fiber/fiber.c: modify prototype declaration.
18056           [ruby-core:12247]
18058 Thu Sep 27 09:42:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18060         * parse.y (strings, xstring, regexp, dsym): empty strings have
18061           US-ASCII encoding.
18063 Thu Sep 27 07:39:13 2007  Tanaka Akira  <akr@fsij.org>
18065         * bootstraptest/runner.rb (assert_finish): new method.
18067         * bootstraptest/test_knownbug.rb: add test for [ruby-dev:31866] using
18068           assert_finish.
18070 Thu Sep 27 04:46:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18072         * encoding.c (rb_enc_associate_index): deal with ASCII compatible
18073           flags.
18075         * encoding.c (rb_enc_check): allow ASCII compatible strings.
18077         * parse.y (rb_intern_str): use ASCII encoding for ASCII string.
18079         * string.c (rb_enc_str_coderange): check for code-range.
18081         * string.c (rb_str_modify): clear code-range flags.
18083         * string.c (rb_str_hash, rb_str_eql): ASCII compatible strings are
18084           comparable.
18086         * include/ruby/encoding.h: added code-range flags.
18088 Thu Sep 27 04:40:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18090         * gc.c (rb_mark_set): new function to mark keys.
18092         * marshal.c (struct dump_arg, struct load_arg): added wrappers to mark
18093           data and compat_tbl entries.  [ruby-dev:31870]
18095 Thu Sep 27 03:17:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18097         * process.c (rb_waitpid): no needs to poll.  [ruby-dev:31871]
18099 Wed Sep 26 20:11:46 2007  Koichi Sasada  <ko1@atdot.net>
18101         * bootstraptest/test_knownbug.rb: remove a fixed test.
18103 Wed Sep 26 20:00:12 2007  Koichi Sasada  <ko1@atdot.net>
18105         * bootstraptest/test_knownbug.rb: move fixed tests.
18107         * bootstraptest/test_method.rb: ditto.
18109         * test/ruby/test_io.rb: ditto.
18111 Wed Sep 26 19:36:26 2007  Koichi Sasada  <ko1@atdot.net>
18113         * eval.c (eval): fix to check stack overflow.
18114           [ruby-dev:31850]
18116         * eval_intern.h, vm.h: move CHECK_STACK_OVERFLOW() macro.
18118 Wed Sep 26 19:27:11 2007  Koichi Sasada  <ko1@atdot.net>
18120         * insnhelper.ci (vm_throw): fix to move increment point.
18121           [ruby-dev:31840]
18123 Wed Sep 26 19:23:56 2007  Koichi Sasada  <ko1@atdot.net>
18125         * cont.c: Fiber as SemiCoroutine on default. [ruby-core:12146]
18127         * ext/fiber/fiber.c: enable Fiber#transfer.
18129 Wed Sep 26 18:38:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18131         * encoding.c (rb_enc_check): check for ASCII-compatibilities.
18133         * parse.y (parser_tokadd_string, parser_parse_string,
18134           parser_here_document, parser_yylex): set encoding to US-ASCII.
18136         * parse.y (rb_enc_symname_p): check if valid with encoding.
18138         * parse.y (rb_intern3): let symbols have encoding.
18140         * string.c (rb_str_hash): add encoding index.
18142         * string.c (rb_str_comparable, rb_str_equal, rb_str_eql): check if
18143           compatible encoding.
18145         * string.c (sym_inspect): made encoding aware.
18147         * insns.def (opt_eq): compare with encoding.
18149         * include/ruby/encoding.h (rb_enc_asciicompat): check if ASCII
18150           compatible.
18152         * include/ruby/encoding.h (rb_enc_get_index): added prototype.
18154         * include/ruby/intern.h (rb_str_comparable, rb_str_equal): ditto.
18156 Wed Sep 26 15:01:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18158         * eval_method.ci (rb_get_alloc_func): cast to suppress a warning.
18160         * eval_method.ci (remove_method): local variable to be initialized.
18162 Wed Sep 26 08:36:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18164         * Makefile.in (ext/extinit.o): use $(OUTFLAG) as well as other
18165           objects.  [ruby-Bugs-14228]
18167 Wed Sep 26 05:12:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18169         * parse.y (parser_yyerror): limit error message length.
18170           [ruby-dev:31848]
18172 Tue Sep 25 15:11:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18174         * io.c (io_ungetc): reallocate internal buffer if pushing data
18175           excess capacity.  [ruby-dev:31650]
18177 Tue Sep 25 13:43:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18179         * eval_method.ci (remove_method): should not remove undef place
18180           holder.  [ruby-dev:31816], [ruby-dev:31817]
18182 Tue Sep 25 09:51:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18184         * eval.c (rb_longjmp): source file information may be NULL.
18185           [ruby-dev:31849]
18187         * eval.c (ruby_finalize_0): clear trace_func before finalization.
18189 Mon Sep 24 22:36:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18191         * array.c (rb_ary_equal): should handle recursive array.
18193         * hash.c (hash_equal): should handle recursive hash.
18195 Mon Sep 24 22:14:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18197         * lib/weakref.rb (WeakRef): remove debug print.  [ruby-dev:31799]
18199         * hash.c (hash_i): avoid too frequent hash conflict where key and
18200           value are same.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
18201           [ruby-dev:31802]
18203 Mon Sep 24 17:56:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18205         * ext/strscan/strscan.c (strscan_initialize, strscan_getch): use the
18206           encoding of the target string instead of setting to StringScanner
18207           instance.  [ruby-dev:31831]
18209 Mon Sep 24 16:52:11 2007  Urabe Shyouhei  <shyouhei@ruby-lang.org>
18211         * lib/net/http.rb: fix typo.
18213 Mon Sep 24 06:49:15 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
18215         * lib/net/http.rb: an SSL verification (the server hostname should
18216           be matched with its certificate's commonName) is added.
18217           this verification can be skipped by
18218           "Net::HTTP#enable_post_connection_check=(false)".
18219           suggested by Chris Clark <cclark at isecpartners.com>
18221         * lib/net/open-uri.rb: use Net::HTTP#enable_post_connection_check to
18222           perform SSL post connection check.
18224         * ext/openssl/lib/openssl/ssl.c
18225           (OpenSSL::SSL::SSLSocket#post_connection_check): refine error message.
18227 Sun Sep 23 09:05:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18229         * gc.c (os_obj_of, os_each_obj): hide objects to be finalized.
18230           [ruby-dev:31810]
18232 Sun Sep 23 08:58:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18234         * eval_method.ci (rb_attr): should not use alloca for unknown size
18235           input.  [ruby-dev:31818]
18237         * parse.y (rb_intern_str): prevent str from optimization.
18239 Sun Sep 23 06:16:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18241         * eval_method.ci (remove_method): check for undefined method.
18242           [ruby-dev:31816]
18244 Sun Sep 23 05:42:35 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
18246         * lib/rdoc/options.rb (Options::check_diagram): dot -V output
18247           changed. [ ruby-Bugs-11978 ], Thanks Florian Frank.
18249 Sat Sep 22 06:02:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18251         * lib/optparse.rb (OptionParser::List::summarize): use each_line if
18252           defined rather than each.  [ruby-Patches-14096]
18254 Sat Sep 22 05:19:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18256         * ext/stringio/stringio.c (strio_init): separate from strio_initialize
18257           to share with strio_reopen properly.  [ruby-Bugs-13919]
18259 Fri Sep 21 14:51:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18261         * gc.c (gc_mark_rest): copy just used part.
18263         * gc.c (gc_mark_children): mark u1 and u2 of NODE_ARGSCAT.
18265         * gc.c (os_obj_of): hide T_VALUES too.  [ruby-dev:31804]
18267         * gc.c (run_final): freeze temporary argument array.
18269 Fri Sep 21 04:58:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18271         * misc/ruby-style.el (ruby-style-label-indent): fix for function top
18272           level labels.
18274 Fri Sep 21 02:11:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18276         * re.c (rb_reg_match_m): evaluate a block if match.  it would make
18277           condition statement much shorter, if no else clause is needed.
18279         * string.c (rb_str_match_m): ditto.
18281 Fri Sep 21 02:02:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18283         * hash.c (hash_equal): should call rb_eql when argument eql is set.
18285 Thu Sep 20 17:28:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18287         * io.c (popen_exec), process.c (rb_spawn): stop other threads before
18288           exec.  [ruby-core:08262]
18290 Tue Sep 18 22:08:42 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
18292         * lib/matrix.rb: fix a coerce bug of Vector. [ruby-core: 12190]
18294 Mon Sep 17 21:06:03 2007  Minero Aoki  <aamine@loveruby.net>
18296         * lib/net/http.rb (HTTP::GenericRequest#initialize): check path is
18297           not nil. [ruby-dev:31149]
18299 Mon Sep 17 21:00:51 2007  Minero Aoki  <aamine@loveruby.net>
18301         * parse.y (ripper): rename event: arglist_* -> args_*.
18303         * parse.y (ripper): rename event: restparam -> rest_param.
18305         * parse.y (ripper): rename event: constpath_* -> const_path_*.
18307         * parse.y (ripper): rename event: topconst_* -> top_const_*.
18309         * parse.y (ripper): rename event: iter_block -> method_add_block.
18311         * parse.y (ripper): support block local parameter declaration.
18313         * parse.y (ripper): introduce new macro params_new.
18315         * ext/ripper/lib/ripper/sexp.rb: should not dispose event
18316           arguments whose name ends with "_new" but arity != 0.
18318 Sat Sep 15 23:36:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18320         * parse.y (struct parser_params): common members in the parser and
18321           ripper must be placed at each same location.
18323 Sat Sep 15 18:25:15 2007  Kouhei Sutou  <kou@cozmixng.org>
18325         * string.c (rb_str_rstrip_bang): fixed too much rstrip. [ruby-dev:31786]
18327 Sat Sep 15 17:32:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18329         * parse.y (parser_initialize): set default encoding.  [ruby-dev:31787]
18331         * ruby.c (load_file): make new parse instance after processing shebang
18332           line options.
18334 Sat Sep 15 17:04:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18336         * encoding.c (rb_enc_associate_index, rb_enc_get_index): check if
18337           object is encoding capable.  [ruby-dev:31780]
18339         * string.c (rb_str_subpat_set): check for if the argument is a String.
18341 Sat Sep 15 13:31:21 2007  Kouhei Sutou  <kou@cozmixng.org>
18343         * lib/rss.rb, lib/rss/, test/rss/:
18344           - 0.1.9 -> 0.2.0.
18345           - supported Slash module.
18347 Fri Sep 14 22:20:01 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18349         * ext/win32ole/win32ole.c (fev_unadvise): no needs to reset
18350           event handlers.
18352 Fri Sep 14 17:28:32 2007  Koichi Sasada  <ko1@atdot.net>
18354         * test/ruby/test_io.rb: tests which cause SEGV should not be
18355           added.
18357         * bootstraptest/test_knownbug.rb: add above test to known bug.
18359 Fri Sep 14 16:24:04 2007  Koichi Sasada  <ko1@atdot.net>
18361         * insnhelper.ci (vm_expandarray): assignment should be placed
18362           after creating new array.
18364 Fri Sep 14 16:17:30 2007  Koichi Sasada  <ko1@atdot.net>
18366         * bootstraptest/runner.rb: add a stress test (-s).
18368 Fri Sep 14 16:14:28 2007  Koichi Sasada  <ko1@atdot.net>
18370         * vm.h, eval_intern.h: move some macros to eval_intern.h.
18372         * eval_jump.ci (rb_f_throw): fix to use NEW_THROW_OBJECT().
18374         * eval.c (rb_f_loop): remove additional macro.
18376 Fri Sep 14 16:12:10 2007  Koichi Sasada  <ko1@atdot.net>
18378         * insnhelper.ci (vm_expandarray): should be volatile value for GC.
18380 Thu Sep 13 15:42:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18382         * compile.c (iseq_compile_each): inline cache entries are overwritten
18383           in iseq_build_body().
18385 Thu Sep 13 14:00:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18387         * parse.y (brace_block): should use compstmt.  patch submitted by
18388           Kirill A. Shutemov <k.shutemov AT gmail.com>  [ruby-core:12154].
18390 Thu Sep 13 13:47:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18392         * parse.y (rb_id2str): fixed typo.
18394 Wed Sep 12 23:12:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18396         * ruby.c (proc_options): -W should be allowed in RUBYOPT
18397           environment variable.  [ruby-core:12118]
18399 Wed Sep 12 15:19:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18401         * io.c (rb_io_s_sysopen): should not use alloca for unknown size
18402           input.  [ruby-dev:31775]
18404         * parse.y (rb_id2str): ditto.
18406         * marshal.c (w_float): use snprintf instead of sprintf.
18408 Tue Sep 11 17:28:00 2007  Akinori MUSHA  <knu@iDaemons.org>
18410         * lib/tempfile.rb (Tempfile::make_tmpname): Allow to specify a
18411           suffix for a temporary file name.
18413         * lib/tempfile.rb (Tempfile::make_tmpname): Make temporary file
18414           names less predictable by including a random string.
18415           [inspired by: akr]
18417 Tue Sep 11 17:25:59 2007  Akinori MUSHA  <knu@iDaemons.org>
18419         * lib/shellwords.rb: Add shellescape() and shelljoin().
18421         * lib/shellwords.rb: Rename shellwords() to shellsplit() and make
18422           the former an alias to the latter.
18424         * lib/shellwords.rb: Add escape(), split(), join() as class
18425           methods, which are aliases to their respective long names
18426           prefixed with `shell'.
18428         * lib/shellwords.rb: Add String#shellescape(), String#shellsplit()
18429           and Array#shelljoin() for convenience.
18431 Mon Sep 10 15:48:31 2007  Tanaka Akira  <akr@fsij.org>
18433         * range.c: represent initialized state using EXCL instead of FL_USER3.
18435         * range.c (range_dumper): make uninitialized range dumpable.
18436           (range_loader): make uninitialized range loadable.
18438 Mon Sep 10 13:44:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18440         * array.c (rb_ary_cycle): avoid infinite loop for empty array.
18441           based on a patch from David Flanagan.  [ruby-core:12085]
18443 Mon Sep 10 01:21:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18445         * marshal.c (r_object0): struct allocation first to check if a
18446           class is a struct.  compatibility check should come next.
18448 Mon Sep 10 01:05:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18450         * range.c (range_step): fixed integer overflow.  [ruby-dev:31763]
18452 Sun Sep  9 08:57:27 2007  Tadayoshi Funaba  <tadf@dotrb.org>
18454         * lib/date/format.rb (_strptime): now also attaches an element
18455           which denotes leftover substring if exists.
18457 Sun Sep  9 01:59:08 2007  Tanaka Akira  <akr@fsij.org>
18459         * marshal.c (r_object0): check T_STRUCT type for structs.
18461 Sun Sep  9 01:17:05 2007  Tanaka Akira  <akr@fsij.org>
18463         * marshal.c (r_object0): don't call user-defined initialize for
18464           T_STRUCT objects.
18466         * include/ruby/intern.h (rb_struct_initialize): declared.
18468         * struct.c (rb_struct_initialize): export.
18470 Sat Sep  8 23:55:56 2007  Tanaka Akira  <akr@fsij.org>
18472         * eval_method.ci (rb_get_alloc_func): new function to get allocation
18473           function.
18475         * include/ruby/intern.h (rb_alloc_func_t): declared.
18476           (rb_define_alloc_func): declared.
18477           (rb_marshal_define_compat): declared.
18479         * range.c: use T_STRUCT for Range.
18481         * inits.c: move Init_marshal() prior to Init_Range() because
18482           Init_Range calls rb_marshal_define_compat which needs
18483           marshal's compat_allocator_tbl initialized.
18485         * marshal.c: support marshal format compatibility layer designed for
18486           marshaling T_STRUCT Range using T_OBJECT format.
18487           (rb_marshal_define_compat): defined.
18489         [ruby-dev:31710]
18491 Sat Sep  8 10:05:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18493         * struct.c (rb_struct_s_members): check if __members__ is an
18494           array to prevent segmentation fault.  [ruby-dev:31759]
18496 Sat Sep  8 09:33:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
18498         * lib/date/format.rb (str[fp]time): now check specifications more
18499           strictly.
18501 Sat Sep  8 02:56:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18503         * test/ruby/test_fiber.rb (TestFiber::test_throw): uncaught throw
18504           now raise ArgumentError exception.
18506 Sat Sep  8 02:45:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18508         * struct.c (rb_struct_s_members): should raise TypeError instead
18509           of call rb_bug().  [ruby-dev:31709]
18511         * marshal.c (r_object0): no nil check require any more.
18513 Sat Sep  8 01:46:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
18515         * regenc.c, regenc.h (onigenc_single_byte_mbc_enc_len): should take
18516           two arguments. [ruby-dev:31754]
18518 Fri Sep  7 00:58:16 2007  Koichi Sasada  <ko1@atdot.net>
18520         * common.mk: fix typo.
18522 Fri Sep  7 00:28:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18524         * io.c (rb_io_getc): forgot to commit rb_enc_mbclen() fix.
18526         * ext/stringio/stringio.c (strio_getc): rb_enc_mbclen() fix.
18528         * ext/stringio/stringio.c (strio_ungetc): ditto.
18530 Thu Sep  6 22:57:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18532         * lib/fileutils.rb (FileUtils::Entry_::copy): prevent self copy of
18533           directories.
18535         * lib/fileutils.rb (FileUtils::fu_each_src_dest0): use try_convert.
18537         * lib/fileutils.rb (FileUtils::fu_update_option): ditto.
18539 Thu Sep  6 21:36:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18541         * include/ruby/oniguruma.h (OnigEncodingTypeST): add end parameter
18542           to mbc_enc_len.
18544         * euc_jp.c (mbc_enc_len), sjis.c (mbc_enc_len),
18545           utf8.c (utf8_mbc_enc_len): ditto.
18547         * encoding.c (rb_enc_mbclen): add end parameter.
18549 Thu Sep  6 21:31:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18551         * array.c (rb_ary_cycle): typo in rdoc.  a patch from Yugui
18552           <yugui@yugui.sakura.ne.jp>.  [ruby-dev:31748]
18554 Thu Sep  6 12:42:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18556         * string.c (rb_str_succ, rb_str_chop_bang, rb_str_chop): m17n support.
18557           [ruby-dev:31734]
18559 Wed Sep  5 22:02:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18561         * array.c (rb_ary_subseq): need integer overflow check.
18562           [ruby-dev:31736]
18564         * array.c (rb_ary_splice): ditto.  [ruby-dev:31737]
18566         * array.c (rb_ary_fill): ditto.  [ruby-dev:31738]
18568         * string.c (rb_str_splice): integer overflow for length.
18569           [ruby-dev:31739]
18571 Tue Sep  4 20:43:44 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18573         * ext/win32ole/win32ole.c: add WIN32OLE_EVENT#unadvise.
18575         * test/win32ole/test_win32ole_event.rb: ditto.
18577 Mon Sep  3 15:37:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18579         * common.mk (vm.o): depends on st.h too.
18581 Sun Sep  2 23:38:29 2007  Tanaka Akira  <akr@fsij.org>
18583         * include/ruby/st.h (struct st_table): make num_entries bitfield
18584           instead of num_bins for speed.  num_entries has less access.
18586 Sun Sep  2 00:37:57 2007  Tadayoshi Funaba  <tadf@dotrb.org>
18588         * lib/date/format.rb (_parse): improved parsing of ordinal dates.
18590         * lib/date/format.rb (_parse): use named character classes in some
18591           regular expressions.
18593 Sat Sep  1 23:44:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18595         * eval_jump.ci (rb_f_throw): wrap tag and TAG_THROW in a NODE_MEMO
18596           node to make throw instruction to work well.
18598 Sat Sep  1 20:56:07 2007  Tanaka Akira  <akr@fsij.org>
18600         * include/ruby/ruby.h (struct RBignum): embed digits in RBignum for
18601           small bignums.
18603         * bignum.c: RBignum embedded digits implemented.
18605         * include/ruby/intern.h: declare rb_big_resize.
18607         * gc.c: don't free embedded digits.
18609         * numeric.c: replace direct bignum field accessor by abstract field
18610           accessor such as RBIGNUM(val)->sign to RBIGNUM_SIGN(val).
18612         * sprintf.c: ditto.
18614         * compar.c: ditto.
18616         * marshal.c: ditto.
18618         * random.c: ditto.
18620         * .gdbinit: support embedded small bignums.
18622         [ruby-dev:31689]
18624 Sat Sep  1 19:59:43 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18626         * ext/win32ole/win32ole.c (ole_event_free): IConnectionPoint should be
18627           released.
18629         * ext/win32ole/win32ole.c (EVENTSINK_Destructor): ITypeInfo should be
18630           released.
18632         * ext/win32ole/win32ole.c (fev_initialize): refactoring.
18634 Sat Sep  1 16:26:09 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
18636         * test/socket/test_tcp.rb (test_recvfrom): same as mswin32 on mswin64.
18638 Sat Sep  1 14:24:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18640         * st.c (st_numcmp, st_numhash): use st_data_t instead of long, because
18641           the former may be larger than the latter.
18643         * include/ruby/st.h (CHAR_BIT): get rid of magic number.
18645         * include/ruby/st.h (rb_index_t): use st_data_t for the platforms it
18646           is larger than int.
18648 Sat Sep  1 10:43:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18650         * eval_jump.ci (rb_f_catch): generate new tag object if no argument is
18651           given.  backported from MatzRuby.  [ruby-dev:31609]
18653         * eval_jump.ci (rb_catch): call #catch without arguments if tag
18654           string is NULL.
18656         * eval_jump.ci (rb_f_throw): allow throwing non-symbol object.
18658         * eval_jump.ci (rb_catch_obj): new function to wait throw with arbitrary
18659           object.
18661         * eval_jump.ci (rb_throw_obj): new function to throw arbitrary object.
18663         * variable.c (check_autoload_table): prevent multiple calls from
18664           RSTRING_PTR().
18666 Fri Aug 31 07:12:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
18668         * numeric.c (SQRT_LONG_MAX): use SIZEOF_LONG instead of SIZEOF_VALUE
18669           because SIZEOF_VALUE > SIZEOF_LONG on some platforms.
18671 Fri Aug 31 04:18:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18673         * parse.y (f_norm_arg, f_arg_item): not croak already erred names.
18674           [ruby-dev:31687]
18676         * parse.y (assignable_gen): ignore already erred names.
18678         * parse.y (shadowing_lvar_gen): always make new block local variable
18679           when shadowing outer local variable.  [ruby-dev:31507]
18681 Thu Aug 30 19:40:33 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
18683         * regenc.h: check RUBY_EXTERN before including config.h and defines.h
18685         * common.mk: update header dependency.
18687 Thu Aug 30 14:06:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18689         * proc.c (rb_obj_define_method): reverted.  [ruby-talk:266637]
18691 Thu Aug 30 13:49:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18693         * lib/mkmf.rb: initialize $top_srcdir always.  [ruby-dev:31682]
18695         * lib/mkmf.rb (try_const, have_const): check for a const is defined.
18696           [ruby-core:04422]
18698 Thu Aug 30 08:00:12 2007  Tanaka Akira  <akr@fsij.org>
18700         * include/ruby/intern.h: declare rb_hash_tbl.
18702         * include/ruby/ruby.h (RHash): delay st_table allocation.
18703           rename tbl field to ntbl to detect direct reference to the st_table
18704           as a compile error.
18705           (RHASH_TBL): abstract accessor defined.
18706           (RHASH_ITER_LEV): ditto.
18707           (RHASH_IFNONE): ditto.
18708           (RHASH_SIZE): ditto.
18709           (RHASH_EMPTY_P): ditto.
18710           (hash_alloc0, hash_alloc): unified because hash_alloc doesn't
18711           allocate st_table now.
18713         * hash.c: delay st_table allocation.
18715         * gc.c: replace tbl by ntbl.
18717         * array.c: replace direct field accessor by abstract field accessor
18718           such as RHASH(hash)->tbl to RHASH_TBL(hash).
18720         * marshal.c: ditto.
18722         * insns.def: ditto.
18724         * ext/iconv/iconv.c: ditto.
18726         * ext/json/ext/generator/generator.c: ditto.
18728         * ext/json/ext/parser/parser.c: ditto.
18730         * ext/json/ext/parser/parser.rl: ditto.
18732         * ext/syck/rubyext.c: ditto.
18734         * ext/tk/tkutil/tkutil.c: ditto.
18736         [ruby-dev:31678]
18738 Wed Aug 29 18:36:06 2007  Tanaka Akira  <akr@fsij.org>
18740         * lib/open-uri.rb: add :ftp_active_mode option.  [ruby-dev:31677]
18742 Wed Aug 29 14:55:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18744         * string.c (str_gsub): should not use mbclen2() which has broken API.
18746         * re.c: remove rb_reg_mbclen2().
18748 Wed Aug 29 12:48:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18750         * parse.y (aref_args): args may not be a list.  [ruby-dev:31592]
18752 Wed Aug 29 11:30:10 2007  Tanaka Akira  <akr@fsij.org>
18754         * include/ruby/st.h (struct st_table): add entries_packed 1-bit
18755           bitfield.  decrease num_bins 1-bit.
18757         * st.c: pack numhash which have 5 or less entries in bins.
18758           (st_init_table_with_size): setup entries_packed flag.
18759           (st_clear): support packed mode.
18760           (st_lookup): ditto.
18761           (st_insert): ditto.
18762           (st_add_direct): ditto.
18763           (st_copy): ditto.
18764           (st_delete): ditto.
18765           (st_foreach): ditto.
18766           (st_reverse_foreach): ditto.
18767           (unpack_entries): new function for converting to unpacked mode.
18769         [ruby-list:43954]
18771 Wed Aug 29 10:46:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18773         * include/ruby/defines.h (flush_register_windows): call "ta 0x03"
18774           even on Linux/Sparc.  [ruby-dev:31674]
18776 Tue Aug 28 19:16:00 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18778         * ext/win32ole/win32ole.c (ole_type_progid): progid getted by
18779           ProgIDFromCLSID should be freed by CoTaskMemFree. Thanks, arton.
18781         * test/win32ole/test_win32ole.rb (test_raise_message): set negative
18782           compareMode value to raise WIN32OLERuntimeError.
18784         * test/win32ole/test_win32ole_type.rb (test_implemented_ole_types):
18785           support some environment which returns IShellDispatch5 instead
18786           of IShellDispatch.
18788 Tue Aug 28 15:42:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18790         * string.c (rb_str_subseq): retrieve substring based on byte offset.
18792         * string.c (rb_str_rindex_m): was confusing character offset and
18793           byte offset.
18795 Tue Aug 28 14:23:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18797         * string.c (rb_str_splice_0): should check to modify.  [ruby-dev:31665]
18799 Tue Aug 28 14:21:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18801         * parse.y (parser_prepare): set parser encode too when BOM exists.
18803 Tue Aug 28 00:51:22 2007  Koichi Sasada  <ko1@atdot.net>
18805         * thread.c: fix Mutex to be interruptable lock.
18807         * thread_win32.ci, thread_win32.h, thread_pthread.ci, thread_pthread.h:
18808           prepare native_cond_*() which are based on pthread_cond_*() spec.
18810         * prelude.rb: fix Mutex#synchronize method.
18812         * vm_core.h, include/ruby/intern.h: change unblock function interface
18813           (to pass some user data).
18815         * file.c, process.c: ditto.
18817         * benchmark/bm_vm2_mutex.rb: add a benchmark for mutex.
18819         * benchmark/bm_vm3_thread_mutex.rb: add a benchmark for mutex
18820           with contention.
18822         * benchmark/run.rb: fix to remove ENV['RUBYLIB'] for matzruby.
18824         * test/ruby/test_thread.rb: add a test.
18826         * common.mk: fix benchmark options.
18828 Mon Aug 27 23:14:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18830         * string.c (rb_str_rstrip_bang): wrong strip point.  [ruby-dev:31652]
18832         * string.c (rb_str_each_line): should swallow sequence of newlines
18833           if rs (optional argument) is an empty string.  [ruby-dev:31652]
18835 Mon Aug 27 22:39:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18837         * encoding.c (rb_enc_codelen): raises invalid sequence exception
18838           if ONIGENC_CODE_TO_MBCLEN() returns zero.  [ruby-dev:31661]
18840         * encoding.c (rb_enc_mbclen): check invalid sequence.
18842 Mon Aug 27 20:27:59 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18844         * ext/win32ole/win32ole.c (ole_type_progid): fix the bug.
18845           [ruby-dev:31576]
18847         * test/win32ole/test_win32ole_type.rb (test_initialize):
18848           remove duplicate assertions.
18850 Mon Aug 27 19:10:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18852         * ext/etc/etc.c (etc_getlogin): update documentation to note
18853           security issue.  [ruby-Bugs-11821]
18855 Mon Aug 27 15:56:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18857         * string.c (sym_encoding): return the encoding of a Symbol.
18859 Mon Aug 27 15:33:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18861         * util.c (IEEE_BIG_ENDIAN): use configured value.  [ruby-dev:31623]
18863         * util.c (Llong): set to LONG_LONG if available.
18865 Mon Aug 27 13:11:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18867         * string.c (tr_trans): wrong condition for mbmaxlen==1 strings.
18868           [ruby-dev:31652]
18870 Mon Aug 27 00:41:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18872         * io.c (rb_io_each_byte): caused infinite loop.  [ruby-dev:31652]
18874         * io.c (rb_io_getc): should return nil at EOF, not EOFError.
18876         * lib/delegate.rb (SimpleDelegator::__setobj__): use raise
18877           argument to specify backtrace.
18879         * test/ruby/test_fnmatch.rb (TestFnmatch::bracket_test):
18880           String#include? no longer works for Fixnum.  use #chr.
18881           [ruby-dev:31652]
18883 Sun Aug 26 12:27:14 2007  Koichi Sasada  <ko1@atdot.net>
18885         * cont.c: fix to remove Fiber.new until fiber.so is not loaded.
18887         * test/ruby/test_continuation.rb: fix to use resume.
18889 Sun Aug 26 06:51:46 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18891         * ext/win32ole/win32ole.c (ole_wc2mb, reg_enum_key): allocate
18892           buffer should be NULL terminated.
18894 Sun Aug 26 06:04:13 2007  Koichi Sasada  <ko1@atdot.net>
18896         * insnhelper.ci (vm_setup_method): reorder code for branch prediction.
18898 Sun Aug 26 05:54:49 2007  Koichi Sasada  <ko1@atdot.net>
18900         * insnhelper.ci (vm_call_method): fix to relaxant safe level check
18901           ($SAFE > 2).  [ruby-core:11998]
18903         * bootstraptest/test_method.rb: add tests for above.
18905 Sun Aug 26 05:52:08 2007  Koichi Sasada  <ko1@atdot.net>
18907         * test/ruby/test_fiber.rb: fix to require 'continuation'.
18909 Sat Aug 25 23:52:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18911         * enumerator.c (enumerator_next): message changed.
18913 Sat Aug 25 23:22:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18915         * include/ruby/encoding.h: remove unused rb_enc_ismbchar().
18917 Sat Aug 25 22:50:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18919         * ext/win32ole/win32ole.c (ole_event_free, EVENTSINK_Destructor,
18920           fev_initialize): remove the connection ole_event_free and
18921           EVENTSINK_Destructor.
18923 Sat Aug 25 17:52:06 2007  Koichi Sasada  <ko1@atdot.net>
18925         * string.c, include/ruby/intern.h: export rb_str_length().
18927         * insns.def: use rb_str_length() in opt_length.
18929 Sat Aug 25 17:48:51 2007  Koichi Sasada  <ko1@atdot.net>
18931         * cont.c: rename FIBER_STACK_SIZE to FIBER_VM_STACK_SIZE.
18933 Sat Aug 25 17:05:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18935         * io.c (swallow): removed condition using an unset variable.
18937         * parse.y, re.c: re-applied revision 13092.
18939         * string.c (rb_str_splice): return from void function.
18941         * include/ruby/encoding.h (rb_enc_str_new): prototype added.
18943 Sat Aug 25 11:45:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18945         * encoding.c: provide basic features for M17N.
18947         * parse.y: encoding aware parsing.
18949         * parse.y (pragma_encoding): encoding specification pragma.
18951         * parse.y (rb_intern3): encoding specified symbols.
18953         * string.c (rb_str_length): length based on characters.
18954           for older behavior, bytesize method added.
18956         * string.c (rb_str_index_m): index based on characters.  rindex as
18957           well.
18959         * string.c (succ_char): encoding aware succeeding string.
18961         * string.c (rb_str_reverse): reverse based on characters.
18963         * string.c (rb_str_inspect): encoding aware string description.
18965         * string.c (rb_str_upcase_bang): encoding aware case conversion.
18966           downcase, capitalize, swapcase as well.
18968         * string.c (rb_str_tr_bang): tr based on characters.  delete,
18969           squeeze, tr_s, count as well.
18971         * string.c (rb_str_split_m): split based on characters.
18973         * string.c (rb_str_each_line): encoding aware each_line.
18975         * string.c (rb_str_each_char): added.  iteration based on
18976           characters.
18978         * string.c (rb_str_strip_bang): encoding aware whitespace
18979           stripping.  lstrip, rstrip as well.
18981         * string.c (rb_str_justify): encoding aware justifying (ljust,
18982           rjust, center).
18984         * string.c (str_encoding): get encoding attribute from a string.
18986         * re.c (rb_reg_initialize): encoding aware regular expression
18988         * sprintf.c (rb_str_format): formatting (i.e. length count) based
18989           on characters.
18991         * io.c (rb_io_getc): getc to return one-character string.
18992           for older behavior, getbyte method added.
18994         * ext/stringio/stringio.c (strio_getc): ditto.
18996         * io.c (rb_io_ungetc): allow pushing arbitrary string at the
18997           current reading point.
18999         * ext/stringio/stringio.c (strio_ungetc): ditto.
19001         * ext/strscan/strscan.c: encoding support.
19003 Sat Aug 25 10:59:19 2007  Koichi Sasada  <ko1@atdot.net>
19005         * cont.c: separate Continuation and Fiber from core.
19007         * ext/continuation/*, ext/fiber/*: ditto.
19009         * include/ruby/ruby.h: remove rb_cFiber.
19011         * include/ruby/intern.h: add the rb_fiber_new() declaration.
19013         * enumerator.c (next_init): fix to use rb_fiber_new().
19015         * test/ruby/test_enumerator.rb: remove next? tests.
19017         * test/ruby/test_continuation.rb: add a require 'continuation'.
19019         * test/ruby/test_fiber.rb: add a require 'fiber'.
19021 Sat Aug 25 10:20:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19023         * common.mk (prelude.o): depends on vm_core.h now.
19025         * common.mk (prelude.c): depends on tool/compile_prelude.rb too.
19027         * common.mk (prereq): updates all auto-generated sources.
19029         * tool/compile_prelude.rb: separated dynamic and static portions.
19031 Sat Aug 25 10:05:17 2007  Koichi Sasada  <ko1@atdot.net>
19033         * prelude.rb: add Thread.exclusive.  This class method
19034           is different from 1.8's.  Thread.exclusive only does
19035           synchronize with VM global mutex.
19037 Sat Aug 25 09:39:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19039         * array.c (rb_ary_s_try_convert): more document description.
19041         * re.c (rb_reg_s_try_convert): typo fixed.
19043 Sat Aug 25 08:54:12 2007  Koichi Sasada  <ko1@atdot.net>
19045         * id.h, id.c: remove idFuncall.
19047         * compile.c (iseq_specialized_instruction): ditto.
19049 Sat Aug 25 08:47:28 2007  Koichi Sasada  <ko1@atdot.net>
19051         * tool/compile_prelude.rb: fix to include "vm_core.h".
19053 Sat Aug 25 03:49:14 2007  Tanaka Akira  <akr@fsij.org>
19055         * test/ruby/sentence.rb (Sentence): include Enumerable.
19056           (Sentence#each): defined.
19058         * test/ruby/test_assignment.rb: use Sentence#expand.
19060 Sat Aug 25 03:08:57 2007  Koichi Sasada  <ko1@atdot.net>
19062         * prelude.rb: fix Mutex#synchronize definition.
19064 Sat Aug 25 02:08:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19066         * array.c (rb_ary_s_try_convert): a new class method to convert
19067           object or nil if it's not target-type.  this mechanism is used
19068           to convert types in the C implemented methods.
19070         * hash.c (rb_hash_s_try_convert): ditto.
19072         * io.c (rb_io_s_try_convert): ditto.
19074         * re.c (rb_reg_s_try_convert): ditto.
19076         * string.c (rb_str_s_try_convert): ditto.
19078 Sat Aug 25 00:49:44 2007  Koichi Sasada  <ko1@atdot.net>
19080         * benchmark/bm_loop_generator.rb: added.
19082 Sat Aug 25 00:22:31 2007  Koichi Sasada  <ko1@atdot.net>
19084         * prelude.rb: added.  run this script on startup.
19086         * tool/compile_prelude.rb: compile prelude.rb to C string.
19087           (prelude.rb -> prelude.c)
19089         * common.mk: fix to build with prelude.c.
19091         * inits.c (rb_call_inits): ditto.
19093         * thread.c (Init_Thread): move definition of Mutex#synchronize
19094           to prelude.rb.
19096 Sat Aug 25 00:08:43 2007  Koichi Sasada  <ko1@atdot.net>
19098         * compile.c (compile_massign_opt): fix to skip massign optimization
19099           with global variables.
19101         * bootstraptest/test_massign.rb: add some tests for above.
19103 Fri Aug 24 18:42:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19105         * test/ruby/test_dir.rb (TestDir::setup): ?c now makes a string.
19107         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::initialize):
19108           initialize @workdir to stop warning.
19110 Fri Aug 24 18:30:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19112         * lib/drb/drb.rb (DRb::DRbServer::InvokeMethod::perform_without_block):
19113           replace funcall by send!.  other files in the distribution as well.
19115 Fri Aug 24 17:06:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19117         * eval.c (rb_f_send_bang): abandon the name funcall for private
19118           aware method call.
19120 Fri Aug 24 15:27:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19122         * enumerator.c (enumerator_next): stop pre-fetching.
19124         * enumerator.c (Init_Enumerator): remove next? method.
19126 Fri Aug 24 15:14:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19128         * eval.c (rb_f_loop): now handles StopIteration exception.
19130 Thu Aug 23 20:31:31 2007  Koichi Sasada  <ko1@atdot.net>
19132         * compile.c: optimize simple massign.
19134 Thu Aug 23 20:02:25 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
19136         * ext/win32ole/win32ole.c (reg_get_value): use RegQueryValueEx instead
19137           of RegQueryValueEx.
19139         * ext/win32ole/win32ole.c (typelib_file_from_clsid): fix the bug
19140           that the function always returns Qnil.
19142         * test/win32ole/test_win32ole_type.rb (test_initialize): add some test.
19144 Thu Aug 23 17:25:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19146         * configure.in (group_member): check if presents.
19148         * configure.in (XCFLAGS): add _GNU_SOURCE on linux.
19150         * file.c (group_member): use system routine if available.
19152         * process.c: moved _GNU_SOURCE macro to Makefile.
19154 Thu Aug 23 16:59:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19156         * compile.c (compile_massign), insnhelper.ci (vm_throw): not use C99
19157           comment.
19159         * cont.c (rb_cont_call, fiber_switch, rb_fiber_resume, rb_fiber_yield):
19160           suppress warnings.
19162         * cont.c (rb_fiber_start): change on non-volatile variable between
19163           setjmp and longjmp may not has an effect.
19165         * enumerator.c (sym_call): initialize first.
19167         * enumerator.c (enum_iter): typedefed.
19169         * enumerator.c (next_i): suppress a warning.
19171 Thu Aug 23 16:04:11 2007  Koichi Sasada  <ko1@atdot.net>
19173         * compile.c, insns.def, parse.y: fix massign order.  This change
19174           causes performance problem.  Try vm1_swap benchmark.
19175           [ruby-dev:31522]
19177         * insns.def, insnhelper.ci: move process body of expandarray insn to
19178           vm_expandarray().
19180         * bootstraptest/test_knownbug.rb, bootstraptest/test_massign.rb:
19181           move a solved test.
19183 Thu Aug 23 15:51:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19185         * parse.y (f_norm_arg): ripper has no shadowing check.
19187         * parse.y (f_block_arg): dispatch blkarg_mark.
19189 Thu Aug 23 15:48:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19191         * compile.c (make_masgn_lhs, iseq_compile_each): fixed indent.
19193         * compile.c (iseq_translate_threaded_code),
19194           vm_evalbody.ci (get_insns_address_table),
19195           template/vmtc.inc.tmpl (insns_address_table): constified.
19197         * vm_evalbody.ci (vm_eval),
19198           template/insns_info.inc.tmpl (insn_stack_increase, insn_ret_num):
19199           suppress warnings.
19201 Thu Aug 23 13:19:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19203         * parse.y (f_norm_arg): check also nested arguments.  [ruby-dev:31502]
19205 Thu Aug 23 00:06:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19207         * util.c: updated for ANSI C only.  applied a patch from
19208           <snakagawa AT infoteria.co.jp>.  [ruby-dev:31591]
19210 Thu Aug 23 00:04:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19212         * missing/strtod.c: removed.  [ruby-dev:31588]
19214         * LEGAL: updated.
19216 Wed Aug 22 15:59:44 2007  Koichi Sasada  <ko1@atdot.net>
19218         * bootstraptest/test_knownbug.rb:
19219           fix typo of filename (test_knwonbug.rb).
19221 Wed Aug 22 14:04:53 2007  Koichi Sasada  <ko1@atdot.net>
19223         * bootstraptest/test_knwonbug.rb: added.  This file will contain
19224           test cases which point out known bug.  If bug is fixed, tests
19225           should move to the suitable place.
19227         * bootstraptest/test_massign.rb: move a test which show known bug
19228           to test_knownbug.rb.
19230 Wed Aug 22 13:02:26 2007  Tanaka Akira  <akr@fsij.org>
19232         * bootstraptest/runner.rb (in_temporary_working_directory):
19233           don't remove the directory specified by --dir.
19235 Wed Aug 22 05:51:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19237         * util.c (ruby_strtod): replaced by the implementation by David
19238           M. Gay inspired by William D. Clinger's paper "How to Read Floating
19239           Point Numbers Accurately" [Proc. ACM SIGPLAN '90, pp. 92-101].
19240           a patch from Satoshi Nakagawa <snakagawa AT infoteria.co.jp>.
19241           [ruby-dev:31582]
19243         * test/ruby/test_float.rb (TestFloat::test_float): add test for
19244           precision.
19246 Wed Aug 22 03:51:07 2007  Koichi Sasada  <ko1@atdot.net>
19248         * cont.c: add Fiber#resume and Fiber.yield.
19249           and Fiber::Core class to realize Coroutine.
19251         * include/ruby/intern.h: declare rb_fiber_yield(), rb_fiber_resume().
19253         * enumerator.c: use above api.
19255         * test/ruby/test_fiber.rb: fix and add tests for above changes.
19257 Tue Aug 21 21:09:48 2007  Tanaka Akira  <akr@fsij.org>
19259         * lib/tmpdir.rb (Dir.mktmpdir): make directory suffix specifiable.
19260           suggested by knu.  [ruby-dev:31568]
19262 Tue Aug 21 15:00:23 2007  Koichi Sasada  <ko1@atdot.net>
19264         * st.c (st_clear): reset num_entries too.
19266 Tue Aug 21 13:57:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19268         * hash.c (st_foreach_func, rb_foreach_func): typedefed.
19270         * hash.c (rb_hash_clear): use st_clear() unless iterating.
19272         * st.c (struct st_table_entry): add new members, fore and back, to
19273           iterate in inserted order.
19275         * include/ruby/st.h (struct st_table): ditto.
19277 Tue Aug 21 04:09:06 2007  Koichi Sasada  <ko1@atdot.net>
19279         * benchmark/bm_vm2_case.rb: add a new benchmark.
19280           YARV optimize case/when syntax.  If every conditions
19281           are literal (such as Symbol, Fixnum, String), dispatch
19282           calc order will be O(1).
19284 Tue Aug 21 04:08:07 2007  Koichi Sasada  <ko1@atdot.net>
19286         * test/ruby/test_enumerator.rb: fix last commit.
19288 Tue Aug 21 03:59:32 2007  Koichi Sasada  <ko1@atdot.net>
19290         * test_enumerator.rb (enum_test): fix to return sorted
19291           array (for Hash test).
19293 Tue Aug 21 03:55:20 2007  Koichi Sasada  <ko1@atdot.net>
19295         * enumerator.c (next_i): fix to return with Fiber#yield at
19296           the end of each block.  [ruby-dev:31470]
19298         * enumerator.c (enumerator_next_p): call init_next if not
19299           initialized.  [ruby-dev:31514]
19301         * test/ruby/test_enumerator.rb: add tests for Enumerator.
19303 Mon Aug 20 23:28:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19305         * string.c (Init_String): remove Symbol.intern and Symbol#dump.
19306           [ruby-dev:31525]
19308         * dir.c (dir_foreach): return Enumerator if no block given.
19309           [ruby-dev:31525]
19311         * io.c (rb_io_s_foreach): argument count check before making
19312           Enumerator.  [ruby-dev:31525]
19314 Mon Aug 20 23:17:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19316         * vm_core.h (struct rb_thread_struct): removed first_func_arg and
19317           reuse first_args instead.
19319 Sun Aug 19 13:31:40 2007  Tanaka Akira  <akr@fsij.org>
19321         * gc.c: use VALGRIND_MAKE_MEM_UNDEFINED to detect use of collected
19322           objects if valgrind is available.  It cannot detect first 2 words
19323           because they are used as the free list.
19325 Sun Aug 19 13:13:52 2007  Koichi Sasada  <ko1@atdot.net>
19327         * compile.c (iseq_compile_each/NODE_RESBODY): fix to add
19328           additional nop to prevent tailcall optimization.
19330         * vm_opts.h: clean up comments.
19332 Sun Aug 19 12:58:39 2007  Koichi Sasada  <ko1@atdot.net>
19334         * insnhelper.ci (vm_call_bmethod): fix to propagate information
19335           that this proc is "from Method".  [ruby-dev:31490]
19337         * proc.c (method_proc, rb_mod_define_method): ditto.
19339         * vm.c (vm_invoke_proc_core): removed.
19341         * vm_core.h: ditto.
19343 Sun Aug 19 12:36:11 2007  Tanaka Akira  <akr@fsij.org>
19345         * test/ruby/sentence.rb: new method Sentence().
19347 Sun Aug 19 12:32:39 2007  Koichi Sasada  <ko1@atdot.net>
19349         * insnhelper.ci (vm_callee_setup_arg): fix to mark enough VM stack.
19350           [ruby-dev:31492]
19352 Sat Aug 18 19:02:34 2007  Tanaka Akira  <akr@fsij.org>
19354         * test/ruby/test_yield.rb (TestYieldGen): relax array size check
19355           in nested parameters.
19356           [ruby-dev:31485]
19358 Sat Aug 18 17:44:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19360         * ext/tk/tcltklib.c (Init_tcltklib): use rb_set_end_proc().
19362 Sat Aug 18 17:40:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19364         * thread.c (is_ruby_native_thread): check properly.  [ruby-dev:31166]
19366 Sat Aug 18 16:44:15 2007  Koichi Sasada  <ko1@atdot.net>
19368         * insnhelper.ci (vm_call_bmethod),
19369           vm.c (vm_invoke_proc_core): fix to do not restore
19370           $SAFE when proc invoked by bmethod.
19372         * vm_core.h: ditto.
19374 Sat Aug 18 16:44:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19376         * eval_error.ci (ruby_error_print): call error_print.
19378         * eval_jump.ci, process.c (rb_exit, rb_f_exit, rb_f_abort): moved.
19380 Sat Aug 18 15:59:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19382         * process.c (detach_process_watcher): should not pass the pointer
19383           to an auto variable to the thread to be created.  pointed and
19384           fix by KUBO Takehiro <kubo at jiubao.org>  [ruby-dev:30618]
19386 Sat Aug 18 15:52:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19388         * insnhelper.ci (vm_send_optimize): use MEMMOVE to shift values inside
19389           an array.
19391 Sat Aug 18 15:45:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19393         * insnhelper.ci (vm_yield_setup_args): rsize and psize should not be
19394           negative.
19396 Sat Aug 18 14:35:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19398         * insnhelper.ci (vm_callee_setup_arg, vm_send_optimize,
19399           vm_yield_setup_args): bulk copy for arguments.
19401 Sat Aug 18 13:55:58 2007  Koichi Sasada  <ko1@atdot.net>
19403         * compile.c (iseq_compile_each): fix to allow self.x=
19404           if x= is private.
19406         * bootstraptest/test_method.rb: add a test for above.
19408 Sat Aug 18 14:05:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19410         * parse.y (reg_compile_gen): obtain error info from errinfo.
19412         * re.c (rb_reg_error_desc): make RegexpError for initialization error.
19414         * re.c (rb_reg_compile): return nil and set errinfo if error.
19416 Sat Aug 18 13:23:01 2007  Koichi Sasada  <ko1@atdot.net>
19418         * eval.c: $! should not be writable.
19420         * eval.c (rb_rubylevel_errinfo): added.  rb_errinfo() returns
19421           rb_thread_t#errinfo.  rb_rubylevel_errinfo() returns $! value.
19423 Sat Aug 18 13:14:40 2007  Koichi Sasada  <ko1@atdot.net>
19425         * insnhelper.ci (vm_callee_setup_arg): fix to check arguments
19426           correctly. [ruby-dev:31472]
19428 Sat Aug 18 13:13:06 2007  Koichi Sasada  <ko1@atdot.net>
19430         * bootstraptest/test_exception.rb: add escape character ("\") for
19431           editors.
19433 Sat Aug 18 12:42:50 2007  Tanaka Akira  <akr@fsij.org>
19435         * test/ruby/test_yield.rb (TestYieldGen): add test for yielding to
19436           lambda using lambda parameter passing emulator.
19438 Sat Aug 18 12:24:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19440         * sample/test.rb, test/ruby/test_system.rb(valid_syntax?): keep
19441           comment lines first.
19443 Sat Aug 18 11:44:59 2007  Koichi Sasada  <ko1@atdot.net>
19445         * compile.c (iseq_set_arguments), insnhelper.ci
19446           (vm_callee_setup_arg, vm_yield_setup_args):
19447           fix to cause raise on "lambda{|a|}.call(1, 2)".
19448           [ruby-dev:31464]
19450         * bootstraptest/test_block.rb: add tests for above.
19452 Sat Aug 18 01:12:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19454         * eval.c (frame_func_id): return proper method ID.
19456 Fri Aug 17 22:43:11 2007  Koichi Sasada  <ko1@atdot.net>
19458         * compile.c (iseq_compile_each): massign should return rvalue(s).
19460 Fri Aug 17 22:10:19 2007  Koichi Sasada  <ko1@atdot.net>
19462         * test/ruby/test_basicinstructions.rb: fix old tests.
19463           class variables should be inherited.
19465 Fri Aug 17 21:20:44 2007  Koichi Sasada  <ko1@atdot.net>
19467         * eval.c (rb_call), eval_method.ci (rb_add_method, rb_alias),
19468           insnhelper.ci (vm_call_method): fix to save safelevel for
19469           method node.
19471         * include/ruby/node.h: ditto.
19473         * bootstraptest/test_method.rb: add a test for above.
19475 Fri Aug 17 16:02:50 2007  Koichi Sasada  <ko1@atdot.net>
19477         * thread.c (rb_thread_terminate_all): fix to ignore
19478           exceptions.
19480         * thread.c (thread_start_func_2): fix
19481           abort_on_exception process.  [ruby-dev:31394]
19483 Fri Aug 17 14:38:36 2007  Tanaka Akira  <akr@fsij.org>
19485         * bootstraptest/runner.rb (in_temporary_working_directory): use
19486           Dir.mktmpdir to create and remove temporary directory.
19487           (Dir.mktmpdir): define if not available.
19488           [ruby-dev:31431]
19490 Fri Aug 17 03:07:37 2007  Koichi Sasada  <ko1@atdot.net>
19492         * compile.c (iseq_compile_each): fix throw insn option of next.
19494 Fri Aug 17 01:25:23 2007  Koichi Sasada  <ko1@atdot.net>
19496         * compile.c (iseq_set_arguments), insnhelper.ci
19497           (vm_callee_setup_arg, vm_yield_setup_args): fix
19498           block parameter problems. [ruby-dev:31437], [ruby-dev:31440]
19500         * bootstraptest/test_block.rb: add a test of [ruby-dev:31440].
19502 Fri Aug 17 01:24:12 2007  Koichi Sasada  <ko1@atdot.net>
19504         * iseq.c (ruby_iseq_disasm): fix to show arg_simple value.
19506 Fri Aug 17 01:21:29 2007  Koichi Sasada  <ko1@atdot.net>
19508         * insns.def (throw): insert a RUBY_VM_CHECK_INTS(). [ruby-dev:31361]
19510 Thu Aug 16 20:40:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19512         * bignum.c (bigtrunc): RBIGNUM(x)->len may be zero.  out of bound
19513           access.  [ruby-dev:31404]
19515         * sprintf.c (rb_str_format): small float should not call
19516           rb_dbl2big().
19518 Thu Aug 16 22:10:06 2007  Koichi Sasada  <ko1@atdot.net>
19520         * compile.c (iseq_compile_each): fix next/redo stack consistency.
19521           [ruby-dev:31373]
19523         * bootstraptest/test_syntax.rb: add tests for above.
19525         * sample/test.rb: fix to use __FILE__ instead of $0 to know basedir.
19527 Thu Aug 16 21:14:06 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
19529         * configure.in (BASERUBY): need AC_SUBST.  [ruby-dev:31438]
19531 Thu Aug 16 19:18:26 2007  Tanaka Akira  <akr@fsij.org>
19533         * test/ruby/sentence.rb: Sentence class implemented
19534           based on sentgen.rb
19536         * test/ruby/sentgen.rb: removed.
19538         * test/ruby/test_assignment.rb: use sentence.rb.
19540         * test/ruby/test_yield.rb: block parameter passing emulator
19541           implemented.
19543 Thu Aug 16 16:48:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19545         * configure.in (BASERUBY): check if base ruby is runnable first.
19546           [ruby-core:11900]
19548 Thu Aug 16 16:46:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19550         * configure.in (aix): enable shared by default.
19552         * configure.in (aix): for 64bit-mode AIX.  [ruby-dev:31401]
19553           + use CC for LDSHARED if non-gcc,
19554           + moved -G option from *LDFLAGS to LDSHARED,
19555           + set -brtl only in XLDFLAGS.
19557 Thu Aug 16 13:06:08 2007  Tanaka Akira  <akr@fsij.org>
19559         * bignum.c (big_lshift): make shift offset long type.
19560           (big_rshift): ditto.
19561           (rb_big_lshift): ditto.
19562           (big_rshift): ditto.
19563           [ruby-dev:31434]
19565 Thu Aug 16 06:29:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19567         * io.c (argf_readpartial): argf_forward needs argc and argv.
19569 Thu Aug 16 02:47:39 2007  Koichi Sasada  <ko1@atdot.net>
19571         * cont.c (rb_fiber_m_yield): added.  use this function
19572           for Fiber#yield instead of rb_fiber_yield.
19574 Thu Aug 16 00:36:52 2007  Tanaka Akira  <akr@fsij.org>
19576         * lib/tmpdir.rb (Dir.mktmpdir): new method.  [ruby-dev:31416]
19578 Wed Aug 15 18:57:30 2007  Koichi Sasada  <ko1@atdot.net>
19580         * gc.c (os_live_obj): fix to skip T_VALUES.
19582         * sample/test.rb: add an ObjectSpace test.
19584 Wed Aug 15 16:49:04 2007  Koichi Sasada  <ko1@atdot.net>
19586         * inits.c (rb_call_inits): change initializing order.
19587           [ruby-dev:31420]
19589 Wed Aug 15 16:44:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19591         * io.c (ARGF_FORWARD): wrongly compares with current_file with
19592           rb_stdout.  should be rb_stdin.  [ruby-cvs:20177]
19594 Wed Aug 15 14:59:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19596         * io.c (rb_io_initialize, argf_each_line, argf_each_byte): suppress
19597           warnings.
19599 Wed Aug 15 14:22:05 2007  Koichi Sasada  <ko1@atdot.net>
19601         * parse.y: remove "//" type comment.
19603 Wed Aug 15 13:42:15 2007  Koichi Sasada  <ko1@atdot.net>
19605         * parse.y: fix rules around f_margs.  "make test" passes all tests.
19607         * bootstraptest/test_block.rb: add some tests for above.
19609 Wed Aug 15 13:50:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19611         * hash.c (rb_hash_delete_key): delete the entry without calling block.
19613         * hash.c (rb_hash_shift): should consider iter_lev too.
19615         * hash.c (delete_if_i): use rb_hash_delete_key() so that the block
19616           isn't called twice.  [ruby-core:11556]
19618 Wed Aug 15 13:39:25 2007  Koichi Sasada  <ko1@atdot.net>
19620         * process.c (proc_geteuid): fix strange conversion.  [ruby-dev:31417]
19622 Wed Aug 15 01:05:55 2007  Tanaka Akira  <akr@fsij.org>
19624         * bootstraptest/runner.rb (assert_check): don't call newtest.
19625           (assert_equal): call newtest.
19626           (assert_match): ditto.
19628 Tue Aug 14 21:43:39 2007  Tanaka Akira  <akr@fsij.org>
19630         * bootstraptest/runner.rb (assert_check): new method.
19631           (assert_match): new method.
19632           (assert_equal): use assert_check.
19633           (pretty): give failure description as an argument.
19635         * bootstraptest/test_exception.rb: use assert_match to describe the
19636           test for [ruby-dev:31407].  [ruby-dev:31412]
19638 Tue Aug 14 19:53:15 2007  Koichi Sasada  <ko1@atdot.net>
19640         * proc.c (Init_Proc), eval.c (Init_eval), eval_intern.h: move
19641           init place of exception_error.
19643         * inits.c: ditto.
19645         * eval.c (Init_eval): set exception_error#throwed_state as TAG_FATAL.
19646           [ruby-dev:31407]
19648         * bootstraptest/test_exception.rb: add a test for above.
19650 Tue Aug 14 19:51:20 2007  Koichi Sasada  <ko1@atdot.net>
19652         * common.mk: change test order (test -> btest).
19654 Tue Aug 14 00:04:27 2007  Kouhei Sutou  <kou@cozmixng.org>
19656         * lib/rss/rss.rb: 0.1.8 -> 0.1.9.
19658         * test/rss/test_version.rb: followed the above change.
19660         * lib/rss/parser.rb: fixed a bug that handles unintended elements.
19661           Thanks to Takuo Yonezawa. [ruby-list:43841]
19663 Mon Aug 13 17:23:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19665         * eval.c (rb_clear_trace_func, rb_thread_stop_timer_thread):
19666           declarations for forward references.
19668         * eval.c (rb_longjmp, eval): use local variable.
19670         * eval.c (rb_longjmp): string object not to be optimized.
19672 Mon Aug 13 13:21:58 2007  Tanaka Akira  <akr@fsij.org>
19674         * lib/open-uri.rb: make ftp passive mode to avoid NAT problem.
19675           [ruby-dev:31377]
19677 Mon Aug 13 09:18:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19679         * ext/stringio/stringio.c (strio_getc): should returns
19680           one-character string.
19682         * ext/stringio/stringio.c: remove unnecessary prototypes.
19684         * ext/stringio/stringio.c (strio_getbyte): new method.
19686         * ext/stringio/stringio.c (strio_readbyte): new method.
19688         * ext/stringio/stringio.c (strio_ungetc): should take a string as
19689           an input.
19691 Mon Aug 13 08:19:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19693         * io.c (argf_close): always close via method.
19695         * io.c (Init_IO): remove obsolete Kernel#getc.
19697 Mon Aug 13 05:03:53 2007  Koichi Sasada  <ko1@atdot.net>
19699         * thread.c (rb_thread_raise): check if target thread is
19700           thrown by another thread or not.  [ruby-dev:31371]
19702         * bootstraptest/test_thread.rb: add a test for above.
19704 Mon Aug 13 04:35:30 2007  Koichi Sasada  <ko1@atdot.net>
19706         * compile.c (iseq_peephole_optimize): fix peephole optimization
19707           bug. [ruby-dev:31360]
19709         * bootstraptest/test_syntax.rb: add a test for above.
19711 Mon Aug 13 04:02:29 2007  Koichi Sasada  <ko1@atdot.net>
19713         * vm_dump.c (debug_print_pre): fix to show control frame count.
19715         * insns.def (opt_call_c_function): fix operand type.
19717         * lib/vm/instruction.rb: ditto.
19719         * insnhelper.ci (vm_push_frame, vm_pop_frame): fix to show
19720           control stack status on if VMDEBUG == 2.
19722         * vm.h: add a comment about VMDEBUG.
19724         * iseq.c (find_prev_line_no): fix to skip bug report if
19725           line is not found.
19727         * lib/vm/instruction.rb: fix to use build_string() on
19728           source code generators.
19730 Mon Aug 13 03:57:32 2007  Koichi Sasada  <ko1@atdot.net>
19732         * template/yasmdata.rb.tmpl: fix type and name.
19734 Sat Aug 11 23:27:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19736         * io.c (argf_each_line): should use #each_line, not #each.
19738         * io.c (argf_each_line): simplified.
19740         * io.c (argf_getline): should handle non T_FILE object in ARGV.
19742         * io.c (argf_each_byte): each_byte should yield bytes not
19743           one-character strings.  [ruby-dev:31374]
19745 Sat Aug 11 07:24:55 2007  Tadayoshi Funaba  <tadf@dotrb.org>
19747         * lib/date/format.rb: reverted some wrongly erased "o" options
19748           (pointed out by nobu).
19750 Sat Aug 11 00:01:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19752         * thread.c (thread_start_func_2): not re-raise to main thread if it is
19753           joining the current thread.
19755 Fri Aug 10 23:54:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19757         * thread.c (thread_create_core): inherit the priority of creating
19758           thread.  submitted at [ruby-core:11873] by David Flanagan <david AT
19759           davidflanagan.com>.  [ruby-core:11876]
19761 Fri Aug 10 05:12:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19763         * thread.c (thread_start_func_2): let abort_on_exception work.
19764           [ruby-core:11873]
19766 Fri Aug 10 04:47:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19768         * parse.y (internal_id_gen): internal ID must be bigger than
19769           tLAST_TOKEN.
19771 Thu Aug  9 16:04:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19773         * parse.y (stmt): check if rhs has value before assignment instead
19774           inside node_assign_gen().  [ruby-dev:31293]
19776         * parse.y (call_bin_op_gen, call_uni_op_gen): split call_op_gen.
19778 Thu Aug  9 14:01:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19780         * parse.y (f_marg_list): renamed from f_marg_head.
19782         * parse.y (f_margs): allow multiple mandatory arguments after a splat.
19783           [ruby-dev:31153]
19785 Thu Aug  9 02:02:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19787         * enum.c (enum_cycle): typo fixed.  a patch from Kazuhiro
19788           NISHIYAMA <zn AT mbf.nifty.com>.  [ruby-dev:31362]
19790 Wed Aug  8 19:17:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19792         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): no longer check
19793           HAVE_RB_IO_STDIO_FILE.
19795 Wed Aug  8 15:52:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19797         * enumerator.c (enumerator_next_p): should check correctly even when
19798           e.next has not been called before.
19800         * enumerator.c (enumerator_next): raise StopIteration (name taken
19801           from Python) instead of IndexError.
19803         * enum.c (enum_zip): catch StopIteration exception.
19805         * enumerator.c (enumerator_with_index): return Enumerator if no
19806           block is given.
19808         * test/ruby/test_iterator.rb (TestIterator::test_enumerator): add
19809           test for enumerators.
19811 Wed Aug  8 11:48:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19813         * bignum.c (rb_big2str0): should not use RTEST for non-VALUE.
19815 Wed Aug  8 11:25:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19817         * bignum.c (rb_big2str0): should preserve sign mark.
19819 Wed Aug  8 11:02:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19821         * common.mk (btest-miniruby, test-sample): split the test target
19822           so that -k option works.
19824 Tue Aug  7 14:58:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19826         * ext/pty/pty.c (establishShell): handshaking before close slave
19827           device.  [ruby-talk:263410]
19829         * ext/pty/pty.c (MasterDevice, SlaveDevice, deviceNo): constified.
19831         * ext/pty/pty.c (SlaveName): removed static buffer.
19833         * ext/pty/expect_sample.rb: support for autologin.
19835 Tue Aug  7 13:58:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19837         * include/ruby/ruby.h (ruby_special_consts): added RUBY_SPECIAL_SHIFT.
19839         * .gdbinit: some improvements.
19841 Tue Aug  7 13:28:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19843         * common.mk (node_name.inc): use $? instead of $< for nmake.
19844           [ruby-dev:31356]
19846 Tue Aug  7 12:45:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19848         * configure.in (ac_cv_func_isinf): set yes also on OpenSolaris.
19849           [ruby-Bugs-12859]
19851 Tue Aug  7 12:31:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19853         * io.c (pipe_open): fix for win32 platforms.
19855 Tue Aug  7 02:58:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19857         * bignum.c (rb_big2str0): make Bignum#to_s even faster.  a patch
19858           from Kenta Murata <muraken AT gmail.com>.  [ruby-dev:31354]
19860 Tue Aug  7 01:42:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19862         * enum.c (enum_zip): zip no longer converts arguments into
19863           arrays, uses enumerators.
19865 Tue Aug  7 01:27:47 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19867         * cont.c (rb_fiber_yield): change argument ordering.  export.
19869         * cont.c (rb_fiber_current): export
19871         * include/ruby/intern.h: export several functions from cont.c.
19873         * enumerator.c (enumerator_next): new method to implement external
19874           iterator (generator) using fiber.
19876         * enumerator.c (enumerator_next_p): new method to check whether
19877           any element is left in the generator sequence.
19879         * enumerator.c (enumerator_rewind): a new method to rewind the
19880           generator sequence.
19882 Tue Aug  7 01:15:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19884         * enum.c (enum_cycle): new method to cycle enumerable forever.
19886 Tue Aug  7 00:05:38 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
19888         * irb/ruby-lex.rb: support for '\c'. [ruby-talk:263508]
19890 Mon Aug  6 20:29:22 2007  Koichi Sasada  <ko1@atdot.net>
19892         * insnhelper.ci, insns.def: move some statements to functions.
19894         * vm.c, vm.h, vm_evalbody.ci: fix include/typedef places.
19896 Mon Aug  6 18:41:12 2007  Koichi Sasada  <ko1@atdot.net>
19898         * lib/vm/instruction.rb (make_header_analysys): fix last commit.
19900 Mon Aug  6 18:33:22 2007  Koichi Sasada  <ko1@atdot.net>
19902         * lib/vm/instruction.rb (make_header_analysys): add to separate
19903           header addition process.
19905 Mon Aug  6 17:36:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19907         * lib/rexml/encodings/{ISO-8859-15,CP-1252}.rb: fixed invalid syntax.
19909 Mon Aug  6 16:57:08 2007  Koichi Sasada  <ko1@atdot.net>
19911         * sample/test.rb: fix to output file name if it contains
19912           invalid syntax.
19914 Mon Aug  6 16:41:22 2007  Koichi Sasada  <ko1@atdot.net>
19916         * parse.y (value_expr_gen): fix to cause "void value expression"
19917           when jump expression such as "next" are shown on value_expr().
19918           [ruby-dev:31119]
19920         * bootstraptest/test_syntax.rb: fix to above change.
19922 Mon Aug  6 14:36:30 2007  Koichi Sasada  <ko1@atdot.net>
19924         * parse.y: fix a f_marg rule. [ruby-dev:31160]
19926 Mon Aug  6 14:29:30 2007  Koichi Sasada  <ko1@atdot.net>
19928         * bootstraptest/runner.rb (assert_equal): add additional
19929           message parameter.
19931 Mon Aug  6 13:34:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19933         * common.mk (INSNS): not chdir to srcdir.
19935         * common.mk (node_name.inc): auto-generate node name list.
19937         * iseq.c (ruby_node_name): ditto.
19939         * iseq.c (iseq_s_compile_option_get, Init_ISeq): added a new
19940           method VM::InstructionSequence::compile_option.
19942         * lib/vm/instruction.rb (RubyVM::SourceCodeGenerator): --destdir
19943           option.
19945         * tool/node_name.rb: to auto-generate node name list.
19947 Sun Aug  5 11:51:39 2007  Kouhei Sutou  <kou@cozmixng.org>
19949         * lib/rss, sample/rss, test/rss:
19950         - 0.1.7 -> 0.1.8.
19951         - supported <itunes:XXX>.
19952         - reverted backward incompatibility API changes introduced 0.1.7.
19954 Sun Aug  5 04:56:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19956         * io.c (pipe_open_v, pipe_open_s): separate array and string
19957           cases.  [ruby-dev:31344]
19959 Fri Aug  3 11:05:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19961         * ext/extmk.rb (extmake): save all CONFIG values.
19963         * ext/extmk.rb (extmake): remove mkmf.log at clean, and extconf.h at
19964           distclean, respectively.
19966         * ext/extmk.rb: remove rdoc at clean, and installed list file at
19967           distclean, respectively.
19969 Fri Aug  3 07:09:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19971         * lib/mkmf.rb: more verbose message.  [ruby-Bugs-12766]
19973         * lib/mkmf.rb (have_type): suppress a warning with -Wall.
19975         * lib/mkmf.rb (find_type): new method.
19977 Fri Aug  3 00:00:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19979         * bignum.c (big2str_table): base cannot be 0 or 1.
19981 Thu Aug  2 23:42:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19983         * parse.y (reg_compile_gen): set error if failed to compile regexp
19984           literal.  [ruby-dev:31336]
19986         * re.c (option_to_str, arg_kcode, opt_kcode): options conversion
19987           between int and string.
19989         * re.c (rb_reg_compile): should not use regexp which could not get
19990           initialized.  [ruby-dev:31333]
19991           return error message to let the parser know it.
19993         * re.c (rb_reg_compile): append regexp options to error message.
19994           [ruby-dev:31334]
19996 Thu Aug  2 22:05:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19998         * bignum.c (rb_big2str0): faster Bignum#to_s using Karatsuba
19999           algorithm.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
20000           in [ruby-dev:31312], slightly modified by Kenta Murata
20001           <muraken AT gmail.com> in [ruby-dev:31339].
20003 Thu Aug  2 13:46:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20005         * sprintf.c (rb_f_sprintf): should not check positional number as
20006           width.  [ruby-core:11838]
20008 Wed Aug  1 12:40:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20010         * generic.rb (URI::Generic::merge_path): behave as RFC 3986.
20011           [ruby-talk:252052]
20013 Tue Jul 31 23:38:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
20015         * lib/date/format.rb (_parse): now interprets slashed numerical
20016           dates as a big endian (except dd/mm/yyyy). [experimental]
20018 Mon Jul 30 11:16:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20020         * bignum.c (rb_big_aref): check for Bignum index range.
20021           [ruby-dev:31271]
20023 Sat Jul 28 09:35:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20025         * ext/digest/lib/digest.rb (Digest::self.const_missing): avoid
20026           infinite recursive const_missing call.  [ruby-talk:262193]
20028 Thu Jul 26 20:40:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20030         * range.c (range_eqq): call_super() in === does not work well
20031           since Enumerable#=== has different behavior.  [ruby-dev:31296]
20033 Thu Jul 26 13:57:45 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20035         * dln.c (load_1, dln_find_1): constified.
20037         * dln.c (conv_to_posix_path): removed.
20039         * ruby.c (usage): constified.
20041         * ruby.c (rubylib_mangled_path, rubylib_mangled_path2): return
20042           VALUE instead of a pointer to static buffer.
20044         * ruby.c (push_include_cygwin): fixed buffer overflow.
20045           [ruby-dev:31297]
20047         * ruby.c (ruby_init_loadpath): not convert built-in paths.
20049 Tue Jul 24 10:37:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20051         * io.c (rb_f_p): return nil if no argument.  [ruby-dev:31285]
20053 Tue Jul 24 01:05:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20055         * regint.h (USE_MATCH_RANGE_IS_COMPLETE_RANGE): undef to achieve old
20056           rindex behavior.  [ruby-dev:31265]
20058 Mon Jul 23 18:37:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20060         * include/ruby/oniguruma.h: upgrade to Oniguruma 5.9.0.  fixes
20061           some memory violation.  [ruby-dev:31070]
20063 Sun Jul 22 20:09:49 2007  Tadayoshi Funaba  <tadf@dotrb.org>
20065         * lib/date/format.rb (Date._parse): now accepts some new
20066           hints. [experimental]
20068         * lib/parsedate.rb: followed the changes on
20069           lib/date/format.rb. [experimental]
20071 Sun Jul 22 16:06:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20073         * thread.c (is_ruby_native_thread): made an int function as
20074           well as version 1.8.
20076         * include/ruby/ruby.h (is_ruby_native_thread): moved prototype
20077           from intern.h as well as version 1.8.
20079 Sun Jul 22 14:33:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20081         * file.c (rb_file_s_rename): deleted code to get rid of a bug of
20082           old Cygwin.
20084         * file.c (rb_file_truncate): added prototype of GetLastError()
20085           on cygwin.  [ruby-dev:31239]
20087         * include/ruby/intern.h (is_ruby_native_thread): prototype.
20089         * missing/strftime.c (strftime): fix printf format and actual
20090           arguments.
20092         * ext/Win32API/Win32API.c (Win32API_initialize): ditto.
20094         * ext/tk/tcltklib.c (ip_finalize): ditto.
20096         * ext/win32ole/win32ole.c (lcid_installed): ditto.
20098         * ext/socket/getnameinfo.c: include stdio.h always.
20100 Sat Jul 21 21:39:12 2007  Tadayoshi Funaba  <tadf@dotrb.org>
20102         * lib/date.rb, lib/date/format.rb (Date._parse): now can take some
20103           hints (its aim must be mainly determination of endianness of
20104           date). [experimental]
20106         * lib/date.rb, lib/date/format.rb (Date._parse): now completes
20107           truncated year as default action. [experimental]
20109         * lib/date.rb, lib/date/format.rb: added ::iso8601, ::rfc3339,
20110           ::xmlschema, ::rfc2822, ::httpdate, ::jisx0301, #xmlschema,
20111           #httpdate. [experimental]
20113 Sat Jul 21 17:48:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20115         * common.mk: inverted rules order.
20117         * thread_win32.ci (w32_create_thread): bcc does not have
20118           _beginthreadex().
20120         * lib/mkmf.rb (create_makefile): make OBJS depend on RUBY_EXTCONF_H
20121           only if extconf.h is created.
20123         * bcc32/Makefile.sub: headers have moved.
20125         * bcc32/{Makefile.sub,configure.bat,setup.mak: configure_args
20126           support.
20128         * bcc32/setup.mak: check runtime version.
20130         * win32/win32.c (rb_w32_open_osfhandle): prototype has changed
20131           in bcc 5.82.
20133         * {win32,wince,bcc32}/setup.mak (-version-): no RUBY_EXTERN magic.
20135         * win32/resource.rb: include patchlevel number.
20137 Sat Jul 21 12:06:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20139         * lib/mkmf.rb (init_mkmf): should remove mkmf.log too.
20141 Sat Jul 21 01:45:03 2007  Tadayoshi Funaba  <tadf@dotrb.org>
20143         * lib/date/format.rb (Date._parse): completes calendar week based year.
20145         * lib/date/format.rb (Date._parse): detects year of ordinal date in
20146           extended format.
20148 Fri Jul 20 16:30:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20150         * compile.c (iseq_set_sequence): raise SyntaxError instead of rb_bug
20151           since this function can be called from VM::InstructionSequence.load.
20153         * compile.c (insn_set_sc_state, iseq_set_sequence_stackcaching): ditto.
20155 Fri Jul 20 16:11:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20157         * compile.c, compile.h (DECL_ANCHOR, INIT_ANCHOR): split not to
20158           initialize aggregations with dynamic values.  [ruby-talk:259306]
20160         * eval.c (rb_protect): not to initialize aggregations with dynamic
20161           values.  [ruby-talk:259306]
20163         * gc.c (mark_current_machine_context): ditto.
20165         * thread.c (thgroup_list, call_trace_func): ditto.
20167         * vm.c (vm_init_redefined_flag): ditto.
20169 Fri Jul 20 15:22:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20171         * ext/openssl/ossl_config.c (ossl_config_set_section): do not
20172           initialize aggregations with dynamic values.  [ruby-talk:259306]
20174 Fri Jul 20 10:39:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20176         * parse.y (stmt, mlhs_node, lhs, arg, var_ref): return dummy
20177           NODE_BEGIN after errors.  [ruby-dev:31100], [ruby-dev:31118]
20179         * parse.y (remove_begin): keep empty NODE_BEGIN, instead of null.
20180           [ruby-dev:31252], [ruby-dev:31263]
20182 Fri Jul 20 09:50:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20184         * bootstraptest/runner.rb (get_result_string): check $?.coredump?
20185           first.
20187         * bootstraptest/runner.rb (cleanup_coredump, check_coredump): see
20188           stackdump file too.
20190 Thu Jul 19 20:39:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20192         * parse.y (value_expr_gen): warn for empty expression ().
20193           [ruby-dev:31252]
20195 Thu Jul 19 19:24:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20197         * eval_error.ci (get_backtrace): check the result more.
20198           [ruby-dev:31261] [ruby-bugs-12398]
20200 Thu Jul 19 14:38:45 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20202         * bignum.c (rb_big_lshift, rb_big_rshift): separated functions
20203           to get rid of infinite recursion.  fixed calculation in edge
20204           cases.  [ruby-dev:31244]
20206         * numeric.c (rb_fix_lshift, rb_fix_rshift): ditto.
20208 Wed Jul 18 16:57:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20210         * bignum.c (rb_big_pow): refine overflow check.  [ruby-dev:31242]
20212 Wed Jul 18 09:19:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20214         * parse.y (rb_parser_append_print, rb_parser_while_loop): moved check
20215           for node to the head.
20217         * ruby.c (proc_options): do nothing for -p/-n options if tree is null.
20218           submitted by Yusuke ENDOH <mame AT tsg.ne.jp> at [ruby-dev:31243].
20220 Wed Jul 18 08:47:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20222         * time.c (time_succ): Time#succ should return a time object in the
20223           same timezone mode to the original.  [ruby-talk:260256]
20225 Mon Jul 16 23:07:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20227         * lib/base64.rb (Base64::b64encode): should not specify /o option
20228           for regular expression.  [ruby-dev:31221]
20230 Mon Jul 16 22:57:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20232         * sprintf.c (rb_str_format): make %u behave like %d for negative
20233           values, since decimal format does not work with preceding dots.
20234           [ruby-core:11575]
20236 Mon Jul 16 18:29:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20238         * string.c (rb_str_rindex_m): accept string-like object convertible
20239           with #to_str method, as well as rb_str_index_m.  [ruby-core:11692]
20241 Mon Jul 16 07:17:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20243         * insns.def (getspecial): lfp_svar_get() requires int for special
20244           global variables.
20246 Mon Jul 16 05:45:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20248         * sprintf.c (rb_f_sprintf): more checks for format argument.
20249           [ruby-core:11569], [ruby-core:11570], [ruby-core:11571],
20250           [ruby-core:11573]
20252 Mon Jul 16 00:26:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20254         * bignum.c (rb_big_pow): removed invariant variable.  [ruby-dev:31236]
20256 Sun Jul 15 22:24:37 2007  pegacorn  <subscriber.jp AT gmail.com>
20258         * ext/dl/cfunc.c (rb_dlcfunc_call): adjust format.  [ruby-dev:31222]
20260         * ext/digest/digest.c (rb_digest_instance_update,
20261           rb_digest_instance_finish, rb_digest_instance_reset,
20262           rb_digest_instance_block_length): %s in rb_raise() expects char*.
20263           [ruby-dev:31222]
20265         * ext/openssl/ossl.h: include ossl_pkcs5.h.  [ruby-dev:31231]
20267         * ext/openssl/ossl_pkcs5.h: new file for PKCS5.  [ruby-dev:31231]
20269         * ext/openssl/ossl_x509name.c (ossl_x509name_to_s): use ossl_raise()
20270           instead of rb_raise().  [ruby-dev:31222]
20272         * ext/sdbm/_sdbm.c: DOSISH platforms need io.h.  [ruby-dev:31232]
20274         * ext/syck/syck.h: include stdlib.h for malloc() and free().
20275           [ruby-dev:31232]
20277         * ext/syck/syck.h (syck_parser_set_input_type): prototype added.
20278           [ruby-dev:31231]
20280         * win32/win32.c: include mbstring.h for _mbspbrk().  [ruby-dev:31232]
20282         * include/ruby/win32.h (rb_w32_getcwd): prototype added.
20283           [ruby-dev:31232]
20285 Sun Jul 15 21:07:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20287         * bignum.c (bigtrunc): do not empty Bignum.  [ruby-dev:31229]
20289 Sun Jul 15 19:05:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20291         * bignum.c (rb_cstr_to_inum): check leading non-digits.
20292           [ruby-core:11691]
20294 Sun Jul 15 04:42:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20296         * bignum.c (get2comp): do nothing for empty Bignum.  [ruby-dev:31225]
20298 Sat Jul 14 22:49:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20300         * numeric.c (fix_pow): integer power calculation: 0**n => 0,
20301           1**n => 1, -1**n => 1 (n: even) / -1 (n: odd).
20303         * test/ruby/test_fixnum.rb (TestFixnum::test_pow): update test
20304           suite.  pow(-3, 2^64) gives NaN when pow(3, 2^64) gives Inf.
20306 Sat Jul 14 18:46:35 2007  Tanaka Akira  <akr@fsij.org>
20308         * configure.in: add --with-valgrind.
20310         * gc.h (SET_MACHINE_STACK_END): new macro to replace
20311           rb_gc_set_stack_end.  it find out accurate stack boundary by
20312           asm using gcc on x86.
20314         * thread.c (rb_gc_set_stack_end): don't define if asm-version
20315           SET_MACHINE_STACK_END is available.
20317         * gc.c (mark_current_machine_context): extracted from garbage_collect.
20318           it use SET_MACHINE_STACK_END to not scan out of stack area.
20319           it notify conservative GC information to valgrind if
20320           --with-valgrind.
20322 Sat Jul 14 14:04:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20324         * enum.c (sort_by_cmp): check if reentered.  [ruby-dev:24291]
20326 Sat Jul 14 11:08:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20328         * ext/json/ext/generator/generator.c (check_max_nesting): wrong
20329           format specifier.  a patch from pegacorn <subscriber.jp AT gmail.com>.
20330           [ruby-dev:31217]
20332 Sat Jul 14 02:27:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20334         * numeric.c (int_pow): overflow detection using FIT_SQRT_LONG().
20335           [ruby-dev:31215]
20337 Sat Jul 14 02:05:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20339         * insns.def (opt_div): LONG2FIX() may not work for corner cases,
20340           use LONG2NUM() instead.  [ruby-dev:31210]
20342 Sat Jul 14 00:34:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20344         * numeric.c (int_round): should not return false, but self.
20345           [ruby-dev:31212]
20347 Fri Jul 13 18:31:27 2007  Koichi Sasada  <ko1@atdot.net>
20349         * include/ruby/intern.h: remove unused function declarations.
20351         * include/ruby/ruby.h: ditto.
20353 Fri Jul 13 17:32:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20355         * vm.c (vm_free): clear free'ed living_threads field.
20356           [ruby-dev:31163]
20358         * insns.def (opt_succ): use cast to shut a warning up.
20360 Fri Jul 13 16:10:00 2007  Tanaka Akira  <akr@fsij.org>
20362         * lib/open-uri.rb (URI::Generic#find_proxy): use ENV.to_hash to access
20363           http_proxy environment variable to avoid case insensitive
20364           environment search.
20366 Fri Jul 13 15:02:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20368         * win32/win32.c (CreateChild): enclose command line except for
20369           command.com which can not handle quotes.  [ruby-talk:258939]
20371 Fri Jul 13 11:33:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20373         * range.c (range_max, range_min): return nil for empty set as well as
20374           1.8 and Enumerable.  [ruby-dev:31198]
20376 Fri Jul 13 11:28:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20378         * parse.y (bvar): semicolon was lost for ripper description.
20379           [ruby-dev:31140]
20381 Fri Jul 13 11:25:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20383         * parse.y (program, stmt, primary): reduced duplicated code.
20385         * parse.y (dsym): convert also literals containing NUL to
20386           symbol.
20388         * parse.y (debug_lines): use rb_hash_lookup() to get rid of
20389           call of Hash#default.
20391         * parse.y (ripper_warningS): unused in ripper right now.
20393 Fri Jul 13 10:33:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20395         * array.c (rb_ary_flatten_bang): check argument if valid
20396           integer.  [ruby-dev:31197]
20398 Fri Jul 13 10:10:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20400         * lib/mkmf.rb (link_command, cc_command, cpp_command): do not expand
20401           ::CONFIG which is an alias of MAKEFILE_CONFIG.
20403 Thu Jul 12 21:38:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20405         * insns.def (opt_succ): use LONG_MAX as maximum Fixnum VALUE.
20406           [ruby-dev:31199]
20408 Thu Jul 12 18:42:18 2007  Tanaka Akira  <akr@fsij.org>
20410         * range.c (range_max): use FIX2LONG instead of FIX2INT to avoid
20411           RangeError by ((-0x80000001)...(-0x80000001)).max on LP64.
20413         * insns.def (opt_plus): use FIX2LONG instead of FIX2INT to avoid
20414           RangeError by 0x3fffffffffffffff+1 on LP64.
20416         * insns.def (opt_succ): don't use 0x80000000 which assumes 32bit VALUE.
20417           use FIX2LONG instead of FIX2INT.
20418           [ruby-dev:31190]
20420 Thu Jul 12 17:03:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20422         * struct.c (rb_struct_init_copy): disallow changing the size.
20423           [ruby-dev:31168]
20425 Thu Jul 12 12:58:21 2007  Koichi Sasada  <ko1@atdot.net>
20427         * blockinlining.c: remove "yarv" prefix.
20429         * array.c, numeric.c: ditto.
20431         * insnhelper.ci, insns.def, vm_evalbody.ci: ditto.
20433         * yarvcore.c: removed.
20435         * yarvcore.h: renamed to core.h.
20437         * cont.c, debug.c, error.c, process.c, signal.c : ditto.
20439         * ext/probeprofiler/probeprofiler.c: ditto.
20441         * id.c, id.h: added.
20443         * inits.c: ditto.
20445         * compile.c: rename internal functions.
20447         * compile.h: fix debug flag.
20449         * eval.c, object.c, vm.c: remove ruby_top_self.
20450           use rb_vm_top_self() instead.
20452         * eval_intern.h, eval_load: ditto.
20454         * gc.c: rename yarv_machine_stack_mark() to
20455           rb_gc_mark_machine_stack().
20457         * insnhelper.h: remove unused macros.
20459         * iseq.c: add iseq_compile() to create iseq object
20460           from source string.
20462         * proc.c: rename a internal function.
20464         * template/insns.inc.tmpl: remove YARV prefix.
20466         * thread.c: use rb_iseq_eval() and rb_str_new2().
20468         * vm.c (rb_iseq_eval): added.
20470         * vm.c: move some functions from yarvcore.c.
20472         * vm_dump.c: fix to remove compiler warning.
20474 Thu Jul 12 12:24:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20476         * insns.def (opt_succ): fixed typo.  [ruby-dev:31189]
20478 Thu Jul 12 10:30:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20480         * thread.c (thread_start_func_2): moved prototye from thread_*.ci.
20482         * thread_pthread.ci (thread_start_func_2): not use a directive
20483           inside a macro argument.  [ruby-talk:258763]
20485         * thread.c (thread_join): pthread_t may not be pointer.
20487         * thread_pthread.ci (ubf_select_each): ditto.
20489 Thu Jul 12 05:32:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20491         * include/ruby/ruby.h (FIX2ULONG): drop sign bit for LLP64 platform.
20493 Tue Jul 10 19:34:45 2007  Koichi Sasada  <ko1@atdot.net>
20495         * hash.c (rb_hash_lookup): added.  this function is similar to
20496           rb_hash_aref(), but doesn't call Hash#default when no entry
20497           exists.
20499         * include/ruby/intern.h: ditto.
20501         * insnhelper.ci (lfp_svar_get): use rb_hash_lookup().
20503 Tue Jul 10 19:16:28 2007  Koichi Sasada  <ko1@atdot.net>
20505         * eval.c, insnhelper.ci, vm.c: change cref index (-1 -> 2).
20507 Tue Jul 10 18:49:56 2007  Koichi Sasada  <ko1@atdot.net>
20509         * eval.c (exec_under): add proper casts.
20511 Tue Jul 10 16:58:16 2007  Koichi Sasada  <ko1@atdot.net>
20513         * vm.c, insnhelper.ci: fix svar interface.
20515         * compile.c (iseq_compile_each), yarvcore.h: fix to use new
20516           svar interface for flip flop.
20518         * eval.c: ditto.
20520         * insns.def: ditto.
20522         * include/ruby/intern.h: remove "rb_svar()" declaration.
20524 Tue Jul 10 16:52:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20526         * compile.c (rb_iseq_compile): formatted if/else to switch statement.
20528 Tue Jul 10 15:57:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20530         * bootstraptest/test_flip.rb: new test for flip-flop operator.
20532 Tue Jul 10 14:50:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20534         * bcc32/{Makefile.sub,setup.mak}: remove surplus slash from srcdir.
20536 Mon Jul  9 02:17:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20538         * cont.c (cont_restore_1): workaround for x64-mswin64's SEH.
20540 Sun Jul  8 02:08:53 2007  NARUSE, Yui  <naruse@ruby-lang.org>
20542         * lib/json.rb, lib/json/, ext/json/: import JSON 1.1.1
20544 Sat Jul  7 21:59:29 2007  Tanaka Akira  <akr@fsij.org>
20546         * lib/pp.rb (PP::PPMethods#pp_hash): sort condition changed:
20547           all keys have a same class which is kind of Comparable.
20549 Sat Jul  7 17:12:37 2007  Koichi Sasada  <ko1@atdot.net>
20551         * compile.c: use rb_bug() instead of rb_compile_error().
20553 Sat Jul  7 16:12:48 2007  Koichi Sasada  <ko1@atdot.net>
20555         * parse.y: fix node construction (around f_margs).
20556           [ruby-dev:31143]
20558         * bootstraptest/test_block.rb: add a test for above.
20560         * insnhelper.ci: fix indent.
20562 Sat Jul  7 15:36:50 2007  Tanaka Akira  <akr@fsij.org>
20564         * lib/pp.rb (PP::PPMethods#pp_hash): sort if
20565           all keys are strings, symbols or integers.
20567 Sat Jul  7 15:30:05 2007  Koichi Sasada  <ko1@atdot.net>
20569         * insnhelper.ci (vm_yield_setup_args), vm.c, insns.def:
20570           fix to pass nil as block parameter to yielded block.
20571           [ruby-dev:31147]
20573         * bootstraptest/test_block.rb: add a test for above.
20575 Fri Jul  6 19:55:10 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
20577         * lib/irb.rb: typo. Thanks, Giles Bowkett.
20579         * lib/irb/completion.rb: support Ruby1.9 changing return value
20580           String to Symbol for Object#methods, etc. [ruby-dev:31148].
20582 Fri Jul  6 18:20:50 2007  Koichi Sasada  <ko1@atdot.net>
20584         * bootstraptest/runner.rb: fix load path.
20586         * common.mk: fix "test" rule to run with "btest".
20588         * rubytest.rb, sample/test.rb: fix to show tests progress.
20590 Fri Jul  6 15:37:48 2007  Koichi Sasada  <ko1@atdot.net>
20592         * test/ruby/test_iterator.rb: fix test to 1.9 spec.
20594 Fri Jul  6 15:21:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20596         * eval.c (rb_interrupt): suppress a gcc's officious warning.
20598 Fri Jul  6 14:57:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20600         * parse.y (keyword_to_name): constified.
20602         * ext/ripper/eventids2.c (token_to_eventid): ditto.
20604 Fri Jul  6 14:50:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20606         * bootstraptest/runner.rb: added --quiet option.
20608 Fri Jul  6 14:35:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20610         * parse.y (f_marg): wrap f_norm_arg assignment node with NODE_LIST.
20611           [ruby-dev:31141]
20613 Fri Jul  6 12:15:01 2007  Tanaka Akira  <akr@fsij.org>
20615         * test/ruby/sentgen.rb: new file.
20617         * test/ruby/test_assignment.rb: tests implemented using assignment
20618           generator and emulator.
20620 Fri Jul  6 03:06:58 2007  Koichi Sasada  <ko1@atdot.net>
20622         * insns.def: remove unused code.
20624         * compile.c (compile_massign): fix to invoke to_splat on
20625           splat rhs (example: *a = *nil). [ruby-dev:31136]
20627         * bootstraptest/test_massign.rb: add tests for above.
20629         * compile.c (iseq_compile_each): disable excess optimization.
20630           [ruby-dev:31126]
20632 Fri Jul  6 02:08:25 2007  Koichi Sasada  <ko1@atdot.net>
20634         * insns.def: fix to invoke nil.to_splat on NODE_ARGSCAT.
20635           [ruby-dev:31138].
20637         * bootstraptest/test_literal.rb: add tests for above.
20639 Thu Jul  5 19:45:55 2007  Koichi Sasada  <ko1@atdot.net>
20641         * yarvcore.h: rename rb_control_frame_t#magic to flag.
20643         * vm.h: add VM_FRAME_TYPE() and VM_FRAME_FLAG().
20645         * cont.c, insnhelper.ci, insns.def, vm.c, vm_dump.c,
20646           vm_evalbody.ci, yarvcore.c: apply above changes.
20648 Thu Jul  5 19:16:14 2007  Koichi Sasada  <ko1@atdot.net>
20650         * test/ruby/test_basicinstructions.rb: remove an assertion using
20651           unsupported hash literal (such as {1, 2}).
20653         * test/ruby/test_hash.rb: ditto.
20655 Thu Jul  5 19:12:22 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20657         * ruby.c: Qfalse is VALUE, not pointer.
20659 Thu Jul  5 18:42:01 2007  Koichi Sasada  <ko1@atdot.net>
20661         * compile.c (iseq_compile_each): add break catch point.
20663         * insns.def (throw): support correct "break" and "return".
20664           this commit achieve that "make test" passes all tests.
20666         * vm.c: ditto.
20668 Thu Jul  5 18:44:12 2007  Tanaka Akira  <akr@fsij.org>
20670         * parse.y (mlhs_basic): use mlhs_post after tSTAR.
20671           [ruby-dev:31109]
20673 Thu Jul  5 18:27:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20675         * include/ruby/{intern,ruby}.h, compile.[ch], error.c, eval.c,
20676           eval_load.c, gc.c, iseq.c, main.c, parse.y, re.c, ruby.c,
20677           yarvcore.[ch] (ruby_eval_tree, ruby_sourcefile, ruby_sourceline,
20678           ruby_nerrs): purge global variables.
20680         * ruby.c (proc_options): moved do_print and do_loop options
20681           handling from ruby_process_options().
20683 Thu Jul  5 16:37:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20685         * numeric.c (int_pow): fix previous nubu's commit.
20687         * test/ruby/test_fixnum.rb: new test.
20689 Thu Jul  5 15:56:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20691         * numeric.c (int_pow): even number multiplication never be negative.
20693 Thu Jul  5 10:42:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20695         * include/ruby/{node,ruby}.h, ruby.c: added enum constants for gdb
20696           support.  [ruby-dev:31066]
20698         * .gdbinit: some improvements.
20700 Thu Jul  5 10:13:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20702         * parse.y (global_symbols.last_id): reduce unused ID numbers.
20704         * include/ruby/st.h, st.c (st_init_table, st_init_table_with_size):
20705           constified.
20707 Wed Jul  4 23:36:27 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
20709         * lib/webrick/httpauth/authenticator.rb
20710           (WEBrick::HTTPAuth::Authenticator#check_scheme): auth-scheme must be
20711           treated as a case-insensitive token according to RFC 2617 section 1.2.
20713 Wed Jul  4 18:30:04 2007  Tanaka Akira  <akr@fsij.org>
20715         * parse.y (mlhs_inner): new rule.  [ruby-dev:31132]
20717 Wed Jul  4 05:11:57 2007  Koichi Sasada  <ko1@atdot.net>
20719         * iseq.c (set_relation): added.
20721 Wed Jul  4 04:58:30 2007  Koichi Sasada  <ko1@atdot.net>
20723         * insnhelper.ci (caller_setup_args): fix to show correct class
20724           on an error message (ex: m(&1)). [ruby-dev:31101]
20726 Wed Jul  4 04:30:32 2007  Koichi Sasada  <ko1@atdot.net>
20728         * compile.c (compile_array, iseq_compile_each): fix about array
20729           generation in void context. [ruby-dev:31102]
20731         * bootstraptest/test_literal.rb: add a test for above.
20733 Wed Jul  4 04:07:00 2007  Koichi Sasada  <ko1@atdot.net>
20735         * compile.c (compile_array): ignore NODE_ZARRAY.
20736           [ruby-dev:31110]
20738         * bootstraptest/test_method.rb: add a test for above.
20740 Wed Jul  4 04:04:02 2007  Koichi Sasada  <ko1@atdot.net>
20742         * compile.h: fix debug print level.
20744 Wed Jul  4 03:52:55 2007  Koichi Sasada  <ko1@atdot.net>
20746         * compile.c (iseq_compile_each): support v[&b]= type method call.
20747           [ruby-dev:31094]
20749         * bootstraptest/test_method.rb: add a test for above.
20751 Wed Jul  4 03:43:29 2007  Koichi Sasada  <ko1@atdot.net>
20753         * compile.c (compile_massign): fix massign compilation
20754           (example: a, *v, (*x) = ...).  [ruby-dev:31107]
20756         * bootstraptest/test_massign.rb: add tests for above.
20758 Tue Jul  3 23:12:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20760         * include/ruby/onigiruma.h (ONIG_EXTERN): use RUBY_EXTERN if defined.
20762         * regenc.h: include ruby/defines.h.
20764         * regint.h: x64-mswin64 support.
20766 Tue Jul  3 13:47:44 2007  Koichi Sasada  <ko1@atdot.net>
20768         * cont.c (cont_save_machine_stack): clear saved_thread.machine_stack*.
20770 Mon Jul  2 21:45:53 2007  Koichi Sasada  <ko1@atdot.net>
20772         * compile.c: rename iseq_translate_direct_threaded_code()
20773           to iseq_translate_threaded_code().
20775         * eval_intern.h, yarvcore.h: mv EXEC_EVENT_HOOK() and
20776           exec_event_hooks() to yarvcore.h.
20778         * insnhelper.ci, vm.c: mv yarv_finish_insn_seq to vm.c.
20780         * insns.def (opt_call_c_function): fix to use RESTORE_REGS().
20782         * iseq.c (rb_iseq_build_for_ruby2cext): fix to allocate iseq.
20784 Mon Jul  2 11:59:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20786         * insns.def (defineclass): suppress a warning.
20788         * insns.def (opt_call_c_function): should raise the thrown exception
20789           instead of returning it.
20791 Mon Jul  2 08:53:47 2007  Koichi Sasada  <ko1@atdot.net>
20793         * eval_intern.h, yarvcore.h: move declaration of sysstack_error
20794           to yarvcore.h.
20796         * iseq.c: fix symbol name (:toplevel -> :top).
20798         * lib/vm/instruction.rb, template/vm.inc.tmpl: replaceable
20799           current file name.
20801 Mon Jul  2 05:29:07 2007  Koichi Sasada  <ko1@atdot.net>
20803         * compile.c, iseq.c: fix iseq some of load/store process.
20805 Mon Jul  2 03:09:36 2007  Koichi Sasada  <ko1@atdot.net>
20807         * yarvcore.h, compile.c, insnhelper.ci, iseq.c, vm.c:
20808           rename structure names and field names.
20810         * insnhelper.h, insns.def: add GET_CONST_INLINE_CACHE().
20812         * iseq.c: add rb_iseq_build_for_ruby2cext().
20814         * yarvcore.h, vm.h: move declaration of rb_insn_func_t
20815           to yarvcore.h.
20817 Sun Jul  1 03:25:53 2007  Koichi Sasada  <ko1@atdot.net>
20819         * insnhelper.h, vm.h: some refactoring.
20820           remove useless comments, etc.
20822 Sun Jul  1 03:02:29 2007  Koichi Sasada  <ko1@atdot.net>
20824         * yarvcore.h: some refactoring on rb_iseq_t.
20825           rename some variable names, add comments, etc.
20827         * compile.c, iseq.c, proc.c, vm.c: ditto.
20829 Sun Jul  1 02:57:57 2007  Koichi Sasada  <ko1@atdot.net>
20831         * vm.h: rename insn_func_type to rb_insn_func_type.
20833         * vm_evalbody.ci: ditto.
20835         * insns.def: add opt_call_native_compiled instruction
20836           instead of opt_call_native_compiled.
20838 Sat Jun 30 00:17:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20840         * parse.y (parser_yylex): return non-valid token for an invalid
20841           instance/class variable name.  a patch from Yusuke ENDOH
20842           <mame AT tsg.ne.jp>.  [ruby-dev:31095]
20844 Fri Jun 29 23:38:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20846         * parse.y (stmts): fix for ripper.
20848 Fri Jun 29 21:55:48 2007  Koichi Sasada  <ko1@atdot.net>
20850         * parse.y: fix to show line number of blank block.
20851           [ruby-dev:31093]
20853 Fri Jun 29 20:51:04 2007  Tanaka Akira  <akr@fsij.org>
20855         * lib/cgi/session.rb (create_new_id): don't cut off md5.hexdigest to
20856           follow Ruby 1.8.
20858 Fri Jun 29 17:10:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20860         * debug.h: constified.
20862         * debug.c (ruby_set_debug_option): separated from main.c.
20864         * gc.c (ruby_gc_stress), signal.c (ruby_enable_coredump): prefixed.
20866 Fri Jun 29 16:39:06 2007  Koichi Sasada  <ko1@atdot.net>
20868         * proc.c (proc_new): fix to return a proc object
20869           which block is contained ([ruby-dev:31056]).
20871 Fri Jun 29 15:43:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20873         * numeric.c (fix_pow): get rid of division by zero.  reported by
20874           Yusuke ENDOH <mame AT tsg.ne.jp> [ruby-dev:31040]
20876         * numeric.c (int_round): do nothing when rounding by zeroth digit.
20877           check underflow.  [ruby-dev:31043]
20879 Fri Jun 29 15:32:00 2007  Koichi Sasada  <ko1@atdot.net>
20881         * configure.in: add fastcall attribute check.
20883 Fri Jun 29 14:51:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20885         * parse.y (assoc_list): remove expanded hash literal (no splat).
20887         * lib/webrick/httpstatus.rb (WEBrick::HTTPStatus::EOFError): adapt
20888           to new syntax.
20890 Fri Jun 29 14:48:18 2007  Koichi Sasada  <ko1@atdot.net>
20892         * tool/insns2vm.rb, lib/vm/instruction.rb: move process body
20893           to lib/vm/instruction.rb.
20895         * common.mk: fix aotc rule.
20896           experimental. bin/ruby2cext is not added yet.
20898 Fri Jun 29 11:23:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20900         * parse.y (dsym): return non-null NODE even if yyerror().  based on a
20901           patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:31085]
20903 Thu Jun 28 23:29:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20905         * parse.y (assoc_list): odd number check only for NODE_ARRAY.
20906           [ruby-dev:31082]
20908 Thu Jun 28 22:24:33 2007  Koichi Sasada  <ko1@atdot.net>
20910         * win32/Makefile.sub: define FUNC_FASTCALL macro.
20912         * vm.h: fix to use FUNC_FASTCALL macro.
20913           TODO: add FUNC_FASTCALL macro by configure.
20915 Thu Jun 28 19:38:53 2007  Koichi Sasada  <ko1@atdot.net>
20917         * compile.c: fix to remove -Wall warnings on gcc.
20919         * compile.c (make_name_with_str): removed. use rb_sprintf() instead.
20921 Thu Jun 28 18:53:01 2007  Tanaka Akira  <akr@fsij.org>
20923         * bignum.c (rb_big_hash): fix hash area.
20925 Thu Jun 28 15:00:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20927         * ext/stringio/stringio.c (strio_getline): local variable to be
20928           initialized.  [ruby-dev:31077]
20930 Thu Jun 28 11:30:39 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20932         * gc.c (rb_obj_id): use SIGNED_VALUE instead of long.
20934 Thu Jun 28 05:01:56 2007  Koichi Sasada  <ko1@atdot.net>
20936         * common.mk (run.gdb): fix to load $(srcdir)/.gdbinit
20938         * vm.c (rb_vm_set_finish_env): add a cast.
20940         * vm.h: support __fastcall for MSVC.
20942 Thu Jun 28 02:12:08 2007  Koichi Sasada  <ko1@atdot.net>
20944         * bootstraptest/runner.rb: fix to untouch $:.
20946 Thu Jun 28 02:03:07 2007  Koichi Sasada  <ko1@atdot.net>
20948         * compile.c (setup_args): change parameter type.
20950 Thu Jun 28 02:03:39 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20952         * parse.y (rb_intern2): unconstify cast.
20954 Thu Jun 28 01:44:31 2007  Tanaka Akira  <akr@fsij.org>
20956         * parse.y (rb_intern2): don't allocate a string object at first.
20957           [ruby-dev:31064]
20959 Thu Jun 28 01:24:02 2007  Koichi Sasada  <ko1@atdot.net>
20961         * bootstraptest/runner.rb: fix to show file name.
20963         * bootstraptest/test_*.rb: add bootstrap tests.
20965 Thu Jun 28 01:22:15 2007  Koichi Sasada  <ko1@atdot.net>
20967         * include/ruby/node.h, parse.y, gc.c, iseq.c: remove NODE_CREF.
20969 Thu Jun 28 01:19:43 2007  Koichi Sasada  <ko1@atdot.net>
20971         * compile.c (iseq_compile_each): fix popped backref and others.
20972           ([ruby-dev:31068]).
20974         * compile.c (iseq_compile_each): remove needless statements.
20976 Wed Jun 27 23:51:33 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20978         * win32/win32.c: remove unused functions.
20980 Wed Jun 27 20:46:05 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20982         * include/ruby/win32.h, win32/Makefile.sub, win32/configure.bat,
20983           win32/mkexports.rb, win32/setup.mak, win32/win32.c: import
20984           x64-mswin64 port.
20986 Wed Jun 27 20:31:07 2007  Koichi Sasada  <ko1@atdot.net>
20988         * compile.c (iseq_translate_direct_threaded_code): fix prototype
20989           function name.
20991         * vm.h: add correct cast.
20993 Wed Jun 27 17:08:42 2007  Koichi Sasada  <ko1@atdot.net>
20995         * vm_evalbody.ci: support OPT_CALL_THREADED_CODE.
20997         * insns.def, vm.c, vm.h: ditto.
20999         * vm.h: add VM_CFP_CNT() and VM_SP_CNT().
21001 Wed Jun 27 04:23:47 2007  Koichi Sasada  <ko1@atdot.net>
21003         * compile.c (iseq_compile_each): fix type error.
21005 Wed Jun 27 03:26:15 2007  Koichi Sasada  <ko1@atdot.net>
21007         * compile.c (compile_massign), insns.def (expandarray): support
21008           postarg with massign (a, *b, c = ...).
21010         * bootstraptest/test_massign.rb: add tests for above.
21012         * compile.h: fix debug macro names.
21014 Wed Jun 27 00:18:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21016         * string.c (rb_str_clear): need to check STR_EMBED_P() before
21017           free()ing memory.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
21018           [ruby-dev:31062]
21020 Tue Jun 26 16:39:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21022         * process.c (proc_getgroups): use GIDT2NUM for rb_gid_t.
21024 Tue Jun 26 16:28:24 2007  Koichi Sasada  <ko1@atdot.net>
21026         * thread.c (rb_thread_wait_fd_rw): terminate fdset.
21028 Tue Jun 26 16:26:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21030         * regint.h: IL32LLP64 support.
21032 Tue Jun 26 16:22:45 2007  Koichi Sasada  <ko1@atdot.net>
21034         * iseq.c (ruby_node_name): update node names.
21036 Tue Jun 26 15:21:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21038         * include/ruby/ruby.h: IL32LLP64 support.
21040         * bignum.c (bigfixize, rb_cstr_to_inum): ditto.
21042         * insns.def (opt_plus, opt_minus, opt_mult): ditto.
21044 Tue Jun 26 15:04:06 2007  Koichi Sasada  <ko1@atdot.net>
21046         * cont.c (rb_fiber_s_new): revert initializing VM stack.
21048         * yarvcore.c (th_init2): ditto.
21050         * vm.c, vm.h: fix to stop using Qundef on VM stack.  According to
21051           this change, VM stack should not include Qundef value.
21053         * insns.def (putundef): removed.
21055         * compile.c (iseq_compile_each): ditto.
21057         * eval.c (eval): fix spacing.
21059 Tue Jun 26 04:03:50 2007  Koichi Sasada  <ko1@atdot.net>
21061         * insnhelper.ci (vm_yield_with_cfunc), proc.c: fix Method#to_proc
21062           to return lambda Proc ([ruby-dev:31021], [ruby-dev:31037]).
21064 Tue Jun 26 03:46:08 2007  Koichi Sasada  <ko1@atdot.net>
21066         * cont.c (rb_fiber_s_new): fix to clear rb_thread_t#tag.
21067           [ruby-dev:30995]
21069 Tue Jun 26 03:38:31 2007  Koichi Sasada  <ko1@atdot.net>
21071         * cont.c (rb_fiber_s_new), yarvcore.c (th_init2): fix to clear
21072           VM stack ([ruby-dev:31046]).
21074 Tue Jun 26 03:15:27 2007  Koichi Sasada  <ko1@atdot.net>
21076         * compile.c: rename setup_arg() to setup_args().
21077           fix to use setup_args() at processing NODE_YIELD.
21079 Tue Jun 26 02:50:24 2007  Koichi Sasada  <ko1@atdot.net>
21081         * compile.c (setup_arg): support kind of "m(*ary, x)" method call.
21082           ([ruby-dev:31048]).
21084 Tue Jun 26 00:28:44 2007  Koichi Sasada  <ko1@atdot.net>
21086         * insnhelper.ci, vm.c: complete block parameter support.
21087           post arguments, optional arguments, block argument.
21089         * compile.c, parse.y: fix {|a|} parameter.
21091         * insnshelper.ci, insns.def: revert caller_setup_args() option
21092           (need_block_check) parameter.
21094 Mon Jun 25 20:18:44 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21096         * gc.c (RVALUE): in RVALUE and RBasic, flags must be the same type.
21098 Mon Jun 25 18:02:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21100         * ext/pty/extconf.rb: skip wince and win64.
21102 Mon Jun 25 17:59:32 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21104         * include/ruby/node.h (NODE_LMASK, nd_line): shouldn't use int and/or
21105           long carelessly.
21107 Mon Jun 25 11:36:35 2007  Koichi Sasada  <ko1@atdot.net>
21109         * gc.h: add RUBY_ prefix to debug macros.
21111         * cont.c, proc.c, yarvcore.c,
21113         * gc.c: define ruby_gc_debug_indent variable to debug mark/free.
21115         * vm.c, insnhelper.ci: rename some functions to vm_* or rb_vm_*.
21116           move some functions, definitions, declarations to suitable files.
21118         * eval.c, yarvcore.h, eval_error.ci, insnhelper.ci: ditto.
21120 Mon Jun 25 09:45:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21122         * eval_error.ci, eval_jump.ci, eval_method.ci, eval_safe.ci: c-mode.
21124 Mon Jun 25 05:27:54 2007  Koichi Sasada  <ko1@atdot.net>
21126         * eval.c: remove ruby_current_node and change eval() prototype.
21127           fix to use rb_sourcefile/line() instead of ruby_sourcefile/line.
21129         * error.c, eval_error.ci, eval_load.c, eval_safe.ci, gc.c,
21130           include/ruby/intern.h, parse.y, process.c, ruby.c: ditto.
21132         * vm.c: fix spaces.
21134 Mon Jun 25 04:20:14 2007  Koichi Sasada  <ko1@atdot.net>
21136         * eval_*.h: rename to eval_*.ci.
21138         * common.mk: ditto.
21140         * eval_error.ci: remove ruby_set_current_source().
21142         * error.c, eval.c, ruby.c: ditto.
21144         * eval_safe.c, proc.c: remove unused macros.
21146 Mon Jun 25 03:37:20 2007  Koichi Sasada  <ko1@atdot.net>
21148         * insnhelper.ci (caller_setup_args): add need_block_check option.
21150         * insns.def: ditto.
21152         * yarvcore.h: add GetCoreDataFromValue().
21154 Mon Jun 25 02:14:30 2007  Koichi Sasada  <ko1@atdot.net>
21156         * call_cfunc.ci: removed.
21158         * insnhelper.ci: added. this function includes all functions that
21159           vm insns need.
21161         * common.mk: ditto.
21163         * insnhelper.h, vm.h, vm.c: move some declaration.
21165         * gc.h: remove GC_CHECK() macro because GC.stress is more useful.
21167         * compile.c, iseq.c, vm_dump: ditto.
21169         * gc.h, thread.c: move a prototype declaration.
21171         * debug.c, debug.h: rename some functions.
21173         * compile.h: ditto.
21175 Mon Jun 25 00:45:02 2007  Koichi Sasada  <ko1@atdot.net>
21177         * insns.def (invokesuper): fix error message.
21179 Mon Jun 25 00:14:13 2007  Koichi Sasada  <ko1@atdot.net>
21181         * vm.c: some refactoring.
21182           * rename th_* to vm_*.
21183           * remove unused variables functions.
21184           * add prototypes.
21186         * blockinlining.c, compile.c, cont.c, eval.c, eval_intern.h,
21187           eval_jump.h, eval_load.c, inits.c, insns.def, iseq.c, parse.y,
21188           proc.c, process.c, signal.c, thread.c, vm.c, vm_dump.c,
21189           vm_evalbody.ci, yarvcore.c, yarvcore.h: ditto.
21191 Sun Jun 24 22:32:00 2007  Koichi Sasada  <ko1@atdot.net>
21193         * eval_method.h (rb_add_method): fix to check 0.
21195 Sun Jun 24 22:00:17 2007  Koichi Sasada  <ko1@atdot.net>
21197         * insn_send.ci: removed.
21199         * common.mk: ditto.
21201         * vm.c (vm_call_bmethod), isnsn.def: added.  fix to use this
21202           function instead of using goto.
21204         * vm.c (vm_call_bmethod): renamed from th_invoke_bmethod().
21206         * vm.c (vm_method_missing): renamed from eval_method_missing().
21208         * vm_evalbody.ci: remove tmp_* variables.
21210         * insnhelper.h: add some macros.
21212         * insns.def: forbid zsuper from method defined by define_method().
21214         * test/ruby/test_super.rb: ditto.
21216 Sun Jun 24 20:01:08 2007  Koichi Sasada  <ko1@atdot.net>
21218         * vm_macro.def: removed.
21220         * insn_send.ci: added.  this file includes send instruction body.
21222         * common.mk: ditto.
21224         * insns.def: ditto.
21226         * tool/insns2vm.rb: ditto.
21228         * vm.c: ditto.
21230 Sun Jun 24 19:30:37 2007  Koichi Sasada  <ko1@atdot.net>
21232         * insnhelper.h (RESTORE_REGS): add do/while(0) around macro.
21234         * vm.c, vm_macro.def: remove macro_eval_invoke_func() and
21235           add vm_setup_method().  use it instead.
21237 Sun Jun 24 19:02:33 2007  Koichi Sasada  <ko1@atdot.net>
21239         * vm.c, vm_macro.def : remove macro_eval_invoke_cfunc() and
21240           add vm_call_cfunc().
21242 Sun Jun 24 17:54:13 2007  Koichi Sasada  <ko1@atdot.net>
21244         * insns.def, vm.c: add/fix stack overflow check.
21246 Sun Jun 24 17:28:52 2007  Koichi Sasada  <ko1@atdot.net>
21248         * insnhelper.h: change CHECK_STACK_OVERFLOW() to throw exception.
21250         * vm.c (caller_setup_arg), vm_macro.def: remove
21251           macro_eval_setup_send_arguments and add caller_setup_arg().
21253         * insns.def: ditto.
21255         * bootstraptest/test_method.rb: add splat arg tests.
21257 Sun Jun 24 16:35:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21259         * proc.c (proc_to_s): used a variable before initialized.
21261 Sun Jun 24 16:05:45 2007  Koichi Sasada  <ko1@atdot.net>
21263         * vm.c (callee_setup_arg): added.  support correct post arg.
21265         * vm_macro.def (macro_eval_invoke_func): fix to use
21266           callee_setup_arg.
21268         * compile.c (set_arguments): adjust for above changes.
21270         * compile.c (iseq_compile_each): ditto.
21272         * iseq.c (ruby_iseq_disasm): ditto.
21274         * yarvcore.h: add rb_iseq_t#post_arg_start and arg_size.
21276         * bootstraptest/test_method.rb: add post arg tests.
21278 Sun Jun 24 16:10:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21280         * proc.c (proc_to_s): suppress warning, and reduced duplicated code.
21282 Sun Jun 24 15:33:47 2007  Koichi Sasada  <ko1@atdot.net>
21284         * bootstraptest/runner.rb: set default directory to
21285           '/tmp/bootstraptest.tmpwd' and add --dir option.
21286           fix to output driver and target information.
21288         * common.mk: fix to run btest on BASERUBY and
21289           add OPTS to pass option ("make btest OPTS=...").
21291 Sun Jun 24 03:05:00 2007  Tanaka Akira  <akr@fsij.org>
21293         * enum.c (enum_minmax): fix SEGV by [].minmax.
21295 Sat Jun 23 17:18:19 2007  Tanaka Akira  <akr@fsij.org>
21297         * re.c (match_inspect): MatchData#inspect implemented.
21299 Sat Jun 23 15:00:16 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21301         * enum.c (enum_minmax): new method to get the minimum and maximum
21302           values from the enumerable at once.
21304         * enum.c (enum_minmax_by): ditto.
21306 Sat Jun 23 01:25:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21308         * hash.c (rb_hash_assoc): new method.
21310         * hash.c (rb_hash_rassoc): ditto.
21312         * hash.c (rb_hash_flatten): ditto.
21314 Fri Jun 22 23:55:59 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21316         * string.c (rb_str_upto): add optional argument to specify
21317           exclusiveness.
21319         * range.c (range_step): use String#upto with optional argument.
21321         * range.c (range_each): ditto.
21323 Fri Jun 22 19:55:51 2007  Tanaka Akira  <akr@fsij.org>
21325         * proc.c (proc_to_s): revert the change from %p to %lx at YARV
21326           merge time.
21328 Fri Jun 22 19:33:49 2007  Tanaka Akira  <akr@fsij.org>
21330         * proc.c (proc_to_s): show is_lambda.
21332 Thu Jun 21 20:36:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21334         * hash.c (rb_hash_sort): remove hash specific implementation.
21336 Thu Jun 21 20:28:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21338         * hash.c (rb_hash_select): returns new hash, not assoc array.
21339           [ruby-core:11504]
21341         * hash.c (env_select): ditto.
21343 Thu Jun 21 23:08:19 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21345         * parse.y (rb_intern2): ID_JUNK test based on len, not by NUL.
21347 Thu Jun 21 19:42:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21349         * yarvcore.c (rb_thread_mark): mark also thrown_errinfo.
21351 Thu Jun 21 17:13:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21353         * parse.y (rb_intern2): name may not be NUL-terminated.
21355 Wed Jun 20 08:27:57 2007  Tanaka Akira  <akr@fsij.org>
21357         * eval_error.h (error_print): show full stacktrace on
21358           non-SystemStackError.
21360 Wed Jun 20 04:45:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21362         * parse.y (rb_intern2): use rb_intern2 to intern without trailing
21363           equal sign.
21365         * parse.y (rb_intern2, ripper_id2sym): fixed indent.
21367 Tue Jun 19 10:55:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21369         * eval_load.c (load_ext, rb_require_safe): pass VALUE instead of
21370           pointer.  [ruby-Bugs-11659]
21372 Mon Jun 18 08:47:54 2007  Technorama Ltd.  <oss-ruby@technorama.net>
21374         * ext/openssl/{extconf.rb,ossl_ssl_session.c}:
21375           Fix ruby-Bugs-11513.
21377         * ext/openssl/ossl_pkey_ec.c
21378           New methods EC::Point.[eql,make_affine!,invert!,on_curve?,infinity?]
21379           By default output the same key form as the openssl command.
21381         * ext/openssl/ossl_rand.c
21382           New method Random.status?
21384         * test/openssl/test_ec.rb
21385           New tests.
21387 Mon Jun 18 17:04:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21389         * eval_load.c (rb_require_safe, ruby_init_ext): load with ruby level
21390           cfp.  [ruby-core:10779]
21392         * eval_intern.h, vm.c (rb_vm_call_cfunc): new function to call a
21393           function with ruby level cfp.
21395 Mon Jun 18 16:57:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21397         * parse.y (yycompile): disable trace while creating ruby_debug_lines.
21398           [ruby-talk:253586]
21400         * thread.c (ruby_suppress_tracing): new function to call a function
21401           with suppressing trace.
21403         * lib/debug.rb, lib/tracer.rb: for YARV.
21405 Mon Jun 18 13:54:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21407         * eval.c (ruby_cleanup): return EXIT_FAILURE if any exceptions occurred
21408           in at_exit blocks.  [ruby-core:11263]
21410 Mon Jun 18 02:49:16 2007  Koichi Sasada  <ko1@atdot.net>
21412         * vm.c (env_mark): fix to mark block.proc.
21414         * vm.c (th_make_proc_from_block): set created proc to block->proc.
21416 Mon Jun 18 02:48:12 2007  Koichi Sasada  <ko1@atdot.net>
21418         * vm_dump.c (vm_stack_dump_raw): hide VM stack trace.
21420 Mon Jun 18 02:43:53 2007  Koichi Sasada  <ko1@atdot.net>
21422         * signal.c (sigsegv): clear gc_stress flag on SEGV.
21424 Mon Jun 18 01:14:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21426         * variable.c (rb_path2class): get rid of dangling pointer caused by
21427           optimized out value.
21429         * variable.c (rb_global_entry, rb_f_untrace_var, rb_alias_variable,
21430           rb_generic_ivar_table, generic_ivar_get, generic_ivar_set,
21431           generic_ivar_defined, generic_ivar_remove, rb_mark_generic_ivar,
21432           rb_free_generic_ivar, rb_copy_generic_ivar,
21433           rb_obj_instance_variables): suppress warnings.
21435 Sun Jun 17 11:11:07 2007  Tanaka Akira  <akr@fsij.org>
21437         * eval.c (rb_method_missing): avoid a warning "too many arguments
21438           for format string" on "./ruby -ve 'def m() super end; m'".
21440 Sat Jun 16 22:24:17 2007  Tanaka Akira  <akr@fsij.org>
21442         * gc.c (garbage_collect): re-introduce ruby_current_node marking code.
21443           [ruby-dev:31005]
21445 Sat Jun 16 21:37:43 2007  Tanaka Akira  <akr@fsij.org>
21447         * gc.c (gc_sweep): re-introduce heap extension strategy change.
21448           [ruby-dev:31005]
21450 Fri Jun 15 22:59:37 2007  Tanaka Akira  <akr@fsij.org>
21452         * .gdbinit: new file to ease debugging using gdb.
21454 Fri Jun 15 22:33:55 2007  Tanaka Akira  <akr@fsij.org>
21456         * signal.c (default_handler): func argument removed.
21457           (trap_handler): support SYSTEM_DEFAULT.  call default_handler
21458           internally.
21459           (sig_trap): don't call default_handler.
21460           [ruby-dev:30999]
21462 Fri Jun 15 22:33:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21464         * common.mk (realclean): separate local and ext.
21466         * ext/extmk.rb: not remove unrelated directories.
21468 Fri Jun 15 20:50:02 2007  Tanaka Akira  <akr@fsij.org>
21470         * keywords: enclose C code in declaration section by %{ and %} to
21471           avoid extra semicolon after #ifdef RIPPER.
21472           pointed by eban.
21474 Fri Jun 15 18:56:52 2007  Tanaka Akira  <akr@fsij.org>
21476         * signal.c (trap_handler): trap("SIGSEGV", "DEFAULT") may cause wrong
21477           trap error because SIG_DFL may be zero.
21479 Fri Jun 15 15:55:55 2007  Koichi Sasada  <ko1@atdot.net>
21481         * insns.def (setconstant, toregexp): fix to mark object correctly.
21483 Fri Jun 15 13:24:18 2007  Koichi Sasada  <ko1@atdot.net>
21485         * hash.c: exchange semantics of Hash#each and Hash#each_pair.
21486           pointed out by [ruby-dev:30997].
21488         * test/ruby/test_iterator.rb: ditto.
21490         * test/ruby/test_yield.rb: ditto.
21492 Fri Jun 15 12:38:29 2007  Koichi Sasada  <ko1@atdot.net>
21494         * test/ruby/test_iterator.rb: remove debug code (GC.stress=true).
21496 Fri Jun 15 12:25:33 2007  Koichi Sasada  <ko1@atdot.net>
21498         * vm.c (th_yield_setup_args): |v| should work as |v,|.
21499           ex) def m;yield 1, 2; end; m{|v| p v} #=> 1
21501         * parse.y: apply above change for "for" statement.
21503         * test/ruby/test_assignment.rb: ditto
21505         * test/ruby/test_basicinstructions.rb: ditto.
21507         * test/ruby/test_iterator.rb: ditto.
21509         * test/ruby/test_yield.rb: ditto.
21511         * compile.c (iseq_compile_each): fix debug.
21513 Fri Jun 15 12:22:10 2007  Koichi Sasada  <ko1@atdot.net>
21515         * eval.c (ruby_finalize_1): rb_thread_t#errinfo should be clear with
21516           Qnil.
21518 Fri Jun 15 12:20:11 2007  Koichi Sasada  <ko1@atdot.net>
21520         * cont.c (rb_cont_call): forbid cross fiber continuation call.
21522         * test/ruby/test_fiber.rb: ditto.
21524 Fri Jun 15 12:14:07 2007  Koichi Sasada  <ko1@atdot.net>
21526         * sample/test.rb: fix to show line information whether test succeeds.
21528 Thu Jun 14 17:16:05 2007  Tanaka Akira  <akr@fsij.org>
21530         * eval_load.c (Init_load): delay allocating an array for rb_load_path
21531           to avoid GC problem in very early stage.
21532           (RUBY_GC_STRESS causes GC in such stage.)
21534         * variable.c (rb_gc_mark_global_tbl): rb_global_tbl may be 0 in
21535           very early stage.
21537         * thread.c (thread_cleanup_func) [IA64]: clear register stack position.
21538           (thread_start_func_2) [IA64]: record the beginning of register
21539           stack using extra argument.
21540           (rb_gc_save_machine_context) [IA64]: record the end of register
21541           stack.
21543         * gc.c [IA64] (SET_STACK_END): record the end of register stack.
21544           (garbage_collect) [IA64]: use recorded register stack area for
21545           GC marking.
21546           (yarv_machine_stack_mark) [IA64]: GC mark from the register stack
21547           area.
21549         * yarvcore.c [IA64] (rb_gc_register_stack_start): defined.
21550           (Init_VM): store th->self on stack to fix GC problem.
21551           (Init_yarv) [IA64]: initialize the beginning of register stack.
21553         * yarvcore.h (struct rb_thread_struct) [IA64]: new members for
21554           register stack area.
21556         * thread_pthread.ci (thread_start_func_1) [IA64]: call
21557           thread_start_func_2 with the end of register stack.
21559         * cont.c (struct rb_context_struct) [IA64]: new members for register
21560           stack area.
21561           (cont_mark) [IA64]: GC mark from register stack area.
21562           (cont_free) [IA64]: free saved register stack.
21563           (cont_save_machine_stack) [IA64]: record the position and contents
21564           of the register stack.
21565           (cont_capture): store cont->self on stack to fix GC problem.
21566           (cont_restore_1) [IA64]: restore the register stack.
21567           [IA64] (register_stack_extend): new function.
21568           (cont_restore_0) [IA64]: call register_stack_extend instead of
21569           cont_restore_1.
21571         [ruby-dev:30982]
21573 Thu Jun 14 17:09:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21575         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser): handle more
21576           extensions.  [ruby-dev:30972]
21578 Thu Jun 14 14:40:42 2007  Tanaka Akira  <akr@fsij.org>
21580         * lib/securerandom.rb: document updated.
21581           suggested by NaHi.  [ruby-dev:30966]
21583 Wed Jun 13 22:42:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21585         * gc.c (garbage_collect): update IA64 register stack code.
21586           [ruby-dev:30971]
21588 Wed Jun 13 06:05:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21590         * configure.in (darwin): prohibit loading extension libraries to
21591           miniruby.
21593 Tue Jun 12 21:50:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21595         * parse.y (call_args): no allow splat after assocs.  takes
21596           consistency over compatibility.
21598         * parse.y (call_args2): ditto
21600 Tue Jun 12 14:53:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21602         * lib/mkmf.rb (Logging.quiet, Logging.message): added quiet flag and
21603           use it.  [ruby-core:10909]
21605         * lib/mkmf.rb (find_header): use header names in the message.
21607 Sun Jun 10 18:37:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21609         * ext/probeprofiler/probeprofiler.c: clean warnings.
21611 Sun Jun 10 18:32:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21613         * missing/isinf.c, missing/dup2.c, missing/strtod.c, missing/x68.c,
21614           missing/alloca.c: use "ruby/config.h".
21616 Sun Jun 10 17:49:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21618         * instruby.rb (install_recursive): should check parent directories of
21619           the destination.  [ruby-dev:30947]
21621 Sun Jun 10 16:59:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21623         * parse.y (do_block, brace_block): fix line numbers.  [ruby-dev:30831]
21625 Sun Jun 10 16:57:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21627         * instruby.rb (install_recursive): add :glob option rather than
21628           using FNM_DOTMACH.
21630         * instruby.rb (ext-comm): make header directory first.
21632 Sun Jun 10 16:10:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21634         * test/ruby/test_beginendblock.rb: typo.
21636 Sun Jun 10 16:07:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21638         * instruby.rb (install_recursive): skip .svn directories.
21640 Sun Jun 10 15:44:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21642         * win32/Makefile.sub (config.status): rubyhdrdir was missing.
21644 Sun Jun 10 15:26:36 2007  Tanaka Akira  <akr@fsij.org>
21646         * Makefile.in: use --output-file for gperf to not leave lex.c.tmp.
21648 Sun Jun 10 15:11:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21650         * Makefile.in, win32/Makefile.sub (XCFLAGS): -I. is needed for *.inc.
21652         * ext/extmk.rb: prepend also topdir to mflags at last.
21654 Sun Jun 10 13:47:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21656         * test/ruby/test_beginendblock.rb (test_should_propagate_signaled):
21657           get rid of invoking shell.  [ruby-dev:30942]
21659 Sun Jun 10 12:56:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21661         * include/ruby: moved public headers.
21663         * instruby.rb (install_recursive): skip backup files.
21665         * instruby.rb (ext-comm): install only current platform headers.
21667 Sun Jun 10 10:42:04 2007  Tanaka Akira  <akr@fsij.org>
21669         * lib/securerandom.rb: renamed from lib/secrand.rb.
21670           suggested by NaHi.  [ruby-dev:30934]
21672 Sat Jun  9 06:40:05 2007  Tanaka Akira  <akr@fsij.org>
21674         * lib/secrand.rb: rename SecRand() to SecRand.random_number.
21675           suggested by NaHi.  [ruby-dev:30934]
21677 Fri Jun  8 16:34:20 2007  Tanaka Akira  <akr@fsij.org>
21679         * ext/zlib/zlib.c (gzfile_s_open): use FilePathValue to support
21680           to_path.
21682 Fri Jun  8 16:11:00 2007  Koichi Sasada  <ko1@atdot.net>
21684         * eval_jump.h: th->errinfo should clear with nil.
21686 Fri Jun  8 14:53:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21688         * parse.y (call_args): allow splat argument after unpacked
21689           assocs like 1.8 does.
21691         * parse.y (call_args): ditto.
21693 Fri Jun  8 14:26:18 2007  Tanaka Akira  <akr@fsij.org>
21695         * lib/secrand.rb: new file for secure random interface.
21697         * lib/cgi/session.rb: use secrand for generating cookies.
21699 Fri Jun  8 12:44:37 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21701         * {win32,wince}/Makefile.sub: add lex.c rule.
21703 Fri Jun  8 11:54:18 2007  Tanaka Akira  <akr@fsij.org>
21705         * lex.c.blt: moved from lex.c.
21707         * Makefile.in: use lex.c.blt if gperf is not available.
21708           [ruby-list:8212], [ruby-list:8214], [ruby-list:24667],
21709           [ruby-talk:120857], [ruby-dev:28102]
21711 Thu Jun  7 21:38:39 2007  Koichi Sasada  <ko1@atdot.net>
21713         * thread.c (rb_thread_execute_interrupts): invoke ensure when
21714           main thread exits.
21716 Thu Jun  7 19:02:48 2007  Tanaka Akira  <akr@fsij.org>
21718         * lib/pp.rb: call original "method" method instead of redefined one.
21720 Thu Jun  7 17:20:57 2007  Koichi Sasada  <ko1@atdot.net>
21722         * iseq.c (prepare_iseq_build): freeze filename and name string.
21724         * variable.c: freeze class name string.
21726 Thu Jun  7 12:48:33 2007  Koichi Sasada  <ko1@atdot.net>
21728         * cont.c (cont_restore_1): fix to check root fiber [ruby-dev:30911].
21730         * test/ruby/test_fiber.rb: add a test.
21732 Thu Jun  7 07:24:36 2007  NARUSE, Yui  <naruse@ruby-lang.org>
21734         * lib/json/common.rb: Ponder offering parse! method.
21736         * lib/json/editor.rb: be a bit more robust while loading data.
21738         * ext/json/ext/{generator,parser}/extconf.rb:
21739           add a have_header directive for st.h
21741         * test/json: fix some tests.
21743 Thu Jun  7 03:29:18 2007  Koichi Sasada  <ko1@atdot.net>
21745         * test_fiber.rb: add a test (Continuation and Fiber).
21747 Thu Jun  7 03:17:24 2007  Koichi Sasada  <ko1@atdot.net>
21749         * cont.c (cont_new): add debug message.
21751         * cont.c (cont_restore_1): copy stack information from fiber.
21753         * cont.c (rb_fiber_s_new): fix to mark created fiber.
21755         * test/ruby/test_fiber.rb: add some tests around Thread and Fiber.
21757         * yarvcore.c (thread_free): fix to skip freeing stack if root fiber
21758           is available.
21760 Thu Jun  7 01:03:20 2007  Koichi Sasada  <ko1@atdot.net>
21762         * eval_intern.h, eval.c (ruby_init): remove POP_TAG_INIT().
21764         * cont.c (rb_fiber_start): remove zero-clearing tag.
21766 Wed Jun  6 20:23:46 2007  Koichi Sasada  <ko1@atdot.net>
21768         * insns.def (invokeblock): fix of splat argument.
21769           (splat same as normal method dispatch)
21771 Wed Jun  6 16:27:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21773         * insns.def: fixed indentation.
21775 Wed Jun  6 10:58:23 2007  Koichi Sasada  <ko1@atdot.net>
21777         * eval.c (rb_yield): fix to check Qundef.
21779 Wed Jun  6 10:57:45 2007  Koichi Sasada  <ko1@atdot.net>
21781         * test/ruby/test_continuation.rb: add a test for last commit.
21783 Wed Jun  6 10:55:42 2007  Koichi Sasada  <ko1@atdot.net>
21785         * cont.c (rb_cont_call): forbid calling dead fiber with
21786           Continuation#call.
21788 Wed Jun  6 10:50:01 2007  Koichi Sasada  <ko1@atdot.net>
21790         * compile.c (iseq_compile_each): fix around yield arguments
21791           (with NODE_ARGSCAT).
21793 Wed Jun  6 02:50:53 2007  Koichi Sasada  <ko1@atdot.net>
21795         * cont.c (rb_fiber_start): clear th->tag and check error to fix
21796           [ruby-dev:30888] and [ruby-dev:30889].
21798         * eval_intern.h: fix rb_fiber_start() prototype.
21800         * test/ruby/test_fiber.rb: add tests for above.
21802 Wed Jun  6 02:40:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21804         * insnhelper.h, insns.def (DEC_SP): shouldn't use unary minus operator
21805           in pointer operation. some compilers (such as VC++8 x64) cannot deal
21806           it with expected way.
21808 Wed Jun  6 02:19:48 2007  Koichi Sasada  <ko1@atdot.net>
21810         * parse.y (new_yield), compile.c (iseq_compile_each): fix
21811           passing parameter.
21813         * eval.c, eval_jump.h: simplify rb_yield*.
21815         * proc.c (proc_mark): fix to mark proc->block.proc.
21817         * proc.c (Init_Proc): add Proc#lambda?
21819         * test/ruby/test_lambda.rb: add some tests.
21821         * vm.c (invoke_block): fix to check lambda block or not.
21823         * vm.c (th_yield_setup_args): fix to check arguments size
21824           when lambda block.
21826 Tue Jun  5 16:30:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21828         * io.c (rb_f_p): returns arguments to intervene.  [ruby-dev:29736]
21830 Tue Jun  5 14:07:55 2007  Koichi Sasada  <ko1@atdot.net>
21832         * insns.def (invokeblock): check block is created by lambda
21833           or Proc.new.
21835         * vm.c (block_proc_is_lambda): added.
21837 Tue Jun  5 14:47:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21839         * lib/pp.rb (PP::PPMethods::seplist): revert last change to work
21840           around wrapper bug.  [ruby-dev:30840]
21842 Tue Jun  5 14:11:15 2007  NARUSE, Yui  <naruse@ruby-lang.org>
21844         * ext/nkf/nkf-utf8/nkf.c (kanji_convert): Fix guess fallback.
21846 Tue Jun  5 13:32:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21848         * compile.c, dir.c, eval.c, eval_jump.h, eval_method.h, numeric.c,
21849           pack.c, parse.y, re.c, thread.c, vm.c, vm_dump.c, call_cfunc.ci,
21850           thread_pthread.ci, thread_win32.ci: fixed indentation.
21852         * call_cfunc.ci: protoized.
21854         * thread_win32.ci: fixed typo.
21856 Tue Jun  5 13:17:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21858         * call_cfunc.ci, compile.c, dir.c, eval.c, eval_jump.h, numeric.c,
21859           pack.c, re.c, thread.c, thread_win32.ci, vm.c, vm_dump.c: fixed
21860           indentation.
21862 Mon Jun  4 21:15:45 2007  NARUSE, Yui  <naruse@ruby-lang.org>
21864         * lib/json.rb, lib/json, ext/json, test/json:
21865           import JSON library.
21867         * ext/nkf: import nkf.c rev:1.124
21868           Support CP10001.
21870 Mon Jun  4 20:52:58 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21872         * numeric.c (int_round): should not just truncate.
21874 Sat Jun  2 16:48:55 2007  Koichi Sasada  <ko1@atdot.net>
21876         * cont.c (Fiber#pass): rename to Fiber#yield.  Block parameter
21877           of fiber body receive first yield values.
21878           e.g.: Fiber.new{|x| p x}.yield(:ok) #=> :ok
21880         * cont.c: rename rb_context_t#retval to rb_context_t#value.
21882         * test/ruby/test_fiber.rb: ditto.
21884 Sat Jun  2 16:45:21 2007  Koichi Sasada  <ko1@atdot.net>
21886         * proc.c (Init_Proc): remove a line break.
21888 Sat Jun  2 01:27:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21890         * numeric.c (int_round): small optimization to handle bignums.
21892 Fri Jun  1 13:02:35 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21894         * insnhelper.h (INC_SP): shouldn't cast ``x'' to unsigned type because
21895           it might be a negative value.
21897         * insnhelper.h, insns.def: shouldn't use unary minus operator in index
21898           operator. some compilers (such as VC++8 x64) cannot deal it with
21899           expected way.
21901 Fri Jun  1 11:33:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21903         * numeric.c (num_round): should convert self to Float.
21904           [ruby-dev:30860]
21906 Fri Jun  1 02:01:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21908         * numeric.c (flo_round): now takes optional argument to specify
21909           number of digits, like round() in Python/PHP.
21911         * numeric.c (num_round): ditto.
21913 Fri Jun  1 01:58:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21915         * enum.c (each_with_index_i): should work well with continuation.
21916           a patch from sheepman <sheepman AT sheepman.sakura.ne.jp>.
21917           [ruby-dev:30846]
21919 Thu May 31 17:27:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21921         * lib/benchmark.rb (Benchmark::Job::item): avoid modifying the
21922           argument unintentionally.  [ruby-talk:253676]
21924 Wed May 30 14:43:00 2007  Koichi Sasada  <ko1@atdot.net>
21926         * cont.c (cont_capture): store all local variables in heap
21927           ([ruby-dev:30832]).
21929         * vm.c (th_stack_to_heap): added.
21931         * test/ruby/test_continuation.rb: add a test for above.
21933         * eval_intern.h (th_get_ruby_level_cfp): fix to clean code.
21935 Wed May 30 13:32:34 2007  Shugo Maeda  <shugo@ruby-lang.org>
21937         * lib/net/imap.rb (ResponseParser#next_token): fixed
21938           error message.
21940         * lib/net/imap.rb (ResponseParser#parse_error): fixed
21941           the condition not to refer @token.symbol unexpectedly.
21942           Thanks, Dick Monahan.
21944 Wed May 30 13:24:33 2007  Shugo Maeda  <shugo@ruby-lang.org>
21946         * lib/net/ftp.rb (Net::FTP#transfercmd): skip 2XX
21947           responses for some FTP servers.
21949 Wed May 30 04:18:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21951         * eval.c (rb_eval_cmd): just return if no exceptions.
21952           [ruby-dev:30820]
21954 Wed May 30 02:14:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21956         * signal.c (interrupt_init): needs to pass nil for Interrupt.
21957           [ruby-core:11038]
21959         * signal.c (trap): fixed segfaults.  [ruby-dev:30830]
21961 Wed May 30 00:50:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21963         * gc.c (rb_source_filename, obj_free): suppress warnings.
21965         * gc.c (garbage_collect, yarv_machine_stack_mark): fixed typo.
21966           http://bugs.debian.org/426267
21968 Wed May 30 00:24:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21970         * parse.y (open_args, arg_ambiguous, parser_warning): should not use
21971           rb_warning in the parser.
21973 Tue May 29 12:31:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21975         * win32/win32.c (rb_w32_opendir): removed duplicated code.
21977 Tue May 29 10:55:24 2007  Koichi Sasada  <ko1@atdot.net>
21979         * cont.c: fix bug around Continuation and Fiber.
21981         * test/ruby/test_continuation.rb: add tests for Continuation.
21983 Tue May 29 10:54:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21985         * win32/win32.c (rb_w32_opendir, rb_w32_readdir): eliminate magic
21986           numbers.
21988 Mon May 28 10:27:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21990         * cont.c: fixed a function name.
21992 Mon May 28 03:56:44 2007  Koichi Sasada  <ko1@atdot.net>
21994         * cont.c: support Fiber.  Check test/ruby/test_fiber.rb for detail.
21995           Fiber is known as "Micro Thread", "Coroutine", and other terms.
21996           At this time, only Fiber#pass is supported to change context.
21997           I want to know more suitable method name/API for Fiber (... do you
21998           know more suitable class name instead of Fiber?) as "suspend/resume",
21999           "call", "yield", "start/kick/stop/restart", ....
22001         * eval.c, eval_intern.h, thread.c, yarvcore.c, yarvcore.h: ditto.
22003 Sat May 26 00:38:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22005         * eval.c (ruby_exec_internal): do nothing if no code.
22007         * compile.c (rb_iseq_compile): check node if NULL before check
22008           nd_type.  [ruby-talk:252956]
22010 Sat May 26 00:05:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22012         * test/ruby/test_beginendblock.rb (test_should_propagate_signaled):
22013           skip tests for exitstatus and termsig on the platforms where
22014           signals not supported.
22016 Fri May 25 16:04:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22018         * yarvcore.c (Init_VM): wrap already initialized structs to use
22019           it directly.
22021 Fri May 25 11:09:47 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22023         * regint.h (include): on some platform, defines.h redefines
22024           SIZE_OF_LONG_LONG so shouldn't re-include config.h after included
22025           defines.h.
22027         * regint.h (vsnprintf): ruby on windows already have vsnprintf macro.
22029 Thu May 24 12:07:27 2007  Koichi Sasada  <ko1@atdot.net>
22031         * cont.c: check across trap violation.
22033         * eval.c, yarvcore.h: ditto.
22035 Thu May 24 11:46:55 2007  Koichi Sasada  <ko1@atdot.net>
22037         * gc.c, yarvcore.c: fix to mark VM structure on startup.
22039         * yarvcore.h: disable USE_CACHED_VALUE.
22041 Thu May 24 01:54:53 2007  Koichi Sasada  <ko1@atdot.net>
22043         * cont.c: support callcc which everyone love.
22044           incomplete. please give me bug reports.
22046         * common.mk, inits.c, thread.c: ditto.
22048         * yarvcore.c: export thread_mark().
22050         * yarvcore.h: disable value cache option.
22052         * eval_intern.h: set th_get_ruby_level_cfp to inline.
22054 Wed May 23 15:39:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22056         * common.mk: add a rule for regsyntax.c.
22058 Wed May 23 10:31:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22060         * oniguruma.h: updated to Oniguruma 5.7.0.
22062         * regsyntax.c, unicode.c: new files along with Oniguruma 5.x.
22064 Wed May 23 06:51:46 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
22066         * lib/cgi.rb (CGI#[]): get rid of exceptions being raised.
22067           [ruby-dev:30740], Thanks Kentaro KAWAMOTO.
22069 Wed May 23 05:49:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22071         * ext/extmk.rb, ext/purelib.rb, lib/mkmf.rb, runruby.rb: clear default
22072           load path to get rid of load pre-installed extensions/libraries.
22073           [ruby-core:11017]
22075 Tue May 22 16:37:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22077         * ruby.c (set_arg0): support RSTRING_LEN on HP-UX.  a patch from
22078           WATANABE Tetsuya <Tetsuya.WATANABE AT nifty.com>.  [ruby-dev:30806]
22080 Mon May 21 13:40:00 2007  Koichi Sasada  <ko1@atdot.net>
22082         * compile.c, vm_macro.def: support tail call optimization
22083           (on default, this feature is not enabled).
22085         * iseq.c, compile.c, vm_opts.h: add "tailcall_optimization"
22086           option.
22088         * sample/test.rb (test_ok): fix to adjust tailcall stack layout.
22090         * insns.def, vm.c, compile.c, yarvcore.c, yarvcore.h:
22091           add opt_gt, opt_le instructions.
22093 Mon May 21 03:34:06 2007  Minero Aoki  <aamine@loveruby.net>
22095         * lib/net/smtp.rb: CRAM-MD5 authentication did not work.
22096           [ruby-dev:30770]
22098 Sat May 19 10:26:01 2007  Tadayoshi Funaba  <tadf@dotrb.org>
22100         * lib/date/format.rb (Date._parse): detects some OFX dates
22101           (Of course not fully).
22103 Sat May 19 03:08:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22105         * enum.c (enum_inject): minor improvement.  [ruby-dev:30792]
22107         * enum.c (one_i): no needs to iterate once the result became false.
22109         * enum.c (enum_one): fix for an example.
22111         * enum.c (one_iter_i, none_iter_i): DRY.;
22113 Sat May 19 01:07:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22115         * enum.c (enum_inject): it is now can work without block.  you
22116           have to specify two argument method name as the first argument.
22118         * enum.c (Init_Enumerable): reduce is new alias to inject.
22120 Sat May 19 01:05:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22122         * file.c (Init_File): method definition mismatch.
22124 Fri May 18 16:44:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22126         * file.c (Init_File): add to_path method to File objects.
22128 Fri May 18 11:12:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22130         * ruby.c (DllMain, ruby_init_loadpath): use DLL instance handle given
22131           to DllMain instead of VirtualQuery so that loadpath becomes relative
22132           from the DLL on WinCE too.
22134 Thu May 17 17:03:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22136         * misc/ruby-style.el (ruby-style-label-indent): for yacc rules.
22138 Thu May 17 13:30:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22140         * parse.y (f_arg): remove typo from ripper description.
22142 Thu May 17 13:23:38 2007  Koichi Sasada  <ko1@atdot.net>
22144         * parse.y, compile.c (set_arguments): fix to support in-paren
22145           parameter (ex: def foo((a, b))).
22147 Thu May 17 13:01:52 2007  Koichi Sasada  <ko1@atdot.net>
22149         * iseq.c (ruby_iseq_disasm): fix to show post arg info.
22151 Thu May 17 12:56:52 2007  Koichi Sasada  <ko1@atdot.net>
22153         * debug.c (ruby_debug_node): fix to show node line.
22155 Wed May 16 21:48:44 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
22157         * lib/logger.rb (Logger::Application): remove meaningless logdev
22158           attribute and added logger attribute instead.  [ruby-core:11143]
22159           also added Logger#formatter rdoc comment.
22161 Tue May 15 16:40:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22163         * test/ruby/test_beginendblock.rb (test_endblockwarn): now parser
22164           warnings emit source names and line numbers.
22166 Tue May 15 15:01:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22168         * win32/win32.c (init_stdhandle): stderr should be without buffering,
22169           but mswin32 use buffering when stderr is not connected to tty.
22171 Mon May 14 02:12:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22173         * array.c (rb_ary_zip): a.zip(b,c) should return an array, not
22174           enumerator.
22176         * array.c (rb_ary_zip): a.zip(b,c) should return array with size
22177           truncated to the size of its shortest argument array.
22178           [incompatible]
22180 Mon May 14 01:54:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22182         * array.c (rb_ary_choice): should return nil when the array is
22183           empty.
22185 Sat May 12 18:26:36 2007  Minero Aoki  <aamine@loveruby.net>
22187         * lib/net/http.rb (tokens): forgot to add strip. [ruby-core:11120]
22189         * test/net/http/test_http.rb: test Net::HTTP.post_form.
22191 Fri May 11 15:27:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22193         * iseq.c (iseq_data_to_ary): internal IDs must not be exposed.
22194           [ruby-core:11073]
22196         * parse.y (internal_id_gen): now returns scope local ID instead of
22197           global one.
22199 Thu May 10 15:15:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22201         * test/ruby/test_super.rb: add tests.
22203 Thu May 10 15:14:05 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22205         * ext/iconv/iconv.c (iconv_s_conv): rdoc fix.
22207 Thu May 10 15:09:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22209         * parse.y (POINTER_P): pointer may be larger than long.
22211         * parse.y (vtable_size, vtable_included, vtable_tblcpy,
22212           vtable_to_tbl): constified.
22214 Thu May 10 10:13:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22216         * thread.c (rb_thread_priority): rdoc fix; the initial value is
22217           inherited from the creating thread.  [ruby-core:10607]
22219 Wed May  9 12:28:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22221         * bignum.c (Init_Bignum), numeric.c (Init_Numeric): added fdiv as
22222           aliases of quo.  [ruby-dev:30771]
22224 Tue May  8 23:39:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
22226         * lib/date/format.rb (Date._parse): revised treatment of
22227           hyphened/separatorless dates.
22229         * lib/date/format.rb: some trivial adjustments.
22231 Tue May  8 20:23:07 2007  Tadayoshi Funaba  <tadf@dotrb.org>
22233         * lib/date/format.rb: reverted.
22235 Tue May  8 19:32:18 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
22237         * lib/rational.rb: fix high-precision Rationals cannot be
22238           converted to Floats. [ruby-Bugs:10502], [ruby-core:11069],
22239           [ruby-dev:30743]
22241 Mon May  7 10:59:55 2007  Kouhei Sutou  <kou@cozmixng.org>
22243         * lib/rss/image.rb, test/rss/test_image.rb: fixed Image module
22244           namespace URI. reported by Dmitry Borodaenko. Thanks.
22246 Sun May  6 18:44:11 2007  Minero Aoki  <aamine@loveruby.net>
22248         * lib/net/http.rb (Net::HTTP.post_form): allow an Array of String
22249           for pairs argument. [ruby-Bugs:10340]
22251         * lib/net/http.rb (Net::HTTP#set_form_data): ditto.
22253 Sun May  6 17:54:36 2007  Minero Aoki  <aamine@loveruby.net>
22255         * lib/net/http.rb: Connection header field might include both of
22256           "keep-alive" token and "close" token. [ruby-core:10818]
22258 Sat May  5 16:26:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22260         * lib/date/format.rb (Format::Bag#method_missing): get rid of
22261           modifying original argument.  [ruby-core:11090]
22263 Thu May  3 22:20:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22265         * configure.in, defines.h, eval_load.c (rb_feature_p, rb_provided,
22266           search_required, rb_require_safe), ext/extmk.rb: Fix
22267           a bug where a statically linked extension cannot be autoloaded.
22268           [ruby-dev:30023] / [ruby-dev:30239]
22270         * thread.c: added an internal class, Barrier.
22272         * thread.c: copied rdocs from fastthread.
22274         * yarvcore.h (struct rb_vm_struct): moved loading_table from global.
22276 Thu May  3 18:10:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22278         * vm_evalbody.ci, insns.def, vm.c, tool/insns2vm.rb (rb_num_t):
22279           renamed to get rid of name clash.  [ruby-dev:30504]
22281         * yarvcore.c (ruby_thread_init): ditto.
22283 Wed May  2 18:52:58 2007  Koichi Sasada  <ko1@atdot.net>
22285         * vm.c, yarvcore.h, yarvcore.c, insns.def: fix to mark VM stack
22286           in correct range.
22288 Wed May  2 17:13:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22290         * bignum.c (rb_big_quo): now calculate in integer.  [ruby-dev:30753]
22292 Wed May  2 15:14:56 2007  Koichi Sasada  <ko1@atdot.net>
22294         * eval_method.h: add redefine checks ([ruby-dev:30751]).
22296 Wed May  2 11:22:52 2007  Koichi Sasada  <ko1@atdot.net>
22298         * compile.c: use Qtrue instead of 2.
22300         * vm.c, insns.def: support "lambda" calling convention.
22302 Wed May  2 06:46:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22304         * error.c, parse.y, ruby.h (rb_compile_warn, rb_compile_warning): warn
22305           for compilation.  the parser should no longer use rb_warn() and
22306           rb_warning().  [ruby-dev:30121]
22308 Wed May  2 05:45:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22310         * parse.y (assoc): result of assoc_new needs to be an assoc.
22312 Wed May  2 05:40:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22314         * bignum.c (rb_big_pow): improvement by calculating from MSB and using
22315           factorization.  <http://yowaken.dip.jp/tdiary/20070426.html#p01>
22317 Tue May  1 18:45:45 2007  Koichi Sasada  <ko1@atdot.net>
22319         * sample/test.rb: import matzruby's sample/test.rb.
22321 Tue May  1 17:46:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22323         * array.c (rb_ary_choice): a new method to choose an element
22324           randomly from an array.
22326         * array.c (rb_ary_choice): fixed mistake from RDoc.
22328 Tue May  1 13:59:18 2007  Koichi Sasada  <ko1@atdot.net>
22330         * proc.c (proc_arity): fix an arity bug ([ruby-core:11060]).
22332 Tue May  1 13:12:49 2007  Koichi Sasada  <ko1@atdot.net>
22334         * yarvcore.h, compile.c (set_arguments): support post arguments.
22336         * test/ruby/test_method.rb: add tests for above.
22338         * test/ruby/test_proc.rb: ditto.
22340         * proc.c: fix an arity bug ([ruby-core:11029]).
22342         * vm.c, vm.h, insns.def, vm_dump.h: fix bmethod process.
22344         * vm.c: support block argument on block parameter.
22346 Fri Apr 27 17:05:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22348         * numeric.c (int_pow): bugfix of overflow detection.
22350         * numeric.c (int_pow): rb_big_pow() may return other than Bignum.
22352 Fri Apr 27 01:51:50 2007  Koichi Sasada  <ko1@atdot.net>
22354         * compile.c: support multiple splat (e.g, [a, *b, *c, e, *f]).
22356 Fri Apr 27 00:03:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22358         * bignum.c (rb_big_pow): truncate all zero BDIGITs. [ruby-dev:30733]
22360 Thu Apr 26 17:31:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22362         * bignum.c (rb_big_pow): reduce multiplying for even number.
22364         * numeric.c (int_pow): calculate power in Fixnum as possible.
22365           [ruby-dev:30726]
22367 Thu Apr 26 17:18:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22369         * parse.y: fixes for ripper.
22371         * parse.y (primary): reduced duplicated code.
22373         * parse.y (f_arg_item): should not override by meaningless value.
22375         * parse.y (f_arg, assocs): should not use $$ before assigned.
22377         * parse.y (assoc_list): dispatch assoclist_from_args for assocs as
22378           well as args.
22380         * parse.y (assoc): return assoc if dispatched result is $1.
22382 Thu Apr 26 13:54:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22384         * misc/ruby-style.el: new file.  C/C++ style for ruby source code.
22386 Wed Apr 25 19:49:16 2007  Tanaka Akira  <akr@fsij.org>
22388         * ext/socket/socket.c (unix_send_io, unix_recv_io): use CMSG_DATA to
22389           align file descriptor appropriately.
22391 Wed Apr 25 15:23:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22393         * win32/win32.c (NtInitialize, exit_handler): add initializing and
22394           cleanup of critical section object for select.
22396         * win32/win32.c (do_select): block reentrance.
22398         * win32/win32.c (rb_w32_select): 0 sec polling of socket. this is
22399           workaround because winsock cannot do select at same socket at the
22400           same time by two or more threads.
22402 Wed Apr 25 14:10:47 2007  Koichi Sasada  <ko1@atdot.net>
22404         * ext/probeprofiler/probeprofiler.c: fix function name and
22405           return value.
22407 Wed Apr 25 12:42:40 2007  Koichi Sasada  <ko1@atdot.net>
22409         * yarvcore.h: remove rb_control_frame_t#callee_id.
22411         * vm_macro.def: ditto.
22413         * eval_intern.h (exec_event_hooks): fix to check event flags
22415         * eval_intern.h (EXEC_EVENT_HOOK): fix to re-check event flags.
22417         * ext/probeprofiler : added.  this profiler is sampling based
22418           profiler.
22420         * vm.c: add rb_thread_current_status() API for probeprofiler.
22422         * thread.c (rb_thread_execute_interrupts): add comments.
22424 Wed Apr 25 10:36:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22426         * eval_intern.h (PUSH_TAG): no argument now.
22428         * eval.c, eval_error.h, eval_jump.h, eval_load.c, proc.c, thread.c:
22429           ditto.
22431         * thread.c (alloc_event_hook, rb_thread_remove_event_hook): should
22432           return value.
22434 Tue Apr 24 09:33:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22436         * dir.c (do_stat, do_lstat, do_opendir): should not warn ENOTDIR.
22437           [ruby-talk:248288]
22439 Mon Apr 23 22:14:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22441         * ext/extmk.rb ($ruby): add extout directory to include path.
22442           [ruby-core:11003]
22444         * lib/mkmf.rb (libpathflag): not to append RPATHFLAG to current
22445           directory.
22447         * lib/mkmf.rb (init_mkmf): add current directory to default
22448           library path with highest priority.  [ruby-core:10960]
22450         * lib/mkmf.rb (LINK_SO): LIBPATH to be placed before DLDFLAGS.
22452 Fri Apr 20 16:05:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22454         * configure.in (LIBPATHFLAG, RPATHFLAG): no needs to be quoted,
22455           it is done by libpathflag in mkmf.rb.
22457 Fri Apr 20 12:27:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22459         * lib/optparse.rb: fix to override conv proc.
22461 Fri Apr 20 12:21:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22463         * eval.c (ruby_cleanup): fixed access to out of bound, and inverted
22464           the order of errinfos.
22466 Fri Apr 20 10:33:23 2007  Koichi Sasada  <ko1@atdot.net>
22468         * eval_intern.h: add prototypes of rb_sourceline() and
22469           rb_sourcefile().
22471 Fri Apr 20 02:37:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22473         * eval.c (ruby_cleanup): re-send signal.  [ruby-dev:30516]
22475         * eval_error.h (error_handle): no message when exiting by signal.
22477         * intern.h (rb_thread_signal_raise, ruby_default_signal): prototypes.
22479         * signal.c (esignal_init): takes a signal number and an optional
22480           signal name.
22482         * signal.c (interrupt_init): pass SIGINT always.
22484         * signal.c (ruby_default_signal): invoke system default signal
22485           handler.
22487         * signal.c (rb_f_kill): use NUM2PIDT instead of NUM2INT.
22489         * signal.c (rb_signal_exec, trap): handle SIGTERM.  [ruby-dev:30505]
22491         * thread.c (rb_thread_signal_raise): now takes signal number instead
22492           of signal name.
22494         * thread.c (rb_thread_signal_exit): since rb_make_exception() calls
22495           #exception method, rb_class_new_instance() is not needed here.
22497         * yarvcore.h (struct rb_vm_struct), eval_jump.h (terminate_process):
22498           exit_code is no longer stored in VM.
22500 Thu Apr 19 18:37:49 2007  Koichi Sasada  <ko1@atdot.net>
22502         * eval.c, node.h, thread.c, yarvcore.[ch], eval_intern.h:
22503           support set_trace_func (incomplete.  id and klass
22504           don't be passed).  And support Thread#set_trace_func
22505           which hook only specified thread and Thread#add_trace_func
22506           which add new trace func instead of replace old one.
22507           C level API was modified.  See thread.c (logic) and
22508           yarvcore.h (data structures).
22510         * vm.c, vm_macro.def: add hook points.
22512         * compile.c, insns.def: fix "trace" instruction.
22514         * iseq.c, vm_macro.h: add compile option "trace_instruction".
22516         * test/ruby/test_settracefunc.rb: hook "c-return" of set_trace_func.
22518 Thu Apr 19 20:57:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22520         * parse.y (symbol): symbols should be followed by EXPR_ENDARG.
22522         * parse.y (dsym): ditto.
22524         * parse.y (parser_yylex): strings should be followed by
22525           EXPR_ENDARG.
22527         * parse.y (parser_yylex): ditto for numbers.
22529         * parse.y (parser_yylex): EXPR_ENDARG after ']' and '}'.
22531 Thu Apr 19 17:46:36 2007  Koichi Sasada  <ko1@atdot.net>
22533         * lib/optparse.rb: fix to override conv proc.
22535 Wed Apr 18 10:41:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22537         * util.c (ruby_strtod): exponent is radix 10.  [ruby-talk:248272]
22539 Wed Apr 18 02:50:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22541         * yarvcore.c (th_init2): push initial blockptr value for
22542           rb_block_given_p() outside ruby_exec().  [ruby-core:10923]
22544 Wed Apr 18 02:30:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22546         * configure.in (LDFLAGS): prepend -L. instead appending it to
22547           XLDFLAGS.  [ruby-core:10933]
22549         * configure.in (Makefile): remove $U for automake from MISSING.
22550           [ruby-talk:248171]
22552 Mon Apr 16 22:56:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22554         * ext/pty/expect_sample.rb: avoid symbolic link representation for
22555           expect.  a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>.
22556           [ruby-dev:30714]
22558 Mon Apr 16 22:51:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22560         * sample: replace TRUE, FALSE with true, false respectively.
22561           a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>.
22562           [ruby-dev:30713]
22564 Mon Apr 16 17:08:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22566         * lib/optparse.rb (make_switch): do not clobber converter if pattern
22567           has no convert method.  reported by sheepman in [ruby-dev:30709].
22569 Mon Apr 16 16:49:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22571         * ext/stringio/stringio.c (strio_seek): consistent behavior with
22572           IO#seek.  patch by sheepman in [ruby-dev:30710].
22574 Mon Apr 16 16:34:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22576         * parse.y (parser_yylex): should set command_start after block
22577           starting "do"s and braces.  [ruby-core:10916]
22579 Mon Apr 16 10:51:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22581         * enum.c (enum_each_with_index): each_with_index to forward
22582           arguments to each.  [ruby-core:10921]
22584 Mon Apr 16 10:43:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22586         * time.c (time_arg): should allow to specify 24:00.
22587           [ruby-core:10915]
22589 Sun Apr 15 09:12:54 2007  Tadayoshi Funaba  <tadf@dotrb.org>
22591         * lib/date/format.rb: added some zone names.
22593         * lib/date/format.rb (_parse): now interprets doted numerical
22594           dates as a big endian (except dd.mm.yyyy).
22596 Thu Apr 12 17:13:22 2007  Koichi Sasada  <ko1@atdot.net>
22598         * thread.c (mutex_try_lock): check and set owner thread.
22600         * thread_pthread.ci: fix to show error code in error message.
22602 Thu Apr 12 17:11:54 2007  Koichi Sasada  <ko1@atdot.net>
22604         * eval.c (rb_rescue2): restore cfp ([ruby-dev:30582]).
22606 Thu Apr 12 16:06:48 2007  Koichi Sasada  <ko1@atdot.net>
22608         * eval.c (rb_protect): restore cfp ([ruby-dev:30671]).
22610 Thu Apr 12 16:04:31 2007  Koichi Sasada  <ko1@atdot.net>
22612         * compile.c (iseq_compile_each): check node->nd_state == 1, not !0.
22614 Wed Apr 11 16:35:16 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22616         * win32/win32.[ch] (rb_w32_enter_critical, rb_w32_leave_critical): no
22617           need to reject reentrance. removed.
22619         * rubysig.h (RUBY_CRITICAL): follow above changes.
22621         * rubysig.h (TRAP_BEG, TRAP_END): no need to save errno.
22623 Tue Apr 10 17:02:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22625         * win32/win32.c (rb_w32_fclose, rb_w32_close): need to save errno
22626           before calling original fclose()/close().
22628 Tue Apr 10 16:14:22 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22630         * thread_win32.ci (w32_wait_events): check whether interrupt_event is
22631           valid handle or not.
22633         * thread_win32.ci (native_thread_destroy): clear interrupt_event when
22634           close it.
22636 Tue Apr 10 15:53:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22638         * thread_pthread.ci (native_thread_create): initialize sleep_cond.
22639           fixed: [ruby-dev:30675]
22641 Mon Apr  9 18:48:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22643         * thread.c (do_select): ubf_select() is not necessary. interrupt is
22644           checked in the loop.
22646 Mon Apr  9 18:27:26 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22648         * thread.c (do_select): use ubf_select() as UBF on windows.
22650         * win32/win32.c (do_select): shouldn't call catch_interrupt() here.
22651           fixed: [ruby-dev:30674], reported by wanabe.
22653 Mon Apr  9 09:24:32 2007  Shugo Maeda  <shugo@ruby-lang.org>
22655         * lib/net/imap.rb (disconnect): call shutdown for
22656           SSLSocket. Thanks, Technorama Ltd.
22658 Sun Apr  8 13:28:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22660         * compile.c (defined_expr): test arguments of NODE_CALL and so
22661           on as well as NODE_ATTRASGN.  [ruby-core:10886]
22663 Fri Apr  6 10:56:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22665         * ext/openssl/ossl_pkey_ec.c (ossl_ec_key_get_group): get rid of
22666           warning. we are aware of it.
22668 Fri Apr  6 04:00:24 2007  Technorama Ltd.  <oss-ruby@technorama.net>
22670         * ext/openssl/ossl_{bn,x509{attr,cert,name,store}}.c:
22671           Add documentation.
22673 Thu Apr  5 17:59:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22675         * compile.c (defined_expr): support for assignment.
22676           [ruby-core:10867]
22678         * compile.h (ADD_CATCH_ENTRY): removed temporary variable.
22680 Thu Apr  5 15:13:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22682         * ext/openssl/ossl_ssl_session.c (ossl_ssl_session_alloc): should
22683           return value.
22685 Thu Apr  5 14:58:49 2007  Technorama Ltd. <oss-ruby@technorama.net>
22687         * ext/openssl/ossl_pkcs5.c: New module.
22689         * ext/openssl/ossl_{cipher,digest,pkcs7,pkcs12}.c:
22690           Remove redundant module namespace.
22692         * ext/openssl/lib/openssl/{cipher,digest}.rb
22693           Add backwards compatible classes for rearranged classes.
22695         * ext/openssl/ossl_{pkcs7,pkcs12}.c: Add documentation.
22697 Thu Apr  5 00:42:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22699         * error.c (rb_notimplement), io.c (pipe_open): removed definite
22700           articles and UNIX manual section from messages.  [ruby-dev:30690]
22702 Wed Apr  4 17:09:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22704         * io.c (pipe_open): refined the message of NotImplementedError.
22705           [ruby-dev:30685]
22707 Wed Apr  4 12:29:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22709         * error.c (rb_notimplement): should show the name of this func,
22710           not callee.
22712 Wed Apr  4 10:18:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22714         * io.c (popen_exec): should not close close-on-exec FDs.
22715           [ruby-dev:30679]
22717         * io.c (pipe_open): raise NotImplementedError for command "-" on
22718           platforms where fork(2) is not available.  [ruby-dev:30681]
22720 Tue Apr  4 04:17:18 2007  Technorama Ltd. <oss-ruby@technorama.net>
22722         * ext/openssl/ossl_ssl.c: Add documentation.
22724 Tue Apr  3 16:22:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22726         * ext/openssl/extconf.rb: check for functions added in 1.9.
22728         * ext/openssl/ruby_missing.h: check per features instead by
22729           checking version code.  [ruby-core:10845]
22731 Tue Apr  3 16:02:44 2007  Technorama Ltd. <oss-ruby@technorama.net>
22733         * ext/openssl/ossl_bn.c: More documentation.
22735         * ext/openssl/lib/ossl_{pkey,pkey_ec}.[ch]: Add elliptic curves.
22737 Tue Apr  3 15:50:41 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22739         * ext/socket/socket.c (s_recv, s_recvfrom): some systems (such as
22740           windows) doesn't set fromlen if the socket is connection-oriented.
22741           reported by Bram Whillock in [ruby-core:10512] [ruby-Bugs#9061]
22743 Tue Apr  3 09:36:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22745         * ext/openssl/ruby_missing.h: need to include version.h to check
22746           RUBY_VERSION_CODE.
22748 Mon Apr  3 07:10:12 2007  Technorama Ltd. <oss-ruby@technorama.net>
22750         * ext/openssl/ossl_{ssl.[ch],ssl_session.c},
22751           ext/openssl/lib/openssl/lib/openssl/ssl.rb:
22752           New SSL::Session class.  Add session cb's, getter/setters,
22753           config, and statistics methods.
22755 Mon Apr  3 04:00:23 2007  Technorama Ltd. <oss-ruby@technorama.net>
22757         * ext/openssl/{ossl.[ch],ossl_pkey.c} Add documentation.
22759         * ext/openssl/ossl_hmac.c Add reset method.
22761         * ext/openssl/ossl_cipher.c (Cipher#update) Take additional
22762           buffer argument.
22764         * ext/openssl/{ossl_bio.c,ossl_ssl.c,ruby_missing.h}
22765           compatibility with 1.8.
22767 Mon Apr  2 21:55:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22769         * insns.def (throw), thread.c, yarvcore.h (throwed_errinfo): fixed
22770           typo.
22772 Fri Mar 30 11:46:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22774         * win32/win32.c (rb_w32_cmdvector): fixed buffer size. reported by
22775           wanabe [ruby-dev:30672]
22777         * win32/win32.c (init_env, insert, rb_w32_get_environ): use strdup
22778           instead of malloc + strlcpy. suggested by nobu [ruby-dev:30673]
22780 Fri Mar 30 02:29:04 2007  Technorama  <oss-ruby@technorama.net>
22782         * ext/openssl/ossl_{bn,cipher,digest,hmac,rand,pkey_{dh,dsa,rsa}}.c:
22783           Add Documentation for various methods.
22785         * ext/openssl/lib/openssl/cipher.rb: Ditto
22787         * ext/openssl/ossl_bn.c: add lshift! and rshift! methods.
22789         * ext/openssl/ossl_digest.c: GetDigestPtr() also accept a string.
22791 Fri Mar 23 11:28:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22793         * win32/win32.c (init_env, insert, cmdglob, rb_w32_cmdvector,
22794           rb_w32_opendir, rb_w32_readdir, rb_w32_strerror, rb_w32_stati64,
22795           rb_w32_get_environ): use strlcpy() and strlcat().
22797         * win32/win32.c (rb_w32_opendir): use realloc() instead of xrealloc().
22799         * win32/win32.c (rb_w32_closedir): check NULL before free pointers.
22801 Fri Mar 23 00:24:52 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
22803         * lib/shell: commit miss(support for ruby 1.9(YARV) thread model).
22805 Thu Mar 22 13:32:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22807         * win32/Makefile.sub (LIBS): remove an unnecessary library.
22809 Thu Mar 22 10:27:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22811         * test/ruby/test_bignum.rb (test_to_s): add tests for Bignum#to_s.
22813 Wed Mar 21 20:38:06 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22815         * marshal.c (w_short, w_long, w_object): get rid of VC++ warnings.
22817 Wed Mar 21 20:05:07 2007  Koichi Sasada  <ko1@atdot.net>
22819         * compile.c, parse.y, eval.c, intern.h, iseq.c, lex.c, node.h,
22820           proc.c, vm.c, vm_macro.def, vm_macro.def, yarvcore.c, yarvcore.h,
22821           debug.c, debug.h: merge half-baked-1.9 changes.  The biggest change
22822           is to change node structure around NODE_SCOPE, NODE_ARGS.  Every
22823           scope (method/class/block) has own NODE_SCOPE node and NODE_ARGS
22824           represents more details of arguments information.  I'll write a
22825           document about detail of node structure.
22827 Wed Mar 21 17:04:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22829         * bignum.c (rb_big2str0): round up for the most significant digit.
22830           [ruby-core:10686]
22832 Tue Mar 21 08:20:00 2007  Nathaniel Talbott  <ntalbott@ruby-lang.org>
22834         * test/testunit/collector/test_dir.rb: Fixed test/unit tests that
22835           were breaking due to Module#public_instance_methods now
22836           returning a Symbol instead of a String.
22838         * test/testunit/collector/test_objectspace.rb: Ditto.
22840 Tue Mar 20 22:54:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22842         * marshal.c (w_extended): erroneous check condition when dump
22843           method is defined.  [ruby-core:10646]
22845 Tue Mar 20 21:36:47 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
22847         * lib/shell.rb, lib/shell: support for ruby 1.9(YARV) thread model.
22849 Tue Mar 20 16:36:08 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
22851         * distruby.rb: Add zip generation.
22853 Tue Mar 20 16:20:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22855         * eval.c (rb_f_callee_name): add __method__ and __callee__ again.
22856           __callee__ need to rework to adopt YARV.  [ruby-core:10671]
22858 Tue Mar 20 11:09:00 2007  Akinori MUSHA  <knu@iDaemons.org>
22860         * lib/set.rb: Revise rdoc.
22862         * lib/set.rb (Set#freeze, Set#taint, Set#untaint): Implement
22863           Set#freeze, Set#taint, and Set#untaint; requested by: Dan
22864           Hutchings <dan AT moltoagitato.com> in [ruby-bugs:PR#9359].
22866 Tue Mar 20 09:13:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22868         * process.c (rb_fork): flush stdouts always before fork(2).
22869           fixed: [ruby-dev:30612]
22871 Tue Mar 20 01:38:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22873         * thread.c (thread_start_func_2): store the result of first_func
22874           as well as first_proc.
22876         * thread.c (thread_create_core): block is not used if first_func
22877           is given.
22879 Mon Mar 19 16:58:52 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22881         * missing/{strlcat,strlcpy}.c, missing.h: new functions.
22883         * LEGAL: add copyright notice about above files.
22885         * configure.in: check whether strlcat and strlcpy are exist or not.
22887         * {bcc32,win32,wince}/Makefile.sub: use above files.
22889 Mon Mar 19 14:12:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22891         * lib/matrix.rb (Matrix::inverse_from): adding partial pivoting to
22892           the Gauss-Jordan algorithm, making it stable.  a patch from
22893           Peter Vanbroekhoven.  [ruby-core:10641]
22895 Mon Mar 19 12:13:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22897         * regparse.c, etc.: K&R to ANSI code cleanup patch from Stefan
22898           Huehner <stefan at huehner.org>.  [ruby-core:10543]
22900 Mon Mar 19 11:27:13 2007  Minero Aoki  <aamine@loveruby.net>
22902         * lib/net/protocol.rb (rbuf_read): extend buffer size for speed.
22904 Sun Mar 18 08:31:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22906         * win32/dir.h, win32/win32.c (rb_w32_opendir, rb_w32_readdir,
22907           rb_w32_closedir): get rid of possible buffer-overflows.
22909 Sat Mar 17 19:10:39 2007  Kouhei Sutou  <kou@cozmixng.org>
22911         * lib/rss, test/rss:
22912         - supported Atom.
22913         - bumped version 0.1.6 to 0.1.7.
22914         * sample/rss/convert.rb: added new sample.
22916 Fri Mar 16 22:32:20 2007  Minero Aoki  <aamine@loveruby.net>
22918         * lib/net/pop.rb: change default verification mode from
22919           VERIFY_PEER to VERIFY_NONE because most POPS server does not have
22920           true certification.
22922 Fri Mar 16 22:19:24 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22924         * ext/win32ole/win32ole.c: add WIN32OLE#ole_activex_initialize,
22925           a little bit supporting ActiveX control. [ruby-talk:241188]
22927 Fri Mar 16 22:16:58 2007  Minero Aoki  <aamine@loveruby.net>
22929         * lib/net/http.rb: merge Ruby-SSPI patch contributed by Justin
22930           Bailey.
22932         * ext/Win32API/lib/win32/sspi.rb: new file.
22934 Wed Mar 14 12:30:00 2007  Shigeo Kobayashi  <shigeo@tinyforest.jp>
22936         * ext/bigdecimal/bigdecimal.c: BigDecimal("-.31") is now
22937           treated as ("-0.31") not as ("0.31").
22939 Tue Mar 13 19:04:30 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
22941         * lib/sync.rb: support for ruby 1.9(YARV) thread model.
22943 Tue Mar 13 09:25:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22945         * common.mk (clear-installed-list): separated from install-prereq.
22947 Tue Mar 13 07:23:20 2007  Shugo Maeda  <shugo@ruby-lang.org>
22949         * lib/monitor.rb (mon_try_enter): call @mon_muetx.try_lock.
22950           Thanks, Keiju ISHITSUKA. [ruby-dev:30507]
22952 Tue Mar 13 02:42:58 2007  Akinori MUSHA  <knu@iDaemons.org>
22954         * lib/cgi.rb (CGI::header): IIS >= 5.0 does not need the nph
22955           assumption any more; submitted by MIYASAKA Masaru <alkaid AT
22956           coral.ocn.ne.jp> in [ruby-dev:30537].
22958 Mon Mar 12 10:53:28 2007  Akinori MUSHA  <knu@iDaemons.org>
22960         * ext/openssl/ossl_asn1.c (Init_ossl_asn1): Let rdoc know about
22961           externally defined modules; submitted by Technorama
22962           Ltd. <oss-ruby AT technorama.net> in [ruby-bugs:PR#4704].
22964         * ext/openssl/ossl_bn.c (Init_ossl_bn): Ditto.
22966         * ext/openssl/ossl_cipher.c (Init_ossl_cipher): Ditto.
22968         * ext/openssl/ossl_digest.c (Init_ossl_digest): Ditto.
22970         * ext/openssl/ossl_hmac.c (Init_ossl_hmac): Ditto.
22972         * ext/openssl/ossl_pkey.c (Init_ossl_pkey): Ditto.
22974         * ext/openssl/ossl_pkey_dh.c (Init_ossl_dh): Ditto.
22976         * ext/openssl/ossl_pkey_dsa.c (Init_ossl_dsa): Ditto.
22978         * ext/openssl/ossl_pkey_rsa.c (Init_ossl_rsa): Ditto.
22980         * ext/openssl/ossl_rand.c (Init_ossl_rand): Ditto.
22982         * ext/openssl/ossl_ssl.c (Init_ossl_ssl): Ditto.
22984 Sun Mar 11 18:42:01 2007  Akinori MUSHA  <knu@iDaemons.org>
22986         * misc/ruby-mode.el (ruby-block-end-re): Support for the
22987           experimental ';;' terminator had been dropped.
22989 Sun Mar 11 05:45:46 2007  Akinori MUSHA  <knu@iDaemons.org>
22991         * misc/README, misc/rdebug.el: Add rdebug.el, Emacs ruby-debug
22992           interface based on rubydb3x.el; submitted by Martin Nordholts
22993           <enselic AT gmail.com> in [ruby-bugs:PR#9023].
22995 Sat Mar 10 07:20:28 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22997         * ext/win32ole/win32ole.c: add WIN32OLE_TYPELIB#library_name,
22998           WIN32OLE_TYPELIB#visible?.
23000         * test/win32ole/test_win32ole_typelib.rb: ditto.
23002 Thu Mar  8 09:17:59 2007  Minero Aoki  <aamine@loveruby.net>
23004         * compile.c: iseq_compile -> rb_iseq_compile.
23006         * iseq.c: ditto.
23008         * intern.h: provide function prototype of Init_jump.
23010         * eval_jump.h (Init_jump): declare function type.
23012         * thread.c: platform-dependent functions should be surrounded by #ifdef.
23014         * iseq.c (iseq_data_to_ary): remove unused variable.
23016         * compile.c (set_arguments): ditto.
23018         * thread.c (set_unblock_function): ditto.
23020         * thread_pthread.ci: reduce printf warning.
23022         * vm_dump.c: ditto.
23024 Tue Mar  6 16:35:04 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
23026         * lib/shell/process-controller.rb: fix thread synchronization problem for [ruby-dev:30477].
23028 Tue Mar  6 11:53:25 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
23030         * ext/tk/sample/irbtkw.rbw: fails to exit process.
23032 Tue Mar  6 10:23:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23034         * runruby.rb: added --pure (turned on by default) and --debugger
23035           options.
23037 Mon Mar  5 09:19:33 2007  Minero Aoki  <aamine@loveruby.net>
23039         * lib/timeout.rb (Timeout.timeout): should return the block value
23040           always.
23042         * lib/timeout.rb (Timeout.timeout): should yield sec argument
23043           always.
23045         * lib/timeout.rb (Timeout.timeout): fix document.
23047 Mon Mar  5 09:16:40 2007  Minero Aoki  <aamine@loveruby.net>
23049         * lib/net/smtp.rb: support automatic STARTTLS.
23051         * lib/net/smtp.rb: check server advertisement.
23053         * lib/net/smtp.rb: introduce new class SMTP::Response.
23055         * lib/net/smtp.rb (getok): should not use sprintf.
23057         * lib/net/smtp.rb (get_response): ditto.
23059         * lib/net/protocol.rb: reduce syntax warning on 1.9.
23061 Mon Mar  5 07:13:28 2007  Minero Aoki  <aamine@loveruby.net>
23063         * lib/net/smtp.rb: reconstruct SMTPS/STARTTLS interface.  New
23064           interface is incompatible from current 1.9 interface at all.
23066         * lib/net/smtp.rb: All SSL-related class methods are removed; use
23067           instance methods instead.
23069         * lib/net/smtp.rb: rename methods: *ssl -> *tls (with alias
23070           "ssl").
23072         * lib/net/smtp.rb: rename methods: *tls -> *starttls.
23074 Mon Mar  5 01:36:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23076         * parse.y (parser_yylex), win32/win32.c (rb_w32_utime): fixed
23077           indentation broken at YARV merger.
23079 Sun Mar  4 23:41:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23081         * file.c (rb_stat_uid, rb_stat_gid, eaccess): use rb_uid_t and
23082           rb_gid_t instead of int.
23084         * file.c (rb_stat_s_utime): fixed a commit miss for the platforms
23085           where utimes() does not exist.
23087         * lib/fileutils.rb (touch): ditto.
23089 Sun Mar  4 14:46:56 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
23091         * util.c (push_element): should return a int value.
23093 Sun Mar  4 01:01:25 2007  Akinori MUSHA  <knu@iDaemons.org>
23095         * lib/set.rb (Set#^, Set#&): Correct documentation.  Those methods
23096           return sets, not arrays; noted by Oliver Frank Wittich <nietz AT
23097           mangabrain.de>.
23099 Sat Mar  3 22:54:33 2007  Minero Aoki  <aamine@loveruby.net>
23101         * lib/fileutils.rb (touch): last #touch change causes error when
23102           :mtime option was not given.
23104 Sat Mar  3 22:51:29 2007  Minero Aoki  <aamine@loveruby.net>
23106         * lib/fileutils.rb (mv): could not move directory between
23107           different file systems. [ruby-dev:30411]
23109 Sat Mar  3 22:37:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23111         * file.c (rb_file_s_utime): allow nil to set the current time.
23113         * lib/fileutils.rb (touch): ditto, and added :mtime and :nocreate
23114           options.  fixed: [ruby-talk:219037]
23116 Sat Mar  3 15:52:26 2007  Akinori MUSHA  <knu@iDaemons.org>
23118         * object.c (instance_variable_get): Restore rdoc markups lost in
23119           the last commit.
23121 Fri Mar  2 21:17:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23123         * ext/win32ole/win32ole.c (get_ptr_of_variant, ole_set_safe_array,
23124           ole_val2ptr_variant, ole_val2olevariantdata, ole_variant2val,
23125           ): fix some bugs of WIN32OLE_VARIANT.new when variant type is
23126           VT_ARRAY|VT_BSTR or VT_BYREF.
23128         * ext/win32ole/win32ole.c (folevariant_s_array, folevariant_initialize):
23129           WIN32OLE_VARIANT#[], WIN32OLE_VARIANT#[]=, WIN32OLE_VARIANT#value=
23130           is defined as instance method of WIN32OLE_VARIANT.
23132         * test/win32ole/test_win32ole_variant.rb: add some test for
23133           VT_ARRAY, VT_BYREF variant type.
23135 Fri Mar  2 07:58:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23137         * object.c (rb_obj_ivar_set): RDoc updated according to a
23138           suggestion from Brian Candler <B.Candler AT pobox.com>.
23139           [ruby-core:10469]
23141 Thu Mar  1 21:38:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23143         * parse.y (stmt, arg): should not omit lhs of OP_ASGN1 even if
23144           empty.  [ruby-dev:30455]
23146 Thu Mar  1 02:55:25 2007  Akinori MUSHA  <knu@iDaemons.org>
23148         * ext/digest/digest.c (get_digest_base_metadata): Allow inheriting
23149           Digest::Base subclasses, which was unintentionally made
23150           impossible while restructuring Digest classes.
23152 Thu Mar  1 02:05:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23154         * mkconfig.rb (patchlevel): read from version.h.
23156 Wed Feb 28 21:15:00 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
23158         * configure.in (ac_cv_func_fcntl): fcntl support for MinGW.
23160         * missing/flock.c: workaround for MinGW.
23162 Wed Feb 28 20:51:32 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
23164         * pack.c (pack_unpack): properly ignore non-base64 octets such as
23165           UTF-8 encoded BOMs; submitted by SOUMA Yutaka <holon@radastery.jp>
23166           to fix [ruby-core:10437]
23168 Wed Feb 28 18:31:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23170         * ext/openssl/extconf.rb: no need to check unistd.h and sys/time.h.
23171           they are already checked at configure.
23172           reported by KOBAYASHI Yasuhiro [ruby-list:43225]
23174 Wed Feb 28 18:23:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23176         * lib/mkmf.rb ($DEFLIBPATH): default library paths ($(topdir), etc)
23177           should be the first elements of library paths list.
23178           reported by KOBAYASHI Yasuhiro [ruby-list:43225]
23180 Wed Feb 28 10:33:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23182         * Makefile.in, configure.in, */Makefile.sub (THREAD_MODEL): system
23183           specific thread model.
23185         * compile.h, regint.h, vm.h, array.c: removed unnecessary #include.
23187 Wed Feb 28 04:03:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23189         * enum.c (take_i): small cosmetic / documentation patch from
23190           Tadashi Saito <shiba AT mail2.accsnet.ne.jp>. [ruby-dev:30446]
23192 Wed Feb 28 01:20:18 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23194         * test/{dbm,gdbm}/test_{dbm,gdbm}.rb: shouldn't use host_os. use
23195           target_os instead. reported by KOBAYASHI Yasuhiro [ruby-list:43225]
23197 Wed Feb 28 00:08:11 2007  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
23199         * mkconfig.rb (RbConfig): add CONFIG['PATCHLEVEL']
23201         * common.mk: new target dist
23203         * distruby.rb: new file
23205 Tue Feb 27 22:18:45 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
23207         * configure.in (--enable-auto-image-base): avoid the necessity to
23208           rebase the shared libs as much as possible;
23209           submitted by Corinna Vinschen <spam at vinschen.de> in
23210           [ruby-talk:240964].
23212 Tue Feb 27 21:36:47 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
23214         * util.c (__crt0_glob_function): use ruby_glob() instead of rb_globi().
23216 Tue Feb 27 21:33:04 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
23218         * configure.in (ac_cv_func_setrlimit): workaround for djgpp.
23220 Tue Feb 27 20:35:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23222         * common.mk (error.c, process.c): depend on yarvcore.h and rubysig.h.
23224 Tue Feb 27 19:26:31 2007  Akinori MUSHA  <knu@iDaemons.org>
23226         * ext/nkf/nkf.c (rb_str_resize, rb_nkf_kconv, rb_nkf_guess1,
23227           rb_nkf_guess2): Silence warnings regarding char * vs. unsigned
23228           char * mismatch; submitted by Lyle Johnson
23229           <lyle.johnson@gmail.com> in [ruby-core:10416].
23231 Tue Feb 27 19:15:01 2007  Akinori MUSHA  <knu@iDaemons.org>
23233         * lib/base64.rb (Base64::b64encode): Fix documentation; submitted
23234           by David Symonds <dsymonds@gmail.com> in [ruby-core:10432].
23236 Tue Feb 27 18:59:42 2007  Akinori MUSHA  <knu@iDaemons.org>
23238         * ext/bigdecimal/bigdecimal.c (BigDecimal_load): Silence warnings
23239           regarding char * vs. unsigned char * mismatch; submitted by Lyle
23240           Johnson <lyle.johnson@gmail.com> in [ruby-core:10416].
23242         * ext/digest/sha1/sha1ossl.c (SHA1_Finish): Ditto.
23244         * ext/digest/rmd160/rmd160ossl.c (RMD160_Finish): Ditto.
23246         * ext/digest/digest.c (rb_digest_base_finish,
23247           rb_digest_base_update): Ditto.
23249 Tue Feb 27 18:12:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23251         * enum.c (enum_take): new method.  [ruby-dev:30407]
23253         * enum.c (enum_drop): ditto.
23255 Tue Feb 27 07:47:24 2007  Koichi Sasada  <ko1@atdot.net>
23257         * yarvcore.h, vm.h: rename th_invoke_yield() to th_yield().
23259         * blockinlining.c: ditto.
23261         * eval.c: ditto.
23263         * vm.c, insns.def: rename th_invoke_yield_cfunc()
23264           to th_yield_with_cfunc().
23266         * yarvcore.h, yarvcore.c: rename theYarvVM to ruby_current_vm and
23267           yarvCurrentThread to ruby_current_thread.  remove yarvVMArray.
23269 Tue Feb 27 00:45:23 2007  Minero Aoki  <aamine@loveruby.net>
23271         * test/ruby/test_optimization.rb: restore method before calling
23272           assert_equal.
23274 Mon Feb 26 00:58:39 2007  Koichi Sasada  <ko1@atdot.net>
23276         * yarvcore.h: add rb_thread_t#top_wrapper, top_self.
23278         * eval_load.c (rb_load): support eval in wrapper module
23279           (load(file, true)).
23281         * eval.c: ditto.
23283         * eval_jump.h: ditto.
23285         * iseq.c: ditto.
23287         * vm.c: ditto.
23289         * yarvcore.c: ditto.
23291         * insns.def: add a empty line.
23293 Mon Feb 26 00:54:36 2007  Koichi Sasada  <ko1@atdot.net>
23295         * common.mk: change "gdb" rule.  You can debug miniruby with
23296           $(srcdir)/test.rb on gdb by this rule (type "make gdb").
23297           If you write break points to "breakpoints.gdb" on $srcdir,
23298           gdb runs with this file.
23300 Sun Feb 25 11:46:58 2007  Koichi Sasada  <ko1@atdot.net>
23302         * win32/Makefile.sub: enable -Zi (debug) option.
23304 Sun Feb 25 11:38:40 2007  Koichi Sasada  <ko1@atdot.net>
23306         * ruby.h: define RUBY_VM macro and remove NATIVETHREAD* macros.
23308         * intern.h: ditto.
23310         * signal.c (posix_signal): remove unused function
23311           posix_nativethread_signal().
23313 Sun Feb 25 11:31:13 2007  Koichi Sasada  <ko1@atdot.net>
23315         * thread.c (rb_thread_run): fix to ANSI style.
23317 Sun Feb 25 11:09:16 2007  Minero Aoki  <aamine@loveruby.net>
23319         * bootstraptest/runner.rb: show source code in error message.
23321 Sun Feb 25 09:39:50 2007  Koichi Sasada  <ko1@atdot.net>
23323         * yarvcore.h:
23324           rename:
23325             rb_iseq_t#file_name -> filename
23326             rb_iseq_t#local_tbl -> local_table
23327           add:
23328             rb_iseq_t#local_table_size
23330         * compile.c: separate local_table_size and local_size
23331           (local variable size)
23333         * blockinlining.c: apply above rename.
23335         * compile.h: ditto.
23337         * eval.c: ditto.
23339         * iseq.c: ditto.
23341         * proc.c: ditto.
23343         * vm.c: ditto.
23345         * vm_dump.c: ditto.
23347 Sun Feb 25 10:27:17 2007  Minero Aoki  <aamine@loveruby.net>
23349         * bootstraptest/runner.rb: add lib/ to load path.
23351 Sat Feb 25 10:16:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23353         * rubyio.h (HAVE_RB_IO_T): macro to tell if rb_io_t is defined.
23355 Sat Feb 24 19:39:16 2007  Minero Aoki  <aamine@loveruby.net>
23357         * common.mk: new target "btest", to run bootstraptests.
23359 Sat Feb 24 19:30:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23361         * file.c, gc.c, io.c, ruby.h, rubyio.h, win32/win32.h (rb_io_t):
23362           renamed from OpenFile.
23364         * ext/dl/cptr.c, ext/io/wait/wait.c, ext/openssl/ossl.h,
23365           ext/openssl/ossl_bio.c, ext/openssl/ossl_ssl.c, ext/pty/pty.c,
23366           ext/readline/readline.c, ext/socket/socket.c: ditto.
23368 Sat Feb 24 19:28:23 2007  Minero Aoki  <aamine@loveruby.net>
23370         * bootstraptest/runner.rb: new option -v,--verbose.
23372 Sat Feb 24 18:55:50 2007  Minero Aoki  <aamine@loveruby.net>
23374         * yarvtest/test_method.rb: removed (merged to bootstraptest).
23376         * yarvtest/test_class.rb: ditto.
23378 Sat Feb 24 18:44:39 2007  Minero Aoki  <aamine@loveruby.net>
23380         * bootstraptest/test_class.rb: new file.
23382         * bootstraptest/test_method.rb: add tests.
23384 Sat Feb 24 18:44:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23386         * intern.h (rb_thread_blocking_region): add prototype.
23388         * file.c (rb_thread_flock, rb_file_flock): use UBF feature.
23390         * process.c (rb_waitpid_blocking, rb_waitpid): use UBF feature.
23392         * thread.c (rb_thread_debug): added runtime debugging flag.
23394         * thread.c (BLOCKING_REGION): restore previous UBF.
23396         * thread.c (rb_thread_blocking_region): default UBF to interrupt
23397           in system dependent way by RB_UBF_DFL.
23398           + ubf_select() on posix system
23399           + ubf_handle() on Win32
23400           + none on cygwin
23402         * thread_win32.ci (rb_w32_wait_events_blocking): blocking version.
23404         * win32/win32.c (waitpid): use rb_w32_wait_events_blocking().
23406 Sat Feb 24 17:45:48 2007  Minero Aoki  <aamine@loveruby.net>
23408         * parse.y (f_arg, opt_f_block_arg): ripper should export VALUE.
23410 Sat Feb 24 16:52:55 2007  Minero Aoki  <aamine@loveruby.net>
23412         * bootstraptest/runner.rb: fix syntax error.
23414 Sat Feb 24 16:51:09 2007  Minero Aoki  <aamine@loveruby.net>
23416         * bootstraptest/runner.rb: new option --help.
23418 Sat Feb 24 16:47:33 2007  Minero Aoki  <aamine@loveruby.net>
23420         * bootstraptest: new test suite.
23422         * bootstraptest/runner.rb: new file.
23424         * bootstraptest/test_literal.rb: new file.
23426         * bootstraptest/test_method.rb: new file.
23428 Sat Feb 24 16:29:15 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23430         * win32/win32.c (StartSocket): remove unnecessary code.
23432 Sat Feb 24 16:04:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23434         * parse.y (struct local_vars): remove unused nofree member from
23435           struct.
23437         * parse.y (parser_free): ditto.
23439 Sat Feb 24 15:57:19 2007  Shugo Maeda  <shugo@ruby-lang.org>
23441         * lib/thread.rb (ConditionVariable#broadcast): use Mutex
23442           instead of Thread.exclusive.
23444         * lib/monitor.rb (MonitorMixin#mon_exit): unset @mon_owner
23445           before calling Mutex#unlock.
23447 Sat Feb 24 15:51:45 2007  Minero Aoki  <aamine@loveruby.net>
23449         * parse.y (program): remove useless assignment to reduce warning.
23451 Sat Feb 24 15:41:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23453         * parse.y (lambda): remove unused clause from the rule to stop
23454           warning.
23456 Sat Feb 24 15:41:22 2007  Shugo Maeda  <shugo@ruby-lang.org>
23458         * lib/thread.rb: do not redefine Mutex#synchronize.
23460 Sat Feb 24 15:14:02 2007  Shugo Maeda  <shugo@ruby-lang.org>
23462         * lib/monitor.rb: rewritten using Mutex/ConditionVariable.
23464 Sat Feb 24 13:25:32 2007  Koichi Sasada  <ko1@atdot.net>
23466         * lib/soap/mapping/factory.rb: catch up with spec changes (return
23467           Symbols instead of Strings).
23469         * lib/soap/mapping/mapping.rb: ditto.
23471 Sat Feb 24 10:49:55 2007  Koichi Sasada  <ko1@atdot.net>
23473         * parse.y, node.h, compile.c: change node tree structure.  a purpose
23474           of this change is to unify argument structure of method and block.
23475           this change prohibits duplicate block parameter name.
23476           new argument information:
23477             NODE_ARGS     [m: int, o: NODE_OPT_ARG, ->]
23478             NODE_ARGS_AUX [r: ID, b: ID, ->]
23479             NODE_ARGS_AUX [Pst: id, Plen: int, init: NODE*]
23480           optarg information:
23481             NODE_OPT_ARGS [idx, expr, ->]
23483         * vm_macro.def: ditto.
23485         * gc.c: ditto.
23487         * iseq.c: ditto.
23489         * compile.h: fix debug function name.
23491         * test/ripper/test_scanner_events.rb: |_,_,foo| -> |_1,_2,foo|
23493         * test/ruby/test_lambda.rb: disable test temporarily.
23495 Sat Feb 24 10:46:28 2007  Koichi Sasada  <ko1@atdot.net>
23497         * test/testunit/test_testcase.rb: catch up with current instance
23498           variable spec.
23500 Sat Feb 24 10:32:59 2007  Koichi Sasada  <ko1@atdot.net>
23502         * common.mk: change vm_macro.def rule.
23504 Sat Feb 24 10:38:05 2007  Minero Aoki  <aamine@loveruby.net>
23506         * ext/racc/cparse/cparse.c (cparse_params_mark): remove useless
23507           rb_gc_mark.  Thanks Tomoyuki Chikanaga. [ruby-dev:30405]
23509 Sat Feb 24 07:31:35 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23511         * ext/win32ole/win32ole.c: add WIN32OLE_VARIANT.array,
23512           WIN32OLE_VARIANT#value=, refactoring.
23514         * test/win32ole/test_win32ole_variant.rb: add some test for
23515           WIN32OLE_VARIANT.array, WIN32OLE_VARIANT#value=.
23517 Fri Feb 23 18:37:55 2007  Minero Aoki  <aamine@loveruby.net>
23519         * test/ruby/test_yield.rb: new test.
23521         * yarvtest/test_yield.rb: removed (moved to test_yield.rb).
23523 Fri Feb 23 18:27:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23525         * thread.c (rb_thread_polling): check interrupts here.
23527         * thread_win32.ci (w32_wait_events): rename from w32_wait_event(), and
23528           now receive multiple event handles.
23530         * win32/win32.c (wait_events, rb_w32_main_context): removed.
23532         * thread_win32.ci (rb_w32_wait_events): new function.
23534         * thread_win32.ci, win32/win32.c (rb_w32_sleep, rb_w32_Sleep): move
23535           from win32/win32.c to thread_win32.ci, and use w32_wait_events().
23537 Fri Feb 23 18:13:22 2007  Minero Aoki  <aamine@loveruby.net>
23539         * test/ruby/test_optimization.rb: new test (merges test_opts.rb).
23541         * yarvtest/test_opts.rb: removed.
23543 Fri Feb 23 16:59:39 2007  Minero Aoki  <aamine@loveruby.net>
23545         * test/ruby/test_assignment.rb: merge yarvtest/test_massign.
23547         * yarvtest/test_massign.rb: removed (merged to
23548           test_assignment.rb).
23550 Fri Feb 23 15:58:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23552         * signal.c (sighandler): need to re-install sighandler on some
23553           platforms.
23555 Fri Feb 23 15:05:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23557         * win32/win32.c (set_pioinfo_extra): simplified.
23559 Fri Feb 23 14:23:20 2007  Minero Aoki  <aamine@loveruby.net>
23561         * test/ruby/test_literal.rb: new test.
23563 Fri Feb 23 12:40:12 2007  James Edward Gray II  <james@grayproductions.net>
23565         * lib/xmlrpc/client.rb (XMLRPC::Client::do_rpc): Make the
23566           Content-Length parameter optional for responses in
23567           xmlrpc/client.rb; suggested by Daniel Berger
23568           <Daniel.Berger@qwest.com> and approved by the maintainer.
23570         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): Add DateTime
23571           support to xmlrpc; approved by the maintainer.
23573 Fri Feb 23 12:24:46 2007  Minero Aoki  <aamine@loveruby.net>
23575         * parse.y (lambda): add ripper event.  This fixes bus error on
23576           "make test-all".
23578         * ext/ripper/extconf.rb: do not stop build.
23580 Fri Feb 23 12:16:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23582         * parse.y: remove dyna_check_gen() prototype.
23584 Fri Feb 23 11:41:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23586         * parse.y, compile.c, gc.c, insns.def, intern.h, iseq.c, node.h,
23587           object.c, string.c, variable.c, vm_macro.def: revert private
23588           instance variable feature, which is postponed until next major
23589           release.
23591         * marshal.c: TYPE_SYMBOL2 removed; MARSHAL_MINOR reverted back to
23592           8th version.
23594 Fri Feb 23 10:53:21 2007  Shugo Maeda  <shugo@ruby-lang.org>
23596         * thread_pthread.ci (native_mutex_lock): do not call
23597           pthread_mutex_trylock().
23599 Fri Feb 23 10:31:16 2007  Minero Aoki  <aamine@loveruby.net>
23601         * dln.c: use dlopen on Mac OS X 10.3 or later.
23603 Fri Feb 23 10:03:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23605         * string.c (rb_str_ord): need not to check string length;  ord
23606           returns a codepoint for the first character in the string.
23608 Wed Feb 21 22:29:45 2007  Akinori MUSHA  <knu@iDaemons.org>
23610         * numeric.c (fix_equal): A bit more optimization.
23612 Wed Feb 21 17:40:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23614         * numeric.c (fix_equal): remove FIX2LONG() to optimize.  suggested
23615           in http://t-a-w.blogspot.com/2007/02/making-ruby-faster.html.
23616           [ruby-talk:240223]
23618         * numeric.c (fix_cmp): ditto.
23620 Wed Feb 21 09:14:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23622         * eval_load.c (rb_require_safe): should restore safe level.
23624 Tue Feb 20 21:19:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23626         * ext/win32ole/win32ole.c (installed_code_page_proc,
23627           ole_variant2val): small refactoring.
23629 Tue Feb 20 15:11:42 2007  Koichi Sasada  <ko1@atdot.net>
23631         * eval.c, vm.c, yarvcore.h: move definition of rb_call_super() to
23632           vm.c from eval.c.  change th_call_super() to static function.
23634 Tue Feb 20 15:08:25 2007  Koichi Sasada  <ko1@atdot.net>
23636         * test/io/nonblock/test_flush.rb: YARV doesn't raise any errors if
23637           another thread close IO object which current thread is blocking with.
23639 Tue Feb 20 15:03:29 2007  Koichi Sasada  <ko1@atdot.net>
23641         * thread.c (do_select, rb_thread_wait_fd_rw): raise sys error if
23642           errno is not 0 and EBADF.
23644 Mon Feb 19 22:15:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23646         * configure.in (RUBY_REPLACE_TYPE): cache convertible type info.
23648         * intern.h (rb_detach_process): use rb_pid_t instead of pid_t.
23650         * ruby.h (PIDT2NUM, NUM2PIDT, UIDT2NUM, NUM2UIDT, GIDT2NUM, NUM2GIDT):
23651           defaulted to conversion using long.
23653 Mon Feb 19 17:14:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23655         * ext/socket/socket.c (unix_peeraddr): wrong syscall name in error
23656           message for #peeraddr. a patch from Sam Roberts
23657           <sroberts at uniserve.com>.  [ruby-core:10366]
23659 Sun Feb 18 22:56:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23661         * ext/etc/etc.c (etc_getgrgid): missed to replace a macro.
23663 Sun Feb 18 19:33:00 2007  Tadayoshi Funaba  <tadf@dotrb.org>
23665         * lib/date/format.rb: updated based on date2 4.0.3.
23667 Sun Feb 18 13:11:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23669         * configure.in (pid_t, uid_t, gid_t): check if defined.
23671         * intern.h, process.c, rubyio.h, ext/etc/etc.c, ext/pty/pty.c: use
23672           rb_{pid,uid,gid}_t instead of plain int.  [ruby-dev:30376]
23674         * ext/etc/extconf.rb (PIDT2NUM, NUM2PIDT, UIDT2NUM, NUM2UIDT, GIDT2NUM,
23675           NUM2GIDT): moved to configure.in.
23677 Fri Feb 16 21:34:33 2007  Koichi Sasada  <ko1@atdot.net>
23679         * object.c (rb_obj_ivar_set/get/defined): fix to check :@_v/C id.
23681         * test/testunit/test_testcase.rb: fix to use instance_variable_get()
23682           to access @_result.
23684 Fri Feb 16 20:59:10 2007  Koichi Sasada  <ko1@atdot.net>
23686         * intern.h: add a prototype of rb_sym_to_s().
23688 Fri Feb 16 19:24:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23690         * math.c (math_log): update document to mention second optional
23691           argument for logarithm base.
23693 Fri Feb 16 19:19:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23695         * parse.y (mrhs): need to append by arg_append().
23696           [ruby-talk:239385]
23698 Fri Feb 16 11:18:21 2007  Eric Hodel  <drbrain@segment7.net>
23700         * lib/.document: Apply patch for irb, e2mmap and README by Hugh Sasse
23701           <hgs at dmu.ac.uk> from [ruby-core:10135]
23703         * lib/prettyprint.rb: Suppress RDoc for PrettyPrint test suite.
23705 Thu Feb 15 20:48:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23707         * win32/win32.c (set_pioinfo_extra): new function for VC++8 SP1
23708           workaround. [ruby-core:10259]
23710         * win32/win32.c (NtInitialize): call above function.
23712 Thu Feb 15 16:25:54 2007  Akinori MUSHA  <knu@iDaemons.org>
23714         * lib/uri/generic.rb (URI::Generic::userinfo): Considering how
23715           `scheme://user:@...', `scheme://:password@...' and
23716           `scheme://:@...' are parsed, an empty user name or password
23717           should be allowed and represented as it is.
23719 Thu Feb 15 01:52:53 2007  Koichi Sasada  <ko1@atdot.net>
23721         * vm.(c|h), yarvcore.(c|h) (yarvGlobalStateVersion): rename to
23722           ruby_vm_global_state_version.
23724 Thu Feb 15 01:50:26 2007  Koichi Sasada  <ko1@atdot.net>
23726         * test/fileutils/test_fileutils.rb (check_singleton): fix to use
23727           symbol instead of string.
23729         * test/io/nonblock/test_flush.rb: enable tests.
23731         * test/xmlrpc/test_webrick_server.rb: ditto.
23733 Thu Feb 15 01:43:45 2007  Koichi Sasada  <ko1@atdot.net>
23735         * lib/delegate.rb: catch up with class local variable (@_v) spec.
23737         * lib/singleton.rb: ditto.
23739 Wed Feb 14 22:52:43 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23741         * ext/win32ole/win32ole.c (ole_variant2val): VC++6 does not
23742           support VT_I8, VT_UI8.
23744 Wed Feb 14 22:10:21 2007  Koichi Sasada  <ko1@atdot.net>
23746         * configure.in: change stack limit to 2MB from 32MB.
23748         * win32/Makefile.sub: ditto.
23750 Wed Feb 14 21:39:36 2007  Akinori MUSHA  <knu@iDaemons.org>
23752         * ext/digest/lib/digest.rb (Digest::self.const_missing): Drop
23753           autoloads for sha2 classes in favor of handling in
23754           const_missing(), to work around a problem exposed on OS X.
23756 Wed Feb 14 21:19:47 2007  Koichi Sasada  <ko1@atdot.net>
23758         * thread_pthread.ci (native_thread_create): adjust 4KB (page size)
23759           alignment.
23761 Wed Feb 14 21:12:36 2007  Koichi Sasada  <ko1@atdot.net>
23763         * thread_pthread.ci (CHECK_ERR): call rb_bug()
23764           instead of printf() and exit().
23766 Wed Feb 14 16:48:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23768         * lib/date/format.rb (Date::Format::Bag::method_missing): need not
23769           to use instance variables corresponding each method; use Hash
23770           instead.
23772 Wed Feb 14 13:12:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23774         * re.c (reg_operand): allow symbols to be operands for regular
23775           expression matches.
23777         * string.c (Init_String): allow Symbol#===.
23779         * lib/date/format.rb (Date::Format::Bag::to_hash): string
23780           added prefixes.
23782 Wed Feb 14 12:58:38 2007  Koichi Sasada  <ko1@atdot.net>
23784         * thread.c (do_select): fix to iterate select().
23785           on cygwin/mswin32, iterate in unblocking region.
23787         * thread.c (rb_thread_select): don't iterate on this function.
23788           (iterate in do_select).
23790 Wed Feb 14 11:39:18 2007  Koichi Sasada  <ko1@atdot.net>
23792         * thread.c (set_unblock_function): fix function interface.
23794 Wed Feb 14 11:12:02 2007  Koichi Sasada  <ko1@atdot.net>
23796         * eval_load.c, yarvcore.h: use rb_vm_t#loaded_features instead of
23797           rb_features (global variable).
23799         * yarvcore.c: mark rb_vm_t#loaded_features.
23801 Wed Feb 14 08:46:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23803         * compile.c (defined_expr): no longer distinguish ordinary local
23804           variables and in-block local variables in defined? value.
23806 Wed Feb 14 03:14:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23808         * lib/uri/generic.rb (URI::Generic::userinfo): should support
23809           empty password.  [ruby-core:10290]
23811         * lib/uri/generic.rb (URI::Generic::set_password): password can be
23812           cleared by nil.  [ruby-core:10290]
23814 Wed Feb 14 03:10:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23816         * parse.y (struct local_vars): no need to warn out-of-scope
23817           variables; remove dnames member from struct.
23819 Wed Feb 14 03:04:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23821         * parse.y: RVarmap no longer used as yytype; removed.
23823         * parse.y (dyna_push_gen): no longer need return value.
23825         * parse.y (dyna_pop_gen): no longer need argument.
23827         * parse.y (local_push_gen): initialize nofree.
23829 Wed Feb 14 00:30:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23831         * ext/socket/socket.c (init_unixsock): path may contain NUL for
23832           abstract unix sockets.  [ruby-core:10288]
23834 Tue Feb 13 02:21:12 2007  Sam Roberts  <sroberts@uniserve.com>
23836         * io.c (rb_f_syscall): Fix buffer overflow with syscall
23837           arguments.  [ruby-bugs:PR#8541]
23839 Mon Feb 12 13:57:30 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23841         * ext/win32ole/win32ole.c (ole_variant2val): support VT_I8, VT_UI8.
23843 Mon Feb 12 11:48:52 2007  Kouhei Sutou  <kou@cozmixng.org>
23845         * lib/rss/dublincore.rb, lib/rss/maker/dublincore.rb: dc_rightses
23846           -> dc_rights_list. dc_rightses still exists for backward
23847           compatibility. [ruby-core:8350]
23849         * test/rss/test_maker_dc.rb: added tests for dc_rights_list.
23851 Sun Feb 11 22:40:17 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23853         * ext/win32ole/win32ole.c (ole_ptrtype2val): ole_type, ole_type_detail
23854           should not return "VARIANT,VARIANT".
23856 Sun Feb 11 22:11:05 2007  Kouhei Sutou  <kou@cozmixng.org>
23858         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#initialize):
23859           kept backward compatibility.
23861 Sun Feb 11 22:10:08 2007  Kouhei Sutou  <kou@cozmixng.org>
23863         * lib/rss/parser.rb (RSS::ListenerMixin#start_else_element): used
23864           const_defined? instead of constants.include?.
23866 Sun Feb 11 18:47:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23868         * ext/win32ole/win32ole.c (ole_val2olevariantdata):
23869           WIN32OLE_VARIANT#new accepts nil when variant type is VT_ARRAY.
23871         * test/win32ole/test_win32ole_variant.rb: ditto.
23873         * ext/win32ole/win32ole.c: small refactoring.
23875 Sun Feb 11 07:42:25 2007  Akinori MUSHA  <knu@iDaemons.org>
23877         * lib/cgi.rb (CGI::QueryExtension::read_multipart): Properly parse
23878           a quoted-string in a Content-Disposition value.
23880 Sat Feb 10 20:21:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23882         * ext/win32ole/win32ole.c: add WIN32OLE#ole_query_interface.
23883           thanks to Mikael Pahmp.
23885         * test/win32ole/test_win32ole.rb: ditto.
23887 Sat Feb 10 17:46:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23889         * common.mk: targets which depend on yarvcore.h now depend on
23890           rubysig.h too.
23892         * yarvcore.h (rb_vm_t): use rb_atomic_t instead of int.
23894 Sat Feb 10 00:13:11 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
23896         * ext/tk/lib/tk.rb: fix typo (TkConfigMethod::__confinfo_cmd,
23897           __conv_keyonly_opts).
23899 Fri Feb  9 12:33:40 2007  Koichi Sasada  <ko1@atdot.net>
23901         * thread_win32.ci (w32_show_error_message): renamed to w32_error.
23902           this function do rb_bug().
23904         * thread_win32.ci (w32_set_event, w32_reset_event, w32_close_handle,
23905           w32_resume_thread): added. fix to use these functions instead calling
23906           win32api directly.
23908         * thread_win32.ci (w32_create_thread): create suspend thread
23909           (caller must call w32_resume_thread()).
23911 Fri Feb  9 11:03:40 2007  Koichi Sasada  <ko1@atdot.net>
23913         * test/ruby/test_readpartial.rb: tests are working on mswin32/cygwin.
23915 Fri Feb  9 05:08:17 2007  Koichi Sasada  <ko1@atdot.net>
23917         * thread.c, thread_pthread.ci, thread_win32.ci (thread_start_func_1):
23918           move cleanup function to thread_start_func_2().
23920         * thread.c, thread_pthread.ci, thread_win32.ci:
23921           add more destruct functions.
23922           (native_thread_destroy() and native_mutex_destroy())
23924         * thread_pthread.ci, thread_pthread.h: make native_mutex_* functions
23925           (check error, etc), it's not macro any more.
23927         * thread_win32.ci (thread_start_func_1): store some values before
23928           running thread (to release these after running thread).
23930         * thread_win32.ci (native_thread_create): fix spaces.
23932 Thu Feb  8 22:44:04 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23934         * ext/win32ole/win32ole.c (ole_set_safe_array, ole_variant2val,
23935           ole_val_ary2variant_ary): fix WIN32OLE_VARIANT.new bug when
23936           1st argument is empty array, and when 2nd argument is
23937           VT_ARRAY|VT_BYREF.
23939         * test/win32ole/test_win32ole_variant.rb: ditto.
23941 Thu Feb  8 22:39:09 2007  Koichi Sasada  <ko1@atdot.net>
23943         * yarvtest/yarvtest.rb: check target command names.
23945 Thu Feb  8 22:31:45 2007  Koichi Sasada  <ko1@atdot.net>
23947         * test/ruby/test_clone.rb: fix to current spec
23948           (Module should not be occur many times in ancestors).
23950 Thu Feb  8 22:26:14 2007  Koichi Sasada  <ko1@atdot.net>
23952         * test/ruby/test_string.rb: ("foo" == :foo) and ("foo" === :foo)
23953           should be false.
23955         * ChangeLog: fix last messages.
23957 Thu Feb  8 22:24:06 2007  Koichi Sasada  <ko1@atdot.net>
23959         * test/ruby/test_module.rb: fix to use Symbol instead of String.
23961         * test/ruby/test_module.rb: remove space before argument parentheses.
23963 Thu Feb  8 22:02:14 2007  Koichi Sasada  <ko1@atdot.net>
23965         * test/ruby/marshaltestlib.rb: eval(sym) -> eval(sym.to_s)
23967 Thu Feb  8 21:35:16 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23969         * test/win32ole/test_propertyputref.rb (setup): fix typo.
23971         * test/win32ole/test_win32ole_event.rb: should not use
23972           InternetExplorer.gohome to test.
23974 Thu Feb  8 21:02:07 2007  Koichi Sasada  <ko1@atdot.net>
23976         * thread.c (GVL_UNLOCK_RANGE): rename to BLOCKING_REGION().
23978         * thread.c (rb_thread_run_parallel): rename to
23979           rb_thread_blocking_region().
23981 Thu Feb  8 15:48:44 2007  Koichi Sasada  <ko1@atdot.net>
23983         * yarvcore.h, thread.c: fix to use pthread on cygwin.
23985         * yarvcore.h, thread.c: move GVL_UNLOCK_BEGIN() and GVL_UNLOCK_END()
23986           from yarvcore.h to thread.c.
23988         * thread.c: change GVL_UNLOCK_RANGE() arguments
23989           (adding ubf as 2nd argument).
23991         * thread.c: fix to use polling in select on cygwin and mswin32.
23993         * thread.c, thread_pthread.ci, thread_win32.ci, yarvcore.h:
23994           rename:
23995           * rb_thread_t#interrupt_function -> unblock_function
23996           * rb_interrupt_function_t -> rb_unblock_function
23997           * some interrupt function name -> ubf_*
23998           * yarv_* -> *
24000 Thu Feb  8 16:08:02 2007  Koichi Sasada  <ko1@atdot.net>
24002         * common.mk: fix to use RUNRUBY instead of BASERUBY if possible.
24004         * common.mk ($(INSNS) rule): remove $(PROGRAM) first.
24006 Thu Feb  8 15:43:05 2007  Koichi Sasada  <ko1@atdot.net>
24008         * process.c: fix to use rb_status_line_set/get/clear().
24010         * eval_intern.h: fix line break.
24012 Thu Feb  8 15:00:14 2007  Koichi Sasada  <ko1@atdot.net>
24014         * blockinlining.c, error.c, eval.c, eval_error.h, eval_intern.h,
24015           eval_jump.h, eval_load.c, eval_safe.h, gc.c, proc.c, signal.c,
24016           thread.c, thread_pthread.ci, thread_win32.ci, vm.c, vm.h,
24017           vm_dump.c, vm_evalbody.ci, yarvcore.c, yarvcore.h:
24018           fix typo (rb_thead_t -> rb_thread_t).
24020         * eval_intern.h: remove unused definitions.
24022         * common.mk: fix around vm_opts.h path
24023           and remove harmful argument passed to insns2vm.rb.
24025 Thu Feb  8 03:11:47 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24027         * lib/cgi.rb (CGI::unescapeHTML): invalid decoding for single
24028           unescaped ampersand.  a patch from Tietew
24029           <tietew+ruby-dev at tietew.net> in [ruby-dev:30292].
24030           fixed: [ruby-dev:30289]
24032 Wed Feb  7 23:25:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24034         * eval.c (specific_eval): suppress warning.
24036         * thread_win32.h: undefine _WIN32 on cygwin.  [ruby-dev:30303]
24038 Wed Feb  7 22:41:34 2007  Koichi Sasada  <ko1@atdot.net>
24040         * eval_intern.h: remove UNSUPPORTED() macro.
24042         * thread.c: fix to define Continuation methods
24043           (they only do rb_notimplement()).
24045 Wed Feb  7 22:33:58 2007  Koichi Sasada  <ko1@atdot.net>
24047         * eval_intern.h, yarvcore.h: remove unused macro definition.
24049 Wed Feb  7 22:30:28 2007  Koichi Sasada  <ko1@atdot.net>
24051         * eval.c: fixed to use ANSI function style.
24053 Wed Feb  7 09:35:32 2007  Koichi Sasada  <ko1@atdot.net>
24055         * this commit is a result of refactoring. only renaming functions,
24056           moving definitions place, add/remove prototypes, deleting
24057           unused variables and removing yarv.h.
24058           This commit doesn't change any behavior of ruby/vm.
24060         * yarv.h, common.mk: remove yarv.h (contents are moved to yarvcore.h).
24062         * error.c, eval_intern.h: include yarvcore.h instead yarv.h
24064         * rename some functions:
24065           * debug.[ch]: debug_*() -> ruby_debug_*()
24066           * iseq.c: iseq_*() -> rb_iseq_*(), ruby_iseq_disasm()
24067           * iseq.c: node_name() -> ruby_node_name()
24068           * vm.c: yarv_check_redefinition_opt_method() ->
24069                   rb_vm_check_redefinition_opt_method()
24071         * some refactoring with checking -Wall.
24073         * array.c: remove rb_ary_ptr() (unused) and remove unused
24074           local variables.
24076         * object.c: add a prototype of rb_mod_module_exec().
24078         * eval_intern.h (ruby_cref): set it inline.
24080         * eval_load.c (rb_load), yarvcore.c: yarv_load() -> rb_load_internal().
24082         * parse.y: add a prototype of rb_parse_in_eval() (in eval.c).
24084         * process.c: add a prototype of rb_thread_stop_timer_thread() (in thread.c).
24086         * thread.c: remove raw_gets() function (unused) and fix some format
24087           mismatch (format mismatches have remained yet. this is todo).
24089         * thread.c (rb_thread_wait_fd_rw): fix typo on label name.
24091         * thread_pthread.ci: comment out codes with USE_THREAD_CACHE.
24093         * vm.c (rb_svar, rb_backref_get, rb_backref_get,
24094           rb_lastline_get, rb_lastline_set) : moved from yarvcore.c.
24096         * vm.c (yarv_init_redefined_flag): add a prototype and rename
24097           yarv_opt_method_table to vm_opt_method_table.
24099         * vm.c (rb_thread_eval): moved from yarvcore.c.
24101         * yarvcore.c: remove unused global variables and fix to use nsdr().
24103 Wed Feb  7 03:39:32 2007  Koichi Sasada  <ko1@atdot.net>
24105         * blockinlining.c, compile.c, compile.h, error.c, eval.c,
24106           eval_intern.h, eval_jump.h, eval_load.c, eval_method.h,
24107           eval_safe.h, gc.c, insnhelper.h, insns.def, iseq.c, proc.c,
24108           process.c, signal.c, thread.c, thread_pthread.ci, thread_win32.ci,
24109           vm.c, vm.h, vm_dump.c, vm_evalbody.ci, vm_macro.def,
24110           yarv.h, yarvcore.h, yarvcore.c: change type and macro names:
24111           * yarv_*_t -> rb_*_t
24112           * yarv_*_struct -> rb_*_struct
24113           * yarv_tag -> rb_vm_tag
24114           * YARV_* -> RUBY_VM_*
24116         * proc.c, vm.c: move functions about env object creation
24117           from proc.c to vm.c.
24119         * proc.c, yarvcore.c: fix rb_cVM initialization place.
24121         * inits.c: change Init_ISeq() order (after Init_VM).
24123         * ruby.h, proc.c: change declaration place of rb_cEnv
24124           from proc.c to ruby.c.
24126 Tue Feb  6 22:06:45 2007  NARUSE, Yui  <naruse@ruby-lang.org>
24128         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c}:
24129           imported nkf 2007-01-28.
24130           * Fixed: can't decode MIME encode JIS string.
24131           * Fixed: Fullwidth-halfwidth conversion.
24132           * Support DoCoMo's and Softbank's EMOJI
24133           * Support CP932, CP5022x, eucJP-ms UDC
24134           * Support UTF-32 encoding
24135           * Support beyond BMP
24136           [ruby-dev:29700] [ruby-dev:29922] [ruby-dev:30144]
24138 Tue Feb  6 20:36:19 2007  Kouhei Sutou  <kou@cozmixng.org>
24140         * lib/rss/rss.rb, lib/rss/parser.rb: followed current Ruby
24141           specification. [ruby-dev:30274]
24143 Tue Feb  6 20:29:44 2007  Kouhei Sutou  <kou@cozmixng.org>
24145         * lib/rss/rss.rb, lib/rss/parser.rb: removed needless code for
24146           backward compatibility.
24148 Tue Feb  6 18:43:17 2007  Shugo Maeda  <shugo@ruby-lang.org>
24150         * lib/net/ftp.rb: moved fixes for EPIPE to the correct
24151           place. [ruby-core:10204]
24153 Tue Feb  6 16:38:08 2007  Koichi Sasada  <ko1@atdot.net>
24155         * vm_opts.h: set properties:
24156           svn:keywords:  Author Date Id Revision
24157           svn:eol-style: native
24159 Tue Feb  6 15:55:46 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24161         * variable.c (ivar_i): need to support class local instance
24162           variables.
24164 Tue Feb  6 15:44:11 2007  Koichi Sasada  <ko1@atdot.net>
24166         * compile.c (iseq_compile_each): fix setting is_local flag.
24168         * yarvtest/test_class.rb: add a test for class local instance variable.
24170 Tue Feb  6 14:15:34 2007  Koichi Sasada  <ko1@atdot.net>
24172         * compile.c, insns.def: remove (get|set)instancevariable2 and add a
24173           operand is_local to (get|set)instancevariable.
24175         * yarvtest/test_class.rb: add a test for class local instance variable.
24177         * parse.y (rb_decompose_ivar2): remove unused variable oid.
24179         * tool/insns2vm.rb: remove needless require.
24181 Tue Feb  6 11:18:41 2007  Shugo Maeda  <shugo@ruby-lang.org>
24183         * lib/net/ftp.rb: check the control connection on EPIPE.
24184           Thanks, Simon Williams. [ruby-core:9547]
24186 Tue Feb  6 11:03:27 2007  Koichi Sasada  <ko1@atdot.net>
24188         * complement last commit.
24190         * common.mk (*.inc): use VPATH.
24192         * vm_opts.h: renamed from vm_opts.h.base.
24194 Tue Feb  6 10:02:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24196         * tool/insns2vm.rb: use vm_opts.h in VPATH.
24198 Tue Feb  6 03:47:58 2007  Koichi Sasada  <ko1@atdot.net>
24200         * proc.c: support Binding#eval.
24202         * yarvtest/test_eval.rb: add a test for above change.
24204 Tue Feb  6 03:13:33 2007  Koichi Sasada  <ko1@atdot.net>
24206         * proc.c: refactoring (remove K&R style, move Binding stuffs from
24207           Init_Proc() to Init_Binding()).
24209 Tue Feb  6 01:07:14 2007  Koichi Sasada  <ko1@atdot.net>
24211         * intern.h: prepare rb_last_status_get() and rb_last_status_set().
24212           Use these functions instead of rb_last_status ([ruby-dev:30264]).
24214         * process.c: define above functions.
24216         * ext/pty/pty.c: use above functions.
24218         * io.c (pipe_finalize): ditto.
24220         * process.c: ditto.
24222 Mon Feb  5 21:26:56 2007  Koichi Sasada  <ko1@atdot.net>
24224         * ruby.h: add a prototype of rb_id2str().
24226 Mon Feb  5 21:06:50 2007  Koichi Sasada  <ko1@atdot.net>
24228         * eval_thread.c, common.mk: remove eval_thread.c.
24230         * yarvcore.c: rename cYarvThread to rb_cThread.
24232         * gc.c: remove YARV_* prefix.
24234         * gc.h: add an include guard and prototype of rb_gc_set_stack_end().
24236         * inits.c: fix to ANSI prototype style and reorder Init_*().
24238         * io.c (pipe_finalize): TODO: comment out last_status.
24240         * process.c, yarvcore.h: fix to use yarv_vm_t#last_status instead of
24241           rb_last_status and make last_status_get() to access $?.
24243         * yarvcore.c (vm_mark): mark yarv_vm_t#last_status.
24245         * ruby.h: add declarations of rb_cISeq and rb_cVM.
24247         * thread.c: move eval_thread.c codes to thread.c and remove yarv_*
24248           function prefix.
24250         * thread.c (thread_start_func_2): use yarv_thread_t#first_func if
24251           it is not null.
24253         * vm.c: fix copyright year.
24255         * yarvcore.c (Init_vm): rename to Init_VM().
24257 Mon Feb  5 04:09:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24259         * eval.c (rb_frame_callee): check if prev_cfp can be accessible.
24260           a patch from Yoshinori Sano <yoshinori.sano at gmail.com> in
24261           [ruby-dev:30252].  solves [ruby-dev:30200] and [ruby-core:9856].
24263 Sun Feb  4 20:34:41 2007  Kouhei Sutou  <kou@cozmixng.org>
24265         * test/rss/rss-assertions.rb: removed needless code for backward
24266           compatibility.
24268 Sun Feb  4 02:22:59 2007  Akinori MUSHA  <knu@iDaemons.org>
24270         * lib/cgi.rb (CGI::QueryExtension::read_multipart): Remove a debug
24271           print.
24273 Sat Feb  3 23:51:58 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24275         * parse.y (rb_compose_ivar2): function to create a new ivar2
24276           symbol from a symbol and a class.  back-ported from matzruby.
24278         * parse.y (rb_decompose_ivar2): reverse function of
24279           rb_compose_ivar2().
24281         * marshal.c (w_symbol): support class local instance variables.
24283         * marshal.c (r_object0): ditto.
24285         * compile.c (defined_expr): ditto.
24287         * compile.c (iseq_compile_each): ditto.
24289         * insns.def: add two new instructions: getinstancevariable2 and
24290           setinstancevariable2.
24292 Sat Feb  3 23:21:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24294         * insns.def (setclassvariable): remove unnecessary operand.
24296         * compile.c (iseq_compile_each): ditto.
24298         * common.mk (insns_info.inc): add dependency for insns_info.inc.
24300 Sat Feb  3 14:32:58 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24302         * ext/win32ole/win32ole.c (ole_val2olevariantdata, ole_val2variant):
24303           fix the bug of WIN32OLE_VARIANT.new when variant type is
24304           VT_ARRAY.
24306         * ext/win32ole/sample/excel1.rb: rewrite using WIN32OLE_VARIANT.
24308         * test/win32ole/test_win32ole.rb: add some test.
24310         * test/win32ole/test_win32ole_variant.rb: ditto.
24312 Sat Feb  3 03:35:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24314         * Makefile.in, */Makefile.sub, common.mk (vmasm): generalized.
24316         * common.mk (runruby, benchmark, benchmark-each, tbench): use
24317           PROGRAM for the file to be built.
24319         * proc.c (yarv_proc_alloc): needs return.
24321         * call_cfunc.ci, compile.c, compile.h, debug.h, eval.c,
24322           eval_error.h, eval_jump.h, eval_load.c, eval_thread.c, gc.c,
24323           insnhelper.h, insns.def, iseq.c, main.c, numeric.c, parse.y,
24324           range.c, ruby.h, signal.c, thread.c, thread_win32.ci, vm.c,
24325           vm.h, vm_dump.c, vm_evalbody.ci, yarvcore.c, yarvcore.h:
24326           fixed indents and non-C90 comments.
24328         * regenc.h: revert to before YARV.
24330         * lib/mkmf.rb (create_makefile): make object files depend on
24331           extconf.h even if depend file exists.
24333 Fri Feb  2 23:39:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24335         * common.mk (bin): add more dependency.  a patch from Tadashi
24336           Saito <shiba at mail2.accsnet.ne.jp>.  [ruby-dev:30245]
24338 Fri Feb  2 18:44:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24340         * insns.def (setclassvariable): remove warn argument.
24342 Fri Feb  2 18:36:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24344         * common.mk (compile.$(OBJEXT)): add config.h to vm.c and
24345           compile.c.
24347 Fri Feb  2 18:27:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24349         * eval.c: remove duplicated global variables rb_cProc and
24350           rb_cBinding.  [ruby-dev:30242]
24352 Fri Feb  2 00:13:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24354         * ruby.h (SYMBOL_P): make Symbol immediate again for performance.
24356         * string.c: redesign symbol methods.
24358 Thu Feb  1 23:25:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24360         * parse.y (rb_id2str): store Strings for operator symbols.
24361           [ruby-dev:30235]
24363 Thu Feb  1 21:04:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24365         * parse.y (assignable_gen): no need to generate NODE_CVDECL.
24367         * compile.c (iseq_compile_each): no NODE_CVDECL.
24369 Thu Feb  1 20:53:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24371         * vm.c (eval_get_cvar_base): destination for class variable access
24372           is now strictly innermost surrounding class or module.  warned
24373           if accessed from toplevel.
24375         * variable.c (rb_cvar_get): new class variable look-up scheme:
24376           1) look up in the class.  2) if the class is singleton attached
24377           to a class (i.e. metaclass) then start look up in the attached
24378           class and its ancestors. 3) otherwise, look-up in ancestors of
24379           the class.
24381         * eval.c (cvar_cbase): destination for class variable access is
24382           the class/module that holds the method, or cbase outside of
24383           methods.
24385 Thu Feb  1 20:31:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24387         * variable.c (rb_cvar_set): remove warn argument.
24389 Wed Jan 31 14:52:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24391         * test/ruby/test_iterator.rb (TestIterator::test_block_given_within_iterator):
24392           add new test.  [ruby-core:10125]
24394 Tue Jan 30 17:01:21 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
24396         * string.c (rb_str_sub_bang): calling rb_str_modify() should be just
24397           before actually modifying the string.
24398           fixed: [ruby-dev:30211] (originally reported by zunda)
24400 Tue Jan 30 13:24:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24402         * numeric.c (int_pred): add Integer#pred corresponding
24403           Integer#succ.  [RCR#5]
24405 Tue Jan 30 12:05:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24407         * mkconfig.rb: autoconf 2.61 support.  [ruby-core:10016]
24409 Mon Jan 29 23:52:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24411         * tool/compile.rb: replace YARVCore by VM class.
24413 Mon Jan 29 17:52:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24415         * lib/date/format.rb (Date::Format::Bag::method_missing): add
24416           prefix to avoid making t class-local instance variable.
24418 Mon Jan 29 21:32:37 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24420         * ext/win32ole/win32ole.c: add WIN32OLE.locale=, WIN32OLE.locale,
24421           WIN32OLE_VARIANT#vartype.
24423         * test/win32ole/test_win32ole.rb: add test for WIN32OLE.locale=,
24424           WIN32OLE.locale.
24426         * test/win32ole/test_win32ole_variant.rb: add test for
24427           WIN32OLE_VARIANT#vartype.
24429 Mon Jan 29 14:14:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24431         * tool/parse.rb: replace YARVCore by VM class.
24432           http://d.hatena.ne.jp/ysano2005/20070128
24434 Sun Jan 28 08:41:49 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24436         * ext/win32ole/win32ole.c: refactoring.
24438 Sat Jan 27 18:36:33 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24440         * ext/win32ole/win32ole.c (ole_val2olevariantdata): bug fix.
24441           WIN32OLE_VARIANT.new check that 1st argument should T_ARRAY
24442           when variant type is VT_ARRAY.
24444         * test/win32ole/test_win32ole_variant.rb: add some test.
24446 Fri Jan 26 23:55:56 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24448         * ext/win32ole/win32ole.c: bug fix of WIN32OLE_VARIANT when variant
24449           type is VT_BYREF|VT_VARIANT.
24451         * test/win32ole/test_win32ole_variant_with_ie.rb: ditto.
24453 Fri Jan 26 12:03:39 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24455         * ext/tk/lib/tk.rb (TkConfigMethod#__confinfo_cmd,
24456           __conv_keyonly_optkeys): make them private [ruby-dev:30074].
24458         * ext/tk/lib/tk/txtwin_abst.rb: fix typo [ruby-dev:30073].
24460         * ext/tk/lib/tk/canvas.rb (TkCanvas#scan_dragto): lack of an argument.
24462         * ext/tk/lib/tk/canvas.rb: clarify the including module name
24463           [ruby-dev:30080].
24465         * ext/tk/lib/tk/scrollable.rb: change primary name of modules
24466           [ruby-dev:30080].
24468 Fri Jan 26 07:48:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24470         * enumerator.c (enumerator_init_copy): need to copy internal
24471           structure on clone and dup.  [ruby-dev:30192]
24473 Wed Jan 24 20:34:51 2007  Kouhei Sutou  <kou@cozmixng.org>
24475         * test/ruby/test_iterator.rb: removed a needless workaround.
24477 Wed Jan 24 18:05:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24479         * misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): fix
24480           regexp font-lock bug.  [ruby-talk:235758]
24482 Tue Jan 23 18:26:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24484         * lib/cgi.rb (CGI::QueryExtension::read_multipart): use == instead
24485           of ===.  [ruby-dev:30176]
24487 Tue Jan 23 15:39:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
24489         * Makefile.in, common.mk, configure.in, */{Makefile.sub, configure.bat,
24490           setup.mak}: add --with-baseruby configure option.
24492 Mon Jan 22 14:57:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24494         * ext/socket/socket.c: fix errors in socket sample code.
24495           [ruby-core:09992]
24497 Sat Jan 20 21:05:18 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24499         * ext/win32ole/win32ole.c (fole_s_set_code_page): WIN32OLE.codepage=
24500           accepts installed codepage.
24502         * test/win32ole/test_win32ole.rb (test_s_codepage_changed): ditto.
24504 Sat Jan 20 11:18:49 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24506         * ext/win32ole/win32ole.c (ole_invoke, ole_invoke2, ole_propertyput):
24507           modify WIN32OLERuntimeError message.
24509         * test/win32ole/test_win32ole.rb: ditto.
24511 Sat Jan 20 06:45:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24513         * eval_proc.c (method_receiver): add new method to get the bound
24514           receiver of the method object.  [ruby-talk:234949]
24516         * eval_proc.c (method_name): new method to get the name of a
24517           method.
24519         * eval_proc.c (method_owner): a new method to get the class or
24520           module that defines the method.
24522 Fri Jan 19 17:12:23 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24524         * ext/win32ole/win32ole.c (Init_win32ole): add WIN32OLE_VARIANT::Empty,
24525           WIN32OLE_VARIANT::Null, WIN32OLE_VARIANT::Nothing.
24527         * test/win32ole/test_win32ole_variant.rb: ditto.
24529         * test/win32ole/test_nil2vtempty.rb(test_openSchema): ditto.
24531 Fri Jan 19 06:53:38 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24533         * ext/win32ole/win32ole.c (olevariant_free): fix memory leak.
24535         * ext/win32ole/win32ole.c (ole_val2olevariantdata):
24536           WIN32OLE_VARIANT.new accepts nil as first argument for some VARIANT
24537           TYPE.
24539         * test/win32ole/test_win32ole_variant.rb: ditto.
24541 Wed Jan 17 17:31:28 2007  Koichi Sasada  <ko1@atdot.net>
24543         * some refactoring around yarvcore and proc.
24545         * eval_proc.c: renamed to proc.c.
24547         * common.mk: ditto.
24549         * yarvcore.h, yarvcore.c: rename or remove some global variables
24550           removed: mYarvCore, mYarvInsns
24551           renamed: cYarvISeq -> rb_cISeq,
24552                    cYarvProc -> rb_cProc, cYarvBinding -> rb_cBinding
24553           ::YarvCore module is removed and ::YarvCore::VM class becomes ::VM.
24554           And change/remove some functions which added with YARV.
24556         * compile.c: ditto.
24558         * eval.c: ditto.
24560         * iseq.c: ditto.
24562         * vm.c: ditto.
24564         * inits.c: rename Init_yarvcore to Init_vm.
24566         * yarvcore.c, proc.c: move some functions and initialization
24567           from yarvcore.c to proc.c.
24569         * intern.h, proc.c: add global function rb_binding_new(void).
24571 Tue Jan 16 17:49:29 2007  Koichi Sasada  <ko1@atdot.net>
24573         * vm.c (eval_search_super_klass): rename to search_super_klass() and
24574           use it by th_call_super().
24576         * insns.def: ditto.
24578 Tue Jan 16 17:48:11 2007  Koichi Sasada  <ko1@atdot.net>
24580         * common.mk: fix ruby script path.
24582 Tue Jan 16 17:39:44 2007  Koichi Sasada  <ko1@atdot.net>
24584         * vm.c (invoke_block): fix to specify self.
24586 Tue Jan 16 12:12:27 2007  Koichi Sasada  <ko1@atdot.net>
24588         * env.h: removed
24590 Tue Jan 16 12:00:06 2007  Koichi Sasada  <ko1@atdot.net>
24592         * eval_proc.c (rb_proc_new): added.
24594         * string.c (sym_to_proc): supported.
24596         * vm.c (invoke_block, th_invoke_yield, th_invoke_proc): fix to support
24597           rb_proc_new.
24599         * yarvcore.c: add a test code.
24601 Sat Jan 13 23:24:59 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24603         * ext/win32ole/win32ole.c (ole_free, ole_type_free,
24604           olemethod_free, olevariable_free, oleparam_free,
24605           ole_event_free): fix memory leak.  [ruby-core:09846]
24607 Wed Jan 10 00:10:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24609         * array.c (rb_ary_replace): use ptr and len of orig instead of
24610           shared.  fixed: [ruby-dev:30116]
24612 Tue Jan  9 17:48:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
24614         * file.c (rb_find_file): should not call fpath_check() with NULL.
24615           fixed: [ruby-core:09867]
24617 Tue Jan  9 12:29:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24619         * ext/etc/etc.c (etc_getpwuid, etc_getgrgid): fix to correctly
24620           convert uid/gid from VALUE.
24622         * ext/etc/etc.c (etc_getpwuid): ditto.
24624 Tue Jan  9 03:54:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24626         * string.c (rb_str_upto): String#upto from empty string makes
24627           infinite loop.  [ruby-core:09864]
24629         * string.c (rb_str_upto): use RSTRING_LEN().
24631 Sun Jan  7 18:36:05 2007  Koichi Sasada  <ko1@atdot.net>
24633         * thread.c (rb_thread_stop_timer_thread(), rb_thread_reset_timer_thread(),
24634           rb_thread_start_timer_thread()): added.
24636         * thread_pthread.ci: add a native_thread_join() and move
24637           rb_thread_reset_timer_thread() definition to thread.c.
24639         * thread_win32.ci: ditto
24641         * process.c: fix before_exec(), after_exec() to stop timer thread
24642           (and restart timer thread if exec failed).  and fix to reset
24643           timer thread information when forked child process starts
24644           (to fix [ruby-core:09822]).
24646 Sun Jan  7 18:28:17 2007  Koichi Sasada  <ko1@atdot.net>
24648         * common.mk: add a "compare" rule and fix MATZRUBY variable
24650 Sun Jan  7 17:47:16 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24652         * test/win32ole/test_win32ole.rb: add test for WIN32OLE#[],
24653           WIN32OLE#[]=.
24655         * ext/win32ole/win32ole.c: update comment for rdoc of
24656           WIN32OLE#[] and WIN32OLE#[]=.
24658 Sun Jan  7 12:13:26 2007  Eric Hodel  <drbrain@segment7.net>
24660         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#find_class_comment):
24661           Look for class and module comments above rb_define_class and
24662           rb_define_module.  Patch by Daniel Berger <djberg96 at gmail.com>
24664 Sun Jan  7 10:32:12 2007  Eric Hodel  <drbrain@segment7.net>
24666         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants):
24667           Properly handle escaping of : in comments.
24668         * test/rdoc/parsers/test_parse_c.rb:
24669           Test RDoc::C_Parser#do_classes and Rdoc::C_Parser#find_class_comment.
24671 Sun Jan  7 09:31:18 2007  Tadayoshi Funaba  <tadf@dotrb.org>
24673         * lib/date/format.rb: updated based on date2 4.0.1.
24675 Sat Jan  6 18:46:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24677         * io.c (rb_io_getline_fast, rb_io_getline): increase lineno
24678           when met the delimiter or EOF.  fixed: [ruby-dev:30081]
24680         * io.c (prepare_getline_args, rb_io_getline_1): split
24681           preparation of arguments and reading.  [ruby-dev:30085]
24683 Sat Jan  6 13:48:36 2007  Koichi Sasada  <ko1@atdot.net>
24685         * insns.def (send): fix to optimize send() with Symbol.
24687         * yarvtest/test_method.rb: add another test.
24689 Sat Jan  6 13:43:55 2007  Koichi Sasada  <ko1@atdot.net>
24691         * common.mk: add PHONY dependency to some rules
24693 Sat Jan  6 11:50:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24695         * io.c (argf_read): fix wrong replacement.  [ruby-dev:30070]
24697 Sat Jan  6 09:10:52 2007  Koichi Sasada  <ko1@atdot.net>
24699         * insns.def: support direct method dispatch with "send" or "funcall".
24700           This means that "obj.send :m" skips "BasicObject#send" invocation
24701           (method frame creation, etc) and "obj.m" invokes directly.
24702           If you make backtrace, there are no entries of "send" method.
24704         * compile.c (iseq_specialized_instruction): fix to support above
24706         * eval.c: ditto (remove "static" from rb_f_send and rb_f_funcall
24708         * yarvcore.c: ditto (add a external IDs for compiler)
24710         * yarvcore.h: ditto (add a VM_CALL_SEND_BIT macro)
24712         * yarvtest/test_method.rb: add tests for above changes
24714         * eval.c: remove unused "Kernel#send" declaration
24716 Sat Jan  6 08:29:17 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24718         * ext/win32ole/win32ole.c (Init_win32ole): add
24719           WIN32OLE::VARIANT::VT_EMPTY, WIN32OLE::VARIANT::VT_NULL
24721         * test/win32ole/test_win32ole_variant_m.rb (test_variant): ditto.
24723 Sat Jan  6 03:49:22 2007  Koichi Sasada  <ko1@atdot.net>
24725         * benchmark/run.rb: change option format
24727         * common.mk: ditto
24729 Fri Jan  5 22:21:08 2007  Koichi Sasada  <ko1@atdot.net>
24731         * benchmark/bm_app_pentomino.rb: use Array#dup instead of
24732           Array#clone
24734         * benchmark/bmx_temp.rb: removed
24736         * benchmark/run.rb: use run.rb instead of run_rite.rb
24738         * common.mk: ditto
24740         * benchmark/run_rite.rb: removed
24742         * common.mk: use $(srcdir)/test.rb to run a test program
24743           with "make run"
24745         * benchmark/bmx_temp.rb: removed and
24746           set svn:ignore (bmx_*.rb) to benchmark/
24748         * test.rb: set svn:ignore
24750 Fri Jan  5 21:03:08 2007  Koichi Sasada  <ko1@atdot.net>
24752         * yarvtest/yarvtest.rb: fix to compare results
24754 Fri Jan  5 20:52:56 2007  Koichi Sasada  <ko1@atdot.net>
24756         * compile.c, compile.h: add ADD_CALL_RECEIVER() macro.
24758         * insns.def (send): use GET_SELF() direct if FCALL.
24760         * eval.c (rb_f_send): check method dispatch type to permit
24761           invoking private method when dispatch type is FCALL/VCALL
24763         * insns.def (opt_ltlt): remove useless statement.
24765         * vm.h: remove unused macros.
24767 Fri Jan  5 20:50:31 2007  Koichi Sasada  <ko1@atdot.net>
24769         * benchmark/run_rite.rb: fix to use readlines instead of
24770           read(...).lines (because 1.8 doesn't have String#lines).
24772 Fri Jan  5 20:28:19 2007  Koichi Sasada  <ko1@atdot.net>
24774         * thread_win32.ci (rb_thread_reset_timer_thread):
24775           added ([ruby-dev:30086]).
24777 Fri Jan  5 20:20:36 2007  Koichi Sasada  <ko1@atdot.net>
24779         * common.mk: add .SUFFIXES rule
24781 Fri Jan  5 15:58:15 2007  Koichi Sasada  <ko1@atdot.net>
24783         * eval_method.h (rb_alias): fix to check search result
24785 Fri Jan  5 13:59:53 2007  Koichi Sasada  <ko1@atdot.net>
24787         * eval_method.h (rb_add_method): fix to check old_node
24789 Fri Jan  5 12:03:07 2007  Koichi Sasada  <ko1@atdot.net>
24791         * compile.c (iseq_compile_each, set_block_local_tbl):
24792           support NODE_LAMBDA (partly).
24794         * sample/test.rb: restore test of NODE_LAMBDA
24796         * test/ruby/test_lambda.rb: ditto
24798 Fri Jan  5 12:31:23 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24800         * thread_pthread.ci (native_sleep): fix tv_nsec overflow.
24802 Thu Jan  4 20:01:29 2007  Koichi Sasada  <ko1@atdot.net>
24804         * common.mk: rename yarv-test-[all/each] to compare-test[/-each].
24805           purpose of "compare-test" rule is to compare ruby (trunk) and
24806           matzruby (branches/matzruby) binary in miniruby level.  MATZRUBY
24807           parameter means an path to miniruby of matzruby binary.  to do this
24808           comparison test, you should build matzruby branch.
24810         * yarvtest/yarvtest.rb: fix to use command line option as
24811           command names to be compared.
24813         * yarvtest/runner.rb: remove a debug output.
24815 Thu Jan  4 19:12:27 2007  Koichi Sasada  <ko1@atdot.net>
24817         * common.mk: fix to use test.rb script in build directory.
24818           ($(srcdir)/test.rb -> test.rb)
24820 Thu Jan  4 17:28:05 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24822         * lib/webrick/utils.rb (WEBrick::Utils::TimeoutHandler#initialize):
24823           Arrays could not be modified in its each block. [ruby-dev:30063]
24825 Thu Jan  4 16:57:14 2007  Koichi Sasada  <ko1@atdot.net>
24827         * yarv_version.h: removed.
24829         * common.mk: remove yarv_version.h from rules
24831         * yarvcore.h (Init_yarvcore): remove useless constants
24833 Thu Jan  4 17:00:06 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24835         * ext/openssl/ossl_asn1.c (Init_ossl_asn1):
24836           OpenSSL::ASN1::ASN1Data#value,#tag,#tag_class and
24837           OpenSSL::ASN1::BitString#unused_bits should be public.
24839 Thu Jan  4 13:45:10 2007  Koichi Sasada  <ko1@atdot.net>
24841         * thread_pthread.ci: fix last changes around PTHREAD_STACK_MIN.
24843 Thu Jan  4 13:42:47 2007  Koichi Sasada  <ko1@atdot.net>
24845         * common.mk: restore changes.
24847 Thu Jan  4 10:33:54 2007  Koichi Sasada  <ko1@atdot.net>
24849         * thread_pthread.ci: fix to skip using PTHREAD_STACK_MIN.
24850           [ruby-dev:30063]
24852 Thu Jan  4 10:30:11 2007  Koichi Sasada  <ko1@atdot.net>
24854         * benchmark/run_rite.rb (bm): fix to use lines.
24856 Wed Jan  3 18:49:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24858         * io.c (rb_io_getline): lineno update condition was wrong.
24859           [ruby-dev:30065]
24861         * io.c (rb_io_getline_fast): ditto.
24863 Wed Jan  3 11:36:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24865         * io.c (ruby_dup): start GC on ENOMEM as well.
24867 Tue Jan  2 10:29:54 2007  Eric Hodel  <drbrain@segment7.net>
24869         * ext/zlib/zlib.c: fix to compile on YARV
24870           ruby_errinfo -> rb_errinfo()
24872 Mon Jan  1 08:07:06 2007  Koichi Sasada  <ko1@atdot.net>
24874         * ext/tk/tcltklib.c: fix to compile on YARV
24875           ruby_errinfo -> rb_errinfo(),
24876           ruby_safe_level -> rb_safe_level().
24878 Mon Jan  1 07:57:17 2007  Koichi Sasada  <ko1@atdot.net>
24880         * test/drb/test_drbssl.rb: fix to skip drb tests.
24882 Mon Jan  1 06:13:11 2007  Eric Hodel  <drbrain@segment7.net>
24884         * lib/rdoc/parsers/c_parser.rb: Make Rdoc accessible.  Update constant
24885           value information.
24887 Mon Jan  1 06:13:11 2007  Eric Hodel  <drbrain@segment7.net>
24889         * ext/bigdecimal/bigdecimal.c: Update constant comments to provide
24890           values for RDoc.
24892 Mon Jan  1 06:05:55 2007  Eric Hodel  <drbrain@segment7.net>
24894         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants):
24895           Allow RDoc comment to give friendly value for rb_define_const.  Patch
24896           by Daniel Berger <djberg96 at gmail.com>, [ruby-patches-7499].
24897         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants): Fix
24898           whitespace handling in constant comments.
24900 Mon Jan  1 00:00:00 2007  Koichi Sasada  <ko1@atdot.net>
24902         * Merge YARV
24904 Sun Dec 31 16:22:48 2006  Eric Hodel  <drbrain@segment7.net>
24906         * array.c: Fix Array#reject.
24908 Sun Dec 31 00:46:25 2006  Tadayoshi Funaba  <tadf@dotrb.org>
24910         * lib/date2.rb: removed.
24912 Sun Dec 31 00:15:13 2006  Tadayoshi Funaba  <tadf@dotrb.org>
24914         * lib/date.rb, lib/date/format.rb: updated based on date2 4.0.
24916 Sat Dec 30 04:38:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24918         * enum.c (enum_each_with_index): reuse array for yield parameters.
24920         * enum.c (enum_min, enum_max): ditto.
24922 Sat Dec 30 04:25:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24924         * enum.c (enum_inject): reuse array for yield parameters.
24926 Sat Dec 30 02:54:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24928         * ext/stringio/stringio.c (strio_gets): accepts limit argument.
24930         * ext/stringio/stringio.c (strio_readline, strio_each,
24931           strio_readlines): ditto.
24933 Sat Dec 30 02:22:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24935         * ext/stringio/stringio.c (strio_getline): add limit capability.
24937         * io.c (rb_io_gets_m): accepts limit argument.  [ruby-talk:231563]
24939         * io.c (rb_io_readline, rb_io_readlines, rb_io_each_line, argf_getline):
24940           ditto.
24942         * io.c (appendline): add limit capability.
24944         * io.c (rb_io_getline_fast, rb_io_getline): ditto.
24946         * io.c (rb_io_getline): small refactoring for DRY.
24948         * io.c (rb_io_s_foreach, rb_io_s_readlines): small refactoring.
24950 Thu Dec 28 15:27:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24952         * lib/cgi.rb (CGI::Cookie::initialize): use Array() again.
24953           [ruby-core:09781]
24955 Wed Dec 27 20:52:32 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24957         * ext/win32ole/win32ole.c: remove WIN32OLE::PROPERTY class.
24959         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
24961 Wed Dec 27 10:04:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24963         * object.c (rb_Array): returns 1-element array if the argument
24964           does not have to_ary nor to_a.
24966 Tue Dec 26 21:02:14 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24968         * test/win32ole/test_folderitem2_invokeverb.rb: The argument
24969           of Shell.NameSpace should not be file path.
24971 Tue Dec 26 06:13:08 2006  Minero Aoki  <aamine@loveruby.net>
24973         * ext/bigdecimal/bigdecimal.c: remove useless method
24974           BigDecimal#!=. [ruby-dev:30050]
24976 Thu Dec 21 15:37:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24978         * string.c (rb_str_slice_bang): rdoc description bug fixed.
24979           [ruby-core:09754]
24981 Wed Dec 20 12:54:31 2006  Koichi Sasada  <ko1@atdot.net>
24983         * Convert CVS repository to Subversion repository.
24985 Mon Dec 18 08:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24987         * lib/cgi.rb (CGI::Cookie::initialize): Array(string) no longer
24988           works.  [ruby-core:09738]
24990 Fri Dec 15 00:19:53 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24992         * win32/Makefile.sub (COMPILE_RULES): latter rule has higher priority.
24994         * lib/mkmf.rb (create_makefile): remove static library before update,
24995           to get rid of sludge of Borland tlib.exe.
24997 Thu Dec 14 18:29:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24999         * ext/readline/readline.c: NetBSD editline does not have
25000           rl_username_completion_function() and rl_completion_matches().
25001           a patch from Takahiro Kambe <taca at back-street.net>.
25002           [ruby-dev:30008]
25004 Thu Dec 14 18:20:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25006         * lib/irb/locale.rb (IRB::Locale::puts): typo fixed.  a patch from
25007           NAKAMURA Usaku <usa@ruby-lang.org>.  [ruby-dev:30012]
25009 Tue Dec 12 23:33:53 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25011         * lib/optparse.rb (Switch#parse_arg, Switch#conv_arg): splat failures.
25013 Mon Dec 11 11:51:10 2006  Akinori MUSHA  <knu@iDaemons.org>
25015         * ext/digest/sha2/lib/sha2.rb: Moved one level up from under
25016           the superfluous subdirectory digest/.
25018 Mon Dec 11 11:46:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25020         * variable.c (rb_define_const): typo fixed.
25022 Mon Dec 11 09:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25024         * string.c (rb_str_aset): index double decode problem.
25025           [ruby-core:09695]
25027 Sat Dec  9 21:39:24 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25029         * eval.c (ruby_cleanup): keep the exception till after END blocks.
25030           [ruby-core:09675]
25032 Sat Dec  9 11:22:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25034         * lib/irb/locale.rb (IRB::Locale::search_file): use File.exist?
25035           instead of File.exists?.  a patch from Yutaka Kanemoto
25036           <kinpoco at gmail.com> in [ruby-dev:30000].
25038 Fri Dec  8 18:11:18 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25040         * lib/optparse.rb: cannot put :nodoc: before method definition.
25041           put after it.
25043 Fri Dec  8 17:00:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25045         * bin/rdoc: use File.exist? instead of File.exists?.
25047 Thu Dec  7 23:50:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25049         * object.c (Init_Object): new method Dir.exist?(path).
25050           [ruby-core:09663]
25052         * file.c (Init_File): remove File.exists?; use File.exist?
25053           instead.
25055         * file.c: rename functions to test_* to rb_file_*_p.
25057 Thu Dec  7 09:29:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25059         * lib/weakref.rb (WeakRef::__setobj__): should support
25060           marshaling.  [ruby-talk:228508]
25062 Wed Dec  6 23:58:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25064         * Makefile.in, common.mk (NULLCMD): moved for platforms that empty
25065           command does not run.  fixed: [ruby-dev:29994]
25067         * win32/win32.c (init_stdhandle): redirect unopened IOs to NUL.
25068           [ruby-core:09572]
25070 Tue Dec  5 19:01:42 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
25072         * configure.in (SITE_DIR): fixed to empty RUBY_SITE_LIB in config.h on
25073           NetBSD.  fixed: [ruby-dev:29358]
25075 Tue Dec  5 18:38:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25077         * lib/matrix.rb (Matrix::rank): use quo method to avoid integer
25078           division problem.  [ruby-core:09644]
25080         * lib/matrix.rb (Matrix::rank_e): ditto.
25082 Tue Dec  5 00:59:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25084         * misc/ruby-mode.el (ruby-parse-partial): need to parse "/=" as
25085           self assignment operator, not regex.  [ruby-talk:227324]
25087 Tue Dec  5 00:19:14 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25089         * intern.h, object.c, variable.c (rb_mod_constants): added an optional
25090           flag to search ancestors, which is defaulted to true, as well as
25091           const_defined? and const_get.  [ruby-dev:29989]
25093 Mon Dec  4 23:49:28 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25095         * instruby.rb (install_recursive): get rid of warning.
25097         * lib/optparse.rb (CompletingHash#match): get rid of splat failure.
25099 Mon Dec  4 19:16:39 2006  Akinori MUSHA  <knu@iDaemons.org>
25101         * ext/digest/lib/digest/hmac.rb: Do alias << update.
25103 Mon Dec  4 10:48:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25105         * ruby.h (OFFT2NUM): use LONG2NUM() if sizeof(long) equals to
25106           sizeof(off_t).
25108 Mon Dec  4 08:32:25 2006  Shugo Maeda  <shugo@ruby-lang.org>
25110         * lib/cgi.rb (CGI::QueryExtension::read_multipart): should quote
25111           boundary. JVN#84798830
25113 Sun Dec  3 16:16:53 2006  Akinori MUSHA  <knu@iDaemons.org>
25115         * ext/digest/lib/digest/hmac.rb: Fix problems with update
25116           timing. [Reported by: oss-ruby@technorama.net]
25118 Sat Dec  2 07:33:53 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
25120         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::FormData::<<):
25121           HTTPUtils::parse_header() takes a string.  [ruby-dev:29931]
25123         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_header):
25124           String does no longer have each method.
25126         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_form_data):
25127           ditto.
25129 Sat Dec  2 07:09:04 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
25131         * ext/openssl/ossl_ocsp.c: OpenSSL::OCSP::OSCPError should be
25132           subclass of OpenSSL::OpenSSLError. [ruby-dev:29980]
25134 Fri Dec  1 16:31:53 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
25136         * ext/tk/tcltklib.c: shouldn't run the killed thread at callback.
25137           [ruby-talk: 227408]
25139 Tue Nov 28 17:25:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25141         * array.c (ary_iter_check): should check modification (size
25142           change) during iteration.
25144         * array.c (rb_ary_initialize, rb_ary_shift, rb_ary_unshift,
25145           rb_ary_splice, rb_ary_reverse, rb_ary_sort, rb_ary_delete,
25146           rb_ary_delete_at, rb_ary_reject_bang, rb_ary_replace,
25147           rb_ary_clear, rb_ary_fill, rb_ary_uniq_bang, rb_ary_compact,
25148           rb_ary_shuffle): add iteration check.
25150 Mon Nov 27 09:00:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25152         * string.c (rb_str_ord): typo fixed.  reported from Kornelius
25153           Kalnbach <murphy@rubychan.de>.  [ruby-core:09621]
25155 Sun Nov 26 16:36:46 2006  URABE Shyouhei  <shyouhei@ruby-lang.org>
25157         * version.h: addition of RUBY_PATCHLEVEL.
25158         * version.c: ditto.
25160 Wed Nov 22 16:00:49 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
25162         * ext/tk/extconf.rb: support --with-X11/--without-X11 option.
25164         * ext/tk/README.tcltklib: add description about --with-X11-* option
25165           [ruby-talk:225166] and --with-X11/--without-X11 option.
25167         * ext/tk/tkutil/extconf.rb: able to be called manually
25168           [ruby-talk:225950].
25170 Sat Nov 18 23:39:20 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25172         * object.c (rb_obj_tap): a new method.  [ruby-talk:224013]
25174 Wed Nov 15 23:22:54 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25176         * file.c (test_grpowned, rb_stat_grpowned): should honor
25177           supplementary group IDs.  [ruby-core:09546]
25179 Tue Nov  7 18:35:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25181         * eval.c (formal_assign): need to pack rest arg information in
25182           argc.
25184 Tue Nov  7 18:05:01 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
25186         * ext/tk/lib/tk/itemconfig.rb: minor bug fix.
25188 Tue Nov  7 17:52:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25190         * class.c (rb_include_module): revert duplicate inclusion of
25191           modules.  [ruby-dev:29793]
25193 Tue Nov  7 17:18:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25195         * eval.c (method_missing): update old argument adjustment.
25197 Tue Nov  7 16:41:21 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25199         * eval.c (when_check): need to splat for NODE_ARGSCAT as well.
25200           [ruby-dev:29860]
25202 Mon Nov  6 22:23:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25204         * string.c (Init_String): remove duplicated definition of
25205           Symbol#to_s.
25207 Mon Nov  6 18:54:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25209         * eval.c (svalue_to_avalue): need to splat but no error.
25211         * eval.c: new macros - YIELD_CALL, YIELD_VALUES.
25213         * eval.c (rb_yield_values): specify YIELD_VALUES.
25215         * eval.c (rb_yield_0): use new macros.
25217         * eval.c (proc_invoke): slightly modified to separate YIELD_CALL
25218           and YIELD_VALUES from YIELD_ARY_ARGS.
25220         * object.c (Init_Object): add nil.to_splat => [].
25222 Mon Nov  6 15:41:55 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
25224         * ext/tk/lib/tk/itemconfig.rb: ext/tk/lib/tk/itemconfig.rb: bug
25225           fix on 'itemconfiginfo' method, and modify to make it easy to
25226           override 'itemconfiginfo' method.
25228         * ext/tk/lib/tkextlib/tile/treeview.rb: support Tile 0.7.8.
25230         * ext/tk/lib/tkextlib/version.rb: [new] add Tk::Tkextlib_RELEASE_DATE
25231           to get the information from scripts.
25233         * ext/tk/lib/tk.rb: load 'tkextlib/version.rb', and update RELEASE_DATE
25235         * ext/tk/lib/tkextlib/SUPPORT_STATUS: update.
25237         * ext/tk/sample/editable_listbox.rb: [new] the listbox with editable
25238           items. It's one of the example about usage of Place geometry manager.
25240         * ext/tk/sample/tktextio.rb: improve the functions of TkTextIO class.
25241           Those are required by 'irbtkw.rbw'.
25243         * ext/tk/sample/irbtkw.rbw: [new] IRB on Ruby/Tk. It doesn't need any
25244           real console. IRB works on a text widget without I/O blocking. That
25245           is, thread switching on IRB will work properly, even if on Windows.
25247 Mon Nov  6 00:42:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25249         * parse.y (arg_dup_check): vid may be nameless internal id.
25251 Sun Nov  5 19:52:19 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25253         * lib/date.rb: updated based on date2 3.9.7.
25255 Sat Nov  4 13:09:31 2006  Shugo Maeda  <shugo@ruby-lang.org>
25257         * lib/net/imap.rb: accept NOMODSEQ. [ruby-core:9002]
25259 Fri Nov  3 00:16:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25261         * ext/socket/socket.c (ruby_getnameinfo__aix): AF_INET6 workaround
25262           for AIX.  a patch from Yutaka Kanemoto <kinpoco AT gmail.com>.
25263           [ruby-dev:29744]
25265 Thu Nov  2 14:19:44 2006  Akinori MUSHA  <knu@iDaemons.org>
25267         * lib/set.rb (Set#^): Fix XOR operation against a container that
25268           holds duplicate values. [ruby-core:9372]
25270 Thu Nov  2 10:00:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25272         * string.c: class Symbol is no longer subclass of String. also
25273           covers [ruby-core:09366]
25275 Thu Nov  2 08:21:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25277         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): Symbol should
25278           come earlier than String.
25280         * lib/soap/mapping/rubytypeFactory.rb (RubytypeFactory::obj2soap):
25281           ditto.
25283         * lib/set.rb (TC_Set::test_s_new): strings are no longer
25284           Enumerable
25286         * lib/soap/property.rb (Property::load): ditto.
25288         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_header): ditto.
25290         * lib/soap/mimemessage.rb (MIMEMessage::Headers::parse): ditto.
25292 Thu Nov  2 09:08:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25294         * array.c: revert lfree shift/unshift boost patch to avoid unknown
25295           memory error.
25297 Wed Nov  1 23:24:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25299         * ruby.h (struct RArray): revert embedding ptr in RVALUE.
25301         * array.c: ditto.
25303 Wed Nov  1 23:01:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25305         * string.c (hash): use Bob Jenkins' hash algorithm.
25307 Wed Nov  1 02:22:31 2006  Akinori MUSHA  <knu@iDaemons.org>
25309         * ext/digest/lib/digest/hmac.rb (Digest::HMAC::update): Minor
25310           optimization.
25312         * ext/digest/digest.c (rb_digest_instance_equal): Allow comparing
25313           a digest instance with another of a different class.
25315 Wed Nov  1 01:05:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25317         * eval.c (rb_call0): fixed bug of zsuper with both of opt and rest.
25318           fixed: [ruby-list:42928]
25320 Tue Oct 31 17:03:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25322         * time.c (time_dup): duplicate the class of original time.
25323           [ruby-core:09357]
25325         * lib/time.rb (Time::make_time, Time::rfc2822, Time::httpdate):
25326           should respect subclasses.  [ruby-core:09357]
25328 Tue Oct 31 16:25:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25330         * array.c (ary_shared_first): should address offset after
25331           ary_shared_array().  [ruby-core:09358]
25333 Mon Oct 30 23:40:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25335         * Makefile.in (miniruby): add XLDFLAGS.
25337         * configure.in (aix): use -bE option for miniruby.  [ruby-dev:29698]
25339         * dir.c (glob_helper): get rid of possible memory leak.
25341         * win32/win32.c (cmdglob, rb_w32_cmdvector, rb_w32_opendir,
25342           rb_w32_get_environ): not to use GC before initialization.
25344 Mon Oct 30 19:28:02 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25346         * bignum.c (rb_big2str0): use better approximation.
25348 Mon Oct 30 18:35:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25350         * bignum.c (rb_big2str0): wrong allocation length.  a patch from
25351           U.Nakamura <usa at garbagecollect.jp> [ruby-dev:29710]
25353 Mon Oct 30 12:34:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25355         * eval.c (rb_eval): fix commit miss.  [ruby-dev:29707]
25357 Mon Oct 30 11:15:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25359         * sprintf.c (rb_str_format): should preserve leading zero
25360           information for negative %b and %x.  [ruby-talk:221347]
25362 Sun Oct 29 19:51:31 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
25364         * regexec.c: invalid offset value was used in STATE_CHECK_BUFF_INIT().
25366 Sat Oct 28 20:13:18 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
25368         * oniguruma.h: Version 4.4.5
25370         * regint.h: ditto.
25372         * regerror.c: ditto.
25374         * regexec.c: ditto.
25376         * regcomp.c ditto.
25378         * regparse.c ditto.
25380 Sat Oct 28 07:56:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25382         * marshal.c (r_object0): missing break.  [ruby-core:09345]
25384 Fri Oct 27 17:30:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25386         * enumerator.c (enum_each_cons): move RETURN_ENUMERATOR() after
25387           argument check.
25389 Thu Oct 26 21:05:48 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
25391         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_verify): should clear error.
25392           (fix http://bugs.debian.org/394336)
25394         * ext/openssl/ossl_ns_spki.c (ossl_spki_initialize): ditto.
25396 Thu Oct 26 15:23:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25398         * enumerator.c: remove by_slice and by_cons.
25400 Thu Oct 26 15:12:12 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25402         * ext/digest/digest.c (Init_digest): typo.
25404 Wed Oct 25 17:16:05 2006  Akinori MUSHA  <knu@iDaemons.org>
25406         * test/digest/test_digest_hmac.rb: added.
25408 Wed Oct 25 16:34:31 2006  Akinori MUSHA  <knu@iDaemons.org>
25410         * ext/digest/test.sh: make this script work again.
25412 Wed Oct 25 07:59:42 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25414         * lib/date/format.rb: updated based on date2 3.9.6.
25415           [ruby-core:09323]
25417 Wed Oct 25 00:58:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25419         * win32/mkexports.rb, win32/resource.rb: use unique variable names.
25421 Tue Oct 24 19:18:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25423         * enumerator.c (enumerator_by_slice): new method added.
25425         * enumerator.c (enumerator_by_cons): ditto.
25427 Tue Oct 24 18:56:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25429         * enumerator.c (enum_each_slice, enum_each_cons): returns
25430           Enumerable::Enumerator if no block is given.  [ruby-dev:29246]
25432         * enumerator.c: remove methods: enum_with_index, enum_slice,
25433           enum_cons.  [ruby-dev:29246]
25435 Tue Oct 24 18:51:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25437         * enum.c (enum_zip): add RETURN_ENUMERATOR() to zip method.
25439 Mon Oct 23 04:30:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25441         * marshal.c (r_object0): use return value from proc given as the
25442           second argument to Marshal#load() to allow value replacement in
25443           the restoring data.
25445 Sun Oct 22 14:48:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25447         * signal.c (Init_signal): avoid duplicated installation of SIGCHLD
25448           handler.
25450 Sun Oct 22 16:47:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25452         * string.c (rb_str_substr): should be infected with only original
25453           string, but not the shared string.  fixed: [ruby-core:09152]
25455         * string.c (rb_str_new4): keep shared string untainted when original
25456           string is tainted.  fixed: [ruby-dev:29672]
25458 Sun Oct 22 07:55:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25460         * string.c (rb_str_upcase, rb_str_downcase, rb_str_downcase,
25461           rb_str_upcase_bang, rb_str_downcase_bang, rb_str_swapcase_bang):
25462           add RDoc description that case conversion to be effective only
25463           in ASCII region.
25465 Sun Oct 22 05:20:34 2006  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
25467         * configure.in: alloca is broken; use C_ALLOCA instead.
25468           [ruby-dev:29416]
25470 Sat Oct 21 17:50:40 2006  Akinori MUSHA  <knu@iDaemons.org>
25472         * ext/digest/lib/digest.rb: Follow the framework updates.
25474 Fri Oct 20 22:00:43 2006  Akinori MUSHA  <knu@iDaemons.org>
25476         * ext/digest/lib/digest/hmac.rb: Complete half-boiled updates.
25478         * ext/digest/sha2/lib/digest/sha2.rb: Fix #initialize_clone().
25480 Fri Oct 20 20:28:37 2006  Akinori MUSHA  <knu@iDaemons.org>
25482         * ext/digest: Prefix C constants with RUBY_ and C type names with
25483           rb_ to avoid name clash in writing extensions.
25485         * ext/digest: Introduce Digest::Class and Digest::Instance for
25486           ease of implementing subclasses and add-ons, inspired by
25487           gotoyuzo.
25489         * ext/digest: The Digest::Instance module now requires and assumes
25490           that any instance be resettable and clonable, and add some
25491           convenient instance methods such as "new()", for creating a new
25492           copy, parameter taking "digest()" and "hexdigest()", for instant
25493           calculation.  These methods make digest instances work just like
25494           digest classes.
25496         * ext/digest/sha2/lib/digest/sha2.rb:
25497           Add the Digest::SHA2 class to wrap up SHA2 variants: SHA256,
25498           SHA384 and SHA512, hoping this module would make a decent
25499           example of a digest subclass written in Ruby.
25501         * ext/digest/lib/digest.rb: Adjust autoload entries for SHA2
25502           classes.
25504         * ext/digest/lib/digest/hmac.rb: Follow the framework updates.
25506 Fri Oct 20 10:47:43 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25508         * lib/mkmf.rb: fixed the bug of handling COMMON_MACROS.
25510 Fri Oct 20 08:42:38 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25512         * common.mk (NULLCMD): dummy command.
25514         * bcc32/Makefile.sub (post-install-*): Borland make cannot ignore
25515           command-less double-colon rules.  [ruby-dev:29676]
25517 Fri Oct 20 00:37:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25519         * bcc32/Makefile.sub ($(LIBRUBY_SO)): execute pre-link hook.
25521         * ext/extmk.rb: workaround for Borland make.
25523 Wed Oct 18 23:02:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25525         * array.c (rb_ary_shift): shorten copy size.  fixed: [ruby-list:42907]
25527         * signal.c (Init_signal): handle SIGTERM.  fixed: [ruby-list:42895]
25529         * win32/win32.c (rb_w32_utime): allow NULL to set the current time.
25530           [ruby-talk:219248]
25532 Wed Oct 18 13:25:50 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25534         * string.c (rb_str_each_line): String#lines now works when a block
25535           is given.  in other words, lines become an alias to each_line.
25536           [ruby-core:09218]
25538         * string.c (rb_str_each_byte): ditto for bytes in place of lines.
25540 Wed Oct 18 00:55:33 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25542         * parse.y (parser_yylex): use particular enums.  [ruby-core:09221]
25544 Tue Oct 17 22:03:08 2006  Minero Aoki  <aamine@loveruby.net>
25546         * lib/erb.rb: String#each was removed, use #each_line instead.
25548 Tue Oct 17 12:27:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25550         * array.c (ary_shared_array): should set NOEMBED flag for a copied
25551           array.
25553 Tue Oct 17 08:04:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25555         * string.c (rb_str_lines): now takes optional argument for the
25556           line separator.
25558         * io.c (rb_io_lines, rb_io_bytes): new methods.
25560 Mon Oct 16 23:33:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25562         * array.c (rb_ary_unshift_m): a bug in lfree shift length
25563           calculation.
25565 Mon Oct 16 08:30:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25567         * mkconfig.rb: *OBJS are not needed for extension libraries.
25569         * {bcc32,wince,win32}/Makefile.sub (config.status): fixed typo,
25570           missing comma.
25572 Mon Oct 16 00:44:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25574         * pack.c (pack_unpack): execute block if given with unpacked value
25575           instead of creating an array.  an idea from Tim Bray.
25577 Sun Oct 15 01:03:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25579         * lib/test/unit/collector/dir.rb (Collector::Dir#collect): append base
25580           directory but not prepend.
25582         * lib/test/unit/collector/dir.rb (Collector::Dir#collect_file): do not
25583           join with dot.  fixed: [ruby-core:09179]
25585 Sat Oct 14 23:39:50 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25587         * parse.y (singleton): no need to re-create NODE_SELF() again.
25588           [ruby-core:09177]
25590 Sat Oct 14 23:25:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25592         * parse.y (parser_warning, parser_warn): some error message may
25593           contain format specifiers.  a patch from Akinori MUSHA <knu at
25594           iDaemons.org>.  [ruby-dev:29657]
25596         * regparse.c (onig_rb_warning, onig_rb_warn): ditto.
25598         * ext/bigdecimal/bigdecimal.c (VpException): ditto.
25600         * ext/dl/handle.c (rb_dlhandle_initialize): ditto.
25602         * ext/gdbm/gdbm.c (rb_gdbm_fatal): ditto.
25604 Sat Oct 14 08:15:42 2006  Akinori MUSHA  <knu@iDaemons.org>
25606         * ext/digest/digest.c, ext/digest/digest.h,
25607           ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c,
25608           ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c:
25609           Introduce API versioning.
25611         * ext/digest/digest.c, ext/digest/digest.h,
25612           ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c,
25613           ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c: Remove
25614           the constants DIGEST_LENGTH and BLOCK_LENGTH and turn them into
25615           instance methods digest_length() and block_length().  Class
25616           methods with the same names are also provided, which take extra
25617           parameters for a digest method.
25619         * ext/digest/lib/digest/hmac.rb: Completely redesign the somewhat
25620           bizarre API, now that Digest classes can take hashing
25621           parameters.
25623 Sat Oct 14 05:54:05 2006  Akinori MUSHA  <knu@iDaemons.org>
25625         * ext/digest/digest.c: Improve RDoc documentation further more.
25627 Sat Oct 14 04:33:33 2006  Akinori MUSHA  <knu@iDaemons.org>
25629         * ext/digest/digest.c: Improve RDoc documentation.
25631         * ext/digest/digest.c (Init_digest, rb_digest_base_s_digest,
25632           rb_digest_base_s_hexdigest): Make Digest::Base::digest() and
25633           Digest::Base::hexdigest() take extra arguments, which are passed
25634           through to the constructor in an internal call.
25636         * ext/digest/bubblebabble/bubblebabble.c
25637           (rb_digest_base_s_bubblebabble): Ditto for
25638           Digest::Base::bubblebabble().
25640 Sat Oct 14 00:55:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25642         * bcc32/Makefile.sub (post-install-ext): no longer needed.
25644         * bcc32/configure.bat: get rid of a quirk of Borland make, which
25645           sets empty macro in command line to "1".
25647 Fri Oct 13 22:49:02 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25649         * lib/date.rb: updated based on date2 3.9.5.
25651 Fri Oct 13 21:00:01 2006  Akinori MUSHA  <knu@iDaemons.org>
25653         * ext/digest/lib/digest.rb (Digest): Try to auto-load non-standard
25654           digest modules when a specified digest class is missing.
25656         * ext/digest/lib/digest.rb: Define Digest(name) for ease of
25657           dynamically selecting a hashing algorithm.
25659 Fri Oct 13 20:53:37 2006  Akinori MUSHA  <knu@iDaemons.org>
25661         * ext/digest/digest.c (Init_digest): Digest::Base.new() does no
25662           longer take an initial string to feed.  This change allows
25663           subclasses to take hashing parameters.  A statement such as
25664           ``md = Digest::MD5.new(s)'' can be easily rewritten as
25665           ``md = Digest::MD5.new << s'' or
25666           ``md = Digest::MD5.new.update(s)''.
25668 Fri Oct 13 20:51:55 2006  Akinori MUSHA  <knu@iDaemons.org>
25670         * ext/digest/digest.c, ext/digest/md5/md5init.c,
25671           ext/digest/rmd160/rmd160init.c, ext/digest/sha1/sha1init.c,
25672           ext/digest/sha2/sha2init.c: Add RDoc documentation.
25674         * ext/digest/digest.txt, ext/digest/digest.txt.ja: Removed in
25675           favor of embedded RDoc documentation.
25677 Fri Oct 13 20:38:12 2006  Akinori MUSHA  <knu@iDaemons.org>
25679         * ext/digest/bubblebabble, ext/digest/digest.c: Rip BubbleBabble
25680           support out of the base class and have a separate module named
25681           digest/bubblebabble.
25683 Fri Oct 13 19:53:59 2006  Akinori MUSHA  <knu@iDaemons.org>
25685         * ext/digest/digest.c (rb_digest_base_equal): Again, should call
25686           digest() of a subclass instead of the one defined in the base
25687           class.
25689 Fri Oct 13 18:19:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25691         * object.c: Class#inherited RDoc added.  a patch from Daniel
25692           Berger <djberg96 at gmail.com>  [ruby-core:08942]
25694 Fri Oct 13 02:42:00 2006  Akinori MUSHA  <knu@iDaemons.org>
25696         * ext/digest/digest.c (rb_digest_base_equal): Should call digest()
25697           of a subclass instead of the one defined in the base class.
25699 Fri Oct 13 02:30:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25701         * lib/test/unit/collector/dir.rb (Collector::Dir#collect): prepend
25702           base directory to load path.
25704         * lib/test/unit/collector/dir.rb (Collector::Dir#collect_file): should
25705           use the given File-like interface, but not File directly.
25707         * test/testunit/collector/test_dir.rb (TestDir::FileSystem): implement
25708           File-like methods correctly.
25710 Fri Oct 13 01:48:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25712         * lib/date.rb (Date::self.complete_hash): need to check if g is
25713           nil before dereference.  [ruby-core:09116]
25715 Fri Oct 13 01:05:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25717         * string.c (rb_str_partition): RDoc update.  a patch from
25718           Mauricio Fernandez <mfp at acm.org>.  [ruby-core:09160]
25720         * hash.c (rb_hash_compare_by_id): ditto.
25722 Fri Oct 13 00:34:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25724         * object.c (rb_mod_cvar_defined): wrong id check.  a patch from
25725           Mauricio Fernandez <mfp at acm.org>.  [ruby-core:09158]
25727         * object.c (rb_mod_cvar_get): typo fixed.  [ruby-core:09168]
25729         * object.c (rb_mod_cvar_set): ditto.
25731 Thu Oct 12 22:58:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25733         * hash.c (rb_hash_compare_by_id): somehow we lost renaming from
25734           Hash#identical.  [ruby-core:09163]
25736 Thu Oct 12 18:25:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25738         * ext/tk/tkutil/tkutil.c (cbsubst_table_setup): need to handle new
25739           character literal (1 char string).
25741         * lib/mkmf.rb: shut up some warnings from tk's extconf.rb.
25743 Thu Oct 12 02:15:24 2006  Akinori MUSHA  <knu@iDaemons.org>
25745         * ext/digest/lib/digest/hmac.rb: Make use of String#bytes.
25747 Thu Oct 12 02:12:31 2006  Akinori MUSHA  <knu@iDaemons.org>
25749         * ext/digest/digest.c (get_digest_base_metadata): Use an instance
25750           variable of a class object instead of a class variable for
25751           metadata.  This change is only crucial for ruby 1.8 because
25752           class variables are inherited to subclasses prior to 1.9, but
25753           applying it also to 1.9 will assure compatibilities.
25755         * ext/digest/md5/md5init.c (Init_md5): Ditto.
25757         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
25759         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
25761         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
25763 Wed Oct 11 21:36:47 2006  Akinori MUSHA  <knu@iDaemons.org>
25765         * ext/digest/digest.c (rb_digest_base_alloc,
25766           rb_digest_base_equal): Simplify the equality check and just
25767           compare resulted digests since state-level equality should
25768           not be so significant.
25770         * ext/digest/digest.h: Ditto.
25772         * ext/digest/*/*.[ch]: Ditto.
25774 Wed Oct 11 17:11:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25776         * eval.c (rb_obj_define_method): add half boiled RDoc document.
25778 Wed Oct 11 16:57:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25780         * array.c (rb_ary_replace): should shift lfree pointer before
25781           calling xfree.
25783 Wed Oct 11 15:07:42 2006  Akinori MUSHA  <knu@iDaemons.org>
25785         * ext/digest/lib/digest/hmac.rb: Add digest/hmac, which implements
25786           HMAC keyed-hashing algorithm.
25788 Wed Oct 11 15:03:55 2006  Akinori MUSHA  <knu@iDaemons.org>
25790         * ext/digest/digest.c (rb_digest_base_reset): Do not make
25791           recursive calls, but call initialize() when reset() is not
25792           defined in a subclass.
25794 Wed Oct 11 14:56:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25796         * ext/digest/sha1/sha1ossl.h: libssl 0.9.8c-3 defines no
25797           SHA_BLOCK_LENGTH.
25799 Wed Oct 11 14:03:31 2006  Akinori MUSHA  <knu@iDaemons.org>
25801         * ext/digest/digest.c (rb_digest_base_reset, Init_digest): Add
25802           Digest::Base#reset.
25804         * ext/digest/digest.h: Update the header comment.
25806         * ext/digest/md5/md5ossl.h, ext/digest/md5/md5init.c (Init_md5):
25807           Define DIGEST_LENGTH and BLOCK_LENGTH.
25809         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
25811         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
25813         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
25815         * ext/digest/depend, ext/digest/extconf.rb: Use $INSTALLFILES
25816           rather than adding make targets. [Pointed out by: nobu]
25818 Tue Oct 10 16:39:08 2006  Akinori MUSHA  <knu@iDaemons.org>
25820         * ext/digest/digest.c (hexdigest_str_new, bubblebabble_str_new):
25821           Perform StringValue() checks properly.
25823 Tue Oct 10 13:21:21 2006  Akinori MUSHA  <knu@iDaemons.org>
25825         * ext/digest/sha1/depend, ext/digest/sha2/depend: Remove obsolete
25826           dependencies.
25828 Mon Oct  9 23:46:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25830         * lib/parsedate.rb: documentation patch from Konrad Meyer
25831           <konrad.meyer@gmail.com>.  [ruby-doc:1238]
25833         * lib/open3.rb, lib/ping.rb: ditto.
25835 Mon Oct  9 23:40:58 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25837         * ext/extmk.rb, lib/fileutils.rb, lib/mkmf.rb, lib/optparse.rb,
25838           lib/shellwords.rb: get rid of shadowing outer local variable.
25840 Mon Oct  9 22:56:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25842         * lib/rexml/encoding.rb (REXML::Encoding::check_encoding): spaces
25843           are allowed around equal sign.  [ruby-core:09032]
25845         * lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser): ditto.
25847 Mon Oct  9 01:56:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25849         * eval.c (rb_obj_define_method): add new method
25850           Kernel#define_singleton_method.  [ruby-list:42851]
25852 Sat Oct  7 23:53:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25854         * string.c (rb_str_scan): small documentation fix.
25855           [ruby-core:09007]
25857 Sat Oct  7 23:44:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25859         * bignum.c (rb_big_rshift): a bug in right shift of negative
25860           bignums.  [ruby-core:09020]
25862 Sat Oct  7 23:33:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25864         * eval.c (formal_assign): packed post splat arguments may conflict
25865           with normal arguments.  [ruby-core:09021]
25867         * eval.c (rb_call0): ditto.
25869 Sat Oct  7 11:53:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25871         * object.c (rb_mod_initialize): since module_eval no longer passes
25872           self, use module_exec instead.  fixed: [ruby-dev:29637]
25874 Sat Oct  7 00:27:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25876         * class.c (rb_include_module): remove unnecessary check.
25877           [ruby-talk:218402]
25879 Fri Oct  6 15:19:59 2006  Akinori MUSHA  <knu@iDaemons.org>
25881         * ext/digest/depend: Fix header installation when the build
25882           directory is different from srcdir. [Pointed out by: eban]
25884 Fri Oct  6 09:56:31 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25886         * {bcc32,win32,wince}/Makefile.sub (config.status): shouldn't use
25887           copy command instead of install. use -run install.
25889 Fri Oct  6 06:53:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25891         * eval.c (rb_yield_0): small refactoring.
25893         * parse.y (bparam_item): fixed bugs in handling parenthesized LHS.
25895 Fri Oct  6 04:47:07 2006  Akinori MUSHA  <knu@iDaemons.org>
25897         * ext/digest/depend: Install digest.h.
25899 Fri Oct  6 04:27:40 2006  Akinori MUSHA  <knu@iDaemons.org>
25901         * ext/digest/lib/md5.rb, ext/digest/lib/sha1.rb: Remove those
25902           compatibility stub libraries.
25904         * sample/openssl/c_rehash.rb: Use digest/md5 instead of obsolete md5.
25906 Fri Oct  6 04:09:51 2006  Akinori MUSHA  <knu@iDaemons.org>
25908         * ext/digest/digest.c: Make hexdigest() always call digest() internally.
25910         * ext/digest/digest.c: Add bubblebabble().
25912 Fri Oct  6 02:38:42 2006  Akinori MUSHA  <knu@iDaemons.org>
25914         * ext/digest/digest.c: Allow subclassing in Ruby.
25916 Fri Oct  6 02:06:10 2006  Akinori MUSHA  <knu@iDaemons.org>
25918         * ext/digest/digest.c (hexdigest_str_new): Add a string size check.
25920 Thu Oct  5 19:28:35 2006  Akinori MUSHA  <knu@iDaemons.org>
25922         * ext/digest/digest.[ch]: Since the argument order of
25923           hash_final_func_t was inconsistent with others, change it and
25924           rename to hash_finish_func_t to avoid confusion.
25926         * ext/digest/digest.[ch]: Remove and eliminate the use of
25927           hash_end_func_t.  Implement hexdigest conversion in the base
25928           class.
25930         * ext/digest/md5/md5.c, ext/digest/md5/md5.h,
25931           ext/digest/md5/md5init.c, ext/digest/md5/md5ossl.c,
25932           ext/digest/md5/md5ossl.h: Remove MD5_End() and change
25933           MD5_Final() to MD5_Finish().
25935         * ext/digest/rmd160/depend, ext/digest/rmd160/extconf.rb,
25936           ext/digest/rmd160/rmd160.c, ext/digest/rmd160/rmd160.h,
25937           ext/digest/rmd160/rmd160hl.c, ext/digest/rmd160/rmd160init.c,
25938           ext/digest/rmd160/rmd160ossl.c, ext/digest/rmd160/rmd160ossl.h:
25939           Remove unused functions RMD160_End(), RMD160_File(),
25940           RMD160_Data() and change RMD160_Final() to RMD160_Finish().
25942         * ext/digest/sha1/extconf.rb, ext/digest/sha1/sha1.c,
25943           ext/digest/sha1/sha1.h, ext/digest/sha1/sha1hl.c,
25944           ext/digest/sha1/sha1init.c, ext/digest/sha1/sha1ossl.c,
25945           ext/digest/sha1/sha1ossl.h: Likewise.
25947         * ext/digest/sha2/extconf.rb, ext/digest/sha2/sha2.c,
25948           ext/digest/sha2/sha2.h, ext/digest/sha2/sha2hl.c,
25949           ext/digest/sha2/sha2init.c: Likewise.
25951 Wed Oct  4 18:47:25 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
25953         * ext/tk/lib/tkextlib/*: bugfix and update
25954           (see ext/tk/ChangeLog.tkextlib).
25956 Wed Oct  4 17:25:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25958         * eval.c (rb_call): check protected visibility based on real self,
25959           not ruby_frame->self.  [ruby-talk:217822]
25961 Wed Oct  4 15:46:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25963         * parse.y (block_param): should interpret single parenthesized
25964           left hand side expression.
25966 Wed Oct  4 08:52:30 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25968         * test/optparse/test_getopts.rb: changed the class name of test case
25969           to get rid of conflict with test_optparse.rb.
25971 Tue Oct  3 21:04:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25973         * parse.y (dyna_in_block): inline using macro.
25975         * parse.y (mlhs): simplifies the rule a bit.
25977         * parse.y (block_param): restrict block parameters to be local
25978           variables only.
25980         * test/ruby/test_iterator.rb (TestIterator::test_nested_iterator):
25981           update test suite to conform the last change.
25983 Tue Oct  3 02:31:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25985         * eval.c (splat_value): use "to_splat" instead of "to_ary" to
25986           prepare splat values as an array.
25988         * array.c (Init_Array): define to_splat.
25990         * range.c (range_to_splat): new method.
25992         * enumerator.c (enumerator_to_splat): ditto.
25994 Tue Oct  3 01:36:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25996         * string.c (rb_str_lines): returns an Enumerator instead of an
25997           array of lines.
25999         * string.c (rb_str_bytes): a new method.
26001 Mon Oct  2 23:47:55 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26003         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::COLLECTORS):
26004           base directory should be lower precedence.  fixed: [ruby-dev:29622]
26006         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner#options): typo.
26008         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
26009           load expanded path.  fixed: [ruby-dev:29621]
26011 Mon Oct  2 15:47:55 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26013         * instruby.rb: batfile should be CRLF'ed.
26015 Mon Oct  2 01:24:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26017         * common.mk (test-all): separate directory where running test cases
26018           from source tree.
26020         * lib/test/unit/autorunner.rb (options): added --basedir, --workdir
26021           and --load-path options.
26023         * lib/test/unit/collector/dir.rb (recursive_collect, collect_file):
26024           base directory support.
26026 Sun Oct  1 23:56:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26028         * Makefile.in, common.mk, ext/extmk.rb, win{32,ce}/Makefile.in: keep
26029           LIBRUBY_SO unless need to be removed.
26031 Sun Oct  1 23:12:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26033         * lib/optparse.rb (OptionParser#make_switch): pass arguments directly.
26035 Sat Sep 30 15:11:26 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26037         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.4.
26039 Fri Sep 29 13:18:24 2006  Akinori MUSHA  <knu@iDaemons.org>
26041         * ext/digest/lib/digest.rb (Digest): Require digest.so and fix the
26042           breakage.  Point out by NAKAMURA Usaku in [ruby-dev:29619].
26044 Fri Sep 29 12:11:04 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
26046         * jcode.rb (succ!): call original succ! if $KCODE == 'n'.
26047           fixed: [ruby-talk:216845]
26049 Fri Sep 29 11:43:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26051         * lib/mkmf.rb (try_func): revert fallback checking undeclared function.
26052           fixed: [ruby-core:08949]
26054 Fri Sep 29 09:56:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26056         * ext/extmk.rb: extout is needed for also clean.
26057           fixed: [ruby-core:08944]
26059         * lib/optparse.rb (OptionParser::Switch#conv_arg): unsplat by
26060           Proc#call if no conversion is given.
26062 Thu Sep 28 23:59:31 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26064         * node.h (struct thread): declare win32_exception_list on cygwin and
26065           win32 regardless if it is implemented.  Provisional fix for
26066           [ruby-core:08917].
26068 Thu Sep 28 20:49:20 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26070         * lib/tmpdir.rb: use return value of getdir.call for length.
26072 Wed Sep 27 22:08:16 2006  Akinori MUSHA  <knu@iDaemons.org>
26074         * ext/digest/md5/md5init.c (Init_md5): Now that we have digest.rb,
26075           require "digest" rather than "digest.so".
26077         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
26079         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
26081         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
26083 Wed Sep 27 21:21:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26085         * string.c (rb_str_startwith): rename startwith? to start_with?,
26086           endwith? to endwith?, respectively.  [ruby-talk:216685]
26088 Wed Sep 27 13:29:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26090         * lib/cgi.rb (CGI::TagMaker::nOE_element_def): replace to_s by
26091           join.  some other methods as well.  [ruby-dev:29613]
26093 Wed Sep 27 01:04:49 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26095         * lib/mkmf.rb (try_func): check function pointer first and macro next.
26097         * lib/mkmf.rb (have_type): simplified with typedef and sizeof.
26099 Wed Sep 27 00:08:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26101         * array.c (rb_ary_shift): shift/unshift performance boost patch,
26102           based on the patch from Eric Mahurin <eric_mahurin at yahoo.com>.
26103           [ruby-core:05861]
26105         * array.c (rb_ary_unshift_m): ditto.
26107         * array.c (ary_make_shared): ditto.
26109         * array.c (RESIZE_CAPA): ditto.
26111         * array.c (rb_ary_free): new function to free memory.  code moved
26112           from gc.c.
26114         * string.c (rb_str_free): ditto.
26116 Tue Sep 26 23:57:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26118         * lib/optparse.rb (OptionParser#getopts): use strings as key.
26119           fixed: [ruby-dev:29614]
26121 Tue Sep 26 15:29:55 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26123         * {win32,wince}/Makefile.sub (CPP): check predefined value.
26125 Tue Sep 26 07:55:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26127         * array.c (rb_ary_shift): should not move memory region if array
26128           body is shared.  a patch from Kent Sibilev <ksruby at gmail.com>.
26129           [ruby-core:08922]
26131 Mon Sep 25 23:10:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26133         * dir.c (rb_push_glob): need not to check by FilePathValue().
26134           [ruby-dev:29599]
26136         * dir.c (dir_globs): ditto.
26138 Mon Sep 25 22:26:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26140         * file.c (rb_path_end): skip root directory.  fixed: [ruby-core:08913]
26142         * lib/mkmf.rb (rm_f): get rid of NUL.
26144         * lib/mkmf.rb (init_mkmf): set default $LDFLAGS.  Patch by Michal
26145           Suchanek <hramrach at centrum.cz>.  [ruby-talk:216256]
26147 Mon Sep 25 15:06:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26149         * sample/test.rb: "print nil" now prints empty string.
26151         * test/ruby/test_system.rb (TestSystem::test_system): ditto.
26153 Mon Sep 25 11:26:25 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26155         * hash.c (recursive_hash): remove unused local variable.
26157         * parse.y (parser_yylex): ditto.
26159         * parse.y (rb_gc_mark_symbols): fix unmatched prototype .
26161         * file.c (rb_get_path): check NUL byte in the path string.
26163 Mon Sep 25 08:14:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26165         * array.c (rb_ary_shift): should clear shifting top element.
26166           [ruby-talk:216055]
26168         * array.c (rb_ary_shift): avoid creating shared object if array
26169           size is small.
26171 Mon Sep 25 08:11:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26173         * random.c (rb_f_rand): RDoc typo fix.  a patch from Frederick
26174           Cheung <fred at 82ask.com>.  [ruby-talk:216047]
26176 Sun Sep 24 21:19:24 2006  Guy Decoux  <ts@moulon.inra.fr>
26178         * gc.c (gc_mark_children): NODE_POSTEXE holds Ruby VALUE.
26179           [ruby-core:08912]
26181 Sun Sep 24 22:28:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26183         * runruby.rb: extension library scripts moved into common directory.
26185 Sun Sep 24 12:10:04 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26187         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.3.
26189 Sun Sep 24 06:55:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26191         * io.c (rb_io_print): no special handling for nil as well as puts.
26192           fixed: [ruby-dev:29586]
26194 Sun Sep 24 06:25:53 2006  why the lucky stiff  <why@ruby-lang.org>
26196         * eval.c (rb_thread_save_context, rb_thread_restore_context):
26197           sandbox hook to save and restore sandbox state.
26199         * eval.c (thread_no_ensure): added THREAD_NO_ENSURE thread flag.
26201         * eval.c (rb_thread_kill_bang): Thread#kill! uses the above flag
26202           to circumvent ensure, in order to prevent endless loops.
26203           contributed by MenTaLguY. [ruby-core:08768]
26205         * eval.c (rb_thread_kill): fix Thread#kill docs, which returns
26206           the thread object in all cases.
26208         * node.h: expose the rb_jmpbuf_t and rb_thread_t structs, along
26209           with the thread flags.  used by the sandbox extension.
26211         * ruby.h: extern rb_eThreadError, so sandbox can swap it.
26213 Sat Sep 23 21:34:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26215         * lib/cgi.rb (CGI::QueryExtension::read_multipart): CGI content
26216           may be empty.  a patch from Jamis Buck <jamis at 37signals.com>.
26218 Sat Sep 23 20:54:28 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
26220         * oniguruma.h: Version 4.4.4
26222         * regexec.c: ditto.
26224         * regcomp.c ditto.
26226 Sat Sep 23 08:35:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26228         * lib/rdoc/ri/ri_options.rb: prevent NameError.  [ruby-dev:29597]
26230 Sat Sep 23 01:02:57 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26232         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.2.
26234 Fri Sep 22 18:07:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26236         * string.c (rb_str_partition): no need to call rb_call_super(),
26237           since String is no longer includes Enumerable.
26239 Fri Sep 22 17:33:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26241         * hash.c (rb_hash_eql): new method to be used by Hash.
26243         * hash.c (rb_hash_hash): ditto.
26245 Fri Sep 22 06:53:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26247         * bignum.c (rb_big_hash): use rb_memhash().
26249         * numeric.c (flo_hash): simplified.  klass need not to affect
26250           resulting hash value.
26252 Fri Sep 22 02:06:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26254         * .cvsignore: ignore timestamp files and installed list file.
26256 Fri Sep 22 01:36:34 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26258         * instruby.rb: include FileUtils unconditionally.
26260 Fri Sep 22 00:36:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26262         * numeric.c (Init_Numeric): fix_odd_p and fix_even_p are for Fixnum.
26263           patch from Ondrej Bilka <neleai at seznam.cz>.  [ruby-core:08904]
26265 Thu Sep 21 22:56:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26267         * common.mk (no-install): not install rdoc actually.
26269         * common.mk (install-doc, no-install-doc): use instruby.rb.
26271         * instruby.rb: rdoc installation.
26273         * ext/extmk.rb: expand ruby executable names.
26275 Thu Sep 21 20:19:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26277         * string.c (str_new3): embed shorter strings more eagerly.
26279 Thu Sep 21 17:44:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26281         * string.c (rb_str_startwith): a new method to check if a string
26282           starts with given prefix.
26284         * string.c (rb_str_endwith): the opposite of String#startwith?.
26286 Thu Sep 21 16:29:02 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
26288         * rubytest.rb: use each_line instead of each.
26290 Thu Sep 21 15:06:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26292         * numeric.c (int_odd_p): a new method to check even or odd.
26293           [RCR#337]
26295         * numeric.c (int_even_p): ditto.
26297 Thu Sep 21 13:55:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26299         * ext/etc/etc.c (etc_getpwuid): uid integer should be wrapped in
26300           uid_t value.  [ruby-core:08897]
26302         * ext/etc/etc.c (etc_getpwuid): uid_t may be bigger than plain
26303           'int' type.
26305 Thu Sep 21 10:07:09 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26307         * string.c (rb_str_partition): RDoc typo fixed.  [ruby-core:08898]
26309         * string.c (rb_str_rpartition): fixed separation seek bug.
26311 Thu Sep 21 09:38:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26313         * string.c (rb_str_lines): new method to split a string into lines.
26315         * string.c (Init_String): Strings are no longer Enumerable.  use
26316           each_line or lines method explicitly.
26318         * string.c (Init_String): remove each method. use each_lines.
26320 Wed Sep 20 23:17:41 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26322         * common.mk (pre-install-doc): create data directory before install.
26324         * lib/mkmf.rb (dir_re): fixed typo.
26326         * lib/mkmf.rb (install_dirs): remove extra slash.
26328 Wed Sep 20 22:41:45 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26330         * numeric.c (fix_mul): typo again.  patch from Tadashi Saito
26331           <shiba at mail2.accsnet.ne.jp>.  fixed: [ruby-core:08893]
26333 Wed Sep 20 19:32:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26335         * string.c (rb_str_partition): a new method to separate the string
26336           by a separator.  taken from Python 2.5.
26338         * string.c (rb_str_rpartition): ditto.
26340 Wed Sep 20 09:49:40 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26342         * {bcc32,win32,wince}/Makefile.sub (INSTALLED_LIST): need to define
26343           this macro to install.
26345 Wed Sep 20 09:43:10 2006  Shugo Maeda  <shugo@ruby-lang.org>
26347         * lib/net/imap.rb: allow extra spaces in responses.
26348           Thanks, Tom Soderlund.
26350 Wed Sep 20 09:25:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26352         * ext/gdbm/gdbm.c: add RDoc documentation. a patch from Peter
26353           Adolphs <futzilogik at users dot sourceforge dot net>.
26354           [ruby-doc:1223]
26356 Tue Sep 19 00:42:15 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26358         * object.c (rb_obj_ivar_defined, rb_mod_cvar_defined): new methods,
26359           Kernel#instance_variable_defined? and Module#class_variable_defined?.
26360           [ruby-dev:29587]
26362         * lib/date/format.rb (Date::Bag#method_missing): use new method,
26363           instance_variable_defined? to check if an instance variable is
26364           defined.  fixed: [ruby-dev:29554]
26365           -- This didn't fix anything.
26367 Tue Sep 19 00:07:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26369         * string.c (sym_eql): fail early to gain performance.
26371         * string.c (sym_hash): cache hash value in aux.shared if possible.
26373         * gc.c (rb_obj_id): no need to treat symbols specially.
26375         * lib/fileutils.rb (FileUtils::FileUtils): singleton_methods() no
26376           longer return an array of strings, but of symbols.
26378         * lib/delegate.rb (DelegateClass): ditto.
26380 Mon Sep 18 15:29:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26382         * dir.c (dir_s_glob): restore GC protection volatile variable.
26383           [ruby-dev:29588]
26385         * re.c (rb_reg_regcomp): ditto.
26387 Mon Sep 18 12:16:48 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26389         * numeric.c (fix_mul): get rid of shift overflow.
26391 Mon Sep 18 10:47:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26393         * dir.c (dir_s_glob): remove unused variable.
26395         * math.c (math_log): ditto.
26397         * re.c (rb_reg_regcomp): ditto.
26399         * eval.c (break_jump): ditto.
26401         * eval.c (rb_thread_yield_0): remove unused function.
26403 Sun Sep 17 23:44:58 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26405         * lib/rdoc/rdoc.rb (RDoc::RDoc#document): scan only files modified
26406           after the previous generation.
26408 Sun Sep 17 17:42:13 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26410         * common.mk (install-doc): reverted.
26412         * instruby.rb: stores file name list without destdir prefix.
26414         * lib/rdoc/generators/ri_generator.rb: do not chdir twice.
26416 Sun Sep 17 10:42:10 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26418         * numeric.c (fix_mul): fixed typo.  fixed: [ruby-core:08885]
26420 Sat Sep 16 19:47:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26422         * README.EXT: should mention new macros: RSTRING_PTR, RSTRING_LEN,
26423           RARRAY_PTR, RARRAY_LEN.
26425         * README.EXT.ja: ditto.
26427 Sat Sep 16 16:39:23 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26429         * Makefile.in, common.in, instruby.rb, ext/extmk.rb, lib/mkmf.rb:
26430           use instruby.rb to install extensions instead of ext/extmk.rb.
26432         * instruby.rb: store installed list into the file.
26434         * ext/dbm/extconf.rb: allow multiple candidates for dbm-type.
26436         * ext/io/wait/extconf.rb: suspicious checking_for.
26438         * ext/pty/pty.c (establishShell): parent pid is not used.
26440         * ext/pty/pty.c (freeDevice): not used.
26442         * lib/mkmf.rb (checking_for): improved the messages.
26444 Sat Sep 16 11:03:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26446         * array.c (ary_shared_first): should create embedded copies
26447           instead of sharing memory region for smaller arrays.
26449 Sat Sep 16 09:37:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26451         * struct.c (inspect_struct): do not display a class name for
26452           anonymous struct.  The member fields are sufficient.
26454 Fri Sep 15 20:22:15 2006  NARUSE, Yui  <naruse@ruby-lang.org>
26456         * ext/nkf/nkf-8/nkf.c: imported nkf 2.0.8 rev.110.
26457           * Fix: check_bom cuts \xfe\xff\xXX\xXX of UTF-32LE.
26458           * Add support --ic=UTF-32.
26459           * Fix: can't guess UTF-16 and UTF-32.
26460           * Fix: can't decode beyond BMP of UTF-16LE.
26462         * ext/nkf/nkf.c (guess): Support UTF-32.
26464         * ext/nkf/lib/kconv.rb (kconv): Support UTF-32.
26466         * ext/nkf/lib/kconv.rb (to_utf32): new method.
26468 Fri Sep 15 05:23:24 2006  NARUSE, Yui  <naruse@ruby-lang.org>
26470         * ext/nkf/nkf-8/nkf.c: imported nkf 2.0.8 2006-09-15.
26471           Add support for U+10000 - U+10FFFF
26472           Add support UTF-32
26474 Fri Sep 15 00:03:07 2006  Tanaka Akira  <akr@fsij.org>
26476         * ext/digest/lib/digest.rb (Digest::Base.file): open a file in binary
26477           mode.  suggested by Kazuhiro NISHIYAMA.  [ruby-dev:29579]
26479 Thu Sep 14 17:21:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26481         * numeric.c (fix_mul): avoid bignum multiplication as far as
26482           possible.  a patch from Ondrej Bilka <neleai at seznam.cz>.
26483           [ruby-core:08825]
26485 Thu Sep 14 16:34:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26487         * string.c (rb_str_intern): allow zero length symbols.
26488           [ruby-core:08861]
26490 Thu Sep 14 16:11:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26492         * string.c (rb_str_intern): raise SecurityError only when $SAFE
26493           level is greater than zero.  [ruby-core:08862]
26495         * parse.y (rb_interned_p): new function to check if a string is
26496           already interned.
26498         * string.c (str_to_id): use rb_str_intern().
26500 Thu Sep 14 14:37:45 2006  Tanaka Akira  <akr@fsij.org>
26502         * ext/digest/lib/digest.rb (Digest::Base.file): new method.
26503           [ruby-dev:29572]
26505 Thu Sep 14 08:30:02 2006  Tanaka Akira  <akr@fsij.org>
26507         * ext/digest/digest.c (rb_digest_base_inspect): new method.
26508           [ruby-dev:29573]
26510 Thu Sep 14 01:13:56 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26512         * gc.c (ruby_init_stack): decrease "stack level too deep" in Windows.
26513           [ruby-dev:29569]
26515 Thu Sep 14 01:02:25 2006  Tanaka Akira  <akr@fsij.org>
26517         * ext/digest/lib/digest.rb: new file.
26518           [ruby-dev:28689]
26520 Wed Sep 13 18:43:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26522         * README.EXT: English adjustment.  [ruby-core:08851] and
26523           [ruby-core:08852]
26525 Wed Sep 13 18:25:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26527         * misc/ruby-mode.el (ruby-parse-partial): better here-doc support.
26528           a patch from Marshall T. Vandegrift <llasram at gmail.com>.
26529           [ruby-core:08804]
26531 Wed Sep 13 16:43:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26533         * string.c (rb_str_intern): prohibit interning tainted string.
26535 Wed Sep 13 01:14:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26537         * lib/optparse.rb (OptionParser#getopts): works with pre-registered
26538           options.  [ruby-core:08826]
26540 Tue Sep 12 03:58:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26542         * hash.c (rb_hash_compare_by_identity): rename Hash#identical to
26543           Hash#compare_by_identity.
26545 Mon Sep 11 16:52:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26547         * hash.c (rb_hash_identical): a new method to make a hash to
26548           compare keys by their identity.
26550         * hash.c (rb_hash_identical_p): new method to tell if a hash is
26551           identical or not.
26553         * st.c (st_numcmp, st_numhash): export hash type functions.
26555 Mon Sep 11 11:42:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26557         * lib/rexml/source.rb (REXML::Source::encoding): should not
26558           convert the body twice.  [ruby-core:08828]
26560         * lib/rexml/encoding.rb (REXML::Encoding::encoding):
26561           Encoding#encoding= to return boolean value to tell if the body
26562           is really converted or not.
26564         * lib/rexml/encoding.rb (REXML::Encoding::encoding): Specific
26565           conversion library (e.g. rexml/encodings/UTF-16.rb) to have
26566           higher preceding.
26568         * lib/rexml/encodings/UTF-16.rb (REXML::Encoding::decode_utf16):
26569           UTF-16#decode_utf16 should work strings without BOM.
26571 Mon Sep 11 07:39:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26573         * string.c (sym_equal): "sym == str" should compare them as
26574           strings.  [ruby-dev:29554]
26576 Sun Sep 10 22:59:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26578         * instruby.rb (parse_args): remove splat.
26580 Sun Sep 10 20:25:30 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26582         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.1.
26584 Sun Sep 10 09:41:29 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26586         * file.c: ISPRINT() needs ctype.h
26588 Sun Sep 10 09:19:47 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26590         * lib/optparse.rb: splat parsed arguments.
26592 Tue Jan 10 09:18:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26594         * eval.c (rb_require_safe): prevent extension from loading twice.
26595           fixed: [ruby-dev:29523]
26597 Sat Sep  9 23:55:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26599         * file.c (rb_f_test): test(0) should not have any special
26600           meaning.  [ruby-dev:29425]
26602         * file.c (rb_f_test): properer error message.
26604 Sat Sep  9 14:08:38 2006  Eric Hodel  <drbrain@segment7.net>
26606         * lib/test/unit/testcase.rb (Test::Unit::TestCase#run): Rescue
26607           Exception in Test::Unit::TestCase#run.  [ruby-core:08783]
26609 Sat Sep  9 04:55:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26611         * lib/pstore.rb: open all in binary mode, and get rid of the quirk of
26612           msvcrt.  fixed: [ruby-dev:29518]
26614 Sat Sep  9 04:47:45 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26616         * Makefile.in, win32/Makefile.sub (MINIRUBY): append MINIRUBYOPT.
26618         * mkconfig.rb, ext/extmk.rb, lib/mkmf.rb, win32/mkexports.rb: suppress
26619           warnings with $VERBOSE.
26621         * win32/resource.rb: only file which has more than one icon is DLL.
26623 Fri Sep  8 16:53:30 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26625         * string.c (str_alloc): should allocate a String object, even when
26626           asked to allocate a Symbol object.  [ruby-dev:29529]
26628 Fri Sep  8 16:36:27 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26630         * ext/extmk.rb (extmake): follow Array#to_s.
26632         * lib/mkmf.rb (create_makefile): ditto.
26634         * win32/resource.rb: ditto.
26636 Fri Sep  8 10:00:12 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26638         * lib/webrick/cookie.rb (WEBrick::Cookie.parse_set_cookies): new
26639           method to parse multiple cookies per Set-Cookie header.
26640           Thanks to Aaron Patterson <aaron_patterson at speakeasy.net>.
26641           [ruby-core:08802]
26643 Fri Sep  8 08:59:30 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26645         * win32/Makefile.sub, win32/configure.bat win32/setup.mak: program
26646           name transform.
26648 Fri Sep  8 08:25:39 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26650         * lib/optparse.rb: suppress `assigning void value' warning.
26652 Fri Sep  8 01:16:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26654         * array.c (Init_Array): #to_s to be an alias to #inspect.
26655           [ruby-dev:29520]
26657         * hash.c (Init_Hash): ditto.
26659         * lib/mkmf.rb (create_makefile): replace "print array" by
26660           "print *array".
26662         * mkconfig.rb: ditto.
26664 Thu Sep  7 21:02:56 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26666         * object.c (nil_to_s): returns the empty string again.
26667           [ruby-dev:29520]
26669 Thu Sep  7 23:27:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26671         * file.c (path_check_0, fpath_check): disable path check on cygwin.
26672           [ruby-talk:213074]
26674 Thu Sep  7 02:03:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26676         * time.c (time_to_s): adopt new date format using digits
26677           e.g. "2006-09-07 02:03:45 +9000".
26679 Thu Sep  7 01:54:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26681         * string.c (sym_equal): override.  check equivalence.
26683 Wed Sep  6 13:25:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26685         * parse.y (symbols_i): need to initialize early-created symbols.
26686           [ruby-dev:29496]
26688 Wed Sep  6 12:05:19 2006  NARUSE, Yui  <naruse@ruby-lang.org>
26690         * ext/nkf/lib/kconv.rb (Kconv::toeuc): remove -m0 [ruby-dev:29505]
26692 Tue Sep  5 22:06:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26694         * ext/tk/tcltklib.c: use rb_ary_new3() since RARRAY_LEN() is not l-value.
26696         * ext/tk/tkutil/tkutil.c: use RARRAY_PTR() and RARRAY_LEN() and etc.
26697           fixed: [ruby-dev:29473]
26699 Tue Sep  5 06:47:22 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26701         * time.c (time_to_s): variable declaration after an execution
26702           statement.
26704 Tue Sep  5 05:49:41 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26706         * file.c (path_check_0): check if sticky bit is set on parent
26707           directories for executable path.  fixed: [ruby-dev:29415]
26709 Tue Sep  5 05:03:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26711         * numeric.c (fix_plus): addition in Fixnum will never overflow
26712           long.  a patch from Ondrej Bilka <neleai at seznam.cz>.
26713           [ruby-core:08794]
26715         * numeric.c (fix_minus): ditto.
26717         * bignum.c (rb_big_pow): eagerly truncate resulting bignum.
26718           [ruby-core:08794]
26720 Mon Sep  4 23:15:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26722         * time.c (time_to_s): make it conform to RFC2822 date format.
26723           [ruby-dev:29467]
26725 Mon Sep  4 21:43:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26727         * ext/dbm/extconf.rb: create makefile according to the result of check
26728           for dbm header.  fixed: [ruby-dev:29445]
26730 Mon Sep  4 21:39:42 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26732         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.
26734 Mon Sep  4 21:14:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26736         * time.c (time_strftime): include nul character.  fixed: [ruby-dev:29422]
26738 Mon Sep  4 16:39:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26740         * lib/cgi.rb (CGI::out): specify -x option for nkf.
26742         * lib/cgi.rb (CGI::out): should not convert utf-8 implicitly using
26743           NKF.  it is too Japanese centric.
26745 Mon Sep  4 14:23:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26747         * ext/dbm/extconf.rb (db_check): remove debug print.
26749 Mon Sep  4 06:46:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26751         * parse.y (rb_id2sym): intern if id is attrset_id.
26752           [ruby-dev:29420] [ruby-dev:29447]
26754 Mon Sep  4 01:25:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26756         * eval.c (rb_f_local_variables): list symbols.
26758         * struct.c (rb_struct_s_members_m): ditto.
26760         * variable.c (ivar_i): ditto.
26762         * variable.c (gvar_i): ditto.
26764         * variable.c (cv_i): ditto.
26766 Sun Sep  3 20:47:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26768         * ruby.h (SYMBOL_P): Qnil and Qfalse are not Symbol.
26770 Sun Sep  3 15:32:44 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26772         * lib/mkmf.rb: get rid of nil.to_s.
26774 Sun Sep  3 06:24:38 2006  Tanaka Akira  <akr@fsij.org>
26776         * ext/socket/socket.c (ruby_connect): sockerrlen should be socklen_t.
26778 Sun Sep  3 04:40:42 2006  Tanaka Akira  <akr@fsij.org>
26780         * ext/socket/extconf.rb: check arpa/inet.h for ntohs.
26782         * ext/socket/socket.c: include arpa/inet.h if available.
26784 Sat Sep  2 23:59:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26786         * string.c (Init_String): undef Symbol#new.
26788         * struct.c (rb_struct_s_def): wrong symbol detection.
26790 Sat Sep  2 23:59:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26792         * string.c (str_to_id): a bug caused by premature optimization.
26794 Sat Sep  2 23:53:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26796         * object.c (Init_Object): move symbol related code to string.c
26798         * string.c (Init_String): Symbol as subclass of String.
26800         * parse.y (rb_intern2): handle symbol as strings.
26802         * string.c (str_new): substring of symbols are mere strings, not
26803           symbols.
26805 Sat Sep  2 23:37:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26807         * ruby.h (struct RArray): embed small arrays.
26808           (RARRAY_LEN): defined for accessing array members.
26809           (RARRAY_PTR): ditto.
26811         * array.c: use RARRAY_LEN and RARRAY_PTR.
26813 Sat Sep  2 13:23:01 2006  Tanaka Akira  <akr@fsij.org>
26815         * common.mk (ia64.o): use the compiler driver to assemble ia64.s
26816           to use appropriate ABI.
26818 Sat Sep  2 12:06:35 2006  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
26820         * lib/soap/generator.rb (SOAP::SOAPGenerator#encode_tag): do not dump
26821           XML attribute which value is nil.  value "" and nil both were dumped
26822           as 'attr="value"'.  [ruby-dev:29395]
26824 Sat Sep  2 11:47:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26826         * eval.c (rb_eval): should handle when in else clause.  a patch
26827           from Eric Hodel <drbrain at segment7.net>.  [ruby-core:08662]
26829         * parse.y (primary): wrap with NODE_CASE.  [ruby-core:08663]
26831 Sat Sep  2 12:00:32 2006  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
26833         * lib/csv.rb (CSV::IOReader#initialize): use String#[](pos, len)
26834           instead of String#[](idx) to check utf BOM.  follows String#[](idx)
26835           behavior change of 1.9.
26837 Sat Sep  2 11:47:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26839         * eval.c (rb_eval): should handle when in else clause.  a patch
26840           from Eric Hodel <drbrain at segment7.net>.  [ruby-core:08662]
26842         * parse.y (primary): wrap with NODE_CASE.  [ruby-core:08663]
26844 Fri Sep  1 22:07:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26846         * ruby.h (RSTRING_EMBED_LEN_MASK): uses 5 bits to support 64bit
26847           environment.  [ruby-dev:29369]
26849 Fri Sep  1 22:02:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26851         * string.c (rb_str_resize): should copy embedded string to
26852           malloc'ed buffer.  a patch from <nobu at ruby-lang.org> in
26853           [ruby-dev:29369].  fixed: [ruby-dev:29368]
26855         * string.c (rb_str_ord): use %ld specifier since STRING_LEN() is a
26856           long.  [ruby-dev:29369]
26858 Fri Sep  1 21:41:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26860         * ext/socket/socket.c (socks_init): typo fixed.  a patch from Sven
26861           Klemm <sven at c3d2.de>.  [ruby-core:08770]
26863 Fri Sep  1 14:22:42 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
26865         * array.c (rb_ary_shuffle): RDoc fixed.
26867 Fri Sep  1 13:52:57 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26869         * ext/tk/lib/tk/font.rb: TkFont#current_configinfo() doesn't work
26870           on Tcl/Tk8.x.
26872 Fri Sep  1 09:32:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26874         * lib/irb/ruby-lex.rb (RubyLex::getc): should not push nil into
26875           reading buffer (@readed).  reported in
26876           <http://jarp.does.notwork.org/diary/200608c.html#200608311>.
26878 Thu Aug 31 23:59:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26880         * lib/mkmf.rb (configuration): follow nil.to_s.
26882 Thu Aug 31 20:50:46 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26884         * lib/mkmf.rb (create_makefile): follow nil.to_s.
26886         * win32/resource.rb: ditto.
26888 Thu Aug 31 20:21:47 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26890         * eval.c (search_required): use RSTRING_PTR and RSTRING_STR.
26892         * file.c (test_identical, rb_file_s_truncate): ditto.
26894         * io.c (pipe_open, rb_io_reopen): ditto.
26896         * object.c (nil_plus): ditto.
26898         * process.c (proc_spawn_n, rb_spawn): ditto.
26900         * util.c (ruby_add_suffix): ditto.
26902         * ext/Win32API/Win32API.c (Win32API_initialize): ditto.
26904         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): ditto.
26906         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext): ditto.
26908         * ext/tk/stubs.c, ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: ditto.
26910         * ext/win32ole/win32ole.c (ole_val2olevariantdata): ditto.
26912 Thu Aug 31 18:23:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26914         * ruby.h (struct RString): embed small strings.
26915           (RSTRING_LEN): defined for accessing string members.
26916           (RSTRING_PTR): ditto.
26918         * string.c: use RSTRING_LEN and RSTRING_PTR.
26920 Thu Aug 31 17:16:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26922         * array.c (rb_ary_shuffle_bang): new method.
26924         * array.c (rb_ary_shuffle): ditto.
26926         * random.c (genrand_real): ditto.
26928         * random.c (genrand_int32): export the function.
26930         * random.c (Init_Random): initialize random seed at the
26931           beginning.
26933 Thu Aug 31 13:12:06 2006  why the lucky stiff  <why@ruby-lang.org>
26935         * eval.c (ruby_init): rename top_cref to ruby_top_cref and export,
26936           along with ruby_cref, for use by the sandbox. [ruby-core:08762]
26938         * node.h: ditto.
26940 Wed Aug 30 12:01:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26942         * numeric.c (flo_hash): improve collision.
26944         * string.c (rb_memhash): new generic function to calculate hash value
26945           for memory chunk.
26947 Tue Aug 29 19:10:10 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26949         * hash.c (rb_hash_s_create): fixed memory leak, based on the patch
26950           by Kent Sibilev <ksruby at gmail.com>.  fixed: [ruby-talk:211233]
26952 Mon Aug 28 11:29:46 2006  Eric Hodel  <drbrain@segment7.net>
26954         * eval.c, parse.y: Revert.
26955         * ext/.document: Add digest.c.
26956         * ext/digest/digest.c: Make RDoc show up.
26957         * ext/io/wait.c: Fix call-seq in RDoc.
26959 Mon Aug 28 08:03:20 2006  Eric Hodel  <drbrain@segment7.net>
26961         * ext/.document: Add C files with RDoc.
26962         * ext/digest/digest.c: Convert to RDoc.
26963         * ext/io/wait.c: ditto.
26964         * lib/rdoc/parsers/parse_rb.rb: Fix typo.  Submitted by
26965           <calamitas at gmail.com>.  [ruby-core:08724]
26967 Mon Aug 28 07:21:47 2006  Eric Hodel  <drbrain@segment7.net>
26969         * file.c (File#size?): Fix documentation submitted by Rick Ohnemus.
26970           ruby-Bugs-5529.  [ruby-core:08725]
26972 Sun Aug 27 21:41:23 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
26974         * oniguruma.h: Version 4.4.0
26976         * regint.h: ditto.
26978         * regparse.h: ditto.
26980         * regexec.c: ditto.
26982         * regcomp.c ditto.
26984         * regparse.c: ditto.
26986 Sat Aug 26 08:03:03 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26988         * lib/date.rb, lib/date/format.rb: updated based on date2 3.8.2.
26990 Fri Aug 25 21:15:22 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
26992         * common.mk: add regint.h and oniguruma.h to dependence.
26994         * ext/strscan/depend: ditto.
26996 Fri Aug 25 20:35:57 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26998         * test/wsdl/document/echo.rb: removed.
27000         * test/wsdl/document/test_rpc.rb: remove echo.rb after test.
27001           [ruby-dev:29337]
27003 Fri Aug 25 17:02:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27005         * gc.c (gc_sweep): typo fixed.
27007 Fri Aug 25 16:05:50 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27009         * object.c (sym_call): check if the receiver is given.
27011 Fri Aug 25 01:10:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27013         * object.c (rb_Integer): Integer(nil) should raise TypeError.
27014           [ruby-talk:210205]
27016         * object.c (nil_to_s): no longer returns empty string but "nil".
27017           [ruby-talk:210205]
27019         * lib/mkmf.rb: avoid COMMON_HEADERS being nil.
27021 Wed Aug 23 00:25:14 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27023         * lib/rexml/source.rb (REXML::IOSource#initialize): encoding have to
27024           be set with the accessor.  fixed: [ruby-list:42737]
27026 Tue Aug 22 19:21:00 2006  Minero Aoki  <aamine@loveruby.net>
27028         * lib/net/smtp.rb: parameter `to_addrs' might be an Array,
27029           .flatten is required. [ruby-dev:29316]
27031 Tue Aug 22 18:47:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27033         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::handle_method):
27034           rdoc documents C module methods as instance methods. a patch in
27035           [ruby-core:08536].
27037 Tue Aug 22 12:35:57 2006  NARUSE, Yui  <naruse@ruby-lang.org>
27039         * ext/nkf/lib/kconv.rb (Kconv::RegexpEucjp): fix regexp for
27040           euc-jp [ruby-dev:29344]
27042 Sun Aug 20 11:46:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27044         * numeric.c (num_step): also return an enumerator object if no block
27045           is given.
27047 Sat Aug 19 16:47:51 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
27049         * ext/win32ole/win32ole.c (hash2named_arg): accept hash argument
27050           of symbol key.
27052         * test/win32ole/test_win32ole.rb
27053           ditto.
27055 Sat Aug 19 11:28:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27057         * file.c (rb_file_s_rename): use errno if set properly.
27058           fixed: [ruby-dev:29293]
27060 Fri Aug 18 01:05:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27062         * lib/cgi.rb (CGI::out): specify -m0 to disable MIME decode.  a
27063           patch from Fujioka <fuj at rabbix.jp>.  [ruby-dev:29284]
27065 Thu Aug 17 19:15:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27067         * file.c (rb_stat_[rRwWxX]): check for super user.
27068           fixed: [ruby-core:08616]
27070 Thu Aug 17 14:47:06 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27072         * lib/mkmf.rb: added rdoc by Daniel Berger.  [ruby-core:08177]
27074 Wed Aug 16 17:46:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27076         * marshal.c (r_byte): IO#getc returns one byte string now.
27077           fixed: [ruby-dev:29255]
27079 Wed Aug 16 17:22:44 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27081         * common.mk (pre-install-local): remove unnecessary code.
27082           [ruby-dev:29249]
27084 Wed Aug 16 11:45:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27086         * process.c (proc_setuid, proc_setgid, proc_seteuid, proc_setegid):
27087           get rid of bogus implementations on Mac OS X.
27089 Wed Aug 16 11:09:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27091         * ruby.c (set_arg0): fill argv other than the first with an empty
27092           string instead of NULL.
27094 Tue Aug 15 11:21:08 2006  Minero Aoki  <aamine@loveruby.net>
27096         * lib/net/smtp.rb: support SMTP/SSL.  Thanks Kazuhiro NISHIYAMA.
27098         * lib/net/smtp.rb: new method SMTP.use_ssl?
27100         * lib/net/smtp.rb: new method SMTP.enable_ssl.
27102         * lib/net/smtp.rb: new method SMTP.disable_ssl.
27104         * lib/net/smtp.rb: new method SMTP.default_ssl_port.
27106         * lib/net/smtp.rb: new method SMTP.default_tls_port.
27108         * lib/net/smtp.rb: now SMTP#enable_tls accepts a SSLContext
27109           object, instead of a verity and cert.  [FEATURE CHANGE]
27111         * lib/net/smtp.rb: new method SMTP.ssl_context.
27113         * lib/net/smtp.rb: new method SMTP.default_ssl_context.
27115         * lib/net/smtp.rb: export SMTP.authenticate.
27117         * lib/net/smtp.rb: export SMTP.auth_plain.
27119         * lib/net/smtp.rb: export SMTP.auth_login.
27121         * lib/net/smtp.rb: export SMTP.auth_cram_md5.
27123         * lib/net/smtp.rb: export SMTP.starttls.
27125         * lib/net/smtp.rb: export SMTP.helo.
27127         * lib/net/smtp.rb: export SMTP.ehlo.
27129         * lib/net/smtp.rb: export SMTP.mailfrom.
27131         * lib/net/smtp.rb: export SMTP.rcptto.
27133         * lib/net/smtp.rb: export SMTP.rcptto_list.
27135         * lib/net/smtp.rb: export SMTP.data.
27137         * lib/net/smtp.rb: export SMTP.quit.
27139 Sat Aug 12 22:33:06 2006  Eric Hodel  <drbrain@segment7.net>
27141         * string.c (String#split): Describe grouping behavior.  Patch by Jan
27142           Svitok <jan.svitok at gmail.com>.  [ruby-core:08603]
27144 Sun Aug 13 12:08:02 2006  Tanaka Akira  <akr@fsij.org>
27146         * ext/socket/socket.c: ANSIfied.  [ruby-core:08601]
27148 Sat Aug 12 15:55:32 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27150         * configure.in, bcc32/Makefile.sub, win32/Makefile.sub, win32/dir.h,
27151           win32/win32.c, win32/win32.h: large file support for win32.
27153 Fri Aug 11 15:39:25 2006  Eric Hodel  <drbrain@segment7.net>
27155         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#find_body): Make RDoc
27156           ignore C function prototypes.  Patch by Tilman Sauerbeck
27157           <tilman at code-monkey.de>.  [ruby-core:8574]
27158         * lib/yaml/tag.rb: Replace nodoc with stopdoc so Module methods get
27159           documented.
27161 Wed Aug  9 16:53:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27163         * lib/net/smtp.rb (Net::SMTP::auth_cram_md5): use ord to retrieve
27164           bytes from strings.  a patch from WATANABE Tetsuya
27165           <Tetsuya.WATANABE at nifty.com>.  [ruby-dev:29240]
27167 Tue Aug  8 23:49:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27169         * lib/irb/extend-command.rb (IRB::ExtendCommandBundle): pacify
27170           RDoc.  a patch from Eric Hodel <drbrain at segment7.net>.
27171           [ruby-core:08522]
27173 Tue Aug  8 19:26:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27175         * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder::get_string):
27176           affected by str[0] returns 1 char string.  [ruby-dev:29223]
27178         * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder::get_labels):
27179           ditto.
27181 Tue Aug  8 12:28:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27183         * parse.y (arg): allow newlines before ternary colon.  [ruby-dev:29189]
27185 Mon Aug  7 17:56:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27187         * ext/bigdecimal/bigdecimal.c, ext/digest/rmd160/rmd160ossl.c,
27188           ext/digest/sha1/sha1ossl.c, ext/readline/readline.c: move
27189           inclusion of config.h to pacify AIX.  a patch from Yutaka
27190           Kanemoto <kinpoco at gmail.com>.  [ruby-dev:29197]
27192 Mon Aug  7 15:55:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27194         * ext/syck/syck.c (syck_move_tokens): should avoid negative
27195           memmove.  [ruby-list:42625]
27197 Mon Aug  7 14:37:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27199         * configure.in, common.mk: AIX link issue.  a patch from Yutaka
27200           Kanemoto <kinpoco at gmail.com>.  [ruby-dev:29190]
27202         * ext/socket/socket.c: AIX socket support.  [ruby-dev:29190]
27204 Mon Aug  7 12:05:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27206         * dln.c, eval.c, gc.c, ruby.h: shut up AIX alloca warning.
27207           a patch from Yutaka Kanemoto <kinpoco at gmail.com>.
27208           [ruby-dev:29191]
27210 Sun Aug  6 20:34:24 2006  Tadayoshi Funaba  <tadf@dotrb.org>
27212         * lib/date/format.rb (str[fp]time): %[EO]U didn't denote %U.
27214 Sun Aug  6 17:12:12 2006  Tanaka Akira  <akr@fsij.org>
27216         * io.c (io_reopen): STDERR.reopen(open("/dev/tty", "w")) should not
27217           clear FMODE_PREP in STDERR.
27219 Sat Aug  5 22:53:41 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
27221         * oniguruma.h: Version 4.2.2
27223         * regint.h: ditto.
27225         * regparse.h: ditto.
27227         * regexec.c: ditto.
27229         * regcomp.c ditto.
27231         * regerror.c: ditto.
27233         * regparse.c: ditto.
27235 Sat Aug  5 17:07:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27237         * parse.y (top_local_setup): local_vars[-1] should point
27238           ruby_scope itself to protect local_tbl from garbage collection.
27239           [ruby-dev:29049]
27241 Sat Aug  5 13:49:43 2006  Tadayoshi Funaba  <tadf@dotrb.org>
27243         * lib/date/format.rb (str[fp]time): "%\n" means "\n".
27245 Fri Aug  4 12:13:22 2006  Eric Hodel  <drbrain@segment7.net>
27247         * lib: Clean up files for RDoc.
27248         * lib/.document: Include most of the standard library in RDoc
27249           generation.
27250         * lib/rdoc/ri/ri_formatter.rb: Don't unescape HTML in HtmlFormatter.
27251           Submitted by <ksruby at gmail.com>.  [ruby-core:08392].
27252         * lib/drb/ssl.rb: Close socket on SSLError [ruby-core:7197]
27254 Fri Aug  4 18:59:49 2006  Keiju Ishitsuka  <keiju@ruby-lang.org>
27256         * lib/irb/{init.rb,ruby-lex.rb,slex.rb}: can't input '\c' for
27257           [ruby-core: 7122]. and support for ruby1.8.X
27259 Fri Aug  4 14:02:14 2006  James Edward Gray II  <james@grayproductions.net>
27261         * lib/date/format.rb (__strptime, strftime): allow multi-line patterns
27262           in Date#strftime the same as Time#strftime accepts.
27263           fixed: [ruby-core:08466]
27265 Fri Aug  4 13:56:51 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27267         * pack.c (pack_pack): check argument overrun for 'P'.  based on a
27268           patch by rucila <rucila at yahoo.cojp>.  fixed: [ruby-dev:29182]
27270 Fri Aug  4 02:42:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27272         * sprintf.c (rb_str_format): a bug in %c type check.
27274 Fri Aug  4 01:28:19 2006  Tanaka Akira  <akr@fsij.org>
27276         * io.c (io_reopen): STDERR.reopen(File.open("/dev/null", "w")) should
27277           not fclose stderr.
27279 Thu Aug  3 15:16:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27281         * range.c (range_include): should always call Enumerable#include?
27282           (not #===) for non numeric end points.  [ruby-core:08477]
27283           [ruby-core:08496]
27285 Mon Jul 31 16:51:40 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27287         * win32/win32.c (exit_handler): new function; release winsock and
27288           environment work area.
27290         * win32/win32.c (NTInitialize): setup exit_handler.
27292         * win32/win32.c (StartSockets): use exit_handler.
27294         * win32/win32.c (rb_w32_getenv): use GetEnvironmentStrings() instead
27295           of GetEnvironmentVariable(), because the latter cannot distinguish
27296           whether a null environment variable exists or not.
27297           fixed: [ruby-talk:205123]
27299 Mon Jul 31 16:15:13 2006  Tanaka Akira  <akr@fsij.org>
27301         * test/ruby/test_process.rb (TestProcess#test_rlimit_nofile):
27302           setrlimit may fail with EINVAL.
27303           reported by MIYAMUKO Katsuyuki.  [ruby-dev:29174]
27305 Mon Jul 31 09:22:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27307         * ruby.h: use ifdef (or defined) for macro constants that may or
27308           may not be defined to shut up gcc's -Wundef warnings.
27309           [ruby-core:08447]
27311 Mon Jul 31 13:38:13 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27313         * lib/webrick/httprequest.rb (WEBrick::HTTPReuqest#parse_uri): improve
27314           for the value of IPv6 address in the Host: header field.
27316 Sun Jul 30 23:26:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27318         * eval.c (rb_call0): trace call/return of method defined from block.
27319           fixed: [ruby-core:08329]
27321         * eval.c (rb_trap_eval): make the current thread runnable to deal with
27322           exceptions which occurred within the trap.  fixed: [ruby-dev:27729]
27324         * lib/cgi/session.rb, lib/cgi/session/pstore.rb: suppress warnings.
27325           fixed: [ruby-talk:204896]
27327 Sat Jul 29 06:12:06 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27329         * ext/tk/lib/multi-tk.rb: freeze ip_name for security reason.
27331 Sat Jul 29 01:23:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27333         * lib/logger.rb: improves the amount of documentation that Rdoc
27334           picks up when processing logger.rb by moving the require
27335           statement back before the comment block.  a patch from Hugh
27336           Sasse <hgs at dmu.ac.uk>.  [ruby-core:08422]
27338 Fri Jul 28 17:18:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27340         * ext/curses/curses.c (NUM2CH, CH2FIX): use single char strings.
27342 Fri Jul 28 14:09:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27344         * eval.c (rb_call): fixed typo in cache look-up.  [ruby-dev:29167]
27346 Fri Jul 28 10:41:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27348         * eval.c (rb_call): a bug in method cache look-up.
27349           http://www.rubyist.net/~matz/20060720.html#c04
27351 Fri Jul 28 10:19:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27353         * sprintf.c (rb_f_sprintf): documentation update patch from Jacob
27354           Fugal <lukfugl at gmail.com>.  [ruby-core:08418]
27356 Fri Jul 28 09:41:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27358         * time.c (time_to_s): fixed typo.  [ruby-dev:29162]
27360 Fri Jul 28 00:26:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27362         * math.c (domain_check): ANSI style function arguments
27364         * math.c (math_log): too few argument to domain_check().
27366 Thu Jul 27 21:19:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27368         * math.c (domain_check): a new function to check domain error
27369           explicitly for systems that return NaN like FreeBSD.
27370           [ruby-core:07019]
27372         * math.c (math_acos, math_asin, math_acosh, math_atanh, math_log,
27373           math_log10, math_sqrt): use domain_check().
27375         * math.c (math_sqrt): fix documentation flaw.
27377 Thu Jul 27 22:21:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27379         * time.c (time_to_s): fixed format mismatch.
27381 Thu Jul 27 18:12:12 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
27383         * time.c: need to declare time_utc_offset.
27385 Thu Jul 27 17:01:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27387         * io.c (io_close): always calls "close" method of the receiver.
27388           [ruby-core:6911] [ruby-core:8112]
27390 Thu Jul 27 16:41:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27392         * ext/openssl/ossl.h: move <ruby.h> inclusion point to shut up
27393           Solaris compiler.  [ruby-core:08114]
27395         * time.c (time_to_s): use +0900 style timezone string for local time.
27396           [ruby-dev:29143]
27398 Wed Jul 26 22:20:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27400         * configure.in: add support for as and ASFLAGS.  [ruby-dev:29138]
27402 Wed Jul 26 21:59:33 2006  Minero Aoki  <aamine@loveruby.net>
27404         * lib/net/http.rb (Net::HTTP#post, request_post, request): should
27405           set Content-Type: x-www-form-urlencoded by default.
27407         * lib/net/http.rb (Net::HTTPHeader#content_type): should return
27408           nil when there's no Content-Type.
27410         * lib/net/http.rb (Net::HTTPHeader#sub_type): should return nil
27411           when there's no sub Content-Type (e.g. "Content-Type: text").
27413         * lib/net/http.rb (Net::HTTPHeader#type_params): wrongly failed
27414           when there's no Content-Type.
27416 Wed Jul 26 18:38:13 2006  Minero Aoki  <aamine@loveruby.net>
27418         * ext/strscan/strscan.c (strscan_do_scan): always return nil if
27419           p->curr exceeds string size.
27421 Wed Jul 26 18:33:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27423         * eval.c (Init_eval): rename #invoke_method and
27424           #invoke_functional_method to __send and __send! respectively.
27426         * eval.c (remove_method): prohibit removing __send and __send!.
27428         * eval.c (rb_undef): prohibit undef'ing  __send and __send!.
27430         * eval.c (rb_eval): prohibit redefining  __send and __send!.
27432         * lib/delegate.rb (Delegator): preserve __send.
27434 Wed Jul 26 18:14:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27436         * ext/pty/pty.c (getDevice): retry once after GC on failure.
27437           [ruby-core:08282]
27439 Wed Jul 26 17:43:20 2006  Minero Aoki  <aamine@loveruby.net>
27441         * ext/strscan/strscan.c (strscan_do_scan):
27442           StringScanner.new("").scan(//) should return "". [ruby-Bugs:4361]
27444 Wed Jul 26 17:28:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27446         * sprintf.c (rb_str_format): prepend ".." to %u for negative bignum,
27447           but not "-".  fixed: [ruby-core:08167]
27449 Wed Jul 26 16:39:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27451         * string.c (rb_str_scan): add string modification check.
27452           [ruby-core:7216]
27454 Wed Jul 26 16:06:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27456         * lib/cgi.rb (CGI::QueryExtension::read_multipart): check
27457           multipart boundary end.  a patch from Fujioka <fuj at rabbix.jp>
27458           [ruby-dev:28470]
27460 Wed Jul 26 01:02:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27462         * configure.in: suppress warnings by automake 1.8 or later.
27464 Tue Jul 25 14:46:14 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27466         * lib/mkmf.rb (configuration): typo.
27468 Tue Jul 25 13:14:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27470         * process.c (rb_proc_times): rename hz to hertz to avoid name
27471           crash on AIX.  [ruby-dev:29126]
27473 Mon Jul 24 22:03:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27475         * eval.c (backtrace): skip frames successive on node and method name.
27477 Mon Jul 24 15:51:52 2006  Tanaka Akira  <akr@fsij.org>
27479         * ext/readline/readline.c (readline_readline): rl_deprep_term_function
27480           may be NULL with libedit.  reported by Ryan Davis.  [ruby-dev:29070]
27482 Mon Jul 24 15:19:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27484         * eval.c (rb_call0): revert last change.  [ruby-dev:29112]
27485           [ruby-core:08374]
27487 Sun Jul 23 22:59:49 2006  Tanaka Akira  <akr@fsij.org>
27489         * test/socket/test_unix.rb: disabled on cygwin.
27490           reported by Kouhei Yanagita.  [ruby-dev:29080]
27492 Fri Jul 21 23:57:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27494         * ruby.c (proc_options): script is never used while recursing.
27496 Fri Jul 21 21:21:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27498         * eval.c (rb_call0): include funcalled methods in caller list.
27499           fixed: [ruby-core:08290]
27501 Fri Jul 21 17:52:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27503         * object.c (rb_cstr_to_dbl): "9_e8" should consider "_e8" as
27504           trailing garbage so that it should return 9.0.  [ruby-dev:29088]
27506 Fri Jul 21 12:11:00 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27508         * ext/extmk.rb, lib/mkmf.rb (with_destdir): remove drive letter before
27509           prepending destdir on DOSISH.
27511 Fri Jul 21 04:17:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27513         * eval.c (rb_call): try local method look-up first for fcall, then
27514           normal method look-up.  [ruby-talk:202564]
27516         * eval.c (rb_get_method_body): save local method cache separately.
27518         * eval.c (search_method): export info whether method is local or
27519           not.
27521 Thu Jul 20 20:27:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27523         * object.c (rb_mod_attr): make Module#attr to be an alias to
27524           attr_reader.  [RCR#331]
27526 Thu Jul 20 15:07:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27528         * ruby.h: export classes/modules to implement sandbox.
27529           [ruby-core:08283]
27531 Wed Jul 19 19:40:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27533         * eval.c (rb_yield_0): should check args_args before lambda
27534           argument check.  [ruby-dev:29029]
27536 Tue Jul 18 23:53:59 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27538         * process.c (rb_f_system): shouldn't block SIGCHLD if it's not
27539           exist.
27541 Tue Jul 18 22:10:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27543         * process.c (rb_f_system): block SIGCHLD during the process
27544           execution, like glibc system(3) does.  [ruby-talk:202361]
27546 Tue Jul 18 23:10:43 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27548         * win32/win32.c (open_ifs_socket): should not use plain malloc.
27550         * win32/win32.c (rb_w32_opendir): should not use plain realloc.
27552 Tue Jul 18 18:05:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27554         * test/ruby/test_float.rb (TestFloat::test_strtod): update test to
27555           conform strtod change.
27557 Tue Jul 18 16:52:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27559         * eval.c (yield_under_i): argument should be passed in avalue
27560           form.  [ruby-dev:29044]
27562 Tue Jul 18 15:49:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27564         * pack.c (pack_unpack): propagate association array to copied
27565           string.  [ruby-core:08223]
27567         * pack.c (pack_unpack): return referenced string itself if it has
27568           same length as specified.  a patch from <nobu at ruby-lang.org>
27569           in [ruby-core:08225].
27571         * pack.c (pack_pack): taint 'p' packed strings.
27573 Tue Jul 18 15:19:07 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27575         * intern.h (st_foreach_safe): fix prototype.
27577         * node.h (NODE_LMASK): bigger than long on LLP64.
27579         * missing/vsnprintf.c (BSD__uqtoa): new function to support LLP64.
27580           all changes are derived from [ruby-dev:29045]
27582 Tue Jul 18 14:03:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27584         * lib/webrick/httpserver.rb (WEBrick::HTTPServer::unmount): remove
27585           inpect argument from sprintf.  [ruby-dev:29039]
27587 Tue Jul 18 10:53:37 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27589         * object.c (rb_cstr_to_dbl): limit out-of-range message.
27591         * util.c (ruby_strtod): return end pointer even if ERANGE occurred.
27592           fixed: [ruby-dev:29041]
27594 Mon Jul 18 00:43:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27596         * util.c (ruby_strtod): stop at dot not followed by digits.
27597           fixed: [ruby-dev:29036]
27599 Tue Jul 18 00:01:27 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27601         * ext/extmk.rb: remove LIBRUBY_SO if static linked extensions exist.
27603 Mon Jul 17 23:30:46 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27605         * configure.in (rb_cv_msvcrt): defaulted to msvcrt.  Workaround for a
27606           bug of cygwin 1.5.20.
27608 Mon Jul 17 22:55:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27610         * ext/io/wait/wait.c (io_ready_p): protoize.
27612 Mon Jul 17 13:43:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27614         * pack.c (define_swapx): should not use plain malloc.
27616         * ext/curses/curses.c (curses_getmouse): ditto.
27618 Mon Jul 17 12:58:41 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
27620         * configure.in: should use ac_cv_lib_dl_dlopen=no on MinGW.
27622 Mon Jul 17 11:47:35 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27624         * st.c: still need to include config.h on some platforms.
27626 Sat Jul 15 01:09:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27628         * st.c (malloc): use xmalloc/xcalloc instead of plain
27629           malloc/calloc, to detect memory allocation failure.  see
27630           <http://www.nongnu.org/failmalloc/>.
27632 Fri Jul 14 13:08:13 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27634         * ext/tk/lib/tk.rb: add methods for new features of latest Tcl/Tk8.5.
27636         * ext/tk/lib/tk/namespace.rb: ditto.
27638 Fri Jul 14 02:30:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27640         * lib/monitor.rb: document patch from Hugh Sasse <hgs at dmu.ac.uk>.
27641           [ruby-core:08205]
27643 Fri Jul 14 00:10:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27645         * array.c (rb_ary_pop): may cause realloc oscillation.  a patch
27646           from MORITA Naoyuki <mlgetter at kidou.sakura.ne.jp>.
27647           [ruby-dev:29028]
27649 Thu Jul 13 22:23:56 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27651         * ext/tk/lib/tk/composite.rb: improve handling of the classname on the
27652           option database for the widget class which includes TkComposite.
27654 Thu Jul 13 00:40:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27656         * ruby.h (FIX2LONG): returns integer of size of VALUE.
27657           [ruby-dev:29024]
27659         * ruby.h (FIX2ULONG): ditto.
27661 Wed Jul 12 20:05:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27663         * parse.y (f_args): allow post mandatory arguments after optional
27664           arguments.  [ruby-dev:29014]
27666         * parse.y (new_args_gen): allow post_args without rest_args.
27668         * eval.c (formal_assign): ditto.
27670         * parse.y (new_args_gen): check post argument duplication.
27672 Tue Jul 11 20:58:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27674         * ruby.h: export rb_cMethod.  [ruby-talk:201259]
27676 Tue Jul 11 19:13:33 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27678         * ext/tk/lib/multi-tk.rb: remove restriction on the class of
27679           pseudo-toplevel.
27681 Tue Jul 11 18:00:57 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27683         * ext/tk/lib/multi-tk.rb: security fix.
27685 Tue Jul 11 17:28:08 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27687         * string.c (rb_str_dump): need to extend len for \b.
27689 Tue Jul 11 15:29:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27691         * bignum.c (rb_int2big): use SIGNED_VALUE.  [ruby-dev:29019]
27693         * bignum.c (rb_int2inum, rb_uint2inum): use VALUE sized integer.
27695         * bignum.c (rb_big2long, rb_big2ulong): ditto.
27697         * numeric.c (rb_num2long, rb_num2ulong): ditto.
27699         * numeric.c (check_int, check_uint): ditto.
27701         * bignum.c (rb_quad_pack): typo fixed.
27703 Tue Jul 11 13:40:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27705         * bignum.c (bignorm): sizeof(long) may be smaller than
27706           sizeof(VALUE).  [ruby-dev:29013]
27708         * ruby.h (FIXNUM_MAX): fixnum may be bigger than long.
27710         * ruby.h (SIGNED_VALUE): signed integer of size of VALUE.
27712 Mon Jul 10 23:37:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27714         * lib/soap/rpc/proxy.rb (Proxy::Operation::response_doc): remove
27715           splat star from return statements.
27717         * lib/soap/rpc/proxy.rb (Proxy::Operation::response_obj): retrieve
27718           the first value from the result array if response has only one
27719           value.
27721 Mon Jul 10 22:00:00 2006  Shigeo Kobayashi  <shigek@ruby-lang.org>
27723         * ext/bigdecimal/bigdecimal.c: Allows '_' to appear within
27724           digits.  [ruby-dev:28872]
27726         * ext/bigdecimal/lib/bigdecimal/util.rb: Bug in to_r reported by
27727           [ruby-list:42533] fixed.
27729 Mon Jul 10 19:22:19 2006  Tanaka Akira  <akr@fsij.org>
27731         * gc.c (gc_sweep): expand heap earlier.
27732           reported by MORITA Naoyuki.  [ruby-dev:28960]
27734 Mon Jul 10 18:59:34 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27736         * ext/tk/lib/tk/font.rb: sorry. mistaken to patch.
27738 Mon Jul 10 18:46:52 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27740         * ext/tk/tcltklib.c: make SEGV risk lower at exit.
27742         * ext/tk/lib/tk.rb: ditto.
27744         * ext/tk/lib/multi-tk.rb: fail to call function-style methods on slave
27745           interpreters. The strategy (MultiTkIp_PseudoToplevel_Evaluable) to
27746           fix the problem is a little tricky. You may have to take care of
27747           conflicting with it.
27749         * ext/tk/lib/tk.rb: a little change for the pseudo-toplevel strategy.
27751         * ext/tk/lib/tk/font.rb: ditto.
27753         * ext/tk/lib/tk/msgcat.rb: ditto.
27755         * ext/tk/lib/tkextlib/itk/incr_tk.rb: ditto.
27757         * ext/tk/sample/demos-en/widget: fail to call function-style methods
27758           on sample scripts. To fix it, a strategy which similar to the way
27759           on MultiTiIp is used. Please take care when re-write and re-run a
27760           demo script on the Widget-Demo code viewer.
27762         * ext/tk/sample/demos-jp/widget: ditto.
27764 Mon Jul 10 17:32:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27766         * sample/test.rb: update test suites.
27768         * test/ruby/test_assignment.rb (TestAssignment::test_yield): ditto.
27770         * test/ruby/test_iterator.rb (TestIterator::test_itertest): ditto.
27772 Mon Jul 10 14:43:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27774         * eval.c (rb_call): remove erroneously restored prot_tag->blkid
27775           initialization.  [ruby-dev:28997]  [ruby-dev:29000]
27777 Mon Jul 10 13:58:08 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27779         * signal.c (install_nativethread_sighandler): commented out.
27781 Mon Jul 10 09:29:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27783         * eval.c (rb_clear_cache_for_remove): clear entries for included
27784           module.  fixed: [ruby-core:08180]
27786 Mon Jul 10 02:22:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27788         * eval.c (proc_invoke): should not overwrite block information in
27789           current frame.  [ruby-dev:28957]
27791         * eval.c (rb_yield_0): retrieve proper block object from the frame
27792           record.
27794         * eval.c (proc_alloc): return preserved block object if it's
27795           available.
27797 Mon Jul 10 01:48:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27799         * st.h (st_data_t): use pointer sized integer for st_data_t.
27800           [ruby-dev:28988]
27802 Sun Jul  9 18:06:47 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27804         * lib/mkmf.rb (try_constant): fix for value 1 at cross compiling.
27806         * lib/mkmf.rb (create_makefile): prevent substitution of macro
27807           definition.  fixed: http://www.yotabanana.com/lab/20060624.html#p02
27809 Sun Jul  9 07:58:48 2006  Ryan Davis  <ryand@zenspider.com>
27811         * lib/rdoc/parsers/parse_f95.rb: massive overhaul from Yasuhiro
27812           Morikawa including new file suffixes, function support, public
27813           variables and constants, derived-types, defined operators and
27814           assignments, namelists, and subroutine and function
27815           arguments. Truly massive.
27817         * lib/rdoc/diagram.rb: diagrams are now cached.
27819         * lib/irb/completion.rb: fixed a crasher when completing against
27820           an unnamed class/module.
27822         * lib/rdoc/parsers/parse_c.rb: private comment (--/++) support in
27823           C-file rdoc.
27825         * lib/debug.rb: minor clarification in help.
27827         * lib/pp.rb: minor clarification on exception.
27829 Sun Jul  9 00:54:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27831         * eval.c (next_jump): deal with destination of next.
27832           fixed: [ruby-core:08169]
27834 Fri Jul  7 17:49:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27836         * string.c (rb_str_ord): extract lower byte.  fixed: [ruby-dev:28980]
27838         * lib/jcode.rb (String#succ!): fix for 1.9.  fixed: [ruby-dev:28979]
27840 Fri Jul  7 14:05:03 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27842         * win32/Makefile.sub (config.h): define FUNC_STDCALL/FUNC_CDECL.
27843           from [ruby-dev:28970].
27845 Fri Jul  7 00:38:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27847         * hash.c (rb_hash_default): should not call default procedure if
27848           no key is given.  [ruby-list:42541]
27850 Thu Jul  6 23:30:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27852         * process.c (rb_proc_times): use sysconf(_SC_CLK_TCK) value prior to
27853           HZ and CLK_TCK.  fixed: [ruby-talk:200293]
27855 Thu Jul  6 21:50:06 2006  Minero Aoki  <aamine@loveruby.net>
27857         * ext/racc/cparse/cparse.c: sync with original code, rev 1.8.
27859         * ext/racc/cparse/cparse.c: should mark CparseParams objects.
27861         * lib/racc/parser.rb: sync with original code, rev 1.8.
27863         * lib/racc/parser.rb: update coding style.
27865 Wed Jul  5 05:28:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27867         * parse.y (block_param): should allow block argument after splat
27868           and post splat args.
27870 Wed Jul  5 01:12:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27872         * test/ruby/test_lambda.rb (TestLambdaParameters::test_lambda_as_iterator):
27873           -> style block no longer available.  [ruby-dev:28958]
27875 Tue Jul  4 21:48:56 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27877         * ruby.c (proc_options): suppress warning on DOSISH.
27879 Tue Jul  4 15:12:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27881         * eval.c (rb_call): should not set prot_tag->blkid since it would
27882           never catch breaks at this level.  [ruby-dev:28922]
27884 Tue Jul  4 04:48:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27886         * bignum.c: ruby 1.9 HEAD 64 bit warnings clean up from
27887           <ville.mattila at stonesoft.com>.   [ruby-core:08120]
27889 Mon Jul  3 19:04:38 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27891         * ext/tk/tcltklib.c (ip_make_menu_embeddable): help to make a menu
27892           widget embeddable (pack, grid, and so on) like as a general widget.
27893           However, an embeddable menu may require to be defined some event
27894           bindings for general use.
27896         * ext/tk/lib/tk/event.rb: [bug fix] Tk.callback_break and
27897           Tk.callback_continue don't work on MultiTkIp.
27899         * ext/tk/lib/multi-tk.rb: ditto.
27901         * ext/tk/lib/tk.rb: lack of Tk.callback_return.
27903         * ext/tk/lib/tk/menu.rb: improve creating clone menus.
27905 Mon Jul  3 14:42:06 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27907         * ext/etc/extconf.rb (PW_UID2VAL, PW_GID2VAL): defaulted to conversion
27908           from int, and sys/types.h needs to be included before grp.h.
27909           fixed: [ruby-dev:28938]
27911 Mon Jul  3 10:44:01 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27913         * io.c (popen_exec): close file descriptors other than standard I/Os.
27914           fixed: [ruby-dev:28924]
27916 Mon Jul  3 05:15:29 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27918         * test/openssl/test_asn1.c: String#[]= doesn't accept Integer.
27920 Mon Jul  3 01:14:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27922         * string.c (rb_str_inspect): encode \b (\010) for escape.
27923           [ruby-dev:28927]
27925         * string.c (rb_str_dump): ditto.
27927 Sun Jul  2 19:03:30 2006  Minero Aoki  <aamine@loveruby.net>
27929         * ext/racc/cparse/cparse.c: sync with original code, rev 1.7.
27931         * ext/racc/cparse/cparse.c: must require version.h to get
27932           RUBY_VERSION_CODE.
27934 Sun Jul  2 18:42:27 2006  Minero Aoki  <aamine@loveruby.net>
27936         * ext/racc/cparse/cparse.c: sync with original source code, rev
27937           1.6.
27939         * ext/racc/cparse/cparse.c: do not use rb_iterate to give a block
27940           to the method, use rb_block_call instead. [ruby-dev:28445]
27942 Sun Jul  2 11:22:03 2006  Tanaka Akira  <akr@m17n.org>
27944         * io.c (io_reopen): STDOUT.reopen(filename, "w+") didn't work.
27945           (rb_io_reopen): STDOUT.reopen(File.open(filename, "w+")) didn't work.
27947 Sat Jul  1 23:55:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27949         * eval.c (PUSH_FRAME): initialize frame->self.  [ruby-dev:28911]
27951 Sat Jul  1 17:00:42 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27953         * test/webrick/utils.rb: use Proc#yield instead of Proc#call.
27954           [ruby-dev:28914]
27956 Sat Jul  1 15:15:49 2006  Tanaka Akira  <akr@m17n.org>
27958         * test/socket/test_nonblock.rb: add timeout to send/receive
27959           an empty UDP packet.
27960           [ruby-dev:28820]
27962 Fri Jun 30 23:46:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27964         * configure.in: should test isinf for Solaris with GCC compiler.
27965           a patch from <ville.mattila at stonesoft.com>.  [ruby-core:07791]
27967         * configure.in: -shared patch from Andrew Morrow
27968           <andrew.c.morrow at gmail.com>.  [ruby-core:08100]
27970 Fri Jun 30 19:35:41 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27972         * lib/webrick/httputils.rb (WEBrick::HTTPUtils._escape): should
27973           use String#ord to get ascii code from the one-character string.
27974           [ruby-dev:28901]
27976 Thu Jun 29 23:56:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27978         * gc.c (gc_mark_children): a bug in NODE_BLOCK_PASS marking.
27979           [ruby-dev:28908]
27981 Thu Jun 29 23:04:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27983         * parse.y: use ARGSPUSH instead of ARGSCAT to prevent too much
27984           splat expansion.
27986         * eval.c (when_check): need to handle ARGSPUSH as well.
27988         * eval.c (block_orphan): lambda and proc from method are always
27989           orphan.
27991         * gc.c (gc_mark_children): proper marking for NODE_LAMBDA.
27993 Thu Jun 29 22:47:30 2006  Tanaka Akira  <akr@m17n.org>
27995         * eval.c (SETUP_ARGS0): avoid GC problem.
27996           [ruby-dev:28902]
27998 Thu Jun 29 18:58:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28000         * ext/bigdecimal/bigdecimal.c (BigDecimal_version): fix patch
28001           failure.
28003 Thu Jun 29 18:00:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28005         * ext/bigdecimal/bigdecimal.c: add RDoc document.  a patch from
28006           mathew <meta at pobox.com>.   [ruby-core:07050]
28008 Wed Jun 28 14:53:09 2006  Eric Hodel  <drbrain@segment7.net>
28010         * lib/optparse.rb: RDoc patch from Robin Stocker <robin@nibor.org>
28011           [ruby-core:08087]
28013 Wed Jun 28 23:23:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28015         * object.c (rb_cstr_to_dbl): underscores should appear only
28016           between digits.  [ruby-dev:28891]
28018 Wed Jun 28 19:04:34 2006  Tanaka Akira  <akr@m17n.org>
28020         * test/socket/test_unix.rb: test_seqpacket_pair removed.
28021           [ruby-dev:28846]
28023 Wed Jun 28 13:51:21 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28025         * eval.c (when_check): arbitrary values are allowed after splats.
28026           fixed: [ruby-dev:28879]
28028 Wed Jun 28 09:16:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28030         * parse.y (primary): remove meaningless else-only case statement
28031           syntax.
28033 Wed Jun 28 08:08:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28035         * eval.c (rb_eval): problem to handle else part.  [ruby-dev:28873]
28037 Wed Jun 28 01:48:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28039         * eval.c (rb_eval): support splat in when expression list.
28040           [ruby-dev:28822]
28042         * eval.c (when_check): a new auxiliary function for case match.
28044         * eval.c (when_cond): ditto.
28046 Wed Jun 28 01:05:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28048         * object.c (rb_cstr_to_dbl): should not skip '_' at the beginning
28049           of a string.  [ruby-dev:28830]
28051         * bignum.c (rb_cstr_to_inum): ditto.
28053 Tue Jun 27 23:03:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28055         * string.c: RDoc update for =~ method.  a patch from Alex Young
28056           <alex at blackkettle.org>.  [ruby-core:08068]
28058 Tue Jun 27 22:47:18 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28060         * ext/tk/tcltklib.c: forgot to update TCLTKLIB_RELEASE_DATE.
28062         * ext/tk/lib/tk.rb (tk_tcl2ruby): [bug fix] sometimes fail to convert
28063           a tcl string to a ruby object if the tcl string includes "\n".
28065 Tue Jun 27 20:05:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28067         * io.c (pipe_open): backout unnecessary fix on 2006-06-26.
28068           [ruby-dev:28865]
28070         * eval.c (rb_yield_0): exact argument number check now done only
28071           for lambda Proc.
28073         * eval.c (rb_yield_0): add check for number of arguments, if
28074           there's one lambda block parameter.
28076 Tue Jun 27 16:04:05 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
28078         * win32/win32.h: define isascii on MinGW for msvcrt compatibility.
28080         * configure.in: set ac_cv_header_sys_time_h=no on MinGW
28081           for msvcrt compatibility.
28083 Tue Jun 27 11:36:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28085         * ext/etc/etc.c (setup_passwd, setup_group): allow bignum uid, gid and
28086           so on.  [ruby-talk:199102]
28088 Tue Jun 27 10:46:53 2006  Tanaka Akira  <akr@m17n.org>
28090         * eval.c (rb_yield_0): avoid core dump.  [ruby-dev:28840]
28092 Mon Jun 26 11:03:00 2006  Eric Hodel  <drbrain@segment7.net>
28094         * lib/rdoc/ri: Add options to limit the ri search path.
28096 Tue Jun 27 01:31:59 2006  Tanaka Akira  <akr@m17n.org>
28098         * ext/socket/socket.c (bsock_recv_nonblock): new method
28099           BasicSocket#recv_nonblock.
28100           (udp_recvfrom_nonblock): renamed from ip_recvfrom_nonblock.
28101           IPSocket#recvfrom_nonblock is moved to UDPSocket#recvfrom_nonblock.
28102           (unix_recvfrom_nonblock): removed.
28103           UNIXSocket#recvfrom_nonblock is removed.
28105 Tue Jun 27 00:52:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28107         * ext/ripper/eventids2.c (token_assoc): added tCHAR, which is not
28108           under 256 now.  fixed: [ruby-dev:28832]
28110 Mon Jun 26 23:42:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28112         * eval.c (call_trace_func): no check for argument number of the
28113           callback.  fixed: [ruby-dev:28812]
28115 Mon Jun 26 18:37:44 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28117         * ext/tk/tcltklib.c (ip_delete): fix SEGV when a slave-ip is
28118           deleted on callback.
28120 Mon Jun 26 15:40:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28122         * ext/socket/socket.c (sock_accept): revert to avoid ambiguity of
28123           argument evaluation order.  [ruby-dev:28861]
28125         * ext/socket/socket.c (sock_accept_nonblock): ditto.
28127 Mon Jun 26 10:47:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28129         * io.c (pipe_open): avoid closing uninitialized file descriptors.
28130           a patch from <tommy at tmtm.org> [ruby-dev:28600]
28132 Sun Jun 25 23:02:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28134         * Makefile.in, mkconfig.rb: catch-up for latest autoconf.
28136 Sun Jun 25 17:44:16 2006  Tanaka Akira  <akr@m17n.org>
28138         * parse.y (paren_args): wrap $2 by escape_Qundef because it may be
28139           Qundef.  [ruby-dev:28843]
28141 Sun Jun 25 17:18:33 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28143         * ext/win32ole/win32ole.c(ole_invoke): support some kind of
28144           method of word. [ruby-Bugs#3237]
28146         * test/win32ole/test_word.rb: ditto.
28148 Sat Jun 24 23:48:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28150         * parse.y: replace terminal token names with more descriptive
28151           name, i.e. kEND to keyword_end.  [ruby-list:42477]
28153 Sat Jun 24 23:37:41 2006  Tanaka Akira  <akr@m17n.org>
28155         * eval.c (rb_eval): use rb_ary_new2 instead of rb_ary_new4 to avoid
28156           GC problem.
28157           (rb_yield_values): use rb_ary_new2 instead of rb_ary_new4.
28159         * array.c (rb_ary_new4): don't set len as n if contents is not
28160           initialized.  make it safe with GC.
28162           [ruby-dev:28826]
28164 Fri Jun 23 23:35:32 2006  Tanaka Akira  <akr@m17n.org>
28166         * ruby.h, lib/drb/drb.rb, lib/drb/invokemethod.rb: remove Values class.
28167           [ruby-dev:28805]
28169 Fri Jun 23 17:27:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28171         * eval.c (rb_block_pass): removed.
28173         * eval.c (rb_thread_start_1): use rb_proc_yield() instead of
28174           rb_block_pass().  fixed: [ruby-dev:28794]
28176 Thu Jun 22 11:52:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28178         * lib/net/http.rb (Net::HTTPResponse): duplicated error 501;
28179           HTTPInternalServerError should be error 500.  [ruby-core:08037]
28181 Thu Jun 22 11:47:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28183         * variable.c (rb_mod_name): returns nil for anonymous modules.
28184           [ruby-talk:198440]
28186 Thu Jun 22 10:31:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28188         * string.c (rb_str_aref): "abc"[3] should not return an empty
28189           string but nil.  [ruby-dev:28786]
28191 Thu Jun 22 05:15:58 2006  Tanaka Akira  <akr@m17n.org>
28193         * ext/socket/socket.c (sock_s_socketpair): try GC only once.
28194           [ruby-dev:28778]
28196 Wed Jun 21 21:20:31 2006  Tadayoshi Funaba  <tadf@dotrb.org>
28198         * lib/date.rb (jd_to_commercial): now works fine even if in
28199           mathn-ized context.
28201 Wed Jun 21 17:29:57 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28203         * ext/socket/getaddrinfo.c (freeaddrinfo, get_name): fixed typo.
28205         * ext/tk/tcltklib.c (tcl_eval, tcl_global_eval): ditto.
28207         * ext/zlib/zlib.c (rscheck): constified.
28209 Wed Jun 21 17:18:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28211         * lib/pp.rb (PP::PPMethods::seplist): should have preserved
28212           original reference to the array.  [ruby-dev:28747]
28214 Wed Jun 21 14:35:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28216         * parse.y (block_param): do not use multiple assignment for a sole
28217           block parameter.  [ruby-dev:28710]
28219         * eval.c (rb_yield_0): pass a raw yielded value to a sole block
28220           parameter if a value is passed by yield.
28222         * eval.c (proc_invoke): args may not be an array.
28224         * eval.c (rb_proc_yield): pass original value without wrapping
28225           it in an array.
28227 Wed Jun 21 14:06:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28229         * parse.y (method_call): remove (fn)(args) style lambda
28230           invocation, add fn.(args) instead.
28232 Wed Jun 21 08:39:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28234         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): merge Date
28235           and Time processing.  [ruby-core:08033]
28237 Wed Jun 21 03:01:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28239         * eval.c, file.c, etc.: code-cleanup patch from Stefan Huehner
28240           <stefan at huehner.org>.  [ruby-core:08029]
28242 Wed Jun 21 01:40:25 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28244         * parse.y (reswords): modifier token is no longer returned in fname
28245           state.  fixed: [ruby-dev:28775]
28247 Tue Jun 20 23:28:34 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28249         * ext/extmk.rb (parse_args): provisional catch-up for the recent changes.
28251         * lib/optparse.rb (OptionParser::List#summarize, OptionParser#order!): ditto.
28253 Tue Jun 20 11:07:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28255         * eval.c (proc_invoke): intercept break and return from lambda
28256           Proc objects.  [ruby-dev:28742]
28258         * eval.c (proc_invoke): remove unnecessary YIELD_PROC_CALL flag.
28260         * eval.c (YIELD_EXACT_ARGS): renamed from YIELD_LAMBDA_CALL, which
28261           is no longer related to the behavior turned on by this flag.
28263         * eval.c (return_jump): no need to care about PROT_YIELD.
28265         * eval.c (break_jump): no jump to toplevel PROT_THREAD tag.
28267         * eval.c (rb_yield_0): fix confusion between lambda (which is a
28268           property of a proc) and pcall (which depends on whether it's
28269           called via yield or call).
28271         * eval.c (rb_thread_yield): no need to specify YIELD_LAMBDA_CALL.
28273         * eval.c (rb_block_pass): update blkid in prot_tag.
28275 Mon Jun 19 23:40:59 2006  NARUSE, Yui  <naruse@ruby-lang.org>
28277           * ext/nkf/lib/kconv.rb: remove default -m0 and fix document.
28279           * ext/nkf/nkf-8/{nkf.c, config.h, utf8tbl.c, utf8tbl.h}:
28280             imported nkf 2.0.7.
28282 Mon Jun 19 17:02:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28284         * sample/test.rb (proc_return3): return within non lambda block
28285           should terminate surrounding method.  [ruby-dev:28741]
28287 Mon Jun 19 13:22:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28289         * ext/socket/socket.c (unix_sysaccept): typo fixed.
28291         * ext/socket/socket.c (sock_connect): remove an unused local
28292           variable tmpaddr.
28294 Mon Jun 19 02:10:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28296         * ext/socket/socket.c (tcp_accept_nonblock): forgot to remove
28297           abandoned hacks.  [ruby-dev:28740]
28299 Mon Jun 19 00:00:17 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28301         * ext/tk/lib/multi-tk.rb: fix bug: initialize improper tables.
28303 Sun Jun 18 20:28:43 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28305         * ext/win32ole/win32ole.c (fole_methods): The return value
28306           of WIN32OLE#ole_methods should include PROPERTYPUTREF methods.
28308         * ext/win32ole/win32ole.c (fole_put_methods): The return value
28309           of WIN32OLE#ole_put_methods should include PROPERTYPUTREF methods.
28311         * test/win32ole/test_ole_methods.rb: ditto.
28313         * ext/win32ole/win32ole.c (ole_propertyput): support
28314           PROPERTYPUTREF. [ruby-talk:183042]
28316         * test/win32ole/test_propertyputref.rb: ditto.
28318 Sat Jun 17 23:42:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28320         * eval.c (Init_eval): add aliases invoke_method and
28321           invoke_functional_method corresponding send and funcall
28322           respectively.  [ruby-talk:197512]
28324         * parse.y (parser_yylex): returns the most typical keyword token
28325           on EXPR_FNAME.  [ruby-core:7995]
28327         * ext/socket/socket.c: protoize.
28329 Sat Jun 17 22:17:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28331         * lib/mathn.rb (Integer::prime_division): raise ZeroDivisionError
28332           on zeros.  [ruby-dev:28739]
28334 Sat Jun 17 14:53:32 2006  Tanaka Akira  <akr@m17n.org>
28336         * lib/pathname.rb (Kernel#Pathname): new method.
28338 Sat Jun 17 02:01:00 2006  Tanaka Akira  <akr@m17n.org>
28340         * lib/pp.rb (Kernel#pretty_inspect): defined for pretty printed
28341           string.
28343 Fri Jun 16 01:41:00 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28345         * eval.c (rb_proc_arity): get rid of segfault for mere splat.
28347         * gc.c (gc_mark_children): NODE_BLOCK_PASS needs u3 to be marked.
28349 Thu Jun 15 22:06:56 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28351         * parse.y (then): remove ':' from 'then' and 'do' rules.
28353 Wed Jun 14 18:00:20 2006  Eric Hodel  <drbrain@segment7.net>
28355         * enum.c (enum_any): Documentation typo.
28357 Wed Jun 14 15:01:09 2006  Eric Hodel  <drbrain@segment7.net>
28359         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser#warn): Don't print
28360           warnings when -q is set.
28362 Wed Jun 14 16:11:37 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28364         * eval.c (rb_f_method_name, rb_f_callee_name): document typo.
28366 Wed Jun 14 15:19:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28368         * hash.c (env_aset): raise TypeError on nil with more descriptive
28369           message.  [ruby-core:07990]
28371 Tue Jun 13 17:22:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28373         * ext/socket/socket.c (Init_socket): remove obsolete constants:
28374           IPsocket, TCPsocket, SOCKSsocket, TCPserver, UDPsocket,
28375           UNIXsocket, UNIXserver.
28377 Tue Jun 13 09:07:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28379         * eval.c (formal_assign): post splat arguments should have had
28380           higher priority than optional arguments, since they are
28381           mandatory.  [ruby-dev:28715]
28383         * eval.c (VIS_MASK): broken. should be 15.  [ruby-dev:28715]
28385         * io.c (argf_getc): should return one-character string.
28386           [ruby-dev:28715]
28388         * io.c (rb_io_readchar): ditto.
28390 Sun Jun 11 23:20:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28392         * object.c (sym_call): disallow to call private methods.
28394         * lib/optparse.rb (OptionParser::Arguable#getopts): pass self to the
28395           parser.
28397 Sun Jun 11 09:56:41 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28399         * win32/win32.h (write): not need to define on bcc.
28401 Sun Jun 11 08:30:33 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28403         * lib/optparse.rb (OptionParser#getopts): new methods.
28405 Sun Jun 11 07:27:11 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28407         * lib/rdoc/ri/ri_writer.rb: use String#ord.
28409 Sun Jun 11 04:38:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28411         * object.c (sym_to_proc): imported Symbol#to_proc from ActiveSupport.
28413 Sat Jun 10 18:02:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28415         * ext/bigdecimal/lib/bigdecimal/newton.rb (Newton::nlsolve): typo
28416           fixed: raize -> raise.  [ruby-talk:196608]
28418 Sat Jun 10 17:49:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28420         * string.c (rb_str_ord): new method.
28422         * parse.y (rbracket): allow optional newline before closing
28423           brackets.
28425 Sat Jun 10 15:12:29 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28427         * eval.c (rb_f_method_name, rb_f_callee_name): new functions.
28428           new global method `__method__' and `__callee__'.
28430 Sat Jun 10 10:13:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28432         * lib/getoptlong.rb (GetoptLong#set_options): receive arguments
28433           as Array.
28435         * lib/irb/slex.rb: use Proc#yield.
28437         * lib/rdoc/markup/simple_markup/inline.rb: follow the new behavior
28438           of String#[].
28440         * lib/rdoc/ri/ri_writer.rb: ditto.
28442 Sat Jun 10 08:17:23 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28444         * math.c (log2): may be a macro.
28446         * parse.y (args, block_param, f_args): pass f_post_arg to #params.
28448         * util.c (powersOf10): constified.
28450         * ext/readline/readline.c: include extconf.h first.
28452         * ext/ripper/eventids2.c: removed tLAMBDA_ARG.
28454         * ext/tk/tcltklib.c (lib_fromUTF8_core): removed conflict.
28456         * ext/tk/tkutil/tkutil.c (cbsubst_get_subst_arg): rb_id2name() is
28457           defined as const now.
28459         * ext/win32ole/win32ole.c (fole_missing): ditto.
28461         * lib/mkmf.rb (create_makefile): force to create extconf header.
28463         * lib/optparse.rb (order!): use Proc#yield.
28465 Sat Jun 10 06:53:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28467         * eval.c (CALLARGS): remove last semicolon. C90 compiler doesn't
28468           allow any lines (even if they're empty) within variable
28469           declarations.
28471 Fri Jun  9 09:56:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28473         * sprintf.c (rb_str_format): allow %c to print one character
28474           string (e.g. ?x).
28476 Thu Jun  8 14:00:02 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28478         * win32/win32.[ch] (rb_w32_read, rb_w32_write): new functions.
28479           use recv() and send() when fd is socket. fixed: [ruby-dev:28694]
28481 Wed Jun  7 16:22:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28483         * lib/tempfile.rb (Tempfile::make_tmpname): put dot between
28484           basename and pid.  [ruby-talk:196272]
28486 Wed Jun  7 16:16:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28488         * parse.y (do_block): remove -> style block.
28490         * parse.y (parser_yylex): remove tLAMBDA_ARG.
28492 Wed Jun  7 14:51:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28494         * win32/win32.c (errmap): add some winsock errors.
28496 Wed Jun  7 09:14:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28498         * eval.c (rb_call0): binding for the return event hook should have
28499           consistent scope.  [ruby-core:07928]
28501 Tue Jun  6 23:25:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28503         * eval.c (proc_invoke): return behavior should depend whether it
28504           is surrounded by a lambda or a mere block.
28506 Mon Jun  5 18:12:12 2006  Tanaka Akira  <akr@m17n.org>
28508         * ext/socket/socket.c (sock_s_unpack_sockaddr_in): reject
28509           non-AF_INET/AF_INET6 sockaddr.
28510           (sock_s_unpack_sockaddr_un): reject non-AF_UNIX sockaddr.
28511           [ruby-dev:28691]
28513 Sun Jun  4 20:40:19 2006  Tanaka Akira  <akr@m17n.org>
28515         * ext/socket/socket.c: fix sockaddr_un handling.
28516           [ruby-dev:28677]
28518 Sat Jun  3 23:53:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28520         * eval.c (formal_assign): handles post splat arguments.
28522         * eval.c (rb_call0): ditto.
28524 Sat Jun  3 13:10:41 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28526         * st.c (strhash): use FNV-1a hash.
28528 Fri Jun  2 20:01:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28530         * parse.y (parser_yylex): removed experimental ';;' terminator.
28532 Fri Jun  2 19:00:40 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28534         * ext/openssl/extconf.rb: use create_header.
28536         * ext/openssl/ossl.h, ext/openssl/openssl_missing.h:
28537           include RUBY_EXTCONF_H.
28539 Fri Jun  2 17:16:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28541         * lib/mkmf.rb (CLEANINGS): remove extconf.h by distclean if created.
28543 Fri Jun  2 00:11:19 2006  Tanaka Akira  <akr@m17n.org>
28545         * ext/socket/socket.c (s_recvfrom): alen may be zero with UNIXSocket
28546           too.  (tested on NetBSD 3.0)
28547           (s_recvfrom_nonblock): extracted from sock_recvfrom_nonblock.
28548           (sock_recvfrom_nonblock): use s_recvfrom_nonblock.
28549           (ip_recvfrom_nonblock): new method: IPSocket#recvfrom_nonblock
28550           (unix_recvfrom_nonblock): new method: UNIXSocket#recvfrom_nonblock
28551           (s_accept_nonblock): extracted from sock_accept_nonblock.
28552           (sock_accept_nonblock): use s_accept_nonblock.
28553           (tcp_accept_nonblock): new method: TCPServer#accept_nonblock
28554           (unix_accept_nonblock): new method: UNIXServer#accept_nonblock
28556 Thu Jun  1 19:12:37 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28558         * win32/win32.c (rb_w32_cmdvector): backslashes inside single-quotes
28559           no longer has special meanings.  fixed: [ruby-list:42311]
28561 Thu Jun  1 17:55:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28563         * eval.c (rb_node_arity): should be aware of post splat arguments.
28565         * eval.c (rb_proc_arity): ditto.
28567 Thu Jun  1 16:17:26 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28569         * win32/win32.c (rb_w32_getcwd): runtime's getcwd() will not success
28570           if the length of the cwd is longer than MAX_PATH.
28571           fixed [ruby-list:42335]
28573 Thu Jun  1 16:07:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28575         * parse.y (f_args): syntax rule enhanced to support arguments
28576           after the splat.
28578         * parse.y (mlhs_basic): ditto for multiple assignments
28580         * parse.y (block_param): ditto for block parameters.
28582         * parse.y (f_post_arg): mandatory formal arguments after the splat
28583           argument.
28585         * parse.y (new_args_gen): generate nodes for mandatory formal
28586           arguments after the splat argument.
28588         * eval.c (rb_eval): dispatch mandatory formal arguments after the
28589           splat argument.
28591 Thu Jun  1 11:33:32 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28593         * win32/win32.c (rb_w32_getcwd): set errno if not set.
28594           fixed [ruby-list:42346]
28596 Thu Jun  1 00:45:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28598         * parse.y (args): allow more than one splat in the argument list.
28600 Wed May 31 18:38:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28602         * parse.y (method_call): allow aref [] to accept all kind of
28603           method argument, including assocs, splat, and block argument.
28605         * eval.c (SETUP_ARGS0): prepare block argument as well.
28607 Tue May 30 18:13:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28609         * lib/mathn.rb (Integer): remove Integer#gcd2. [ruby-core:07931]
28611 Mon May 29 22:40:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28613         * eval.c (error_line): print receivers true/false/nil specially.
28615         * eval.c (rb_proc_yield): handles parameters in yield semantics.
28617         * eval.c (nil_yield): gives LocalJumpError to denote no block
28618           error.
28620         * io.c (rb_io_getc): now takes one-character string.
28622 Sat May 27 22:46:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28624         * eval.c (proc_invoke): save and restore block in the current frame.
28625           fixed: [ruby-core:07833], [ruby-talk:191639]
28627 Sat May 27 11:29:46 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28629         * ext/extmk.rb (extmake): remove extinit files if no statically linked
28630           extensions.
28632 Fri May 26 19:56:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28634         * string.c (rb_str_hash): use FNV-1a hash from Fowler/Noll/Vo
28635           hashing algorithm.
28637 Fri May 26 09:05:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28639         * ruby.h, lib/mkmf.rb (create_header): clear command line options for
28640           macros moved to extconf.h.
28642         * ext/extmk.rb (extract_makefile, extmk): made RUBY_EXTCONF_H and
28643           EXTSTATIC permanent.
28645         * ext/{dbm,digest/*,socket,zlib}/extconf.rb: used $defs and $INCFLAGS.
28647         * {bcc32,win32,wince}/Makefile.sub (COMPILE_C, COMPILE_CXX): added
28648           $(INCFLAGS).
28650         * lib/mkmf.rb (configuration): add $defs unless extconf.h was created.
28652 Thu May 25 01:52:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28654         * lib/mkmf.rb (pkg_config): particular config commands support.
28656         * ext/extmk.rb: deal with $static set in extconf.rb.
28658         * mkconfig.rb: merge multiple entries to an entry with multiple lines.
28660         * lib/mkmf.rb: allow a series of commands to link.
28662         * win32/Makefile.sub: embed manifests.
28664         * win32/setup.mak: suffix OS name by runtime version.
28666 Wed May 24 23:52:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28668         * configure.in (ac_install_sh): ignore dummy install-sh.
28669           [ruby-talk:193876]
28671 Wed May 24 17:55:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28673         * string.c (rb_str_aref): str[0] now returns 1 character string,
28674           instead of a fixnum.  [Ruby2]
28676         * parse.y (parser_yylex): ?c now returns 1 character string,
28677           instead of a fixnum.  [Ruby2]
28679         * string.c (rb_str_aset): no longer support fixnum insertion.
28681 Wed May 24 03:10:44 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28683         * ext/openssl/lib/openssl/ssl.rb
28684           (OpenSSL::SSL::SocketForwarder#setsockopt,getsockopt): typo fixed.
28686 Mon May 22 16:32:03 2006  Tanaka Akira  <akr@m17n.org>
28688         * rubyio.h (rb_io_set_nonblock): declared.
28690         * io.c (rb_io_set_nonblock): new function.
28691           (io_getpartial): nonblocking read support.
28692           (io_read_nonblock): new method: IO#read_nonblock.
28693           (io_write_nonblock): new method: IO#write_nonblock.
28695         * ext/socket/socket.c (s_accept): retry for EWOULDBLOCK.
28696           revert [ruby-talk:113807].
28697           (sock_connect_nonblock): new method: Socket#connect_nonblock.
28698           (sock_accept_nonblock): new method: Socket#accept_nonblock.
28699           (sock_recvfrom_nonblock): new method: Socket#recvfrom_nonblock.
28701           [ruby-core:7917]
28703 Mon May 22 15:57:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28705         * eval.c (umethod_bind): should not update original class.
28706           [ruby-dev:28636]
28708 Mon May 22 13:38:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28710         * eval.c (ev_const_get): should support constant access from
28711           within instance_eval().  [ruby-dev:28327]
28713 Sun May 21 09:50:31 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28715         * regexec.c: add STK_NULL_CHECK_END to IS_TO_VOID_TARGET().
28716           [ruby-list:42234]
28718 Thu May 18 22:37:20 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28720         * lib/webrick/config.rb (WEBrick::Config::HTTP): add new parameters,
28721           :InputBufferSize and :OutputBufferSize.
28723         * lib/webrick/utils.rb (WEBrick::Utils.timeout): add new timeout
28724           method. this implementation is expected to be compatible with
28725           timeout.rb and faster than timeout.rb.
28727         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#_read_data):
28728           Timeout.timeout is replaced by WEBrick::Utils.timeout.
28730         * lib/webrick/httprequest.rb: WEBrick::HTTPRequest::BUFSIZE is
28731           replaced by config[:InputBufferSize].
28733         * lib/webrick/httpresposne.rb: WEBrick::HTTPResponse::BUFSIZE is
28734           replaced by config[:OutputBufferSize].
28736         * lib/webrick/server.rb: get rid of unnecessary require.
28738         * test/webrick/test_utils.rb: test for WEBrick::Utils.timeout.
28740 Thu May 18 17:51:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28742         * time.c (time_timeval): should round for usec floating
28743           number.  [ruby-core:07896]
28745         * time.c (time_add): ditto.
28747 Thu May 18 00:42:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28749         * ext/extmk.rb, lib/mkmf.rb: use BUILD_FILE_SEPARATOR in Makefiles.
28751 Wed May 17 17:55:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28753         * dir.c (sys_warning): should not call a vararg function
28754           rb_sys_warning() indirectly.  [ruby-core:07886]
28756 Tue May 16 17:23:19 2006    <sinara@blade.nagaokaut.ac.jp>
28758         * numeric.c (flo_divmod): the first element of Float#divmod should
28759           be an integer. [ruby-dev:28589]
28761         * test/ruby/test_float.rb: add tests for divmod, div, modulo and remainder.
28763 Tue May 16 15:34:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28765         * re.c (rb_reg_initialize): should not allow modifying literal
28766           regexps.  frozen check moved from rb_reg_initialize_m as well.
28768 Tue May 16 09:20:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28770         * re.c (rb_reg_initialize): should not modify untainted objects in
28771           safe levels higher than 3.
28773         * re.c (rb_memcmp): type change from char* to const void*.
28775         * dir.c (dir_close): should not close untainted dir stream.
28777         * dir.c (GetDIR): add tainted/frozen check for each dir operation.
28779 Mon May 15 21:37:12 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28781         * re.c (rb_reg_prepare_re): don't use onig_recompile().
28783 Mon May 15 17:42:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28785         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_symbol_arg):
28786           typo fixed.  a patch from Florian Gross <florg at florg.net>.
28788 Sat May 13 16:14:05 2006  Tanaka Akira  <akr@m17n.org>
28790         * lib/pp.rb (PP.mcall): new method.
28791           (Struct#pretty_print): call Kernel#class and Struct#members even if
28792           overridden.
28793           (Struct#pretty_print_cycle): ditto.
28794           [ruby-core:7865]
28796 Fri May 12 15:54:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28798         * eval.c (EXEC_EVENT_HOOK): trace_func may remove itself from
28799           event_hooks.  no guarantee for arbitrary hook deletion.
28800           [ruby-dev:28632]
28802 Thu May 11 19:57:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28804         * util.c (ruby_strtod): differ addition to minimize error.
28805           [ruby-dev:28619]
28807 Thu May 11 18:30:11 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28809         * ext/openssl/ossl_cipher.c (add_cipher_name_to_ary): should return
28810           value. [ruby-dev:28627]
28812 Thu May 11 18:10:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28814         * util.c (ruby_strtod): should not raise ERANGE when the input
28815           string does not have any digits.  [ruby-dev:28629]
28817 Wed May 10 23:40:21 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28819         * oniguruma.h: Version 4.0.3
28821         * regexec.c: ditto.
28823 Mon May  8 09:10:31 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28825         * ext/openssl/extconf.rb: add check for OBJ_NAME_do_all_sorted.
28827         * ext/openssl/ossl_cipher.c (ossl_s_ciphers): new method
28828           OpenSSL::Cipher.ciphers. it returns all the cipher names.
28830         * ext/openssl/ossl_cipher.c (ossl_cipher_init): refine warning message.
28832         * ext/openssl/lib/openssl/cipher.rb: reimplement without eval() and
28833           add constants AES128, AES192, AES256. [ruby-dev:28610]
28835         * ext/openssl/lib/openssl/digest.rb: reimplement without eval().
28837         * test/openssl/test_cipher.rb, test_digest: fix about reimplemented
28838           features.
28840         * sample/openssl/cipher.rb: rewrite all.
28842 Sun May  7 03:09:51 2006  Stephan Maka  <stephan@spaceboyz.net>
28844         * lib/resolv.rb (Resolv::DNS::Requester::ConnectedUDP#initialize):
28845           Use AF_INET6 for nameservers containing colons.
28847 Sat May  6 23:40:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28849         * eval.c (proc_invoke): should restore old ruby_frame->block.
28850           thanks to ts <decoux at moulon.inra.fr>.  [ruby-core:07833]
28851           also fix [ruby-dev:28614] as well.
28853 Sat May  6 00:38:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28855         * signal.c (trap): sig should be less then NSIG.  Coverity found
28856           this bug.  a patch from Kevin Tew <tewk at tewk.com>.
28857           [ruby-core:07823]
28859 Thu May  4 22:13:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28861         * math.c (math_log2): add new method inspired by
28862           [ruby-talk:191237].
28864         * math.c (math_log): add optional base argument to Math::log().
28865           [ruby-talk:191308]
28867 Thu May  4 02:24:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28869         * ext/syck/emitter.c (syck_scan_scalar): avoid accessing
28870           uninitialized array element.  a patch from Pat Eyler
28871           <rubypate at gmail.com>.  [ruby-core:07809]
28873         * array.c (rb_ary_fill): initialize local variables first.  a
28874           patch from Pat Eyler <rubypate at gmail.com>.  [ruby-core:07810]
28876         * ext/syck/yaml2byte.c (syck_yaml2byte_handler): need to free
28877           type_tag.  a patch from Pat Eyler <rubypate at gmail.com>.
28878           [ruby-core:07808]
28880 Wed May  3 02:12:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28882         * ext/socket/socket.c (make_hostent_internal): accept ai_family
28883           check from Sam Roberts <sroberts at uniserve.com>.
28884           [ruby-core:07691]
28886 Mon May  1 17:58:16 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28888         * ext/win32ole/win32ole.c (add_event_call_back): should not
28889           delete event handler when the event name is not entried.
28891 Mon May  1 08:32:10 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28893         * ext/win32ole/win32ole.c (ole_param_ole_type): should return
28894           "unknown type" string when ITypeInfo::GetFuncDesc failed.
28896 Sat Apr 29 22:43:37 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28898         * ext/openssl/ossl_asn1.c (ossl_asn1_decode0): should initialize
28899           flag. [ruby-core:07785]
28901 Fri Apr 28 10:53:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28903         * util.c (ruby_strtod): should not cut off 18 digits for no
28904           reason.  [ruby-core:07796]
28906 Thu Apr 27 01:38:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28908         * array.c (rb_ary_fill): internalize local variable "beg" to
28909           pacify Coverity.  [ruby-core:07770]
28911 Wed Apr 26 16:59:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28913         * pack.c (pack_unpack): now supports CRLF newlines.  a patch from
28914           <tommy at tmtm.org>.  [ruby-dev:28601]
28916 Wed Apr 26 16:55:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28918         * applied code clean-up patch from Stefan Huehner
28919           <stefan at huehner.org>.  [ruby-core:07764]
28921 Tue Apr 25 18:00:05 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28923         * ext/tk/tcltklib.c (delete_slaves): maybe increment the reference
28924           count of a NULL Tcl_Obj [ruby-core:07759].
28926 Tue Apr 25 07:55:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28928         * lib/jcode.rb (String::tr_s): should have translated non
28929           squeezing character sequence (i.e. a character) as well.  thanks
28930           to Hiroshi Ichikawa <gimite at gimite.ddo.jp> [ruby-list:42090]
28932 Fri Apr 21 15:19:13 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28934         * ext/tk/tcltklib.c (lib_eventloop_ensure): refer freed pointer
28935           [ruby-core:07744] and memory leak.
28937 Fri Apr 21 12:14:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28939         * ext/socket/socket.c: document update patch from Sam Roberts
28940           <sroberts at uniserve.com>.  [ruby-core:07701]
28942 Thu Apr 20 08:43:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28944         * lib/mathn.rb (Integer): need not to remove gcd2.  a patch from
28945           NARUSE, Yui <naruse at airemix.com>.  [ruby-dev:28570]
28947 Wed Apr 19 13:55:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28949         * parse.y (arg): too much NEW_LIST()
28951         * eval.c (SETUP_ARGS0): remove unnecessary access to nd_alen.
28953 Wed Apr 19 11:57:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28955         * eval.c (rb_eval): use ARGSCAT for NODE_OP_ASGN1.
28956           [ruby-dev:28585]
28958         * parse.y (arg): use NODE_ARGSCAT for placeholder.
28960 Wed Apr 19 11:13:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28962         * lib/getoptlong.rb (GetoptLong::get): RDoc update patch from
28963           mathew <meta at pobox.com>.  [ruby-core:07738]
28965 Wed Apr 19 10:13:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28967         * variable.c (rb_const_set): raise error when no target klass is
28968           supplied.  [ruby-dev:28582]
28970 Tue Apr 18 17:40:37 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28972         * ext/tk/lib/multi-tk.rb: add a binding to a container for a slave IP.
28974         * ext/tk/lib/tk.rb: update RELEASE_DATE.
28976         * ext/tk/tcltklib.c: forget to reset a Tcl interpreter.
28978         * ext/tk/stubs.c: fix potential bugs about handling rb_argv0.
28980 Mon Apr 10 01:03:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28982         * prec.c (prec_prec_f): documentation patch from
28983           <gerardo.santana at gmail.com>.  [ruby-core:07689]
28985 Sat Apr  8 02:34:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28987         * bignum.c (rb_big_pow): second operand may be too big even if
28988           it's a Fixnum.  [ruby-talk:187984]
28990 Sat Apr  8 02:12:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28992         * README.EXT: update symbol description.  [ruby-talk:188104]
28994 Sat Apr  8 18:06:28 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28996         * ext/win32ole/win32ole.c: add WIN32OLE_METHOD#inspect,
28997           WIN32OLE_PARAM#inspect.
28999         * test/win32ole/test_win32ole_method.rb: ditto.
29001         * add test/win32ole/test_win32ole_param.rb.
29003 Fri Apr  7 22:11:30 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
29005         * ext/win32ole/win32ole.c(foletypelib_initialize): WIN32OLE_TYPELIB.new
29006           accepts OLE file.
29008         * test/win32ole/test_win32ole_typelib.rb(test_initialize): ditto.
29010 Thu Apr  6 23:28:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29012         * COPYING: explicitly note GPLv2.  [ruby-talk:187922]
29014 Thu Apr  6 16:43:06 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29016         * intern.h (rb_obj_instance_exec, rb_mod_module_exec): add declaration.
29018 Thu Apr  6 11:18:37 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29020         * ext/tk/lib/tk/panedwindow.rb: lack of arguments. [ruby-core:7681]
29022 Thu Apr  6 01:04:47 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29024         * ext/tk/tcltklib.c: fix SEGV when embedding to an application.
29025           [ruby-core:7600]
29027         * ext/tk/tcltklib.c: fix SEGV at exit. [ruby-talk:186489]
29029         * ext/tk/tkutil/tkutil.c: follow to changing specification of
29030           instance_eval on ruby-1.9.x.
29032         * ext/tk/lib/tk.rb: ditto.
29034         * ext/tk/lib/multi-tk.rb: ditto.
29036         * ext/tk/lib/tk.rb: remove warning about redefinition of methods.
29038         * ext/tk/lib/tk/variable.rb: remove warning about unseting Tcl
29039           variables.
29041 Wed Apr  5 00:22:54 2006  Tanaka Akira  <akr@m17n.org>
29043         * lib/pathname.rb: use a subclass for instantiation except
29044           methods take pathname argument.  suggested by Evan Phoenix.
29045           [ruby-core:7618]
29047 Tue Apr  4 22:15:41 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29049         * parse.y: remove some obsolete syntax rules (unparenthesized
29050           method calls in argument list).
29052 Sat Apr  1 15:11:27 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
29054         * ext/win32ole/win32ole.c: add WIN32OLE_TYPE#inspect,
29055           WIN32OLE_VARIABLE#inspect
29057         * remove ext/win32ole/tests/testOLEVARIABLE.rb, testOLETYPE.rb
29058           testOLETYPELIB.rb.
29060         * testall.rb: ditto.
29062         * add test/win32ole
29064 Fri Mar 31 14:24:55 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29066         * enumerator.c (enumerator_with_index): removed suspicious return
29067           statement.
29069 Wed Mar 29 23:06:48 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
29071         * ext/win32ole/win32ole.c (ole_invoke): change the behavior of
29072           WIN32OLE#[], WIN32OLE#[]=. These methods invoke DISPID_VALUE.
29074         * ext/win32ole/sample/excel2.rb: ditto.
29076         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
29078 Wed Mar 29 10:11:31 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29080         * ext/nkf/nkf-utf8/nkf.c (nkf_each_char_to_hex, encode_fallback_subchar,
29081           e2w_conv): support C90 compiler.
29083 Mon Mar 27 22:45:37 2006  NARUSE, Yui  <naruse@ruby-lang.org>
29085         * ext/nkf/nkf-utf8/{nkf.c, utf8tbl.c}: imported nkf 2.0.6.
29086           * Add --ic / --oc option and mapping tables.
29087           * Add fallback option.
29088           * Add --no-best-fit-chars option.
29089           * Fix some bugs.
29091         * ext/nkf/nkf.c (nkf_split_options): added for parse option string.
29093         * ext/nkf/lib/kconv.rb (Kconv.to*): add -m0.
29094           Note that Kconv.to* still imply -X.
29096         * ext/nkf/test.rb: Removed.  Obsolete by test/nkf.
29098         * ext/.document: enabled documents in nkf and kconv
29100         * ext/nkf/nkf.c, ext/nkf/lib/kconv.rb: Add rdoc.
29102 Mon Mar 27 03:17:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29104         * eval.c (rb_call0): insecure calling should be checked for non
29105           NODE_SCOPE method invocations too.
29107         * eval.c (rb_alias): should preserve the current safe level as
29108           well as method definition.
29110 Sun Mar 26 22:02:51 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
29112         * re.c: refactoring for options.
29114         * parse.y: ditto.
29116 Fri Mar 24 21:11:02 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
29118         * re.c (match_aref): RDoc description updated.
29120         * string.c (rb_str_sub): ditto.
29122         * string.c (rb_str_gsub): ditto.
29124 Fri Mar 24 17:20:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29126         * process.c (rb_f_sleep): remove RDoc description about SIGALRM
29127           which is not valid on the current implementation. [ruby-dev:28464]
29129 Thu Mar 23 21:40:47 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
29131         * re.c (rb_reg_regsub): prohibit \1, \2 ...\9 in replaced string
29132           for named regex pattern.
29134 Thu Mar 23 21:06:23 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
29136         * oniguruma.h: Version 4.0.2
29138         * regparse.c: ditto.
29140         * regcomp.c ditto.
29142         * regerror.c: ditto.
29144 Thu Mar 23 10:47:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29146         * eval.c (method_missing): should support argument splat in
29147           super.  a bug in combination of super, splat and
29148           method_missing.  [ruby-talk:185438]
29150 Thu Mar 23 00:01:32 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
29152         * re.c (rb_reg_regsub): add back reference by name \k<name> in
29153           replace string.
29155         * re.h: add regexp argument to rb_reg_regsub().
29157         * string.c (rb_str_sub_bang): ditto.
29159         * string.c (str_gsub): ditto.
29161 Tue Mar 21 22:14:01 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
29163         * re.c (match_alloc): initialize member regexp.
29165         * re.c (match_aref): add String and Symbol argument. [ruby-dev:28448]
29167         * re.h: add member regexp to RMatch.
29169         * gc.c (gc_mark_children): add gc_mark() to regexp member.
29171 Mon Mar 20 12:05:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29173         * configure.in: Solaris SunPro compiler -rapth patch from
29174           <kuwa at labs.fujitsu.com>.  [ruby-dev:28443]
29176 Mon Mar 20 11:12:38 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29178         * ext/win32ole/win32ole.c (folevariant_value): could not compile
29179           with C90 compiler.
29181 Mon Mar 20 09:40:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29183         * configure.in: remove enable_rpath=no for Solaris.
29184           [ruby-dev:28440]
29186 Sun Mar 19 09:46:30 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
29188         * ext/win32ole/win32ole.c (ole_val2olevariantdata): change behavior
29189           of converting  OLE Variant object with VT_ARRAY|VT_UI1 and Ruby
29190           String object.
29192         * ext/win32ole/win32ole.c (folevariant_value): ditto.
29194         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
29196 Wed Mar 15 16:51:11 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29198         * lib/mkmf.rb (create_makefile): support libraries without *.so.
29200 Wed Mar 15 16:39:29 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29202         * ext/openssl/ossl_ssl.c, ext/openssl/ossl_nsspki.c: should use
29203           "rb_str_new(0, 0)" to make empty string.
29205 Sun Mar 12 17:02:10 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
29207         * ext/win32ole/win32ole.c(ole_val2olevariantdata): support VT_ARRAY in
29208           WIN32OLE_VARIANT.new().
29210         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
29212         * ext/win32ole/tests/testOLEPARAM.rb: test method name should not be
29213           duplicated.
29215 Sat Mar 11 14:24:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29217         * ruby.1: a clarification patch from David Lutterkort
29218           <dlutter at redhat.com>.  [ruby-core:7508]
29220 Sun Mar  5 18:40:58 2006  Minero Aoki  <aamine@loveruby.net>
29222         * lib/fileutils.rb: do not repeat command options.
29224 Sun Mar  5 18:35:03 2006  Minero Aoki  <aamine@loveruby.net>
29226         * lib/net/http.rb (send_request_with_body): #content_type never
29227           return false, use #main_type instead. [ruby-core:07476]
29229 Sat Mar  4 15:26:40 2006  Tanaka Akira  <akr@m17n.org>
29231         * gc.c (id2ref): fix symbol test.
29233 Sat Mar  4 01:08:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29235         * lib/rdoc/ri/ri_paths.rb (RI::Paths): adding paths from rubygems
29236           directories.  a patch from Eric Hodel <drbrain at segment7.net>.
29237           [ruby-core:07423]
29239 Fri Mar  3 17:59:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29241         * eval.c (rb_clear_cache_by_class): clearing wrong cache.
29243 Fri Mar  3 21:22:42 2006  Tanaka Akira  <akr@m17n.org>
29245         * lib/fileutils.rb (FileUtils.cp_r): implement :remove_destination
29246           option.
29248         * ext/extmk.rb: use :remove_destination to install extension libraries
29249           to avoid SEGV.  [ruby-dev:28417]
29251 Fri Mar  3 14:41:04 2006  Minero Aoki  <aamine@loveruby.net>
29253         * ext/dl/.cvsignore: ignore callback.h.
29255         * ext/ripper/.cvsignore: ignore eventids2table.c.
29257         * ext/socket/.cvsignore: ignore constants.h.
29259 Thu Mar  2 18:58:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29261         * eval.c (rb_thread_fd_writable): should not re-schedule output
29262           from KILLED thread (must be error printing).
29264 Thu Mar  2 09:12:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29266         * array.c (rb_ary_flatten_bang): allow specifying recursion
29267           level.  [ruby-talk:182170]
29269         * array.c (rb_ary_flatten): ditto.
29271 Thu Mar  2 08:02:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29273         * gc.c (add_heap): a heap_slots may overflow.  a patch from Stefan
29274           Weil <weil at mail.berlios.de>.
29276 Wed Mar  1 17:13:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29278         * eval.c (rb_call): use separate cache for fcall/vcall
29279           invocation.
29281         * eval.c (rb_eval): NODE_FCALL, NODE_VCALL can call local
29282           functions.
29284         * eval.c (rb_mod_local): a new method to specify newly added
29285           visibility "local".
29287         * eval.c (search_method): search for local methods which are
29288           visible only from the current class.
29290         * class.c (rb_class_local_methods): a method to list local methods.
29292 Thu Mar  2 17:54:45 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29294         * gc.c: commited magic for reducing RVALUE size on windows. (24->20byte)
29295           [ruby-core:7474]
29297 Thu Mar  2 14:12:26 2006  Tanaka Akira  <akr@m17n.org>
29299         * gc.c: align VALUE with sizeof(RVALUE) globally.
29300           (is_pointer_to_heap): check alignment out of loop.
29301           (id2ref): avoid collision between symbols and objects.
29302           (rb_obj_id): ditto.  moved from object.c.
29303           [ruby-talk:178364] [ruby-core:7305]
29305 Thu Mar  2 12:55:16 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29307         * win32/win32.c (filetime_to_unixtime): should set tm_isdst to -1.
29308           stat() didn't treat daylight saving time property on WinNT.
29309           [ruby-talk:182100]
29311 Wed Mar  1 00:15:51 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29313         * lib/rdoc/parsers/parse_rb.rb (read_escape): could not handle /\^/.
29314           merged Mr. Ishizuka's lib/irb/ruby-lex.rb 's patch rev 1.29.
29315           [ruby-talk:181631] [ruby-dev:28404]
29317 Tue Feb 28 19:32:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29319         * object.c (Init_Object): add BasicObject class as a top level
29320           BlankSlate class.
29322 Mon Feb 27 00:19:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29324         * ruby.h (SYM2ID): should not cast to signed long.
29325           [ruby-core:07414]
29327 Fri Feb 24 20:21:38 2006  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29329         * test/drb/drbtest.rb (add_service_command): quote pathnames in the
29330           server's command line for space contained directory names.
29331           Thanks, arton. [ruby-dev:28386]
29333 Fri Feb 24 12:10:07 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29335         * instruby.rb: install *.exe.manifest and *.dll.manifest if exist.
29336           It's for VC++8.
29338 Fri Feb 24 11:17:45 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29340         * win32/win32.c (NtInitialize): need to set a handler for VC++8.
29342 Thu Feb 23 22:39:59 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29344         * bcc32/Makefile.sub: use borlndmm.dll if possible. bcc32's RTL internal
29345           memory manager cannot handle large memory block properly.
29346           ex: 10000.times { "" << "." * 529671; GC.start } # crash
29347           [ruby-dev:28230]
29349 Thu Feb 23 13:23:03 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29351         * eval.c (SETUP_ARGS0): fixed memory corruption. [ruby-dev:28360]
29353 Wed Feb 22 21:16:55 2006  Tanaka Akira  <akr@m17n.org>
29355         * lib/pathname.rb (Pathname#each_filename): use split_names properly.
29357 Wed Feb 22 16:24:05 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29359         * test/webrick/test_cgi.rb: should support platforms which search
29360           library path from the interpreter's path.
29361           And, support test without install incidentally.
29363 Wed Feb 22 14:21:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29365         * bignum.c (bignorm): x may not be a bignum.  [ruby-dev:28367]
29367 Wed Feb 22 09:22:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29369         * eval.c (proc_alloc): add proper check for creation of a lambda
29370           without a block.
29372 Tue Feb 21 02:07:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29374         * parse.y (f_arglist): should set command_start = Qtrue for
29375           command body.  [ruby-talk:180648]
29377 Mon Feb 20 22:30:17 2006  Tanaka Akira  <akr@m17n.org>
29379         * mkconfig.rb: alias Config to RbConfig for compatibility.
29381 Mon Feb 20 18:21:41 2006  Tanaka Akira  <akr@m17n.org>
29383         * io.c (rb_io_reopen): flush before reopening a file.
29384           reported by Mathieu Bouchard.  [ruby-core:7396]
29386 Mon Feb 20 17:29:50 2006  Tanaka Akira  <akr@m17n.org>
29388         * mkconfig.rb: generate RbConfig instead of Config.
29390         * instruby.rb, rubytest.rb, runruby.rb, bcc32/Makefile.sub,
29391           ext/extmk.rb, ext/dl/extconf.rb, ext/iconv/charset_alias.rb,
29392           lib/mkmf.rb, lib/rdoc/ri/ri_paths.rb,
29393           lib/webrick/httpservlet/cgihandler.rb,
29394           test/dbm/test_dbm.rb, test/gdbm/test_gdbm.rb,
29395           test/ruby/envutil.rb, test/soap/calc/test_calc_cgi.rb,
29396           test/soap/header/test_authheader_cgi.rb, test/soap/ssl/test_ssl.rb,
29397           win32/mkexports.rb, win32/resource.rb: Use RbConfig instead of
29398           Config.
29400 Mon Feb 20 13:46:19 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29402         * lib/find.rb: should raise ENOENT if root entry does not exist,
29403           without opening it. [ruby-dev:28345]
29405 Mon Feb 20 12:27:53 2006  Kent Sibilev  <ksruby@gmail.com>
29407         * lib/rational.rb (Integer::gcd): small typo fix.
29408           [ruby-core:07395]
29410 Mon Feb 20 10:03:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29412         * variable.c (rb_const_get_0): Object should have been the lowest
29413           in const lookup precedence.  [ruby-dev:28343]
29415 Mon Feb 20 09:17:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29417         * lib/delegate.rb (Delegator): should not delegate "funcall".
29419 Mon Feb 20 09:13:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29421         * lib/webrick/httpservlet/cgihandler.rb (WEBrick::HTTPServlet::CGIHandler):
29422           qualify the access for Config constant.  [ruby-dev:28338]
29424         * lib/resolv.rb (Resolv::DNS::Resource::IN::A): qualify
29425           ClassValue.  [ruby-dev:28338]
29427 Mon Feb 20 01:05:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29429         * lib/rational.rb (Integer::gcd): replaced by gcd4 in
29430           [ruby-core:07390].  [ruby-core:07377]
29432 Mon Feb 20 00:57:02 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29434         * ext/openssl/ossl.h (OSSL_Debug): should not use __func__.
29435           [ruby-dev:28339]
29437 Mon Feb 20 00:13:49 2006  Tanaka Akira  <akr@m17n.org>
29439         * lib/open-uri.rb: add :ssl_verify_mode option.
29440           suggested by Will Glynn.
29442         * lib/open-uri.rb: add :ssl_ca_cert option.
29444 Sun Feb 19 04:46:29 2006  Guy Decoux  <ts@moulon.inra.fr>
29446         * eval.c: initial value for block_unique must be 1.
29447           [ruby-talk:180420]
29449 Sat Feb 18 23:58:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29451         * lib/tracer.rb (Tracer::Tracer.add_filter): turn on tracer mode
29452           only when caller() level size is one.  [ruby-core:07389]
29454         * lib/rdoc/parsers/parse_rb.rb: need not to require "tracer".
29455           [ruby-core:07389]
29457         * sample/rtags.rb: ditto.
29459 Sat Feb 18 21:16:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29461         * eval.c (rb_obj_instance_eval): RDoc description updated.  a
29462           patch from Ozgur Murat Homurlu <ozgurmurath at gmail.com>.
29463           [ruby-core:07381]
29465 Sat Feb 18 01:01:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29467         * variable.c (rb_const_get_0): skip ruby_wrapper in const search
29468           to give it lower priority (just above Object).  need not to
29469           change rb_const_defined_0() since it's only a precedence matter;
29470           they are defined anyway.
29472 Sat Feb 18 00:22:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29474         * lib/tracer.rb: merged a minor clarification patch from Daniel
29475           Berger <Daniel.Berger at qwest.com>.  [ruby-core:07376]
29477 Fri Feb 17 17:30:20 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29479         * eval.c (ev_const_get): simplified using rb_const_get_fallback().
29481         * eval.c (ev_const_defined): adopt to ev_const_get() using
29482           rb_const_defined_fallback().
29484         * variable.c (rb_const_get_fallback): new function to implement
29485           constant search.
29487         * variable.c (rb_const_defined_fallback): new function to
29488           implement constant definition check.
29490         * variable.c (rb_const_get_0): adopt to new behavior.  constants
29491           are looked up in the order of: current class, super classes (but
29492           Object), lexically external classes/modules, and Object.
29494         * variable.c (rb_const_defined_0): ditto.
29496 Fri Feb 17 11:20:53 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29498         * util.c (ruby_strtod): Float("1e") should fail. [ruby-core:7330]
29500         * pack.c (EXTEND32): unpack("l") did not work where sizeof(long) != 4.
29501           [ruby-talk:180024]
29503         * pack.c (pack_unpack): fixed integer overflow on template "w".
29504           [ruby-talk:180126]
29506 Fri Feb 17 09:39:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29508         * eval.c (rb_thread_wait_for): sleep should always sleep for
29509           specified amount of time.  [ruby-talk:180067]
29511 Wed Feb 15 16:52:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29513         * eval.c (rb_eval): NODE_OP_ASGN1 should allow splat in its
29514           argument list.  [ruby-core:07366]
29516         * parse.y (arg): avoid unnecessary extra argument.
29517           [ruby-core:07366]
29519         * eval.c (rb_eval): honor visibility on OP_ASGN1 and
29520           OP_ASGN2. [ruby-core:07366]
29522 Wed Feb 15 15:20:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29524         * eval.c (error_line): remove void control path.  [ruby-dev:28335]
29526 Wed Feb 15 10:09:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29528         * eval.c (yield_under_i): should not pass self as an argument to
29529           the block for instance_eval.  [ruby-core:07364]
29531 Wed Feb 15 09:20:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29533         * eval.c (rb_obj_instance_eval): should be no singleton classes for
29534           true, false, and nil.  [ruby-dev:28186]
29536 Tue Feb 14 20:26:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29538         * enumerator.c (enumerator_each): return self if no block is
29539           given.  [yarv-dev:882]
29541 Tue Feb 14 18:48:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29543         * eval.c (DMETHOD_P): accessing wrong frame.  [ruby-dev:28181]
29545         * eval.c (proc_invoke): preserve FRAME_DMETH flag.
29547 Tue Feb 14 15:15:22 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29549         * ext/zlib/zlib.c: suppress warning on test/zlib. [ruby-dev:28323]
29551 Tue Feb 14 13:47:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29553         * win32/win32.c (rb_w32_utime): drop read-only attribute before
29554           changing file time.
29556 Tue Feb 14 13:38:01 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29558         * win32/Makefile.sub (config.h): should define HAVE_LONG_LONG with
29559           VC++8.
29561 Tue Feb 14 11:42:38 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29563         * time.c (search_time_t): support non 32bit time_t environments.
29565         * win32/Makefile.sub (config.h): VC++8 has ``long long'' type.
29567         * win32/Makefile.sub (config.h): VC++8's time_t is 64bit value.
29569 Mon Feb 13 18:01:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29571         * eval.c (copy_node_scope): remove duplicated semicolons at end.
29572           a patch from KIMURA Koichi <kimura.koichi at canon.co.jp>.
29573           [ruby-dev:28332]
29575         * eval.c (VIS_MODE): remove unnecessary argument.
29576           [ruby-dev:28332]
29578 Mon Feb 13 13:49:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29580         * parse.y (parser_parse_string): mention "regexp" in a error
29581           message.  a patch from Mauricio Fernandez <mfp at acm.org>
29582           [ruby-core:07340]
29584 Mon Feb 13 00:01:32 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
29586         * oniguruma.h: Version 4.0.1
29588         * regparse.c (onig_free_shared_cclass_table): fix memory leaks.
29590         * regcomp.c (optimize_node_left): change from IS_POSIXLINE() to IS_MULTILINE().
29592         * regint.h: rename ANCHOR_ANYCHAR_STAR_PL to ANCHOR_ANYCHAR_STAR_ML.
29594         * regparse.h: ditto.
29596         * regexec.c: ditto.
29598 Sat Feb 11 21:57:29 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
29600         * ext/win32ole/win32ole.c: add WIN32OLE.create_guid.
29602         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
29604 Sat Feb 11 01:57:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29606         * eval.c (rb_f_autoload): check if ruby_cbase is nil (during
29607           instance_eval for objects cannot have singleton classes,
29608           e.g. fixnums and symbols).  [ruby-dev:28178]
29610 Fri Feb 10 12:31:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29612         * eval.c (rb_eval): should support NODE_ZSUPER in NODE_ITER.
29613           [ruby-dev:28326]
29615         * eval.c (ZSUPER_ARGS): support macro.
29617 Wed Feb  8 10:26:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29619         * gc.c (rb_gc_call_finalizer_at_exit): turn on during_gc while
29620           invoking finalizers.
29622         * gc.c (rb_gc_finalize_deferred): ditto.
29624 Tue Feb  7 23:03:13 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29626         * ext/zlib/zlib.c: should not access ruby objects in finalizer.
29627           [ruby-dev:28286]
29629 Tue Feb  7 18:42:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29631         * io.c (rb_write_error2): use fwrite(3) if rb_stderr is not
29632           updated or is already freed.  [ruby-dev:28313]
29634 Mon Feb  6 16:02:51 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
29636         * file.c (rb_thread_flock): ERROR_NOT_LOCKED is not an error on Cygwin.
29637           In such situation, flock() should return 0.
29639 Mon Feb  6 14:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29641         * eval.c (error_line): include the class name of a surrounding
29642           method in error position description.
29644 Mon Feb  6 00:14:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29646         * enum.c (enum_find_index): a new method Enumerable#find_index.
29647           [ruby-talk:178495]
29649 Sun Feb  5 23:29:31 2006  Tanaka Akira  <akr@m17n.org>
29651         * ruby.h (struct RStruct): embed 3 or less elements structs.
29652           (RSTRUCT_LEN): defined for accessing struct members.
29653           (RSTRUCT_PTR): ditto.
29655         * struct.c: use RSTRUCT_LEN and RSTRUCT_PTR.
29656           (struct_alloc): allocate small structs in embedded format.
29657           (rb_struct_init_copy): ditto.
29659         * gc.c (gc_mark_children): use RSTRUCT_LEN and RSTRUCT_PTR.
29660           (obj_free): ditto.
29662         * marshal.c (w_object): use RSTRUCT_LEN and RSTRUCT_PTR.
29664 Sun Feb  5 21:01:49 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29666         * numeric.c (fix_to_s): removed workaround for radix 2. Historically,
29667           rb_fix2str could only handle radix 8, 10, 16. (Rev1.37) But for now,
29668           it can handle radix 2..36. [ruby-Bugs#3438] [ruby-core:7300]
29670 Sun Feb  5 18:49:00 2006  Minero Aoki  <aamine@loveruby.net>
29672         * lib/net/http.rb (add_field, get_fields): keep 1.8.2
29673           compatibility.  This patch is contributed by Rob Pitt.
29675 Sun Feb  5 16:33:50 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29677         * lib/mkmf.rb (create_makefile): Kernel#sub! was removed on HEAD.
29679 Sun Feb  5 14:26:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29681         * lib/pstore.rb: should return default value if name is not found.
29682           [ruby-core:7304]
29684         * lib/pstore.rb: should raise PStore::Error if not in transaction.
29686 Sat Feb  4 22:51:43 2006  Tanaka Akira  <akr@m17n.org>
29688         * eval.c: apply the FreeBSD getcontext/setcontext workaround
29689           only before FreeBSD 7-CURRENT.
29691 Sat Feb  4 21:10:06 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29693         * win32/win32.c (LK_ERR): ERROR_NOT_LOCKED is not an error.
29694           In such situation, flock() should return 0.
29696 Sat Feb  4 15:52:56 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29698         * numeric.c (fix_to_s): (2**32).to_s(2) fails with exception where
29699           sizeof(int) == 4 < sizeof(long). [ruby-core:7300]
29701 Sat Feb  4 15:02:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29703         * oniguruma.h: merge Oniguruma 4.0.0  [ruby-dev:28290]
29705 Fri Feb  3 19:25:53 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29707         * ruby.h: fixed prototype.
29709         * ext/syck/rubyext.c: defined symbol ID as global variable as others.
29711 Fri Feb  3 17:57:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29713         * eval.c: unify ruby_class (for method definition) and ruby_cbase
29714           (for constant reference).
29716 Fri Feb  3 15:02:10 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29718         * ext/syck/syck.c (syck_move_tokens): should reset p->cursor or etc
29719           even if skip == 0. This causes buffer overrun.
29720           (ex: YAML.load('--- "..' + '\x82\xA0' * 511 + '"'))
29722 Fri Feb  3 00:01:31 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29724         * ext/syck/emitter.c (syck_emitter_write): should not set '\0' on
29725           emitter's marker. if marker points to the end of buffer, this is
29726           buffer overrun. (ex: YAML.dump("." * 12288))
29728 Thu Feb  2 17:13:01 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29730         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser#get_tk): added
29731           support of :'string' style Symbol.
29733 Thu Feb  2 16:01:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29735         * eval.c (rb_call0): use TMP_ALLOC() instead of allocating
29736           a temporary array object.
29738         * eval.c (eval): need not to protect $SAFE value.
29739           [ruby-core:07177]
29741         * error.c (Init_Exception): change NameError to direct subclass of
29742           Exception so that default rescue do not handle it silently.
29744 Thu Feb  2 14:45:53 2006  Ville Mattila  <ville.mattila@stonesoft.com>
29746         * configure.in: The isinf is not recognized by autoconf
29747           library guesser on solaris 10. [ruby-core:7138]
29749 Wed Feb  1 22:01:47 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29751         * configure.in, hash.c (ruby_setenv): use setenv(3) and unsetenv(3)
29752           where they are supported. modifying environ variable seems to
29753           segfault solaris 10. [ruby-core:7276] [ruby-dev:28270]
29755         * ruby.c (set_arg0): if use setenv(3), environ space cannot be used
29756           for altering argv[0].
29758 Tue Jan 31 14:46:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29760         * struct.c (rb_struct_select): update RDoc description.
29761           [ruby-core:7254]
29763 Tue Jan 31 11:58:51 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29765         * ext/tk/lib/multi-tk.rb: add MultiTkIp#eval and bg_eval.
29767         * ext/tk/lib/tk/namespace.rb: TkNamespace#eval was enbugged at the
29768           last commit. Now it will return a proper object.
29770 Tue Jan 31 08:07:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29772         * numeric.c (int_upto): return an enumerator if no block is
29773           attached to the method.
29775         * numeric.c (int_downto): ditto.
29777         * numeric.c (int_dotimes): ditto.
29779         * enum.c (enum_first): new method Enumerable#first to take first n
29780           elements from an enumerable.
29782         * enum.c (enum_group_by): new method Enumerable#group_by that
29783           groups enumerable values according to their block values.
29785 Tue Jan 31 00:08:22 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29787         * ext/syck/rubyext.c (syck_resolver_transfer): workaround for SEGV.
29788           ex: ruby -ryaml -e 'YAML.load("!map:B {}")' [ruby-core:7217]
29790 Sat Jan 28 07:49:30 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29792         * lib/rdoc/usage.rb: support "a:0:33" style caller[-1]. In this case
29793           file name is "a:0". I don't know this really happens though...
29794           [ruby-Bugs:3344]
29796 Thu Jan 26 15:55:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29798         * ext/socket/socket.c: turn on do_not_reverse_lookup by default.
29800 Wed Jan 25 22:29:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29802         * configure.in, dln.c, file.c, intern.h, missing.h (eaccess): use
29803           system routine if provided.  fixed: [ruby-core:07195]
29805 Sun Jan 22 23:27:13 2006  Go Noguchi  <gonoguti@yahoo.co.jp>
29807         * lib/test/unit/autorunner.rb (process_args): ignore arguments after
29808           '--' so that test scripts can handle them.  fixed: [ruby-dev:28258]
29810 Sun Jan 22 22:09:52 2006  Tanaka Akira  <akr@m17n.org>
29812         * eval.c (POST_GETCONTEXT): define separately from PRE_GETCONTEXT on
29813           IA64 to avoid reusing variable address.
29815 Sun Jan 22 20:03:35 2006  Tanaka Akira  <akr@m17n.org>
29817         * eval.c (ruby_setjmp): define PRE_GETCONTEXT and POST_GETCONTEXT
29818           instead of FUNCTION_CALL_MAY_RETURN_TWICE.
29819           define PRE_GETCONTEXT to clear carry flag for workaround of
29820           FreeBSD/i386 getcontext/setcontext bug.
29821           [ruby-dev:28263]
29823 Thu Jan 19 22:19:18 2006  Minero Aoki  <aamine@loveruby.net>
29825         * lib/fileutils.rb (mv): should remove file after copying.
29826           [ruby-dev:28223]
29828 Wed Jan 18 23:37:06 2006  Tanaka Akira  <akr@m17n.org>
29830         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): don't clobber %l7 of SPARC
29831           if enable-shared.
29832           (ruby_setjmp): call FUNCTION_CALL_MAY_RETURN_TWICE after getcontext
29833           too.
29834           reported by Pav Lucistnik and Marius Strobl.
29835           http://lists.freebsd.org/pipermail/freebsd-sparc64/2006-January/003739.html
29837 Tue Jan 17 23:59:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29839         * object.c (rb_mod_const_get, rb_mod_const_defined): added optional
29840           flag to search ancestors, which is defaulted to true.
29841           fixed: [ruby-talk:175899]
29843         * eval.c (rb_mod_method_defined): ditto.
29845 Tue Jan 17 11:31:47 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29847         * win32/setup.mak (MAKE): workaround for nmake 8.
29849 Tue Jan 17 11:06:19 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29851         * win32/Makefile.sub: invoke .bat via shell. workaround for nmake 8.
29853 Mon Jan 16 10:13:38 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29855         * ext/syck/emitter.c (syck_emit_seq, syck_emit_map, syck_emit_item):
29856           should output complex key mark even if map's key is empty seq/map.
29857           [ruby-core:7129]
29859 Sat Jan 14 03:38:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29861         * file.c (rb_file_s_chmod): avoid warning where sizeof(int) !=
29862           sizeof(void*).
29864 Fri Jan 13 19:26:15 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29866         * lib/rdoc/diagram.rb:
29867             - properly quote bare element attributes
29868             - terminates dangling elements (e.g. <img>, <br>, <link>, etc)
29869             - converts "CVS" to the more HTML-friendly acronym element
29870             - adds missing type attributes to style elements
29872           based on Paul Duncan's patch <pabs@pablotron.org> [ruby-core:7028]
29874         * lib/rdoc/generators/html_generator.rb: ditto.
29875         * lib/rdoc/generators/template/html/hefss.rb: ditto.
29876         * lib/rdoc/generators/template/html/html.rb: ditto.
29877         * lib/rdoc/generators/template/html/kilmer.rb: ditto.
29879 Thu Jan 12 11:53:08 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29881         * ext/tk/sample/tkballoonhelp.rb: [bug fix] couldn't add to a widget
29882           which is constructed with TkComposite module.
29883           [new feature] support 'command' option which is called just before
29884           popping up the balloon help.
29886 Wed Jan 11 00:12:29 2006  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29888         * lib/erb.rb (ERB::Compiler): add instance variable @insert_cmd to
29889           change <%='s behavior.
29891 Tue Jan 10 19:42:33 2006  Tanaka Akira  <akr@m17n.org>
29893         * gc.c (garbage_collect): mark ruby_current_node.
29894           if an exception is raised in a finalizer written in C called by
29895           rb_gc_call_finalizer_at_exit, ruby_set_current_source may use
29896           collected ruby_current_node and mark_source_filename may corrupt
29897           memory.
29899 Tue Jan 10 13:30:34 2006  akira yamada  <akira@ruby-lang.org>
29901         * ext/syck/rubyext.c (syck_resolver_transfer): should be able to load
29902           !ruby/object:Bignum syntax 1.8.3 dumped. [ruby-core:6159]
29904 Tue Jan 10 12:47:41 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29906         * lib/yaml/rubytypes.rb (Fixnum): Bignum could not be loaded in
29907           ruby 1.8.3/1.8.4. [ruby-core:6115]
29909         * lib/yaml/rubytypes.rb (Numeric): Subclass of Numeric could not
29910           be dumped properly. [ruby-core:7047]
29912 Tue Jan 10 12:00:48 2006  Aaron Schrab  <aaron @nospam@ schrab.com>
29914         * lib/yaml/rubytypes.rb (Symbol#yaml_new): YAML loading of quoted
29915           Symbols broken. [ruby-Bugs:2535]
29917 Tue Jan 10 07:26:52 2006  Tanaka Akira  <akr@m17n.org>
29919         * gc.c (gc_stress): renamed from always_gc and enabled by default.
29920           (gc_stress_get): new function for GC.stress.
29921           (gc_stress_set): new function for GC.stress=.
29923 Mon Jan  9 19:58:56 2006  arton  <artonx@yahoo.co.jp>
29925         * ext/zlib/extconf.rb: zlib compiled DLL version 1.2.3 distributed by
29926           http://www.zlib.net/ has zdll.lib. [ruby-dev:28209]
29928 Mon Jan  9 14:25:00 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29930         * win32/Makefile.sub (OPTFLAGS): I have experienced trouble on y- flag,
29931           (VisualC++6) so use -O2b2xg- if  $(MSC_VER) < 1400. [ruby-core:7040]
29933 Mon Jan  9 14:25:00 2006  Kero van Gelder  <rubyforge @nospam@ kero.tmfweb.nl>
29935         * lib/webrick/httpservlet/filehandler.rb: fixed typo. [ruby-core:7075]
29937 Sun Jan  8 14:15:27 2006  Tanaka Akira  <akr@m17n.org>
29939         * eval.c (GCC_VERSION_BEFORE): check __INTEL_COMPILER.
29940           Intel C++ Compiler defines __GNUC__.
29941           http://www.intel.com/software/products/compilers/clin/docs/ug_cpp/lin1077.htm
29943 Sat Jan  7 15:40:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29945         * parse.y (singleton): get rid of segfault on syntax error.
29946           fixed: [ruby-core:07070]
29948 Sat Jan  7 06:24:18 2006  Tanaka Akira  <akr@m17n.org>
29950         * eval.c (rb_fd_isset): compare the result of FD_ISSET with 0 to
29951           avoid FreeBSD bug.  FreeBSD defines FD_ISSET as just a bitmap of
29952           unsigned long.  So returning the value from rb_fd_isset discards
29953           upper 32bits on LP64 environment.
29954           http://www.freebsd.org/cgi/query-pr.cgi?pr=ia64/91421
29956 Fri Jan  6 02:20:18 2006  Tanaka Akira  <akr@m17n.org>
29958         * configure.in: don't force getcontext on IA64.
29960         * eval.c (ruby_setjmp): add an argument for just before getcontext.
29961           (THREAD_SAVE_CONTEXT): call rb_thread_save_context just
29962           before getcontext.
29963           [ruby-dev:28205]
29965 Sun Jan  1 15:28:46 2006  Tanaka Akira  <akr@m17n.org>
29967         * missing.h (isinf): avoid macro expansion
29968           "extern int isinf(double);" to
29969           "extern int ((sizeof(double)==sizeof(float))?_Isinff(double):_Isinf(double));" on
29970           HP-UX.
29972 Sun Jan  1 14:42:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29974         * win32/win32.c (rb_w32_seekdir): should not segfault even if passed
29975           the location which rb_w32_telldir didn't return. (and should change
29976           `bits' position) [ruby-core:7035]
29978         * win32/dir.h: ditto. (stores `loc' instead of `bitpos')
29980         * test/ruby/test_dir.rb: added.
29982 Sat Dec 31 22:57:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29984         * eval.c (rb_thread_save_context): should not recycle scope object used
29985           in a thread.  fixed: [ruby-dev:28177]
29987 Sat Dec 31 19:50:38 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29989         * ext/syck/rubyext.c: attribute name was truncated with Rev1.64.
29991 Sat Dec 31 11:53:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29993         * lib/generator.rb: (Generator#initialize): should kill @loop_thread
29994           before starting new thread. (occurs when called via Generator#rewind)
29995           [ruby-dev:28184]
29997 Fri Dec 30 18:22:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29999         * gc.c (garbage_collect): mark objects referred from aborting threads.
30000           [ruby-dev:28190]
30002         * win32/Makefile.sub: VC++8 support.
30004 Fri Dec 30 15:17:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30006         * lib/generator.rb (Generator#initialize): ensured to stop @loop_thread.
30007           Mr. Tanaka pointed out one Thread.pass is not enough. [ruby-dev:28185]
30009 Fri Dec 30 12:20:57 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30011         * lib/generator.rb (Generator#initialize): fixed dead lock. this occurred
30012           when end? was called before @loop_thread was stopped. [ruby-core:7029]
30014 Fri Dec 30 01:04:52 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30016         * lib/generator.rb: should work with another thread. (more robust code)
30017           [ruby-dev:28177]
30019 Thu Dec 29 23:59:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30021         * eval.c (rb_gc_mark_threads): keep unmarked threads which won't wake
30022           up alone, and mark threads in the loading table.  [ruby-dev:28154]
30024         * eval.c (rb_gc_abort_threads), gc.c (gc_sweep): kill unmarked
30025           threads.  [ruby-dev:28172]
30027 Thu Dec 29 17:02:07 2005  Tanaka Akira  <akr@m17n.org>
30029         * test/ruby/envutil.rb (EnvUtil.rubybin): search "ruby" instead of
30030           "miniruby".  [ruby-dev:28140]
30032 Thu Dec 29 14:35:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30034         * eval.c (rb_mod_define_method): should save safe_level in the
30035           proc object.  [ruby-dev:28146]
30037 Thu Dec 29 11:22:34 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30039         * lib/generator.rb: reimplemented Generator class with Thread instead of
30040           callcc, in order to fix memory leak. [ruby-dev:28142]
30042 Wed Dec 28 14:10:05 2005  Tanaka Akira  <akr@m17n.org>
30044         * ia64.s: remove .pred.safe_across_calls directive.
30045           reported by WATANABE Tetsuya.  [ruby-dev:28141]
30047 Wed Dec 28 01:32:39 2005  Tanaka Akira  <akr@m17n.org>
30049         * eval.c (struct thread): add bstr_max.
30050           (rb_thread_save_context): use realloc instead of REALLOC_N
30051           to avoid GC.
30053 Tue Dec 27 23:59:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30055         * lib/optparse.rb (CompletingHash#match): fix for 1.9.
30057 Tue Dec 27 16:59:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30059         * test/drb/drbtest.rb (DRbService::self.ext_service): increase
30060           timeout limit.  a patch from Kazuhiro NISHIYAMA
30061           <zn at mbf.nifty.com>. [ruby-dev:28132]
30063 Tue Dec 27 14:17:55 2005  Tanaka Akira  <akr@m17n.org>
30065         * configure.in: define IA64 for portability.  (HP aC++/ANSI C doesn't
30066           define __ia64__.)
30067           don't check libunwind stuff.
30068           check __libc_ia64_register_backing_store_base.
30070         * defines.h: declare rb_ia64_bsp and rb_ia64_flushrs.
30071           (flush_register_windows): call rb_ia64_flushrs on IA64.
30073         * ia64.s: new file for IA64.
30074           it is separated from C program files because
30075           Intel C++ Compiler for IA64 doesn't support inline assembly.
30077         * common.mk (ia64.$(OBJEXT)): new target.
30079         * ruby.h (RUBY_INIT_STACK): defined.
30080           (ruby_init_stack): declared for RUBY_INIT_STACK.
30082         * main.c (main): precedes RUBY_INIT_STACK before ruby_init.
30084         * gc.c (rb_gc_register_stack_start): new global variable on IA64.
30085           (garbage_collect): simplify register stack marking code.
30086           don't use libunwind.
30087           (Init_stack): initialize rb_gc_register_stack_start.
30088           (ruby_init_stack): new function for RUBY_INIT_STACK.
30090         * eval.c (struct thread): add bstr_pos member for original position of
30091           register stack.
30092           (rb_thread_save_context): simplify register stack saving code.
30093           don't use libunwind.
30094           (rb_thread_restore_context_0): new function.  moved from
30095           rb_thread_restore_context except the stack position checking code.
30096           don't use libunwind for IA64 register stack.
30097           (register_stack_extend): new function.
30098           (stack_extend): make it self-recursive with
30099           the stack position checking code in old rb_thread_restore_context.
30100           (rb_thread_restore_context): just call stack_extend.
30101           (flush_register_windows): removed.
30103           [ruby-dev:28127]
30105 Tue Dec 27 14:09:39 2005  Minero Aoki  <aamine@loveruby.net>
30107         * process.c: new method Process.exec. [ruby-dev:28107]
30109 Tue Dec 27 08:22:15 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30111         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLSocket#post_connection_check):
30112           treat wildcard character in commonName. [ruby-dev:28121]
30114 Mon Dec 26 08:50:36 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30116         * eval.c (ev_const_get): fixed a bug in constant reference during
30117           instance_eval.  [yarv-dev:707]
30119         * eval.c (ev_const_defined): ditto.
30121         * lib/yaml.rb (YAML::add_domain_type): typo fixed.  a patch from
30122           Joel VanderWerf <vjoel at path.berkeley.edu>.
30123           [ruby-talk:165285] [ruby-core:6995]
30125 Fri Dec 23 10:30:23 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30127         * ext/digest/sha2/sha2.c (ULL): support AIX C.  a patch from
30128           Kailden <kailden at gmail.com>.  [ruby-core:06984]
30130 Wed Dec 21 16:47:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30132         * file.c (w32_io_info): should return handle because FileIndex is
30133           valid only while file is open. [ruby-dev:28088]
30135 Wed Dec 21 12:12:21 2005  Tanaka Akira  <akr@m17n.org>
30137         * test/pathname/test_pathname.rb (test_kernel_open): use
30138           File.identical?.
30139           [ruby-talk:171804]
30141 Tue Dec 20 22:41:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30143         * eval.c (eval_under_i): evaluate source in caller's frame.
30144           [ruby-dev:28076]
30146 Tue Dec 20 12:53:23 2005  why the lucky stiff  <why@ruby-lang.org>
30148         * ext/syck/rubyext.c (syck_emitter_reset): to ensure compatibility
30149           with previous Ruby versions, documents are no longer headless.
30151 Tue Dec 20 12:33:01 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30153         * ext/syck/rubyext.c (syck_node_transform): ruby object holding
30154           explicitly freed SyckNode caused SEGV. [ruby-dev:28067]
30156         ... I think syck GC problem was solved now!
30158 Tue Dec 20 01:46:48 2005  Tanaka Akira  <akr@m17n.org>
30160         * io.c (rb_f_backquote): fix a GC problem on
30161           IA64 with gcc 4.0.3 20051216 (prerelease) -O3.
30163 Mon Dec 19 23:32:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30165         * Makefile.in (XCFLAGS): separated as well as win32/Makefile.sub.
30167         * main.c (always_gc): dllimport is required for VC to import a DLL
30168           symbol.  fixed: [ruby-dev:28051]
30170         * parse.y (rb_symname_p): fixed wrong validation.  [ruby-dev:28047]
30172 Mon Dec 19 23:09:24 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30174         * st.c: uses malloc instead of xmalloc to avoid GC. syck uses st_insert
30175           in gram.c to insert node from rb_syck_bad_anchor_handler into
30176           SyckParser's hash table. if GC occurs in st_insert, it's not under
30177           SyckParser's mark system yet. so RString can be released wrongly.
30179         * ext/syck/syck.h (S_FREE): small hack. no need to check if pointer is
30180           NULL or not before S_FREE.
30182         * ext/syck/rubyext.c (syck_parser_assign_io): rb_check_string_type can
30183           return new RString. if so, it becomes unreachable from GC after
30184           returns syck_parser_assign_io, and can be freed by GC. (dangling
30185           in syck io system) so extends its life time till syck_parse is called.
30187         * ext/syck/rubyext.c (syck_parser_s_alloc): always allocates bonus,
30188           so no need to check if NULL, and "volatile VALUE hash"
30189           is not needed. (bonus->port was not protected in syck_emitter_reset)
30191         * ext/syck/rubyext.c (syck_mark_parser): ditto.
30193         * ext/syck/rubyext.c (syck_parser_load): ditto.
30195         * ext/syck/rubyext.c (syck_parser_load_documents): ditto.
30197         * ext/syck/rubyext.c (syck_emitter_s_alloc): ditto.
30199         * ext/syck/rubyext.c (syck_mark_emitter): ditto.
30201         * ext/syck/rubyext.c (syck_emitter_reset): ditto.
30203         * ext/syck/rubyext.c (syck_scalar_value_set): "should set newly
30204           allocated memory instead of RString's internal storage" stuff again.
30205           by this, should call syck_free_node instead of rb_syck_free_node.
30207         * ext/syck/rubyext.c (syck_node_type_id_set): ditto.
30209         ... I believe syck GC problem was solved by this.
30211 Mon Dec 19 12:20:59 2005  Tanaka Akira  <akr@m17n.org>
30213         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): activate only
30214           before gcc 4.0.3 on SPARC and IA64.
30216 Mon Dec 19 11:37:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30218         * ext/syck/rubyext.c: sorry, I reverted my "should set newly
30219           allocated memory instead of RString's internal storage" stuff.
30220           node allocated in rubyext.c seems to be freed by rb_syck_free_node
30221           not syck_free_node, and it won't free data.str->ptr and type_id.
30223          (I still think this is unsafe because RString(foo)->ptr becomes
30224           dangling pointer when RString is modified or freed, but anyway
30225           I misunderstood, so go back to original code for now)
30227 Sat Dec 17 21:50:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30229         * ext/syck/rubyext.c (syck_emitter_reset): should initialize
30230           emitter->bonus->oid. otherwise rb_gc_mark crashes.
30232         * ext/syck/rubyext.c (syck_mark_parser): should mark anchor nodes
30233           because they hold ruby objects. (ie: rb_syck_bad_anchor_handler)
30235 Sat Dec 17 11:00:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30237         * ext/syck/rubyext.c (rb_syck_compile): avoid potential memory
30238           leak.
30240         * ext/syck/rubyext.c (syck_set_ivars): avoid potential memory
30241           leak by explicit symbol allocation.
30243 Sat Dec 17 03:57:01 2005  Tanaka Akira  <akr@m17n.org>
30245         * bignum.c (rb_big_rshift): fix a GC problem on
30246           IA64 with gcc 4.0.3 20051216 (prerelease).
30248 Sat Dec 17 03:30:23 2005  Tanaka Akira  <akr@m17n.org>
30250         * eval.c (bmcall): fix a GC problem by tail call on
30251           IA64 with gcc 4.0.3 20051216 (prerelease).
30253 Fri Dec 16 17:53:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30255         * ext/syck/rubyext.c (rb_syck_compile): fixed memory leak.
30257         * ext/syck/rubyext.c: should protect global variable from GC.
30259 Fri Dec 16 11:44:43 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30261         * ext/syck/rubyext.c (syck_resolver_tagurize): fixed memory leak.
30263         * ext/syck/rubyext.c (syck_node_type_id_set): should set newly
30264           allocated memory instead of RString's internal storage.
30266         * ext/syck/rubyext.c (syck_scalar_value_set): ditto.
30268         ... these fixes won't fix [ruby-dev:27839]. more work is needed.
30270 Fri Dec 16 04:38:55 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30272         * lib/delegate.rb (Delegator::method_missing): should delegate
30273           block as well.
30275 Thu Dec 15 19:57:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30277         * lib/cgi.rb (CGI::QueryExtension::MorphingBody): fix criteria to
30278           use Tempfile.  A fix from Zev Blut <rubyzbibd at ubit.com>.
30279           [ruby-core:06076]
30281         * string.c: remove global functions work on $_.
30283 Thu Dec 15 12:35:14 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30285         * lib/tmpdir.rb: merged RDoc patch from Eric Hodel <drbrain at
30286           segment7.net>.  [ruby-core:06894]
30288 Thu Dec 15 01:33:31 2005  Tanaka Akira  <akr@m17n.org>
30290         * ext/zlib/zlib.c (zstream_run): fix a GC problem by tail call on
30291           x86_64 with gcc 4.0.3 20051111 (prerelease) (Debian 4.0.2-4)
30293 Wed Dec 14 23:50:20 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30295         * lib/rdoc/parsers/parse_c.rb (find_class_comment): fix for class
30296           document with prototypes.  [ruby-core:06863]
30298 Wed Dec 14 23:39:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30300         * dir.c (has_magic): glob names contain alphabets to enable case fold
30301           search.  [ruby-dev:27735]
30303         * dir.c (Init_Dir): FNM_SYSCASE which is default case fold flag.
30304           [ruby-dev:23296]
30306 Wed Dec 14 12:01:26 2005  Tanaka Akira  <akr@m17n.org>
30308         * marshal.c (r_object0): fix a GC problem for reading a bignum on
30309           IA64 with gcc 3.3.5 (Debian 1:3.3.5-13).
30311 Tue Dec 13 12:23:47 2005  Tanaka Akira  <akr@m17n.org>
30313         * re.c (rb_reg_regcomp): fix a GC problem on x86_64 with
30314           gcc 3.3.5 (Debian 1:3.3.5-13).
30316 Tue Dec 13 01:44:16 2005  Tanaka Akira  <akr@m17n.org>
30318         * array.c (rb_ary_diff): fix a GC problem on IA64 with
30319           gcc 3.3.5 (Debian 1:3.3.5-13).
30320           When rb_ary_push is called, there was no register which contains
30321           `hash' but `&RHASH(hash)->tbl' instead.
30323 Tue Dec 13 00:08:09 2005  Tanaka Akira  <akr@m17n.org>
30325         * sprintf.c (rb_str_format): fix a GC problem.
30326           [ruby-dev:28001]
30328 Mon Dec 12 15:51:22 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30330         * test/openssl/test_ssl.rb (test_parallel): call GC.start to close
30331           unused files. [ruby-dev:27981]
30333 Mon Dec 12 09:58:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30335         * range.c (range_cover): new method Range#cover? added.  the
30336           method name might be changed.  thanks to takano32 at
30337           http://www.rubyist.net/~matz/20051210.html#c08 for name
30338           suggestion.  [ruby-talk:167182]
30340 Mon Dec 12 00:33:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30342         * ext/digest/digest.c (rb_digest_base_s_digest): add volatile to
30343           protect temporary context object.  [ruby-dev:27979]
30345         * ext/iconv/iconv.c (Init_iconv): rb_gc_register_address() should
30346           be called before actual variable initialization.
30347           [ruby-dev:27986]
30349 Sun Dec 11 23:54:07 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30351         * ext/tk/*: update to support libraries in ActiveTcl8.4.12.0
30352           (see ext/tk/ChangeLog.tkextlib).
30354         * ext/tk/sample/scrollframe.rb: add a new sample.
30356 Sun Dec 11 22:07:58 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30358         * test/rinda/test_rinda.rb (test_remote_array_and_hash): pseudo remote
30359           objects are protected against GC. [ruby-dev:27911]
30361 Sat Dec 10 01:06:06 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
30363         * lib/matrix.rb: add Matrix#determinant_e, Matrix#rank_e.
30364           [ruby-dev:27820] and related thread.
30366 Sat Dec 10 00:31:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30368         * eval.c (calling_scope_t): gave names to magic numbers for rb_call().
30369           [ruby-dev:27978]
30371 Fri Dec  9 23:31:02 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30373         * lib/rexml/encoding.rb (encoding=): give priority to particular
30374           conversion to iconv.  [ruby-core:06520]
30376 Fri Dec  9 23:16:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30378         * range.c (range_include): return false unless included in numeric
30379           range.  fixed: [ruby-dev:27975]
30381 Thu Dec  8 02:07:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30383         * eval.c (umethod_bind): adjust invoking class for module method.
30384           [ruby-dev:27964]
30386 Thu Dec  8 00:40:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30388         * eval.c (call_trace_func): klass parameter should be a
30389           class/module that defines calling method.  [ruby-talk:169307]
30391 Wed Dec  7 17:10:27 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
30393         * sprintf.c (rb_f_sprintf): [ruby-dev:27967]
30395 Wed Dec  7 16:39:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30397         * range.c (range_include): use discrete membership for non Numeric
30398           values, for example, String.
30400         * numeric.c (num_scalar_p): new method. [ruby-dev:27936]
30402         * lib/complex.rb (Complex#scalar?): ditto.
30404 Wed Dec  7 15:31:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30406         * sprintf.c (rb_str_format): integer overflow check added.
30408         * sprintf.c (GETASTER): ditto.
30410 Wed Dec  7 01:02:04 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30412         * ext/tk/README.macosx-aqua: [new document] tips to avoid the known
30413           bug on platform specific dialogs of Tcl/Tk Aqua on MacOS X.
30415         * ext/tk/tcltklib.c: fix bug on switching threads and waiting on the
30416           deleted interpreter on vwait and tkwait command.
30418         * ext/tk/lib/multi-tk.rb: kill the meaningless loop for the deleted Tk
30419           interpreter.
30421         * ext/tk/sample/demos-jp/image3.rb: [bug fix] wrong argument.
30423         * ext/tk/sample/demos-en/image3.rb: ditto.
30425         * ext/tk/sample/demos-jp/menu.rb: fix message for MacOS X.
30427         * ext/tk/sample/demos-jp/menu8x.rb: ditto.
30429         * ext/tk/sample/demos-en/menu.rb: ditto.
30431 Tue Dec  6 16:48:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30433         * gc.c (ruby_xmalloc2): change check condition for integer
30434           overflow.  [ruby-dev:27399]
30436         * gc.c (ruby_xrealloc2): ditto.
30438 Tue Dec  6 16:37:57 2005  Yuya Nishida  <yuya@j96.org>
30440         * eval.c (exec_under): avoid accessing ruby_frame->prev.
30441           [ruby-dev:27948]
30443 Fri Dec  2 19:06:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30445         * dir.c (Compare): should not fold double byte alphabet on win9x.
30447 Thu Dec  1 00:50:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30449         * eval.c (rb_funcall2): allow to call protected methods.
30450           fixed: [ruby-dev:27890]
30452 Wed Nov 30 23:52:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30454         * parse.y (struct parser_params): fields common to ripper must be
30455           placed at each same offset.
30457         * parse.y (NEWHEAP, ADD2HEAP): set count after pointer was set.
30458           fixed: [ruby-dev:27896]
30460 Wed Nov 30 13:43:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30462         * misc/ruby-mode.el (ruby-expr-beg): support $! at the end of
30463           expression.   [ruby-dev:27868]
30465 Mon Nov 28 20:24:22 2005  Tanaka Akira  <akr@m17n.org>
30467         * lib/pp.rb (PP::PPMethods#object_address_group): mask an address with
30468           word size.
30470 Tue Nov 29 23:57:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30472         * parse.y (struct parser_params): heap must be placed at same offset
30473           also in ripper.y.  fixed: [ruby-dev:27846]
30475         * parse.y (yycompile): prevent vparser from tail call optimization.
30476           fixed: [ruby-dev:27851]
30478         * parse.y (parser_mark): value needs to be marked.
30479           fixed: [ruby-dev:27845]
30481 Tue Nov 29 22:45:30 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30483         * lib/drb/observer.rb (notify_observers): follow change of observer.rb.
30484           fixed: [ruby-core:6796]
30486 Mon Nov 28 20:24:22 2005  Tanaka Akira  <akr@m17n.org>
30488         * lib/pp.rb (PP::PPMethods#object_address_group): adjust address format.
30490 Mon Nov 28 18:55:22 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30492         * ext/socket/socket.c (init_inetsock_internal): remove setting
30493           SO_REUSEADDR option on server socket on Cygwin.
30494           fixed: [ruby-core:6765] ([ ruby-Bugs-2872 ])
30496 Mon Nov 28 13:11:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30498         * win32/win32.c (rb_w32_strerror): remove all CR and LF. (avoid broken
30499           error message on bccwin32 + winsock)
30501 Mon Nov 28 09:15:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30503         * lib/mkmf.rb (create_makefile): should not change sodir with
30504           dir.gsub!. (bccwin32 failed to install third party extensions)
30505           [ruby-dev:27834]
30507 Sun Nov 27 05:37:20 2005  Tanaka Akira  <akr@m17n.org>
30509         * lib/pathname.rb: use File.basename to decompose pathnames.
30510           experimental Windows support.
30512 Sun Nov 27 00:56:13 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
30514         * lib/wsdl/xmlSchema/complexContent.rb: missing
30515           ComplexContent#elementformdefault method.
30517 Sat Nov 26 19:57:45 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
30519         * dln.c (conv_to_posix_path): should initialize posix.
30521 Fri Nov 25 20:34:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30523         * lib/xmlrpc/datetime.rb (DateTime::to_a): comparison with non
30524           array-convertible object must return false.
30526 Fri Nov 25 14:34:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30528         * range.c (range_max): treat end exclusion without iteration if
30529           the end value is an integer.  [ruby-talk:167433]
30531 Fri Nov 25 12:52:57 2005  Kouhei Sutou  <kou@cozmixng.org>
30533         * lib/rss/rss.rb: added backward compatibility codes.
30534         * lib/rss/parser.rb: ditto.
30535         * test/rss/test_parser.rb: ditto.
30536         * test/rss/test_2.0.rb: ditto.
30538         * test/rss/test_content.rb: use #__send__ instead of #funcall for
30539           no private method.
30541 Fri Nov 25 12:39:56 2005  Kouhei Sutou  <kou@cozmixng.org>
30543         * lib/rss/rss.rb: improved type conversion.
30544         * lib/rss/1.0.rb: ditto.
30545         * lib/rss/0.9.rb: ditto.
30546         * lib/rss/2.0.rb: ditto.
30547         * lib/rss/image.rb: ditto.
30548         * lib/rss/syndication.rb: ditto.
30550         * test/rss/test_2.0.rb: added type conversion tests.
30551         * test/rss/test_accessor.rb: ditto.
30552         * test/rss/test_to_s.rb: ditto.
30553         * test/rss/test_syndication.rb: ditto.
30554         * test/rss/test_setup_maker_2.0.rb: ditto.
30555         * test/rss/test_setup_maker_1.0.rb: ditto.
30556         * test/rss/test_setup_maker_0.9.rb: ditto.
30557         * test/rss/test_maker_sy.rb: ditto.
30558         * test/rss/test_maker_image.rb: ditto.
30559         * test/rss/test_maker_2.0.rb: ditto.
30560         * test/rss/test_maker_0.9.rb: ditto.
30561         * test/rss/test_image.rb: ditto.
30563         * test/rss/test_maker_1.0.rb: use assert instead of assert_equal.
30565         * test/rss/rss-assertions.rb: improved type conversion assertions.
30567 Fri Nov 25 10:38:20 2005  Kouhei Sutou  <kou@cozmixng.org>
30569         * lib/rss/image.rb: added Image prefix.
30571         * lib/rss/maker/image.rb: ditto.
30573 Fri Nov 25 10:33:02 2005  Kouhei Sutou  <kou@cozmixng.org>
30575         * test/rss/test_2.0.rb: added RSS 2.0 tests.
30577         * test/rss/rss-assertions.rb: extended XML stylesheet assertion.
30579         * lib/rss/0.9.rb: added initialize method.
30581         * test/rss/test_1.0.rb: cleanup.
30583 Fri Nov 25 10:29:48 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30585         * range.c (range_min): use <=> comparison rather than iteration.
30586           [ruby-talk:167420]
30588         * range.c (range_max): ditto.
30590 Thu Nov 24 01:31:44 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30592         * file.c (w32_io_info): CreateFile failed on Win9x if file was already
30593           opened. (FILE_SHARE_READ was needed, but actually I don't understand
30594           the flags of CreateFile well...)
30596 Wed Nov 23 23:52:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30598         * numeric.c (num_div): use floor rather than rb_Integer().
30599           [ruby-dev:27674]
30601 Wed Nov 23 22:34:15 2005  Kouhei Sutou  <kou@cozmixng.org>
30603         * lib/rss/parser.rb: added entity handling type predicate.
30604         * lib/rss/rexmlparser.rb: ditto.
30605         * lib/rss/xmlparser.rb: ditto.
30606         * lib/rss/xmlscanner.rb: ditto.
30608         * lib/rss/xmlscanner.rb: more robust entity handling.
30610         * test/rss/test_parser.rb: added an entity handling test.
30612 Wed Nov 23 20:59:01 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30614         * ext/tk/lib/tk.rb: add Tk.pkgconfig_list and Tk.pkgconfig_get
30615           [Tk8.5 feature].
30617         * ext/tk/lib/tk/text.rb: supports new indices modifiers on a Text
30618           widget [Tk8.5 feature].
30620         * ext/tk/lib/tk/virtevent.rb: add TkNamedVirtualEvent.
30622         * ext/tk/lib/tk/autoload.rb: ditto.
30624         * ext/tk/lib/tk/event.rb: add :data key for virtual events [Tk8.5
30625           feature].
30627 Wed Nov 23 18:52:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30629         * file.c (w32_io_info): should not call GetFileInformationByHandle
30630           for pipe.
30632         * file.c (w32_io_info): checks return value from rb_w32_get_osfhandle.
30634         * file.c (w32_io_info): now can identify directory on WinNT.
30636 Wed Nov 23 18:46:53 2005  Kouhei Sutou  <kou@cozmixng.org>
30638         * lib/rss/: use #__send__ instead of #send.
30639         * test/rss/: ditto.
30641 Wed Nov 23 18:32:56 2005  Kouhei Sutou  <kou@cozmixng.org>
30643         * test/rss/test_taxonomy.rb: use #reject directory.
30645 Wed Nov 23 18:26:00 2005  Kouhei Sutou  <kou@cozmixng.org>
30647         * lib/rss/taxonomy.rb: changed class or module prefix to
30648           Taxonomy from Taxo.
30649         * lib/rss/maker/taxonomy.rb: ditto.
30651 Wed Nov 23 18:21:11 2005  Kouhei Sutou  <kou@cozmixng.org>
30653         * lib/rss/maker/taxonomy.rb: implemented taxonomy module for RSS
30654           Maker.
30655         * lib/rss/taxonomy.rb: supported RSS Maker.
30656         * lib/rss/maker.rb: added taxonomy module support.
30658         * lib/rss/rss.rb: adjusted to other element API.
30659         * lib/rss/1.0.rb: adjusted to other element API but backward
30660           compatibility is reserved.
30661         * lib/rss/0.9.rb: ditto.
30663         * test/rss/test_maker_taxo.rb: added test case for taxonomy module
30664           for RSS Maker.
30665         * test/rss/test_setup_maker_1.0.rb: added tests for taxo:topic.
30667         * test/rss/test_setup_maker_1.0.rb: added backward compatibility
30668           test.
30669         * test/rss/test_setup_maker_0.9.rb: ditto.
30670         * test/rss/test_setup_maker_2.0.rb: ditto.
30672         * test/rss/rss-testcase.rb: added convenience method for setting
30673           up taxo:topic.
30674         * test/rss/rss-assertions.rb: added assertion for taxo:topic.
30676         * sample/rss/blend.rb: followed new API.
30678 Wed Nov 23 17:42:24 2005  Kouhei Sutou  <kou@cozmixng.org>
30680         * lib/rss/rss.rb: fixed a indentation bug.
30682         * lib/rss/taxonomy.rb: fixed <taxo:topic> #to_s bug.
30684         * test/rss/test_taxonomy.rb: added a #to_s test.
30686 Wed Nov 23 03:40:49 2005  Guy Decoux  <ts@moulon.inra.fr>
30688         * re.c (KR_REHASH): should cast to unsigned for 64bit CPU.
30689           [ruby-core:06721]
30691 Wed Nov 23 07:26:44 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30693         * ext/openssl/extconf.rb: check for X509V3_EXT_nconf_nid.
30695         * ext/openssl/ossl_x509ext.c (MakeX509ExtFactory): should use
30696           OPENSSL_malloc to allocate X509V3_CTX.
30698         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext): use
30699           X509V3_EXT_nconf_nid to avoid SEGV (and to build extensions which
30700           values are placed in separate section).
30702         * test/openssl/test_x509ext.rb: new file.
30704 Wed Nov 23 01:22:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30706         * file.c (test_identical): test if two files are identical.
30708         * file.c (rb_f_test): support DOSISH systems where st_ino is not
30709           reliable.  fixed: [ruby-core:06672]
30711         * win32.h, win32.c (rb_w32_osid): check the running platform.
30713 Tue Nov 22 23:52:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30715         * lib/optparse.rb: match incomplete (in current enconding) multibyte
30716           string.  http://inamode6.tokuhirom.dnsalias.org/show/1551
30718 Tue Nov 22 18:36:11 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30720         * win32/win32.c (winnt_stat): set mapped errno instead of ENOENT.
30722 Tue Nov 22 14:36:54 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30724         * file.c (rb_file_s_basename): skip slashes just after UNC top slashes.
30726         * test/ruby/test_path.rb (test_dirname, test_basename): follow new
30727           spec. and add new tests.
30729 Tue Nov 22 13:30:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30731         * win32/win32.c (rb_w32_stat): Dir.chdir('//server/shared');
30732           p Dir.glob('*') should work on WinNT. (implemented our own
30733           stat(2) on WinNT) [ruby-list:41552] [ruby-dev:27711]
30735 Tue Nov 22 02:31:53 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30737         * ext/tk/lib/tkextlib/tile.rb: bug fix (Tk::Tile::USE_TTK_NAMESPACE
30738           is not defined).
30740 Tue Nov 22 01:45:21 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30742         * file.c (rb_file_s_basename): DOSISH_UNC is defined on cygwin but
30743           DOSISH is not.  fixed: [ruby-dev:27797]
30745 Mon Nov 21 22:50:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30747         * file.c (rb_path_skip_prefix, rb_file_s_basename): UNC without path
30748           should not be splitted.  fixed: [ruby-dev:27776] [ruby-dev:27786]
30750         * parse.y (dsym): prohibit empty symbol literal by interpolation.
30751           fixed: [ruby-talk:166529]
30753 Mon Nov 21 16:03:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30755         * win32/setup.mk: findstr doesn't exist on win9x.
30756           fixed: [ruby-dev:27756]
30758 Sun Nov 20 21:39:27 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
30760         * regparse.c (fetch_token_in_cc): tok->escaped should be
30761           initialized.  [ruby-dev:27763]
30763 Sun Nov 20 22:34:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30765         * parse.y (rb_symname_p): [ not followed by ] is not valid symbol.
30766           fixed: [ruby-talk:166520]
30768 Sat Nov 19 19:57:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30770         * lib/fileutils.rb (FileUtils::ln): ln documentation fix.
30771           [ruby-core:06661]
30773 Sat Nov 19 08:19:38 2005  Zach Dennis  <zdennis@mktec.com>
30775         * ext/socket/socket.c: Socket Documentation. [ruby-core:6552]
30777 Sat Nov 19 07:34:32 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30779         * ext/tk/lib/tk/font.rb: remove dependency on Ruby's version (1.8
30780           or 1.9).
30782         * ext/tk/lib/tkextlib/ICONS/icons.rb: ditto.
30784         * ext/tk/sample/tkextlib/treectrl/demo.rb: ditto.
30786 Fri Nov 18 18:07:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30788         * file.c (rb_file_s_dirname): should use skipprefix for UNC path.
30789           pointed out by nobu ([ruby-dev:27744]). fixed: [ruby-core:5076]
30791 Fri Nov 18 17:35:09 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30793         * ext/tk/lib/multi-tk.rb: add restriction to access the entried
30794           command table and manipulate other IPs (for reason of security).
30795           Now, a IP object can be controlled by only its master IP or the
30796           default IP.
30798         * ext/tk/lib/remote-tk.rb: add restriction to manipulate.
30800         * ext/tk/tcltklib.c (ip_is_slave_of_p): add TclTkIp#slave_of?(ip)
30801           to check manipulability.
30803         * ext/tk/lib/tk.rb: bug fix on handling of Tcl's namespaces.
30805         * ext/tk/lib/tk/namespace.rb: ditto.
30807 Fri Nov 18 16:47:33 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30809         * file.c (rb_file_s_dirname): added checks for some patterns with drive
30810           letter. fixed: [ruby-dev:27738]
30812         * test/ruby/test_path.rb (test_dirname): added tests for above
30813           patterns.
30815 Fri Nov 18 12:19:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30817         * win32/win32.h (S_IFIFO): r,w = IO.pipe; r.stat.pipe? now
30818           returns true on VisualC++6.
30820 Thu Nov 17 17:58:00 2005  Kouhei Sutou  <kou@cozmixng.org>
30822         * lib/rss/1.0.rb: added convenience method 'resources'.
30824         * lib/rss/taxonomy.rb: ditto.
30826         * test/rss/rss-assertions.rb: added test for 'resources'.
30828         * test/rss/test_taxonomy.rb: ditto.
30830 Thu Nov 17 17:53:30 2005  Kouhei Sutou  <kou@cozmixng.org>
30832         * lib/rss/taxonomy.rb: implemented taxonomy module.
30834         * test/rss/test_taxonomy.rb: added tests for taxonomy support.
30836 Thu Nov 17 17:40:19 2005  Kouhei Sutou  <kou@cozmixng.org>
30838         * lib/rss/1.0.rb: added rdf:Bag.
30840 Thu Nov 17 13:52:00 2005  Kouhei Sutou  <kou@cozmixng.org>
30842         * lib/rss/rss.rb: removed needless argument 'prefix'.
30844         * lib/rss/parser.rb: ditto.
30846 Wed Nov 16 23:24:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30848         * common.mk (static-ruby): overridable.
30850         * ext/extmk.rb (parse_args): force to link extensions statically only
30851           if static is given for extstatic.
30853         * ext/extmk.rb (RUBY, RUBYW): overridable.
30855 Wed Nov 16 01:29:31 2005  Kouhei Sutou  <kou@cozmixng.org>
30857         * lib/rss/trackback.rb: added TrackBack prefix.
30859         * lib/rss/maker/trackback.rb: ditto.
30861 Wed Nov 16 01:26:13 2005  Kouhei Sutou  <kou@cozmixng.org>
30863         * lib/rss/rss.rb (RSS::VERSION): 0.1.5 -> 0.1.6.
30865         * test/rss/test_version.rb (RSS::TestVersion#test_version): ditto.
30867 Tue Nov 15 23:54:24 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30869         * file.c (file_load_ok): eaccess() returns 0 on success.
30870           fixed: [ruby-dev:27713]
30872 Tue Nov 15 16:36:03 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30874         * array.c (rb_ary_fill): previous commit disabled this usage:
30876             a = [0,1,2,3,4,5,6,7,8,9]
30877             a.fill {|i| a[i] * 10} #=> [nil, nil, ...., nil]
30879           previous commit has the advantage of early garbage collection, but
30880           potentially this would break some script. so I reverted behavior.
30882 Tue Nov 15 16:15:23 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30884         * file.c (file_load_ok): use eaccess() instead of actually opening
30885           the file.  [ruby-talk:156378]
30887         * lib/jcode.rb (String::reverse): add new methods.
30888           [ruby-list:41245]
30890 Tue Nov 15 15:49:34 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30892         * array.c (rb_ary_fill): tail elements were vanished when the middle
30893           part of array was filled. (ie: [0,1,2,3,4].fill(-1,2,1) => [0,1,-1])
30895         * test/ruby/test_array.rb (test_fill): added.
30897 Tue Nov 15 14:39:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30899         * array.c (rb_ary_fill): should adjust array length correctly when
30900           an array is expanded in the fill process.  [ruby-core:06625]
30902 Mon Nov 14 23:49:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30904         * file.c (rb_file_s_readlink): ERANGE will occur only on GPFS.
30905           [ruby-dev:27699]
30907 Mon Nov 14 17:36:22 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30909         * array.c (rb_ary_first): RDoc update from Daniel Berger
30910           <djberg96@yahoo.com>.  [ruby-core:06577].
30912 Sun Nov 13 10:55:24 2005  Minero Aoki  <aamine@loveruby.net>
30914         * lib/uri/common.rb (escape): regard second argument as a
30915           character set. [ruby-dev:27692]
30917 Sat Nov 12 08:36:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30919         * configure.in, eval.c, intern.h: check fd_mask type.
30921         * configure.in (socketpair): need to be checked.
30923 Fri Nov 11 19:53:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30925         * eval.c, intern.h: failed to compile where NFDBITS is defined but
30926           howmany() is not defined. [ruby-dev:27680]
30928         * io.c (is_socket): failed to compile where S_ISSOCK is not defined.
30930         * io.c (pipe_open): failed to compile where socketpair is not supported.
30932 Fri Nov 11 08:20:56 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30934         * Makefile.in (OUTFLAG): keep trailing spaces.  [ruby-dev:27666]
30936         * mkconfig.rb: substitution references added.
30938 Fri Nov 11 07:39:49 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30940         * configure.in: undef HAVE_LINK on BeOS. (link(2) always returns
30941           EINVAL, and this causes error in test/fileutils.)
30943         * file.c: override chown(2) and fchown(2) on BeOS. (these functions
30944           should not change user/group id if -1 is passed as corresponding
30945           argument, and this causes error in test/fileutils too)
30946           [ruby-dev:27672]
30948 Thu Nov 10 21:05:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30950         * lib/shellwords.rb: fix for blank but not empty string.
30951           fixed: [ruby-dev:27663]
30953 Wed Nov  9 08:39:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30955         * lib/shellwords.rb: refactored.  [ruby-core:06581]
30957 Tue Nov  8 17:35:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30959         * intern.h, eval.c (rb_thread_signal_raise): constified.
30961         * signal.c: cosmetic change.
30963 Tue Nov  8 15:32:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30965         * lib/drb/ssl.rb (DRb::SSLConfig#accept): fixed typo.
30966           [ruby-dev:27560] [ruby-core:4627]
30968 Mon Nov  7 20:54:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30970         * ext/iconv/iconv.c: iconvctl() support.  [EXPERIMENTAL]
30972 Mon Nov  7 16:23:23 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30974         * ext/openssl/ossl.h: need to include winsock2.h before including
30975           windows.h by some openssl headers.
30977 Mon Nov  7 13:43:51 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30979         * ext/tk/stubs.c (_nativethread_consistency_check): use simpler
30980           (low cost) way to check whether the Tcl interpreter was compiled
30981           with threads enabled of not.
30983         * ext/tk/tcltklib.c: reduce warnings.
30985         * ext/tk/tkutil/tkutil.c: ditto.
30987 Mon Nov  7 00:06:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30989         * lib/yaml.rb: removed :nodoc: to generate Kernel doc. [ruby-core:6324]
30991 Sun Nov  6 23:39:13 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30993         * ext/iconv/iconv.c (Iconv::BrokenLibrary): exception when detected a
30994           bug of underlying library.
30996 Sun Nov  6 21:43:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30998         * ext/tk/stubs.c (ruby_tcl_create_ip_and_stubs_init): should touch
30999           interpreter after initialization is done. [ruby-dev:27638]
31001 Sun Nov  6 20:13:27 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31003         * file.c (rb_file_s_readlink): readlink(2) on AIX fails with ERANGE if
31004           buffer size is less than required.  fixed: [ruby-dev:27634]
31006 Sat Nov  5 13:42:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31008         * configure.in, cygwin/GNUmakefile.in (mingw): use def file to alias
31009           symbols.  [ruby-dev:27532]
31011         * bcc32/mkexports.rb, win32/mkexports.rb: make aliases in DLL.
31013         * win32/win32.c, win32/win32.h: replace symbols only when RUBY_EXPORT
31014           is defined.
31016 Thu Nov  3 07:57:39 2005  Minero Aoki  <aamine@loveruby.net>
31018         * lib/open-uri.rb (open_loop): find_proxy should return nil when
31019           proxy does not exist. [ruby-dev:27630]
31021 Wed Nov  2 20:25:28 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31023         * ext/tk/extconf.rb: ext/tk/extconf.rb: change the check parameter
31024           for Win32.
31026 Wed Nov  2 19:03:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31028         * ext/tk/tcltklib.c (ip_rbUpdateObjCmd, ip_rb_threadUpdateObjCmd):
31029           passed improper flags to DoOneEvent().
31031         * ext/tk/tkutil/tkutil.c: use rb_obj_respond_to() instead of
31032           rb_respond_to().
31034 Tue Nov  1 14:20:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31036         * eval.c (rb_call_super): should call method_missing if super is
31037           called from Kernel method.
31039         * eval.c (exec_under): frame during eval should preserve external
31040           information.
31042 Tue Nov  1 10:48:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31044         * ext/openssl/extconf.rb: should check ERR_peek_last_error().
31045           [ruby-dev:27597]
31047         * ext/openssl/ossl.c (ossl_raise): ditto.
31049 Mon Oct 31 17:34:46 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31051         * configure.in: use proper option for Sun linker. A patch from
31052           Shinya Kuwamura <kuwa at labs.fujitsu.com>.  [ruby-dev:27603]
31054 Mon Oct 31 05:46:08 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31056         * ext/openssl/ossl_cipher.c (ossl_cipher_update): input data must
31057           not be empty. [ruby-talk:161220]
31059         * test/openssl/test_cipher.rb: add test for Cipher#update("").
31061 Mon Oct 31 05:38:26 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31063         * lib/webrick/httpservlet/cgihandler.rb
31064           (WEBrick::HTTPServlet::CGIHandler#do_GET): the value of Set-Cookie:
31065           header field should be splited into each cookie.  [ruby-Bugs:2199]
31067         * lib/webrick/cookie.rb (WEBrick::Cookie.parse_set_cookie): new method
31068           to parse the value of Set-Cookie: header field.
31070         * test/webrick/test_cookie.rb, test/webrick/test_cgi.rb,
31071           test/webrick/webrick.cgi: add some test for cookie.
31073 Mon Oct 31 02:33:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31075         * numeric.c (fix_rshift): RDoc fix.  [ruby-core:6351]
31077         * util.h (strtod): add #undef for platforms defines strtod()
31078           macro.   [ruby-dev:27563]
31080 Mon Oct 31 02:31:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31082         * test/ruby/test_float.rb (test_precision): test by assert_in_delta.
31083           [ruby-dev:27575]
31085 Sat Oct 29 01:58:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31087         * ext/etc/etc.c: document update from mathew <meta@pobox.com>.
31088           [ruby-core:06473]
31090         * ext/fcntl/fcntl.c: ditto.
31092 Sat Oct 29 16:56:03 2005  Tadayoshi Funaba  <tadf@dotrb.org>
31094         * lib/date.rb: added seven predicates sunday? to saturday?.
31096         * lib/date.rb: added two methods {prev,next}_month,
31097           that are almost same as << and >>.
31099 Thu Oct 27 20:34:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31101         * enumerator.c (enumerator_allocate): allow subclassing.
31103 Thu Oct 27 16:45:31 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31105         * string.c (scan_once): wrong condition to use mbclen2().
31106           [ruby-dev:27535]
31108 Thu Oct 27 11:53:17 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31110         * missing.h, missing/memcmp.c, missing/memmove.c:
31111           ANSI compatible interface.
31113 Wed Oct 26 09:15:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31115         * ext/syck/implicit.c (syck_type_id_to_uri): should return
31116           newly allocated memory. otherwise, type_id will be freed
31117           twice. [ruby-dev:27384] [ruby-core:6385]
31119 Wed Oct 26 01:58:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31121         * configure.in (RUBY_EXTERN): macro to export symbols in shared
31122           library.  [ruby-core:05528]
31124         * defines.h, {bcc32,win32,wince}/Makefile.sub (RUBY_EXTERN): moved to
31125           configuration pass.
31127         * ext/extmk.rb (extmake): RUBY_EXTERN for static linked extensions.
31129 Tue Oct 25 20:06:59 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31131         * ruby.h (Qfalse, Qtrue, Qnil, Qundef): make sure these immediate
31132           values have VALUE type. there is an environment where sizeof(VALUE)
31133           != sizeof(int) like IA64. if 32bit integer (Qtrue) is passed to ANYARGS
31134           and received by 64bit integer (VALUE), upper bits may have garbage value.
31135           [ruby-dev:27513]
31137 Tue Oct 25 15:32:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31139         * lib/rational.rb: applied documentation patch from Gavin Sinclair
31140           <gsinclair@gmail.com>.  [ruby-core:06364]
31142         * lib/irb.rb (IRB::Irb::eval_input): handle prompts with newlines
31143           in irb auto-indentation mode.  [ruby-core:06358]
31145 Tue Oct 25 14:21:46 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31147         * gc.c (garbage_collect): sorry, previous commit was incorrect.
31148           [ruby-core:6386]
31150 Tue Oct 25 13:40:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31152         * gc.c (garbage_collect): return now whether there're rooms for new
31153           objects, rather than whether GC run. fixed: [ruby-core:6376]
31155 Tue Oct 25 02:12:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31157         * lib/rdoc/markup/simple_markup.rb (SM::SimpleMarkup::LABEL_LIST_RE):
31158           reduce redundant backtrack.  [ruby-talk:161771]
31160 Tue Oct 25 00:35:33 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31162         * lib/rinda/*: RDoc documentation from Eric Hodel
31163           <drbrain@segment7.net> added.
31165 Mon Oct 24 21:14:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31167         * configure.in, io.c: use sys/syscall.h if syscall.h is not available.
31168           [ruby-core:06247]
31170 Mon Oct 24 20:38:25 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31172         * ext/Win32API/lib/win32/resolv.rb (get_info): support multiple DNS.
31173           fixed: [ruby-list:40058], [ruby-dev:27479]
31175 Mon Oct 24 11:01:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31177         * ext/tk/lib/tk/canvas.rb (TkCanvasItemConfig::__item_val2ruby_optkeys):
31178           typo fixed.  [ruby-talk:162187]
31180         * ext/tk/lib/tk/menu.rb (TkMenuEntryConfig::__item_val2ruby_optkeys):
31181           ditto.  [ruby-core:06359]
31183 Mon Oct 24 07:57:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31185         * ext/tk/lib/tk/canvas.rb (TkCanvasItemConfig::__item_val2ruby_optkeys):
31186           typo fixed.  [ruby-talk:162187]
31188         * ext/tk/lib/tk/menu.rb (TkMenuEntryConfig::__item_val2ruby_optkeys):
31189           ditto.  [ruby-core:06359]
31191         * lib/matrix.rb (Matrix::initialize): use funcall instead of send
31192           to allow private methods to be called.  A report from
31193           Jean-Claude Arbaut <jcarbaut@laposte.net>.  [ruby-core:06359]
31195 Mon Oct 24 00:41:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31197         * time.c (time_sunday): added predicate methods for the days of the
31198           week.  [ruby-list:41340]
31200 Sun Oct 23 07:11:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31202         * ext/tk/extconf.rb: improve messages [ruby-core:06325].
31204         * ext/tk/lib/tk.rb, ext/tk/lib/tk/canvas.rb, ext/tk/lib/tk/entry.rb,
31205           ext/tk/lib/tk/frame.rb, ext/tk/lib/tk/image.rb,
31206           ext/tk/lib/tk/itemconfig.rb, ext/tk/lib/tk/labelframe.rb,
31207           ext/tk/lib/tk/listbox.rb, ext/tk/lib/tk/menu.rb,
31208           ext/tk/lib/tk/radiobutton.rb, ext/tk/lib/tk/scale.rb,
31209           ext/tk/lib/tk/spinbox.rb, ext/tk/lib/tk/text.rb,
31210           ext/tk/lib/tk/toplevel.rb: improve conversion of option values.
31212         * ext/tk/lib/tkextlib/*: ditto.
31214         * ext/tk/lib/tkextlib/*: update to support ActiveTcl8.4.11.2.
31216         * ext/tk/lib/tkextlib/trofs/*: support Trofs 0.4.3.
31218         * ext/tk/lib/tkextlib/tile/*: support Tile 0.7.2.
31220         * ext/tk/lib/tkextlib/vu/*: support vu 2.3.0.
31222         * ext/tk/lib/tkextlib/tcllib/*: support Tcllib 1.8 (Tklib 0.3).
31224 Sat Oct 22 23:54:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31226         * ext/extmk.rb, lib/mkmf.rb (with_config): support --with-extension
31227           options.  [ruby-dev:27449]
31229 Sat Oct 22 14:25:43 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31231         * util.[hc] (ruby_add_suffix): constified.
31233         * util.[hc] (ruby_scan_{oct,hex}): fixed typo. (renamed from
31234           scan_{oct,hex})
31236         * util.c: almostly ANSI styled. (except for functions depending on
31237           macro and K&R technique)
31239 Sat Oct 22 13:26:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31241         * object.c (sym_inspect), parse.y (parser_yylex, rb_symname_p): check
31242           if valid as a symbol name more strictly.  [ruby-dev:27478]
31244         * test/ruby/test_symbol.rb: tests for [ruby-core:03573].
31246         * time.c (rb_strftime): removed meaningless volatile modifiers, and
31247           concatenate successive nul characters at once.  [ruby-dev:27472]
31249         * ext/tk/lib/tk/font.rb, ext/tk/lib/tkextlib/ICONS/icons.rb,
31250           ext/tk/sample/tkextlib/treectrl/demo.rb, lib/net/imap.rb,
31251           lib/rss/parser.rb, test/rss/test_content.rb,
31252           test/rss/test_dublincore.rb, test/rss/test_syndication.rb,
31253           test/rss/test_trackback.rb, test/ruby/test_eval.rb,
31254           test/socket/test_socket.rb, test/socket/test_udp.rb:
31255           Object#fcall was renamed as Object#funcall.
31257 Sat Oct 22 10:08:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31259         * missing.h, missing/*.c: SUSv3 compatible strcasecmp and strncasecmp,
31260           ANSI compatible strtol and strtoul, and ANSI styled other functions.
31262 Fri Oct 21 19:16:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31264         * rubysig.h (CHECK_INTS): fixed typo. (I believe bit-or is improper)
31266 Fri Oct 21 17:49:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31268         * bin/erb (ERB::Main::run): typo fixed.  [ruby-core:06337]
31270 Fri Oct 21 15:42:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31272         * intern.h, struct.c (rb_struct_iv_get): constified.
31274         * marshal.c: avoid one VC++6 warning for implicit conversion
31275           from int to char.
31277         * ruby.h: ANSI styled.
31279         * bcc32/Makefile.sub (HAVE_HYPOT): added.
31281         * ext/socket/extconf.rb: BeOS is only one platform should call
31282           closesocket, so check __BEOS__ macro directly. (I was worried
31283           accidently HAVE_CLOSESOCKET is defined on windows again because
31284           it has it)
31286         * ext/socket/{getaddrinfo.c,socket.c}: ditto.
31288         ... these are all cosmetic changes.
31290 Fri Oct 21 15:23:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31292         * bignum.c (bignew_1): convertion from `int' to `char' discards
31293           upper bits, (ie. (char)0xff00 -> 0) so it's better to test if
31294           nonzero and set 0 or 1 instead of simply casting ... as a flag usage.
31295           (but I believe this won't cause actual bug in current implementation)
31296           [ruby-dev:27055]
31298         * time.c: should use LONG_LONG instead of `long long'.
31300 Thu Oct 20 22:22:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31302         * parser.y (struct parser_params): parser never modify input string.
31304         * ext/ripper/tools/preproc.rb (prelude): do not append surplus
31305           newlines to fix line numbers.
31307 Thu Oct 20 11:41:57 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31309         * class.c, eval.c, hash.c, st.c, variable.c: changed /* ??? */ stuff
31310           protoize generated to ANYARGS.
31312 Thu Oct 20 11:18:11 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31314         * eval.c, file.c, ruby.c: removed strchr, strrchr, strstr definition
31315           because they are defined in missing.h.
31317         * missing.h, missing/strchr.c, missing/strstr.c: ANSI styled.
31319 Thu Oct 20 09:36:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31321         * lib/mkmf.rb (create_makefile): Borland make seems not to allow
31322           empty dependency list. If this change is not good, please correct
31323           it.
31325 Thu Oct 20 07:55:09 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31327         * lib/mkmf.rb (create_makefile): get rid of a restriction
31328           of Borland make.  fixed: [ruby-dev:27460]
31330         * ext/ripper/depend: ditto.
31332 Wed Oct 19 23:58:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31334         * lib/mkmf.rb (create_makefile): do not create unnecessary empty
31335           directories.  fixed: [ruby-dev:27451]
31337 Wed Oct 19 08:28:32 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31339         * file.c (rb_file_join): elements may contain null pointer strings.
31340           report and fixed by Lloyd Zusman (hippoman): [ruby-core:06326]
31342 Wed Oct 19 02:34:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31344         * enumerator.c, eval.c, gc.c, parse.y, regparse.c, sjis.c, time.c:
31345           made internal symbols static.  [ruby-dev:27435]
31347 Tue Oct 18 10:58:27 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31349         * ext/dl/depend, ext/dl/extconf.rb, ext/socket/depend,
31350           ext/socket/extconf.rb: shouldn't define DESTCLEANFILES in depend,
31351           use $distcleanfiles in extconf.rb.
31353         * win32/Makefile.sub (distclean-local): should remove .config.h.time.
31355 Mon Oct 17 09:42:50 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31357         * mkconfig.rb: fixup configure_args for mswin32 configure.
31359         * win32/configure.bat (srcdir, target): ditto.
31361 Mon Oct 17 05:01:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31363         * env.h: move struct METHOD and struct BLOCK from eval.c to
31364           support NodeWrap and ParseTree.
31366 Sun Oct 16 22:16:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31368         * ext/extmk.rb: omit non-existing directories.
31370 Sun Oct 16 14:40:54 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31372         * lib/rinda/rinda.rb (Rinda::Tuple#initialize): check remote hash
31373           tuple. fixed: [ruby-list:41227]
31375         * test/rinda/test_rinda.rb: test it.
31377 Sun Oct 16 03:38:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31379         * rubysig.h (CHECK_INTS): prevent signal handler to run during
31380           critical section.  [ruby-core:04039]
31382         * eval.c (load_wait): need not to call rb_thread_schedule()
31383           explicitly.  [ruby-core:04039]
31385         * eval.c (rb_thread_schedule): clear rb_thread_critical.
31386           [ruby-core:04039]
31388 Sun Oct 16 00:13:14 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31390         * win32/configure.bat: remove unnecessary line which prevents
31391           creating Makefile.
31393 Sat Oct 15 23:52:07 2005  Shugo Maeda  <shugo@ruby-lang.org>
31395         * lib/net/ftp.rb: (getbinaryfile): allow nil for localfile, and
31396           returns retrieved data if localfile is nil.
31398         * lib/net/ftp.rb: (gettextfile): ditto.
31400 Sat Oct 15 19:51:29 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31402         * bin/erb: typo fixed, again. thanks, Doug Kearns.
31404 Fri Oct 14 23:09:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31406         * win32/Makefile.sub (MKFILES): update MKFILES if configure files get
31407           changed.
31409         * win32/configure.bat, win32/setup.mak (configure_args): store
31410           arguments to configure files.
31412 Fri Oct 14 22:05:45 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31414         * win32/win32.c (ioctl): should set errno.
31416 Fri Oct 14 16:39:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31418         * lib/webrick/config.rb (Config::FileHandler): :UserDir should be nil.
31419           It is harmful to permit the access to ~/public_html by default.
31420           suggested by Hiroyuki Iwatsuki.
31422 Fri Oct 14 04:58:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31424         * eval.c (rb_obj_instance_exec): create instance_exec and
31425           module_exec which pass arguments to the block.
31427         * eval.c (rb_f_funcall): rename fcall to funcall to follow
31428           tradition.
31430 Thu Oct 13 23:29:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31432         * parse.y (HEAPCNT): bison allocates indivisible size.
31433           fixed: [ruby-core:06261]
31435         * io.c, pack.c, ext/syck/rubyext.c, ext/syck/syck.h, missing/isinf.c:
31436           get rid of warnings.  fixed: [ruby-core:06247]
31438 Wed Oct 12 12:51:56 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31440         * ext/openssl/ossl.c (Init_openssl): should call
31441           OpenSSL_add_ssl_algorithms().
31443 Wed Oct 12 11:08:54 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
31445         * file.c (rb_f_test): typo in RDoc comments.
31447 Tue Oct 11 21:41:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31449         * configure.in (RUBY_FUNC_ATTRIBUTE): check prefixed attribute form
31450           first.  [ruby-dev:27398]
31452         * array.c, enum.c, eval.c, util.c: safer function pointer usage.
31453           fixed: [ruby-core:06143]
31455         * util.h (qsort): removed the definition incompatible to ANSI.
31456           fixed: [ruby-core:06147]
31458         * eval.c (rb_obj_respond_to): check if obj responds to the given
31459           method with the given visibility.  [ruby-dev:27408]
31461         * eval.c (rb_respond_to): conform to Object#respond_to?.  [ruby-dev:27411]
31463 Tue Oct 11 00:01:21 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31465         * st.c (st_free_table): do not call free() but xfree().
31466           [ruby-core:06205]
31468 Sat Oct  8 19:49:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31470         * eval.c (Init_Binding): add Binding#dup method.  [yarv-dev:666]
31472         * io.c (rb_io_init_copy): clear PREP flag for copied IO.
31473           fixed: [ruby-dev:27371]
31475         * parse.y (rb_parser_malloc, rb_parser_free): manage parser stack on
31476           heap.  [ruby-list:41199]
31478         * parse.y (ripper_initialize): use rb_respond_to().
31480         * ext/ripper/depend (check): get rid of re-generating ripper.y always.
31482         * ext/iconv/charset_alias.rb: parse config.charset_alias file directly.
31484         * ext/nkf/lib/kconv.rb (Kconv.conv): get rid of nil.to_a.
31486         * lib/scanf.rb (Scanf::FormatSpecifier#letter, #width): use matched
31487           substring directly.
31489         * test/ruby/test_assignment.rb, test/ruby/test_iterator.rb: followed
31490           change of sample/test.rb.
31492         * test/net/http/test_http.rb: removed superfluous splatting stars.
31494 Fri Oct  7 16:41:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31496         * eval.c (splat_value): call rb_Array() to convert svalue to
31497           values.  [ruby-dev:27397]
31499 Fri Oct  7 09:54:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31501         * lib/cgi.rb (CGI::Cookie::parse): Cookies from Nokia devices may
31502           not be parsed correctly.  A patch from August Z. Flatby
31503           (augustzf) in [ruby-Patches-2595].  [ruby-core:06183]
31505 Thu Oct  6 22:51:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31507         * object.c (rb_Array): Array() to raise error for objects without
31508           to_ary, nor to_a.
31510         * object.c (nil_to_a): revert NilClass#to_a.
31512 Thu Oct  6 20:10:38 2005  Minero Aoki  <aamine@loveruby.net>
31514         * ext/strscan/strscan.c (strscan_free): remove useless code.
31515           [ruby-dev:26368] [ruby-dev:27389]
31517 Thu Oct  6 01:02:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31519         * range.c (rb_range_beg_len): should return Qfalse for non-range
31520           object.
31522 Wed Oct  5 04:42:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31524         * lib/xmlrpc/server.rb (XMLRPC::Server#initialize): should mount the
31525           servlet on "/".
31527 Wed Oct  5 04:06:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31529         * lib/xmlrpc/server.rb (XMLRPC::Server#serve): delete wrong call
31530           of "join".
31532 Mon Oct  3 00:04:00 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
31534         * pack.c (EXTEND16): [ruby-dev:27383]
31536 Sat Oct  1 23:55:24 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31538         * win32/win32.c (do_select, rb_w32_select): brush up.
31540 Sat Oct  1 12:57:02 2005  Tanaka Akira  <akr@m17n.org>
31542         * bignum.c (rb_big_rand): removed.  [ruby-dev:25405]
31544 Sat Oct  1 01:46:51 2005  Tanaka Akira  <akr@m17n.org>
31546         * lib/open-uri.rb (OpenURI.open_loop): prohibit multiple proxy
31547           options.
31549 Thu Sep 29 10:26:18 2005  Tanaka Akira  <akr@m17n.org>
31551         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): abolish sizeof(FILE).
31552           [ruby-dev:27317]
31554 Thu Sep 29 10:15:14 2005  Tanaka Akira  <akr@m17n.org>
31556         * lib/open-uri.rb (:proxy_http_basic_authentication): new option.
31558 Thu Sep 29 07:22:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31560         * eval.c (rb_f_send): underscores need to be escaped.
31561           fixed by Doug Kearns.  [ruby-core:06053]
31563 Thu Sep 29 00:57:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31565         * eval.c (ev_const_get), variable.c (rb_const_get_0): retry only when
31566           autoload succeeded.
31568         * variable.c (rb_autoload_load): now return true if autoload
31569           succeeded.  fixed: [ruby-dev:27331]
31571 Wed Sep 28 23:40:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31573         * file.c (rb_stat_inspect): constified.
31575 Wed Sep 28 15:12:28 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31577         * lib/webrick/cgi.rb (WEBrick::CGI#start): req.query_string should
31578           refer the value of QUERY_STRING. [ruby-list:41186]
31580         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#query_string=):
31581           add new method.
31583 Wed Sep 28 10:45:44 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31585         * ext/tk/tcltklib.c: cannot compile with Tcl/Tk8.0.x [ruby-dev:27335].
31587 Wed Sep 28 07:56:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31589         * lib/yaml/basenode.rb (YAML::BaseNode::match_segment): fix typo.
31590           [ruby-dev:27237], [ruby-core:05854]
31592         * lib/yaml/tag.rb (Module#yaml_as): suppress warnings.
31594         * lib/yaml/types.rb (YAML::PrivateType, YAML::DomainType): ditto.
31596 Wed Sep 28 03:16:41 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31598         * rubysig.h: fixed build problem with --enable-pthread on platforms
31599           which don't have setitimer().
31601 Mon Sep 26 22:32:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31603         * eval.c (set_trace_func): add rb_secure(4) to prevent adding
31604           tracing function.
31606 Mon Sep 26 20:59:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31608         * parse.y: changed to ANSI function style.
31610 Sun Sep 25 12:02:04 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31612         * bin/erb: typo fixed.
31614 Sun Sep 25 11:54:11 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31616         * lib/rinda/tuplespace.rb (Rinda::TemplateEntry::initialize): pull
31617           up method. Tabs converted to spaces.
31619 Sun Sep 25 09:34:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31621         * parse.y: replaced `foo _((boo))' with `foo(boo)'.
31623 Sun Sep 25 08:19:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31625         * test/rss/test_content.rb, test/rss/test_syndication.rb: use fcall
31626           instead of send in order to override visibility.
31628 Sun Sep 25 01:46:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31630         * misc/ruby-mode.el (ruby-calculate-indent): arrange deep-indent
31631           closing parenthesis at same column as the opening.
31633 Sun Sep 25 01:33:41 2005  Tanaka Akira  <akr@m17n.org>
31635         * process.c (proc_setrlimit): make the third argument (rlim_max)
31636           optional.
31638 Sun Sep 25 00:42:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31640         * misc/ruby-mode.el (ruby-expr-beg): deal with heredoc separately.
31641           fixed: [ruby-list:41168]
31643         * misc/ruby-mode.el (ruby-calculate-indent): not to deepen indent
31644           level for continuous line inside parentheses.
31645           http://nabeken.tdiary.net/20050915.html#p02
31647 Sat Sep 24 21:19:39 2005  Minero Aoki  <aamine@loveruby.net>
31649         * ext/strscan/strscan.c: document enhancement.
31651         * ext/strscan/strscan.c: update copyright year.
31653         * ext/strscan/strscan.c: update coding style.
31655 Sat Sep 24 20:20:05 2005  Minero Aoki  <aamine@loveruby.net>
31657         * test/net/http/test_http.rb (teardown): Net::HTTP.version_1_1 breaks
31658           many other tests; ensure that Net::HTTP is version 1.2 after test.
31659           [ruby-dev:27312]
31661 Sat Sep 24 11:44:28 2005  Minero Aoki  <aamine@loveruby.net>
31663         * test/net/http/test_http.rb: new file.
31665 Sat Sep 24 08:54:05 2005  Minero Aoki  <aamine@loveruby.net>
31667         * lib/fileutils.rb (cd): no longer accept :noop option, related
31668           code is useless. [ruby-core:05858] [ruby-Bugs:2494]
31670 Sat Sep 24 08:30:00 2005  Tanaka Akira  <akr@m17n.org>
31672         * lib/pathname.rb (Pathname#sub): new method.
31674 Sat Sep 24 08:29:36 2005  Minero Aoki  <aamine@loveruby.net>
31676         * lib/fileutils.rb: fix visibility of FileUtils::NoWrite, Verbose,
31677           DryRun. [ruby-core:05954]
31679         * test/fileutils/test_nowrite.rb: test it.
31681         * test/fileutils/test_dryrun.rb: new file.
31683         * test/fileutils/test_verbose.rb: new file.
31685 Sat Sep 24 07:59:01 2005  Minero Aoki  <aamine@loveruby.net>
31687         * sample/ripper/colorize.rb: removed (replaced by ruby2html.rb).
31689         * sample/ripper/ruby2html.rb: added.
31691 Sat Sep 24 06:35:15 2005  Minero Aoki  <aamine@loveruby.net>
31693         * ext/ripper: no longer generates .rb files.
31695         * parse.y (Init_ripper): ripper_init_eventids*() takes 1 argument,
31696           self (class Ripper).
31698         * ext/ripper/depend: target removed: `lib/ripper/core.rb'.
31700         * ext/ripper/depend: new target `eventids2table.c'.
31702         * ext/ripper/depend: new target `check'.
31704         * ext/ripper/eventids2.c: include eventids2table.c.
31706         * ext/ripper/eventids2.c: initialize SCANNER_EVENT_TABLE.
31708         * ext/ripper/extconf.rb: update $cleanfiles list.
31710         * ext/ripper/tools/generate.rb: no longer generate ripper/core.rb.
31712         * ext/ripper/tools/generate.rb: new mode `check'.
31714         * ext/ripper/tools/generate.rb: new mode `eventids2table'.
31716         * ext/ripper/lib/ripper/core.rb.in: removed.
31718         * ext/ripper/lib/ripper/core.rb: added.
31720         * ext/ripper/lib/ripper/filter.rb: update copyright year.
31722         * ext/ripper/lib/ripper/lexer.rb: ditto.
31724         * ext/ripper/lib/ripper/sexp.rb: ditto.
31726 Sat Sep 24 02:40:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31728         * lib/delegate.rb: document update from James Edward Gray II
31729           <james@grayproductions.net>.  [ruby-core:05942]
31731 Sat Sep 24 02:05:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31733         * process.c (proc_daemon): should restrict execution on levels
31734           higher than $SAFE=2.  suggested by URABE Shyouhei
31735           <shyouhei@ice.uec.ac.jp>.
31737 Fri Sep 23 20:10:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31739         * ext/ripper/tools/generate.rb, ext/ripper/tools/preproc.rb: StringIO
31740           is not available for miniruby.  fixed: [ruby-dev:27307]
31742 Fri Sep 23 17:36:48 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
31744         * ext/win32ole/win32ole.c: avoid core dump with WIN32OLE_EVENT.
31745           [ruby-dev:27133]
31747 Fri Sep 23 16:27:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31749         * lib/forwardable.rb: replaced by new implementation from
31750           <Daniel.Berger@qwest.com>.  [ruby-core:05899]
31752 Fri Sep 23 07:07:47 2005  Minero Aoki  <aamine@loveruby.net>
31754         * test/ripper/depend: use --output option instead of redirect;
31755           nmake does not remove a target when the target file is created by
31756           redirect. [ruby-dev:26466]
31758         * test/ripper/tools/preproc.rb: new option --output.
31760 Fri Sep 23 06:57:52 2005  Minero Aoki  <aamine@loveruby.net>
31762         * test/ripper/tools/generate.rb: check parser event arity.
31764         * test/ripper/tools/generate.rb: detect crash of parser-event-IDs
31765           and scanner-event-IDs.
31767 Fri Sep 23 06:01:30 2005  Minero Aoki  <aamine@loveruby.net>
31769         * test/ruby/test_file.rb: check File#chown(nil,nil).
31770           [ruby-dev:27140]
31772 Fri Sep 23 05:57:23 2005  Minero Aoki  <aamine@loveruby.net>
31774         * ext/ripper: refactoring code generation tools. [ruby-dev:27247]
31775           [ruby-dev:27273]
31777         * ext/ripper/depend: use generate.rb.
31779         * ext/ripper/lib/ripper/core.rb: removed.
31781         * ext/ripper/tools/generate-eventids1.rb: removed (code moved to
31782           generate.rb).
31784         * ext/ripper/tools/generate-ripper_rb.rb: removed (code moved to
31785           generate.rb).
31787         * ext/ripper/tools/list-parse-event-ids.rb: removed (code moved to
31788           generate.rb).
31790         * ext/ripper/tools/list-scan-event-ids.rb: removed (code moved to
31791           generate.rb).
31793         * ext/ripper/lib/ripper/core.rb: removed.
31795         * ext/ripper: refactoring tests. [ruby-dev:27273]
31797         * ext/ripper/test/check-event-arity.rb: removed (code moved to
31798           tools/generate.rb).
31800         * ext/ripper/test/check-event-coverage.rb: removed (code moved to
31801           test/ripper/test_parser_events.rb).
31803         * ext/ripper/test/check-scanner-event-coverage.rb: removed (code
31804           moved to test/ripper/test_scanner_events.rb).
31806         * ext/ripper/test/list-called-events.rb: removed.
31808         * ext/ripper/test/src_rb: removed.
31810         * ext/ripper/test/validate.rb: removed.
31812         * test/ripper/test_scanner_events.rb: check event coverage.
31814         * ext/ripper/lib/ripper/core.rb.in: update copyright year.
31816 Thu Sep 22 23:40:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31818         * lib/mkmf.rb (find_executable0): default path if environment is not
31819           set.  [ruby-dev:27281]
31821         * ext/ripper/extconf.rb (have_command): replaced with find_executable.
31823 Thu Sep 22 17:31:48 2005  Shugo Maeda  <shugo@ruby-lang.org>
31825         * test/readline/test_readline.rb (TestReadline::replace_stdio):
31826           merged the patch of [ruby-dev:25232] instead of [ruby-dev:25223].
31827           (merged from ruby_1_8 branch)
31829 Wed Sep 21 23:30:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31831         * lib/mkmf.rb (configuration): generalized nmake dependent code.
31833 Wed Sep 21 14:16:30 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31835         * ext/ripper/depend (SUFFIXES): no longer needed.
31837         * ext/ripper/depend (c): avoid nmake problem. fixed [ruby-dev:27191]
31839 Wed Sep 21 08:52:25 2005  why the lucky stiff  <why@ruby-lang.org>
31841         * ext/syck/token.c: correctly compute indentation of a block
31842           scalar's parent node. [ruby-talk:150620]
31844 Wed Sep 21 08:20:24 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31846         * README.EXT, README.EXT.ja: add new features.
31848 Wed Sep 21 07:43:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31850         * lib/optparse.rb (default_argv, Arguable#options): defaults strings
31851           to be parsed to Arguable instance.
31853 Wed Sep 21 02:44:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31855         * file.c (path_check_0): disallow sticky world writable directory
31856           in PATH (and $LOAD_PATH).  [ruby-dev:27226]
31858 Wed Sep 21 00:32:22 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31860         * numeric.c (fix_idiv): 1.div(1.0) should return integer value.
31861           [ruby-dev:27235]
31863 Tue Sep 20 22:25:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31865         * ext/io/wait/lib/nonblock.rb: disable on platforms non-blocking flag
31866           is not available.  fixed: [ruby-dev:27187]
31868         * file.c (rb_stat_inspect): protoized function pointer.
31870 Tue Sep 20 18:23:04 2005  Tanaka Akira  <akr@m17n.org>
31872         * eval.c (thread_mark): mark th->last_status.  [ruby-dev:27179]
31874 Tue Sep 20 18:20:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31876         * lib/yaml.rb: require 'yaml/constants'.  [ruby-core:5776]
31878 Tue Sep 20 17:48:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31880         * lib/xmlrpc/client.rb (XMLRPC::Client::do_rpc): add charset
31881           information to content-type header.[ruby-core:5127]
31883         * lib/xmlrpc/server.rb (CGIServer::serve): ditto.
31885         * lib/xmlrpc/server.rb (ModRubyServer::serve): ditto.
31887         * lib/xmlrpc/server.rb (WEBrickServlet::service): ditto.
31889 Tue Sep 20 17:26:42 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31891         * test/webrick/test_cgi.rb: set ENV["PATH"] to CGIEnvPath on
31892           windows. bcc32's runtime is not installed into system directory,
31893           so it cannot be found without this setting. [ruby-dev:27166]
31895 Tue Sep 20 17:14:10 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31897         * io.c: PIPE_BUF is not defined on BeOS. use _POSIX_PIPE_BUF instead.
31898           [ruby-dev:27185]
31900 Tue Sep 20 17:10:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31902         * test/dbm/test_dbm.rb (TestDBM::test_s_open_error): remove
31903           test_s_open_error test to detect duplicate open.
31904           [ruby-dev:27202]
31906 Tue Sep 20 15:39:40 2005  why the lucky stiff  <why@ruby-lang.org>
31908         * ext/syck/emitter.c (syck_scan_scalar): prevent indicators from
31909           appearing alone or at the end of plain scalars. [ruby-core:5826]
31911         * ext/syck/emitter.c (syck_emit_scalar): treat typed scalar nodes
31912           as complex keys.
31914         * lib/syck.h: version 0.60.
31916         * lib/yaml/basenode.rb (YAML::BaseNode#at): transform keys during
31917           key searches.
31919         * ext/syck/rubyext.c: loading of binary-typed nodes.  prevent
31920           emission of plain strings that look like symbols, but which aren't.
31922 Tue Sep 20 05:48:26 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31924         * test/xmlrpc/test_webrick_server.rb (setup_http_server):
31925           should not include 'webrick/https' unless 'use_ssl' because
31926           it fails where openssl is not installed.
31928 Tue Sep 20 01:24:45 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31930         * eval.c (splat_value): use to_a to splat non Array object.
31932         * object.c (nil_to_a): remove nil.to_a.  [experimental]
31934 Tue Sep 20 01:01:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31936         * lib/mathn.rb (Fixnum): remove debug print.
31938         * lib/rational.rb (Rational): ditto.
31940 Tue Sep 20 00:34:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31942         * io.c (io_close): call rb_io_close() directly if io is a T_FILE
31943           object.  [ruby-dev:27156]
31945 Mon Sep 19 18:58:10 2005  Minero Aoki  <aamine@loveruby.net>
31947         * file.c (rb_file_chown): should accept nil. [ruby-dev:27171]
31949 Mon Sep 19 18:29:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31951         * file.c (file_expand_path): allow pathnames to expand.
31952           [ruby-dev:27152]
31954 Mon Sep 19 15:12:15 2005  Minero Aoki  <aamine@loveruby.net>
31956         * ext/ripper/depend: do not make ripper/core.rb. [ruby-dev:26462]
31958 Mon Sep 19 14:49:19 2005  Minero Aoki  <aamine@loveruby.net>
31960         * ext/ripper/eventids2.c: add prefix `t' to tLAMBDA-related lexer
31961           events.
31963         * ext/ripper/lib/ripper/core.rb: updated.
31965 Mon Sep 19 14:39:46 2005  Minero Aoki  <aamine@loveruby.net>
31967         * parse.y (do_block): do_block event dispatches 2 args.
31968           [ruby-dev:26964]
31970         * ext/ripper/lib/ripper/core.rb: updated.
31972         * ext/ripper/tools/list-parser-event-ids.rb: check arity mismatch.
31974 Mon Sep 19 07:45:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31976         * ext/openssl/ossl_pkey.h, ossl_pkey_rsa.c, ossl_pkey_dsa.c:
31977           an instance variable "private" is added to OpenSSL::PKey class.
31978           this ivar is a flag that shows whether there is a private key
31979           in the instance.
31981         * ext/openssl/ossl_engine.c: (ossl_engine_load_privkey): set private
31982           key flag.
31984         * test/openssl/test_pkey_rsa.rb: add test about private detection.
31986 Mon Sep 19 06:38:03 2005  Minero Aoki  <aamine@loveruby.net>
31988         * lib/fileutils.rb: method renaming: collect_methods ->
31989           collect_method.
31991 Mon Sep 19 05:58:59 2005  Minero Aoki  <aamine@loveruby.net>
31993         * lib/fileutils.rb: use module_function instead of single extend.
31995         * test/fileutils/test_fileutils.rb: test existence of singleton
31996           methods.
31998 Mon Sep 19 05:32:41 2005  Minero Aoki  <aamine@loveruby.net>
32000         * lib/fileutils.rb (remove_entry_secure): does not use chdir(2).
32002 Mon Sep 19 03:17:48 2005  Tanaka Akira  <akr@m17n.org>
32004         * file.c (rb_thread_flock): wrap the flock system call by
32005           TRAP_BEG/TRAP_END to enable signals.  [ruby-dev:27122]
32007         * ext/socket/socket.c (bsock_send): wrap the sendto and send system
32008           call by TRAP_BEG/TRAP_END to enable signals when writing to a socket
32009           which is full.  [ruby-dev:27132]
32011         * io.c (rb_io_syswrite): wrap the write system call by
32012           TRAP_BEG/TRAP_END to run signal handler in syswrite method.
32013           [ruby-dev:27134]
32015 Mon Sep 19 01:07:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32017         * numeric.c (Init_Numeric): should define Fixnum#div.
32018           [ruby-dev:27129]
32020         * file.c (rb_thread_flock): wrap flock(2) by TRAP_BEG and
32021           TRAP_END.  [ruby-dev:27122]
32023         * file.c (rb_file_join): call FilePathValue() to all Pathnames to
32024           join.  [ruby-dev:27127]
32026         * file.c (rb_get_path): call StringValueCStr() to ensure no nul
32027           bytes in path strings.
32029         * gc.c (garbage_collect): need value for return.  [ruby-dev:27127]
32031 Sun Sep 18 02:10:47 2005  why the lucky stiff  <why@ruby-lang.org>
32033         * lib/yaml/rubytypes.rb: remove comments that are bungling up
32034           the rdoc and ri output.  output symbols as plain scalars.
32036         * ext/syck/rubyext.c (syck_emitter_reset): emit headless
32037           documents always.
32039         * ext/syck/emitter.c (syck_scan_scalar): quote scalars with any
32040           kind of surrounding line space, tabs or spaces alike.
32042         * ext/syck/token.c: accept tabs as whitespace, not for indentation,
32043           but strip from plain scalars.
32045         * test/yaml/test_yaml.rb: remove outdated tests.
32047 Sun Sep 18 01:10:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32049         * gc.c (garbage_collect): return false if no GC run.
32051 Sat Sep 17 23:25:04 2005  sheepman  <sheepman@sheepman.sakura.ne.jp>
32053         * lib/mathn.rb (Rational::inspect): should preserve original
32054           operand.  [ruby-core:05806]
32056 Sat Sep 17 23:20:27 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32058         * lib/cgi.rb (CGI::Cookie): should handle multiple values for a
32059           cookie name.  [ruby-talk:156140]
32061         * test/socket/test_tcp.rb (TestTCPSocket::test_recvfrom): typo
32062           fixed.  [ruby-dev:27123]
32064 Sat Sep 17 20:58:56 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32066         * win32/win32.c (rb_w32_select): fixed deadlock bug.
32067           because select(2) modifies its fd_set arguments, it must be
32068           restored sometimes.
32070         * win32/win32.c (rb_w32_select): performance improvement when
32071          'always readable/writable handles' and sockets are passed.
32072           sockets should be polled every time.
32074             require "net/http"
32076             Thread.new {
32077               loop do
32078                 STDOUT.write(".") # busy on console (this is worst case though)
32079               end
32080             }
32082             # socket operation took long time. (sometimes timed out)
32083             Net::HTTP.start("www.ruby-lang.org") do |http|
32084                 http.get("/cgi-bin/cvsweb.cgi/ruby/array.c?rev=1.179")
32085             end
32087 Sat Sep 17 14:54:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32089         * test/ruby/test_readpartial.rb (test_open_pipe, test_with_stdio):
32090           these tests are working now, so turned on. (windows)
32092 Sat Sep 17 14:18:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32094         * win32/win32.c (rb_w32_select): I hope performance problem was
32095           solved.
32097 Sat Sep 17 13:45:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32099         * win32/win32.c (rb_w32_select): console support is back.
32100           but still has performance problem because I loosely took 1 second
32101           for wait time. I'll fix it later. (The reason I drastically changed
32102           the code is that I wanted to implement the fileset management as
32103           single function, and I was worried that if pipe or console
32104           was always available, socket may not be processed any time)
32106 Sat Sep 17 11:24:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32108         * win32/win32.c (rb_w32_select): select for socket didn't work.
32109           this caused deadlock in drb test. this happened because GetFileType
32110           for socket handle returns FILE_TYPE_PIPE. Of course, it's not a
32111           pipe. So socket handle didn't reach winsock's select function.
32113         * win32/win32.c (rb_w32_select): read for pipe was still blocked
32114           even if writer handle was closed.
32116             r,w = IO.pipe
32118             Thread.new {
32119               sleep 3; puts "------- 1"
32120               w.puts("foo")
32121               sleep 3; puts "------- 2"
32122               w.puts("boo")
32123               sleep 3; puts "------- 3"
32124               w.close
32125             }
32127             until r.eof? # should break by w.close but didn't.
32128               puts r.gets
32129             end
32131         * win32/win32.c (rb_w32_select): temporary reverted console support
32132           but it'll be back soon.
32134 Sat Sep 17 10:42:13 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32136         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string and bg_eval_string
32137           should call Kernel.eval on caller's safe-level instead of slave's
32138           safe-level (Of course, the given script should be evaluated on
32139           slave's safe-level).
32141 Sat Sep 17 09:45:26 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32143         * string.c (rb_str_substr): should propagate taintness even for
32144           empty strings.  [ruby-dev:27121]
32146         * string.c (rb_str_aref): should infect result if range argument
32147           is tainted.  [ruby-dev:27121]
32149 Sat Sep 17 08:35:39 2005  Kouhei Sutou  <kou@cozmixng.org>
32151         * lib/rss/maker/base.rb (RSS::Maker::ItemsBase#normalize): fixed
32152           strange RSS::Maker::Item#max_size behavior.
32153           Thanks to Kazuhiko <kazuhiko@fdiary.net>.
32155         * test/rss/test_maker_1.0.rb (RSS::TestMaker10#test_items): ditto.
32157 Sat Sep 17 08:02:53 2005  Shugo Maeda  <shugo@ruby-lang.org>
32159         * lib/net/imap.rb: supported DIGEST-MD5.  Thanks, Mathieu Arnold.
32161         * lib/net/imap.rb: use fcall instead of send.  Thanks, Satoru
32162           Takabayashi.
32164 Fri Sep 16 22:45:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32166         * file.c (rb_file_s_extname): empty string for path name ending with a
32167           period.  fixed: [ruby-core:05651]
32169         * file.c (rb_file_join): smarter behavior at edge cases.
32170           fixed: [ruby-core:05706]
32172         * gc.c (rb_memerror, ruby_xmalloc, ruby_xrealloc, rb_newobj): just
32173           abandon if no memory available, when interpreter is not running.
32174           [ruby-dev:27104]
32176         * gc.c (garbage_collect): return whether GC could run.
32178         * dir.c (rb_push_glob): fix delimiter bug.  fixed: [ruby-dev:27105]
32180         * dir.c (dir_s_aref, dir_s_glob): allow multiple patterns.
32181           [ruby-dev:27110]
32183         * win32/win32.c (cmdglob): enable brace expansion.
32185 Fri Sep 16 18:34:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32187         * ext/syck/node.c (syck_replace_str): was using return from the
32188           void function.  a patch from MIYAMUKO Katsuyuki
32189           <miyamuko at mtb.biglobe.ne.jp>.  [ruby-dev:27111]
32191 Fri Sep 16 14:48:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32193         * ext/tk/lib/multi-tk.rb: fix typo on MultiTkIp#bg_eval_string
32195 Fri Sep 16 12:02:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32197         * ext/syck/rubyext.c (syck_resolver_transfer): remove C++ style
32198           comment (//).  [ruby-core:05793]
32200 Fri Sep 16 00:17:03 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32202         * test/logger/test_logger.rb: unintentionally overwritten changes by
32203           Usa.  reverted.
32205 Fri Sep 16 00:03:11 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32207         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#initialize): should set
32208           $stdout.binmode.
32210 Thu Sep 15 23:25:21 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32212         * lib/{soap,wsdl,xsd}, test/{soap,wsdl,xsd}: imported soap4r/1.5.5.
32214           #nnn is a ticket number at http://dev.ctor.org/soap4r
32216           * SOAP
32218             * allow to configure an envelope namespace of SOAP request. (#124)
32219                 TemporaryNamespace = 'http://www.w3.org/2003/05/soap-envelope'
32220                 @client.options["soap.envelope.requestnamespace"] =
32221                   TemporaryNamespace
32222                 @client.options["soap.envelope.responsenamespace"] =
32223                   TemporaryNamespace
32224                 @client.do_proc(...)
32226             * let SOAP request XML indent space configurable.  see
32227               "soap.envelope.no_indent" option. (#130)
32229             * let external CES configurable.
32230               ex. client["soap.mapping.external_ces"] = 'SJIS'.  $KCODE is used
32231               by default. (#133)
32232                 external CES ::= CES used in Ruby object of client and server
32233                 internal CES ::= CES used in SOAP/OM
32235             * add iso-8859-1 external CES support. (#106)
32237             * fixed illegal 'qualified' handling of elements.  it caused
32238               ASP.NET interoperability problem. (#144)
32240             * added 'soap.envelope.use_numeric_character_reference' (boolean)
32241               option to let query XML use numeric character reference in XML,
32242               not plain UTF-8 character.  !GoogleSearch server seems to not
32243               allow plain UTF-8 character since 2005-08-15 update. (#147)
32245             * SOAP::Header::SimpleHeader (de)serialization throws an exception
32246               on !SimpleHeader.on_(in|out)bound when header is a String.  so we
32247               could not use a simple single element headerItem.  fixed.  thanks
32248               to emil. (#129)
32250             * out parameter of rpc operation did not work.  (#132)
32252             * follow HTTP redirect only if using http-access2.  (#125) (#145)
32254             * add a workaround for importing an WSDL whose path begins with
32255               drive letter.  (#115)
32257           * WSDL
32259             * SOAP Data which is defined as a simpletype was not mapped
32260               correctly to Ruby obj when using wsdl2ruby.rb generated classdef
32261               file. (#123)
32263             * rpc/literal support. (#118)
32265             * re-implemented local element qualify/unqualify control.  handles
32266               elementFormDefault and form in WSDL.  (#119)
32268             * Array of an element which has simpleType causes a crash. (#128)
32270             * prarmeterOrder may not contain return part so it can be shorter
32271               than parts size.  Thanks to Hugh.  (#139)
32273           * Samples
32275             * added !BasicAuth client sample. (#117)
32277             * added Base64 client/server sample.
32279             * added Flickr SOAP interface client sample. (#122)
32281             * added !SalesForce client sample. (#135)
32283             * updated Thawte CA certificate for !GoogleAdWords sample.
32285             * updated a client script with the newer version made by Johan.
32286               thanks!
32288             * shortened long file names. (#120)
32290             * fixed typo in authheader sample. (#129)
32292             * updated deprecated method usage.  (#138)
32294 Thu Sep 15 22:40:27 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32296         * test/ruby/test_signal.rb (test_exit_action): skip the test using
32297           fork on fork-less platforms.
32299 Thu Sep 15 13:54:33 2005  Tanaka Akira  <akr@m17n.org>
32301         * lib/open-uri.rb: add :read_timeout option.
32302           [ruby-core:4848]
32304 Thu Sep 15 11:39:18 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32306         * ext/tk/lib/tk/dialog.rb: If a dialog does not show up yet,
32307           TkDialogObj#name raises an exception. [ruby-talk:156109]
32309 Thu Sep 15 11:01:58 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32311         * win32/win32.c (rb_w32_pipe_exec): remove unnecessary CloseHandle().
32313         * win32/win32.c (extract_console_fd, peek_console): new functions.
32315         * win32/win32.c (rb_w32_select): check consoles by polling them.
32317 Thu Sep 15 00:18:24 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32319         * lib/net/telnet.rb (Net::Telnet::waitfor): replace sysread with
32320           readpartial.  [ruby-talk:127641]
32322 Wed Sep 14 23:28:28 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32324         * win32/win32.c (collect_file_fd): rename from extract_file_fd.
32326         * win32/win32.c (extract_pipe_fd, peek_pipe): new functions.
32328         * win32/win32.c (rb_w32_select): check pipes by polling them.
32330 Wed Sep 14 22:40:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32332         * dir.c (ruby_glob): glob function not using ruby exception system.
32334 Wed Sep 14 17:24:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32336         * dir.c: changed `foo (*bar)_((boo))' to `foo (*bar)(boo)`.
32338         * enumerator.c, eval.c, gc.c, intern.h, io.c, process.c, ruby.c,
32339           ruby.h, signal.c: ditto.
32341 Wed Sep 14 15:06:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32343         * bignum.c: changed `foo _((boo))' to `foo(boo)`. [ruby-dev:27056]
32345         * defines.h, dir.c, dln.h, enumerator.c, env.h, error.c, eval.c, file.c,
32346           gc.c, hash.c, inits.c, intern.h, io.c, lex.c, marshal.c, missing.h,
32347           node.h, numeric.c, pack.c, process.c, re.h, ruby.c, ruby.h, rubyio.h,
32348           rubysig.h, signal.c, sprintf.c, st.h, string.c, struct.c, time.c,
32349           util.c, util.h, variable.c: ditto.
32351 Tue Sep 13 22:09:40 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32353         * lib/logger.rb (Logger): added formatter accessor to logger for
32354           dictating the way in which the logger should format the messages it
32355           displays.  Thanks to Nicholas Seckar (cf. [ruby-talk:153391]) and
32356           Daniel Berger.
32358         * lib/logger.rb (Logger): added VERSION constant.
32360         * lib/logger.rb: removed document for LogDevice. It is an
32361           implementation detail and is not a public interface.
32363         * test/logger/test_logger.rb: added tests.
32365 Tue Sep 13 21:47:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32367         * eval.c (BEGIN_CALLARGS): pop halfly pushed status.
32368           fixed: [ruby-dev:26881]
32370 Tue Sep 13 20:24:37 2005  Tanaka Akira  <akr@m17n.org>
32372         * ruby.h (PRINTF_ARGS): new macro for printf style argument checking.
32374 Tue Sep 13 15:41:29 2005  Minero Aoki  <aamine@loveruby.net>
32376         * lib/net/http.rb: wrote docuemntation of HTTPRequest/HTTPResponse
32377           classes.
32379 Tue Sep 13 14:27:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32381         * string.c, missing.h: failed to build on powerpc-apple-darwin7.9.0
32382           because of crypt argument's constness mismatch. (I hope this works)
32383           (http://mput.dip.jp/autobuild/ruby-trunk/log/20050913T110001.gz)
32385 Tue Sep 13 12:33:05 2005  why the lucky stiff  <why@ruby-lang.org>
32387         * lib/yaml.rb: reworking YAML::Stream to use the new
32388           emitter.
32390         * lib/yaml/stream.rb: ditto.
32392         * lib/yaml/rubytypes.rb: added Object#yaml_new.
32394         * lib/yaml/tag.rb: the tag_subclasses? method now
32395           shows up in the class.  allow taguri to be set using an accessor.
32396           continue support of Object#to_yaml_type.
32398         * ext/syck/rubyext.c: new emitter code.  yaml_new and yaml_initialize
32399           get called, should they be present.  consolidated all the diaspora of           internal node types into the family below YAML::Syck::Node -- Map,
32400           Seq, Scalar -- all of whom are SyckNode structs pointing to
32401           Ruby data.  moved Object#yaml_new into the node_import and made it
32402           the default behavior.  the target_class is always called wih
32403           yaml_new, prepended a parameter, which is the klass.  loaded nodes
32404           through GenericResolver show their style.
32405           new Resolver#tagurize converts type ids to taguris.
32407         * ext/syck/implicit.re: were 'y' and 'n' seriously omitted??
32409         * ext/syck/emitter.c: renovated emitter, walks the tree in advance.
32410           consolidated redundant block_styles struct into
32411           the scalar_style struct.  (this means loaded nodes can now
32412           be sent back to emitter and preserve at least its very basic
32413           formatting.)
32415         * ext/syck/gram.c: headless documents of any kind allowed.
32417         * ext/syck/node.c: new syck_replace_str methods and syck_empty_*
32418           methods for rewriting node contents, while keeping the ID
32419           and other setup info.  added syck_seq_assign.
32421         * ext/syck/syck.h: reflect block_styles and new node functions.
32423 Tue Sep 13 08:09:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32425         * lib/ostruct.rb (new_ostruct_member): Object#send no longer call
32426           private methods.  [ruby-dev:27044]
32428         * test/rss/test_dublincore.rb, test/rss/test_trackback.rb,
32429           test/ruby/test_eval.rb, test/socket/test_socket.rb: ditto.
32431         * test/ruby/test_lambda (test_call_with_block): lambda makes new scope
32432           for formal block parameter.
32434 Tue Sep 13 01:17:45 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32436         * eval.c (proc_save_safe_level): no need to restrict safe level
32437           memoize in $SAFE>=3.  [ruby-dev:27050]
32439 Tue Sep 13 00:02:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32441         * file.c (apply2files): stricter callback definition.
32443         * file.c (rb_path_check): constified.
32445 Mon Sep 12 20:53:06 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32447         * test/openssl/test_pkcs7.rb (test_enveloped): skip this test
32448           to avoid a bug of PKCS7_enctypt() (only if ext/openssl is
32449           compiled with OpenSSL-0.9.7d or earlier versions).
32450           http://www.mail-archive.com/openssl-dev@openssl.org/msg17376.html
32452 Mon Sep 12 20:32:00 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32454         * win32/win32.[hc] (rb_w32_argv_size, ...): reverted my latest change
32455           to avoid incompatible pointer warning. (mingw32)
32457 Mon Sep 12 19:58:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32459         * dln.c: avoid warning of const to non-const convertion.
32460           [ruby-dev:27041]
32462         * eval.c, io.c, ruby.c: ditto.
32464 Mon Sep 12 19:26:29 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32466         * array.c: moved to ANSI function style from K&R function style.
32467           (used protoize on windows, so still K&R remains on #ifdef part of
32468            other platforms. And  `foo _((boo))' stuff is still there)
32469            [ruby-dev:26975]
32471         * bignum.c, class.c, compar.c, dir.c, dln.c, dmyext.c, enum.c,
32472           enumerator.c, error.c, eval.c, file.c, gc.c, hash.c, inits.c,
32473           io.c, main.c, marshal.c, math.c, numeric.c, object.c, pack.c,
32474           prec.c, process.c, random.c, range.c, re.c, regcomp.c, regenc.c,
32475           regerror.c, regexec.c, regparse.c, regparse.h, ruby.c, signal.c,
32476           sprintf.c, st.c, string.c, struct.c, time.c, util.h, variable.c,
32477           version.c: ditto.
32479 Mon Sep 12 14:03:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32481         * test/dbm/test_dbm.rb: remove locking test, which may not be
32482           supported on some platforms.  [ruby-dev:27030]
32484 Sun Sep 11 23:23:02 2005  Shugo Maeda  <shugo@ruby-lang.org>
32486         * lib/net/imap.rb (starttls): supported the STARTTLS command.
32488 Sun Sep 11 22:18:07 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
32490         * bin/erb (ERB::Main#run): set ERB#filename so that it is used
32491           when reporting syntax/runtime errors. Tabs converted to spaces.
32493 Sat Sep 10 22:34:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32495         * array.c, bignum.c: protoize.
32497 Sat Sep 10 00:23:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32499         * eval.c (splat_value): simpler and consistent array conversion
32500           for argument splat.  [yarv-dev:599]
32502 Fri Sep  9 16:45:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32504         * string.c (rb_str_times): make empty strings to keep taintness,
32505           and a little improvement.  [ruby-dev:26900]
32507         * ext/iconv/iconv.c (iconv_try), ext/iconv/extconf.rb: get rid of meta
32508           characters in command line option.  fixed: [ruby-talk:155369]
32510         * ext/iconv/iconv.c: protoized.
32512 Thu Sep  8 14:58:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32514         * merged a patch from Takahiro Kambe <taca at back-street.net> to
32515           support DragonFly BSD.  [ruby-dev:26984]
32517 Thu Sep  8 13:14:57 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
32519         * missing/strchr.c (strrchr): fixed a bug in detecting NUL in a
32520           string.  [ruby-dev:26985]
32522 Wed Sep  7 17:29:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32524         * ext/openssl/ossl_engine.c (ossl_engine_s_by_id):
32525           OpenSSL::Engine.by_id calls given block before calling
32526           ENGINE_init (block parameter is the return value of this method
32527           itself).  this functionality is useful to load dynamic shared
32528           engines.
32530                 require "openssl"
32531                 pkcs11 = OpenSSL::Engine.by_id("dynamic"){|e|
32532                   e.ctrl_cmd("SO_PATH", "/usr/lib/opensc/engine_pkcs11.so")
32533                   e.ctrl_cmd("LIST_ADD", "1")
32534                   e.ctrl_cmd("LOAD")
32535                 }
32536                 pkcs11.ctrl_cmd("PIN", "secret")
32537                 key = pkcs11.load_private_key
32539         * ext/openssl/ossl_engine.c (ossl_engine_ctrl_cmd): new method
32540           OpenSSL::Engine#ctrl_cmd. it wraps ENGINE_ctrl_cmd_string.
32542         * ext/openssl/ossl_engine.c (ossl_engine_get_cmds): new method
32543           OpenSSL::Engine#cmds. it returms engine command definitions.
32545 Wed Sep  7 15:48:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32547         * ext/openssl/ossl_asn1.c (asn1str_to_str): new function.
32549         * ext/openssl/ossl_pkcs7.c: new class OpenSSL::PKCS7::RecipientInfo.
32550           this class wraps PKCS7_RECIP_INFO struct.
32552         * ext/openssl/ossl_pkcs7.c: OpenSSL::PKCS7::Signer is renamed to
32553           OpenSSL::PKCS7::SignerInfo. ("Signer" remains as an alias of
32554           SignerInfo.)
32556         * test/openssl/test_pkcs7.rb: new file.
32558 Wed Sep  7 12:55:08 2005  Tanaka Akira  <akr@m17n.org>
32560         * lib/open-uri.rb: abolish mod === tempfile to avoid a problem
32561           [ruby-dev:26967].
32563 Wed Sep  7 10:45:15 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32565         * eval.c (rb_thread_switch): convert all exceptions to
32566           SystemExit.  fixed: [ruby-core:05724]
32568         * eval.c (rb_thread_terminated): show backtrace before propagate
32569           exceptions to main thread.
32571 Wed Sep  7 09:21:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32573         * win32/win32.[hc] (rb_w32_utime): constified.
32575         * win32/win32.h (rb_w32_stat): added prototype.
32577         * win32/win32.[hc] (rb_w32_argv_size,rb_w32_join_argv,rb_w32_aspawn):
32578           changed `char *const *' to `const char *const *'. (constify string)
32580 Wed Sep  7 08:35:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32582         * Makefile.in, configure.in (MINIOBJS): miniruby on HP-UX can not load
32583           extension libraries.
32585         * bignum.c (bignew_1, bigadd): K&R style argument actually can't be
32586           defined as char.
32588         * missing/vsnprintf.c: ANSI compiler supports const keyword.
32590         * ext/digest/sha2/extconf.rb: reject platforms which has inttypes.h
32591           but no 64bit integer.
32593         * lib/mkmf.rb (what_type?): guesstimate type.
32595         * ext/etc/etc.c (setup_passwd), ext/etc/extconf.rb: pw_age might be
32596           char*.  fixed: [ruby-core:05470]
32598 Wed Sep  7 08:32:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32600         * string.c (rb_str_times): should taint empty strings as well.
32602         * object.c (Init_Object): make class_variable_{get,set} public.
32603           [ruby-dev:26965]
32605 Mon Sep  5 22:28:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32607         * parse.y (stmt, mlhs_node, lhs, arg, method_call): aref_args might be
32608           nothing.  fixed: [ruby-dev:26952]
32610         * ext/ripper/eventids2.c: added new tokens.  fixed: [ruby-dev:26952]
32612 Mon Sep  5 17:03:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32614         * lib/find.rb: should raise ENOENT if root entry does not exist.
32615           [ruby-list:41054]
32617         * lib/ostruct.rb: a patch from Florian Gross <florgro at gmail.com>
32618           merged to allow recursive inspect (and to_s) for OpenStruct.
32619           [ruby-core:05532]
32621 Mon Sep  5 08:20:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32623         * lib/observer.rb: a patch from nornagon <nornagon at gmail.com>
32624           merged to allow arbitrary names for update methods.
32625           [ruby-core:05416]
32627 Mon Sep  5 07:01:12 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32629         * ext/openssl/openssl/lib/openssl/buffering.rb (Buffering#do_write):
32630           should clear data from the buffer which already been output.
32632 Sun Sep  4 15:01:35 2005  Minero Aoki  <aamine@loveruby.net>
32634         * parse.y (f_arg): Ripper should not do semantic check.
32635           [ruby-dev:26948]
32637 Sat Sep  3 23:52:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32639         * eval.c (rb_f_fcall): new method to avoid inefficiency of
32640           obj.instance_eval{send(...)} tricks.
32642 Sat Sep  3 13:59:31 2005  Tanaka Akira  <akr@m17n.org>
32644         * lib/pathname.rb (Pathname#descend): Pathname.new("./a/b/c").descend
32645           didn't yield "."
32646           (Pathname#ascend): ditto.
32648 Fri Sep  2 23:51:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32650         * parse.y (f_arg): f_norm_arg is a VALUE in ripper, not an ID.
32651           fixed: [ruby-dev:26942]
32653         * lib: do not use __send__ to access private methods.  [ruby-dev:26935]
32655 Thu Sep  1 17:11:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32657         * eval.c (rb_call0): wrong condition for $SAFE restoration.
32659 Thu Sep  1 14:12:45 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32661         * ext/tk/lib/multi-tk.rb: On Tcl8.5, MultiTkIp#invoke_hidden doesn't
32662           work (gives wrong order of arguments).
32664         * ext/tk/lib/multi-tk.rb: add MultiTkIp#invoke_hidden_on_namespace
32665           to support '-namespace' option of 'interp invokehidden' command
32666           on Tcl8.5.
32668 Wed Aug 31 14:41:30 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32670         * win32/Makefile.sub (OPTFLAGS): default global optimization to
32671           disabled for all VC++ versions.  fixed: [ruby-dev:26897]
32673 Wed Aug 31 10:36:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32675         * process.c (proc_detach, proc_setmaxgroups): missing argument type
32676           declaration. (I recommend ANSI-style function)
32678 Wed Aug 31 06:59:01 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32680         * string.c (rb_str_scan): already String#scan behaves differently
32681           regarding if block is given.
32683 Tue Aug 30 23:49:34 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32685         * array.c, dir.c, enum.c, hash.c, io.c, range.c, string.c, struct.c:
32686           let enumerable methods return Enumerator.  [ruby-dev:26924]
32688         * intern.h (RETURN_ENUMERATOR): utility macro for enumerable methods.
32690 Tue Aug 30 23:25:45 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32692         * lib/debug.rb: no need to restart at exit.
32694 Tue Aug 30 23:20:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32696         * eval.c (rb_rescue2): initialization miss.  fixed: [ruby-dev:26917]
32698         * lib/mkmf.rb (xsystem, xpopen): no longer expand by Config.
32700         * lib/mkmf.rb (link_command, cc_command, cpp_command): expand
32701           variables at once, and quote hdrdir.  fixed: [ruby-core:05680]
32703         * lib/mkmf.rb (libpathflag): quote paths.
32705 Tue Aug 30 19:34:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32707         * ext/digest/md5/md5ossl.h, ext/digest/rmd160/rmd160ossl.h,
32708           ext/digest/sha1/sha1ossl.h: include <stddef.h> to avoid
32709           error in compilation with OpenSSL-0.9.8. [ruby-list:41068]
32711 Tue Aug 30 16:19:40 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
32713         * lib/irb/init.rb: bug fix. [ruby-dev: 26920]
32715 Tue Aug 30 16:13:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32717         * enum.c (enum_count): new method.  [ruby-dev:26895]
32719 Tue Aug 30 12:45:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32721         * eval.c (rb_f_send): do not call private methods if the receiver
32722           is specified.  [ruby-talk:153672]
32724 Mon Aug 29 19:47:18 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32726         * lib/rdoc/usage.rb: improper exceptions. [ruby-dev:26870]
32728         * lib/rdoc/usage.rb: support the case when non-ruby code exists before
32729           shebang. (this is needed when ri.bat is executed on windows)
32731 Mon Aug 29 18:58:05 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
32733         * lib/irb/init.rb: make IRB -I option that is same befavior for ruby.
32734           [ruby-dev:26872]
32736         * lib/irb/locale.rb: support to print help message when OS locale is
32737           ja_JP.utf-8. [ruby-dev:26872]
32739 Mon Aug 29 01:43:05 2005  Tanaka Akira  <akr@m17n.org>
32741         * lib/pathname.rb (Pathname#descend): new method.
32742           (Pathname#ascend): ditto.
32744 Mon Aug 29 00:35:09 2005  Tanaka Akira  <akr@m17n.org>
32746         * lib/time.rb: require 'date/format' instead of 'parsedate'.
32747           (Time.parse): extract fractional seconds using Date._parse.
32748           (Time.strptime): extract fractional seconds using Date._strptime.
32749           [ruby-talk:153859]
32751 Sat Aug 27 20:13:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32753         * ext/curses/curses.c ({curses,window}_clrtoeol): added. suggested
32754           by Reyn Vlietstra.
32756         * ext/curses/curses.c: chtype in curses is not `char', rahter `long'.
32757           [ruby-Bugs:2298]
32759         * ext/curses/view.rb: String =~ String is deprecated.
32761 Thu Aug 25 15:48:58 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32763         * ext/win32ole/win32ole.c: suppress warnings. (win32)
32765 Wed Aug 24 11:01:26 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32767         * test/logger/test_logger.rb (test_shifting_size): should close log
32768           device before unlink, since some platform cannot unlink opened
32769           file.
32771 Tue Aug 23 06:07:02 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32773         * ext/openssl/lib/digest.rb: added SHA224, SHA256, SHA384 and SHA512.
32774           these features are enabled if this library is compiled with
32775           OpenSSL 0.9.8 or later.
32777         * test/openssl/test_digest.rb: add test for new digests.
32779 Tue Aug 23 05:47:04 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32781         * ext/openssl/ossl_ns_spki.c (ossl_spki_initialize): try to decode
32782           the argument as a string.
32784         * ext/openssl/ossl_ns_pki.c (ossl_spki_to_der): new method.
32786         * ext/openssl/ossl_x509store.c (ossl_x509store_initialize): should
32787           set @time to avoid warning.
32789         * ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths,
32790           X509_STORE_add_cert, X509_STORE_add_crl): should raise error if
32791           wrapped functions fails.
32793         * ext/openssl/ossl_ssl.c (ossl_sslctx_set_ciphers): fix error message.
32795         * ext/openssl/ossl_x509req.c (ossl_x509req_set_attributes): get rid
32796           of unused variable.
32798         * test/openssl/test_ns_spki.rb: add new file.
32800         * test/openssl/test_x509store.rb: add test for error.
32802 Tue Aug 23 01:11:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32804         * sprintf.c (ruby__sfvwrite): should move `buf' to the end of
32805           `result'. [ruby-dev:26859]
32807 Mon Aug 22 23:51:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32809         * parse.y: ONIG_OPTION_CAPTURE_GROUP conflicts with
32810           RE_OPTION_ONCE.  [ruby-dev:26852]
32812 Mon Aug 22 20:11:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32814         * missing/vsnprintf.c (BSD__sprint): needs to call vwrite function
32815           pointer.  fixed: [ruby-dev:26854]
32817 Sat Aug 20 23:55:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32819         * parse.y (parser_yylex): update paren_nest for brackets [].
32821 Sun Aug 21 00:10:23 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32823         * lib/wsdl/xmlSchema/importer.rb (WSDL::XMLSchema::Importer#fetch): add
32824           a workaround for importing an WSDL whose path begins with drive
32825           letter.  [ruby-dev:26242]
32827 Sat Aug 20 22:05:25 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
32829         * regexec.c (code_is_in_cclass_node): check code size.
32830           [ruby-dev:26840]
32832 Sat Aug 20 22:37:13 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32834         * lib/logger.rb (write, shift_log?, shift_log): file shifting race
32835           condition bug fixed.  [ruby-dev:26764]
32837         * test/logger/test_logger.rb: tests.
32839 Fri Aug 19 18:13:39 2005  Tanaka Akira  <akr@m17n.org>
32841         * lib/time.rb (Time.apply_offset): fix a problem with last day of
32842           month.  reported by Lucas Nussbaum.  [ruby-talk:152866]
32844 Thu Aug 18 11:05:36 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32846         * win32/win32.c (socketpair_internal): need to call open_ifs_socket()
32847           to create sockets instead of winsock's socket().
32848           fixed: [yarv-dev:581]
32850 Wed Aug 17 23:58:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32852         * eval.c (terminate_process): take String message.
32854         * eval.c (rb_thread_switch): propagate the exception caused thread
32855           termination directly.  fixed: [ruby-core:05552]
32857 Wed Aug 17 21:20:05 2005  NARUSE, Yui  <naruse@ruby-lang.org>
32859         * ext/nkf/lib/kconv.rb: ensure that symbol_to_option is private_class_method
32860           and all other methods are module_function
32861           fixed: [ruby-dev:26808]
32863 Wed Aug 17 00:05:46 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32865         * eval.c (rb_add_method): preserve safe level in the environment
32866           where a method is defined .
32868         * eval.c (rb_call0): restore preserved safe level in the method
32869           execution.
32871         * parse.y (lambda): need separate block variable stack
32872           manipulation and lpar_beg maintenance.  based on a patch found
32873           in [ruby-core:05551] from Mauricio Fernandez <mfp at acm.org>.
32875         * parse.y (parser_yylex): adjust lpar_beg after tLAMBEG and
32876           kDO_LAMBDA. [ruby-core:05551]
32878 Mon Aug 15 07:24:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32880         * intern.h (rb_check_to_integer): add declaration.
32882         * object.c (rb_to_integer, rb_check_to_integer): argument constified.
32884 Mon Aug 15 00:38:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32886         * eval.c (rb_rescue2): reduce PUSH_TAG() as well as NODE_RESCUE.
32887           [ruby-dev:26800]
32889         * range.c (range_check, range_init): reduce uselse exceptions.
32891 Mon Aug 15 00:34:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32893         * parse.y (yycompile): remove unreachable code.  [yarv-dev:570]
32895 Sat Aug 13 22:16:12 2005  Minero Aoki  <aamine@loveruby.net>
32897         * lib/fileutils.rb (remove_entry_secure): forgot final chdir.
32899 Sat Aug 13 22:07:49 2005  Minero Aoki  <aamine@loveruby.net>
32901         * lib/fileutils.rb (remove_entry_secure): uses chdir(2) and check
32902           if current directory is correct. [ruby-dev:26100] [ruby-dev:26226]
32904 Sat Aug 13 21:11:05 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
32906         * ext/win32ole/win32ole.c: add WIN32OLE_VARIANT class.
32908         * ext/win32ole/tests/testall.rb: ditto.
32910         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
32912 Sat Aug 13 18:51:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32914         * eval.c (rb_block_pass): distinguish current block from others.
32915           fixed: [ruby-dev:26274]
32917         * ext/stringio/stringio.c (strio_set_string): disallow nil.
32918           http://www.rubyist.net/~nobu/t/20050811.html#c05
32920 Sat Aug 13 08:01:59 2005  NARUSE, Yui  <naruse@ruby-lang.org>
32922         * ext/nkf/lib/kconv.rb: Kconv.kconv is now alias of Kconv.conv
32923         * ext/nkf/lib/kconv.rb: remove nkf dependend symbols fomr SYMBOL_TO_OPTION
32925 Fri Aug 12 17:06:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32927         * parse.y (f_larglist): allow optional arguments even when
32928           parentheses are omitted.  based on Nobu's patch from
32929           http://www.rubyist.net/~nobu/t/20050805.html
32931         * parse.y (parser_yylex): update & maintain lpar_beg for detect
32932           lambda parameters.
32934 Thu Aug 11 23:29:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32936         * ext/stringio/stringio.c: keep holding string after closed.
32938 Thu Aug 11 20:48:40 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
32940         * numeric.c (fix_equal, fix_cmp, fix_gt, fix_ge, fix_lt, fix_le):
32941           reduce coercing when a method knows about a operand type.
32942           [ruby-dev:26789]
32944 Thu Aug 11 13:01:48 2005  Kouhei Sutou  <kou@cozmixng.org>
32946         * lib/rss: fixed sort bug. [ruby-list:41018]
32948         * lib/rss/1.0.rb (RSS::RDF::Channel#setup_maker_attributes):
32949           removed self.
32951         * lib/rss/maker/base.rb (RSS::Maker::ItemsBase#<=>): use #date
32952           instead of @date.
32953           (RSS::Maker::Base::self.def_array_element): added #size.
32955         * lib/rss/maker/1.0.rb
32956           (RSS::Maker::RSS10::Channel#to_rss,
32957            RSS::Maker::RSS10::Items::Item#to_rss): cleared dc_dates set
32958           upped by using #date.
32960         * lib/rss/maker/dublincore.rb
32961           (RSS::Maker::ChannelBase, RSS::Maker::ItemsBase::ItemBase):
32962           fixed opposite alias.
32964         * test/rss/test_setup_maker_1.0.rb
32965           (RSS::TestSetupMaker10::test_setup_maker_items_sort): added some
32966           tests for RSS::Maker::ItemsBase#do_sort.
32968 Wed Aug 10 12:01:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32970         * lib/delegate.rb: simplifies Delegator classes; SimpleDelegator
32971           now uses method_missing for all methods.
32973 Wed Aug 10 10:38:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32975         * bignum.c (rb_big_mul0): multiply two numbers (x, y) without
32976           normalizing the result.  x should be a big number.
32977           [ruby-dev:26778]
32979         * bignum.c (rb_big_pow): use rb_big_mul0() instead of
32980           rb_big_mul().
32982         * array.c (rb_ary_or, rb_ary_and, rb_ary_plus, rb_ary_diff):
32983           revert the change on 2005-08-03.  Set operation on other item
32984           should have in separate methods.
32986         * parse.y (shadowing_lvar_gen): warn when arguments shadows
32987           external local variables.
32989         * parse.y (f_opt): optional arguments should not clobber external
32990           local variables.
32992         * parse.y (f_rest_arg): rest arguments should not clobber external
32993           local variables.
32995 Wed Aug 10 10:29:40 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32997         * ext/tk/lib/tk.rb: fix bug on handling __ruby2val_optkeys().
32999         * ext/tk/lib/tk/itemconfig.rb: fix bug on handling
33000           __item_ruby2val_optkeys().
33002         * ext/tk/lib/tk/canvas.rb: didn't check __item_ruby2val_optkeys().
33004         * ext/tk/lib/tkextlib/blt/component.rb: ditto.
33006 Tue Aug  9 21:53:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33008         * eval.c (formal_assign): let default values override
33009           arguments to zsuper.  fixed: [ruby-dev:26743]
33011 Tue Aug  9 20:30:19 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
33013         * bignum.c (rb_big_coerce): allow bignum x bignum coercing.
33014           [ruby-dev:26778]
33016 Tue Aug  9 15:12:04 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33018         * ext/tk/tcltklib.c: remove dangerous 'rb_jump_tag's.
33020         * ext/tk/lib/tk.rb: add __val2ruby_optkeys and __ruby2val_optkeys to
33021           help to convert option values between ruby and tcl.
33023         * ext/tk/lib/tk/itemconfig.rb: add __item_val2ruby_optkeys and
33024           __item_ruby2val_optkeys to help to convert option values between
33025             ruby and tcl.
33027         * ext/tk/lib/tk/radiobutton.rb: use __ruby2val_optkeys for 'variable'
33028           option (for the reason of backward compatibility).
33030         * ext/tk/lib/tk/composite.rb: clarify the arguments of super().
33032         * ext/tk/lib/tk/spinbox.rb: ditto.
33034         * ext/tk/lib/tk/text.rb: ditto.
33036         * ext/tk/lib/tk/validation.rb: ditto.
33038         * ext/tk/lib/tkextlib/*: support to treat tkvariable-type
33039           configure options.
33041 Tue Aug  9 08:24:05 2005  Mauricio Fernandez  <mfp@acm.org>
33043         * parse.y (f_block_arg), eval.c (rb_yield_0): deal with dynamic
33044           variable lambda arguments.  [ruby-core:05540]
33046 Mon Aug  8 22:13:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33048         * eval.c (assign): deal with new block argument.
33049           fixed: [ruby-core:05536]
33051         * eval.c (rb_node_arity): follow change of NODE_ARGS.
33052           fixed: [ruby-dev:26761]
33054 Mon Aug  8 21:28:13 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33056         * test/ruby/test_fnmatch.rb: separated from test_file.rb.
33058 Mon Aug  8 20:40:35 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
33060         * test/ruby/test_method.rb: added.  [ruby-dev:26761]
33062 Mon Aug  8 01:26:37 2005  Mauricio Fernandez  <mfp@acm.org>
33064         * parse.y (f_larglist): mistake in syntax rule.  [ruby-core:05535]
33066 Mon Aug  8 05:16:55 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33068         * ext/openssl/ossl.c (ossl_raise): should use ERR_peek_last_error
33069           to get last error on the current thread. And should report
33070           if errors are on the stack while OpenSSL.debug is true.
33072         * ext/openssl/ossl.c (ossl_get_errors): new method for debugging
33073           this library.
33075 Mon Aug  8 05:15:19 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33077         * lib/webrick/httpproxy.rb (HTTPProxyServer#intialize),
33078           lib/webrick/httpserver.rb (HTTPServer#intialize),
33079           lib/webrick/httpservlet/cgihandler.rb (CGIHandler#initialize),
33080           lib/webrick/httpservlet/erbhandler.rb (ERBHandler#initialize),
33081           lib/webrick/httpservlet/filehandler.rb(DefaultFileHandler#initialize):
33082           super (called with no arguments) takes default value of optional
33083           arguments. [ruby-dev:26743]
33085         * lib/webrick/httputils.rb: add a media-type "text/html" for .xhtml.
33087 Sun Aug  7 23:52:39 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
33089         * test/ruby/test_super.rb: added optional arg tests.  [ruby-dev:26743]
33090           the tests expects 1.8 behavior at this time.
33092 Sat Aug  6 12:35:24 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33094         * ext/tk/lib/{tk.rb,tk/itemconfig.rb}: configure creates
33095           TkVariable if key name is 'variable' or 'textvariable'
33096           by default. [ruby-dev:26749]
33098         * ext/tk/lib/tk/{label,radiobutton}.rb: removed its own
33099           {variable,textvariable} function.
33101         * ext/tk/lib/tk/variable.rb: retains backward conpatibility.
33103 Fri Aug  5 12:48:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33105         * ext/tk/tcltklib.c: fixed memory leak when tk_funcall raised
33106           exception. (copies argv into heap in tk_funcall instead of
33107           caller)
33109 Fri Aug  5 12:36:40 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33111         * lib/mkmf.rb (create_makefile): need to convert path separetor
33112           before invoking install command.
33114 Fri Aug  5 08:08:05 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33116         * eval.c (return_jump): fix "can't across thread" error message
33117           when no thread associated.
33118           http://www.namikilab.tuat.ac.jp/~sasada/diary/200507.html#d31
33120 Fri Aug  5 00:25:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33122         * ext/tk/tcltklib.c: refactoring - extract ruby string <->
33123           tcl object conversion as get_str_from_obj and get_obj_from_str.
33125 Fri Aug  5 00:19:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33127         * enumerator.c (Init_Enumerator): provided features should have
33128           extensions.
33130         * eval.c (rb_feature_p): returns type of the feature instead of
33131           extension.
33133         * eval.c (search_required): ruby library should be prior to statically
33134           linked extentions.  fixed: [ruby-dev:26711]
33136         * eval.c (formal_assign): returns position of rest arguments variable.
33138         * parse.y (f_rest_arg): use anonymous variable for rest arguments.
33139           fixed: [ruby-dev:26647]
33141         * extmk.rb (extmake): needs to be wrapped in an Array.
33143 Thu Aug  4 20:03:18 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
33145         * numeric.c (Init_Numeric): do not share implementation among
33146           Fixnum#/ and Fixnum#div.  [ruby-core:05531]
33148 Thu Aug  4 18:38:36 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33150         * ext/tk/tcltklib.c: cannot compile for Tcl7.6/Tk4.2.
33152         * ext/tk/tcltklib.c: add nativethread consistency check.
33154         * ext/tk/stubs.c: ditto.
33156         * ext/tk/lib/tk.rb: forgot to define TclTkIp.encoding and encoding=
33157           when Tcl is 7.6 or 8.0.
33159         * ext/tk/lib/tk/wm.rb: support to make some methods as options of
33160           root or toplevel widget. [ruby-talk:150336]
33162         * ext/tk/lib/tk/root.rb: ditto.
33164         * ext/tk/lib/tk/toplevel.rb: ditto.
33166         * ext/tk/lib/tkextlib/SUPPRT_STATUS: update RELEASE_DATE
33168 Thu Aug  4 13:30:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33170         * numeric.c (fix_div): should not convert the result into
33171           integer.  [ruby-core:05524]
33173 Thu Aug  4 08:03:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33175         * ext/extmk.rb (extmake): should not modify $mflags for each
33176           extentions.
33178 Thu Aug  4 00:25:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33180         * common.mk, Makefile.in, {bcc32,win32,wince}/Makefile.sub: integrated
33181           macro definitions.
33183         * bcc32/Makefile.sub: LIBRUBY_SO should use DLDOBJS, not EXTOBJS.
33185         * {win32,wince}/Makefile.sub: separate config.h for compiler versions.
33187 Thu Aug  4 00:24:59 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33189         * sprintf.c: replacing is no longer needed.
33191 Wed Aug  3 21:59:16 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33193         * ext/tk/lib/tk/variable.rb: TkVariable#trace didn't work on
33194           TkVariable retrived from TkVariable.new_hash.ref. [ruby-dev:26721]
33196 Wed Aug  3 12:40:28 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
33198         * numeric.c (fix_plus): reduce coercing when a method knows about
33199           a operand type.  [ruby-dev:26723]
33201         * numeric.c (fix_minus, fix_mul, fix_quo, fix_div, fix_mod,
33202           fix_divmod, fix_pow): ditto.
33204         * bignum.c (rb_big_div, rb_big_modulo): export to reduce
33205           coercing.
33207 Wed Aug  3 10:13:52 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33209         * configure.in, {bcc32,win32,wince}/Makefile.sub (HAVE_SNPRINTF,
33210           HAVE_VSNPRINTF): use win32/win32.c's implementation instead of
33211           missing/vsnprintf.c's.
33213         * win32/win32.[ch] (rb_w32_snprintf, rb_w32_vsnprintf): reverted.
33215 Wed Aug  3 10:05:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33217         * configure.in: check vsnprintf() and snprintf().
33219         * sprintf.c, missing/vsnprintf.c: made vsnprintf() and snprintf()
33220           private.  fixed: [ruby-dev:26651]
33222 Wed Aug  3 08:22:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33224         * ext/socket/socket.c (ruby_connect): revert [ruby-talk:111654]
33225           changes at 2004-09-07.  [ruby-dev:26656]
33227 Wed Aug  3 06:53:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33229         * array.c (rb_ary_or): wraps the operand in an array if it is not
33230           an array.  [ruby-talk:150495] [EXPERIMENTAL]
33232         * array.c (rb_ary_and, rb_ary_plus, rb_ary_diff): ditto.
33234 Tue Aug  2 10:23:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33236         * ext/tk/tcltklib.c: use Tcl_[GS]etVar2Ex instead of
33237           Tcl_Obj[GS]etVar2. (avoid Tcl_NewStringObj on supported platforms)
33239         * ext/tk/tcltklib.c: use ip_{get,set,unset}_variable2_core from
33240           ip_{get,set,unset}_variable.
33242         * ext/tk/tcltklib.c: replaced Tcl_Panic with rb_bug.
33244 Tue Aug  2 01:40:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33246         * lib/ping.rb (Ping.pingecho): should rescue StandardError.
33247           [ruby-dev:26677]
33249 Mon Aug  1 19:02:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33251         * ext/tk/tcltklib.c: refactoring - replaced rb_ivar_defined &
33252           rb_ivar_get with single rb_attr_get call.
33254 Mon Aug  1 18:44:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33256         * ext/tk/tcltklib.c (Tcl_GetStringResult): refactoring - define
33257           alternative macro on Tcl7.x or earlier.
33259 Mon Aug  1 13:53:55 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33261         * ext/tk/tcltklib.c (deleted_ip): refactoring - interpreter
33262           deletion check. [ruby-dev:26664]
33264 Mon Aug  1 01:08:21 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
33266         * lib/drb/drb.rb (check_insecure_method): use private_methods and
33267           protected_methods instead of respond_to? to check method visibility.
33268           [ruby-dev:26616]
33270         * test/drb/drbtest.rb: ditto.
33272         * test/drb/ut_drb.rb: ditto.
33274 Sat Jul 30 18:49:44 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
33276         * ext/win32ole/win32ole.c: add WIN32OLE_TYPE#ole_typelib,
33277           WIN32OLE_TYPE#implemented_ole_types.
33279         * ext/win32ole/tests/testOLETYPE.rb: ditto.
33281 Fri Jul 29 16:12:02 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
33283         * lib/irb/context.rb: fix `irb --readline` option. [ruby-dev:40955]
33285 Fri Jul 29 09:59:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33287         * eval.c (rb_call0): fix calling zsuper from a method with anonymous
33288           rest argument.  [ruby-dev:26639]
33290         * eval.c (rb_yield_0): push yielded node instead of yielding.
33291           fixed: [yarv-dev:549]
33293 Thu Jul 28 21:49:17 2005  IWATSUKI Hiroyuki  <don@na.rim.or.jp>
33295         * parse.y (rb_parser_end_seen_p): exclude from ripper.
33296           <http://moonrock.jp/~don/d/200507.html#d28_t2>
33298         * sprintf.c (clearerr): remove standard macro before re-definition.
33299           <http://moonrock.jp/~don/d/200507.html#d28_t3>
33301 Thu Jul 28 18:09:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33303         * ext/tk/stubs.c: When --enable-tcltk-stubs, the initialize
33304           routine creates a Tcl/Tk interpreter and deletes it. However,
33305           init cost of Tk's MainWindow is not so small. And that makes it
33306           impossible to use libraries written with Tcl functions only on
33307           an environment without a graphical display. This changes support
33308           delaying initalization of Tk_Stubs until the script needs Tk.
33310         * ext/tk/stubs.h: New file. Define prototypes and return codes of
33311           functions on stubs.c.
33313         * ext/tk/tcltklib.c: Support delaying initalization of Tk_Stubs
33314           until the script needs Tk.
33316         * ext/tk/tcltklib.c: Show friendly error messages for errors on
33317           initialization.
33319         * ext/tk/tcltklib.c: Avoid SEGV on ip_finalize() when ruby is
33320           exiting and $DEBUG is true. (Not fix. If you know the reason of
33321           why, please fix it.)
33323         * ext/tk/tkutil/tkutil.c (ary2list, ary2list2): bug fix on handling
33324           of encoding.
33326         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string and bg_eval_string
33327           don't work propery.
33329         * ext/tk/lib/tk.rb: Forget extending Tk::Encoding module to Tk.
33331         * ext/tk/lib/tk/variable.rb: TkVarAccess fails to initialize the
33332           object for an element of a Tcl's array variable.
33334 Thu Jul 28 17:23:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33336         * parse.y (f_larglist): allow block argument in lambda parameter
33337           list without parenthesis.
33339 Thu Jul 28 17:14:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33341         * hash.c (each_i): typo fixed.  [ruby-dev:26622]
33343 Thu Jul 28 15:04:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33345         * parse.y (f_arg): better argument name duplication check
33347         * parse.y (new_args_gen): factored out name duplication check for
33348           optional and rest arguments.
33350         * parse.y (new_bv_gen): allow shadowing outer local variables;
33351           warning remains.
33353 Thu Jul 28 13:46:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33355         * parse.y (ripper_warningS): the argument was omitted.
33356           [ruby-dev:26621]
33358 Thu Jul 28 11:30:57 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33360         * parse.y (f_larglist): allow bv_decl at the end of lambda
33361           argument list.  [EXPERIMENTAL]
33363         * parse.y (new_bv_gen): allow local variable shadowing, with
33364           warning in verbose mode.
33366 Wed Jul 27 23:23:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33368         * gc.c (obj_free): make message format consistent with one from
33369           gc_mark().  [ruby-talk:149668]
33371         * sprintf.c (quad_t): prepare quad_t as well.  [ruby-talk:149668]
33373 Wed Jul 27 22:11:37 2005  Kouhei Sutou  <kou@cozmixng.org>
33375         * sample/rss/tdiary_plugin: removed. because the plugin
33376           is imported in the tDiary plugin packages.
33378 Wed Jul 27 19:11:53 2005  Minero Aoki  <aamine@loveruby.net>
33380         * lib/fileutils.rb (cd): follow :noop option change. (This patch
33381           is contributed by Doug Kearns)
33383 Wed Jul 27 16:25:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33385         * parse.y (lambda): Perl6 style -> lambda expression. [NEW]
33386           [VERY EXPERIMENTAL]
33388 Wed Jul 27 10:43:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33390         * gc.c (id2ref): must not assign pointers to long int.  use
33391           LONG_LONG instead if SIZEOF_LONG < SIZEOF_VOIDP.
33392           [ruby-talk:149645]
33394         * ruby.h: use LONG_LONG to simplify the change.
33395           [ruby-talk:149645]
33397 Wed Jul 27 10:59:02 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33399         * dir.c (dir_each): rewinddir(3) before iteration.
33400           [ruby-talk:149628]
33402 Wed Jul 27 02:34:58 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33404         * eval.c (rb_f_throw): replace all '0x%lx' by '%p'.
33405           [ruby-talk:149553]
33407         * missing/vsnprintf.c (BSD_vfprintf): '%p' need to handle 64bit
33408           size pointer.  [ruby-talk:149553]
33410 Tue Jul 26 22:41:28 2005  Minero Aoki  <aamine@loveruby.net>
33412         * ext/ripper/lib/ripper/sexp.rb: new method Ripper.sexp_raw.
33414         * ext/ripper/lib/ripper/sexp.rb (Ripper.sexp): returns more
33415           readable tree.  This is suggested by Kirill A. Shutemov.
33417 Tue Jul 26 22:05:12 2005  Minero Aoki  <aamine@loveruby.net>
33419         * lib/net/http.rb: merge a patch contributed by Daniel Berger,
33420           with some modification. (RubyForge #2128)
33422 Tue Jul 26 18:11:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33424         * ruby.h: support LLP64 model.  [ruby-talk:149524]
33426 Tue Jul 26 12:57:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33428         * ext/openssl/openssl_missin.c: include <openssl/engine.h> before
33429           <openssl/x509_vfy.h> to avoid compilation error of mswin32.
33430           suggested by NAKAMURA Usaku.
33432 Mon Jul 25 23:48:55 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33434         * win32/win32.[ch]: (rb_w32_vsnprintf, rb_w32_snprintf): removed.
33436 Mon Jul 25 21:30:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33438         * common.mk: Borland MAKE doesn't look for file names which have paths
33439           from VPATH.  fixed: [ruby-dev:26604]
33441         * ruby.h (NORETURN, DEPRECATED): moved just after config.h.
33443         * {win32,wince}/Makefile.sub: vsnprintf() is in missing now.
33445         * {bcc32,win32,wince}/Makefile.sub: moved CPPFLAGS only for ruby
33446           source to XCFLAGS.
33448 Mon Jul 25 14:10:02 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33450         * ext/tk/lib/multi-tk.rb: fix en-bugged part in the last commit.
33452 Mon Jul 25 13:45:18 2005  NAJIMA Hiroki  <najima@mickey.ai.kyutech.ac.jp>
33454         * io.c: check HAVE_SYS_IOCTL_H before including the header.
33455           [ruby-dev:26610]
33457 Sat Jul 23 16:48:12 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33459         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should check
33460           OPENSSL_NO_STATIC_ENGINE.
33462 Sat Jul 23 11:46:30 2005  Tanaka Akira  <akr@m17n.org>
33464         * eval.c (rb_fd_select): the all three fd_sets must be long enough for
33465           select.  fixed: [ruby-talk:149059]
33467 Sat Jul 23 10:01:41 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33469         * sprintf.c (rb_vsprintf, rb_sprintf): new functions return new String,
33470           using missing/vsnprintf.c.  [ruby-dev:26580]
33472         *  missing/vsnprintf.c: made the output changeable.
33474 Fri Jul 22 21:06:08 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
33476         * bignum.c (rb_big_eq): reduce isnan().  [ruby-dev:26600]
33478         * numeric.c (flo_eq, flo_gt, flo_ge, flo_lt, flo_le): ditto.
33480 Fri Jul 22 15:02:39 2005  Kouhei Sutou  <kou@cozmixng.org>
33482         * lib/rss/rss.rb: moved copyright description to lib/rss.rb.
33484         * lib/rss.rb: added for convenience.
33486         * sample/rss/re_read.rb: added #to_s sample.
33488         * sample/rss/blend.rb: use 'require "rss"' instead of
33489           'require "rss/*"'.
33490         * sample/rss/list_description.rb: ditto.
33491         * sample/rss/rss_recent.rb: ditto.
33492         * sample/rss/tdiary-plugin/rss-recent.rb: ditto.
33494         * sample/rss/tdiary-plugin/rss-recent.rb: 0.0.6 -> 0.0.7.
33496 Fri Jul 22 14:37:43 2005  Kouhei Sutou  <kou@cozmixng.org>
33498         * lib/rss/parser.rb (RSS::Parser#initialize): accept HTTP/FTP
33499           URI and local file path too.
33501         * test/rss/test_parser.rb (RSS::TestParser#test_parse): test
33502           for the above.
33504 Fri Jul 22 07:01:42 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33506         * ext/tk/tkutil/tkutil.c (tk_conv_args): forget to revert
33507           thread_critical and gc_disable when raise ArgumentError.
33509         * ext/tk/lib/remote-tk.rb: RemoteTkIp doesn't need to include TkUtil.
33511         * ext/tk/tcltklib.c: add TclTkIp#has_mainwindow? method.
33513         * ext/tk/lib/tk.rb: add Tk.has_mainwindow? method.
33515         * ext/tk/lib/multi-tk.rb: add MultiTkIp#has_mainwindow? method.
33517         * ext/tk/lib/remote-tk.rb: add RemoteTkIp#has_mainwindow? method.
33519         * ext/tk/lib/multi-tk.rb: slave IP fail to exit itself when $SAFE==4.
33521         * ext/tk/lib/multi-tk.rb: remove constants from MultiTkIp module to
33522           avoid access from external.
33524         * ext/tk/lib/multi-tk.rb: check_root flag is ignored on slave IPs'
33525           mainloop.
33527         * ext/tk/lib/multi-tk.rb: hang-up Tk.mainloop called on a slave IP
33528           with $SAFE==4.
33530         * ext/tk/lib/multi-tk.rb: MultiTkIp#bg_eval_proc doesn't work
33531           properly.
33533         * ext/tk/lib/multi-tk.rb: add MultiTkIp#set_cb_error(proc) and
33534           cb_error(exc) to log errors at callbacks on safe slave IPs.
33536         * ext/tk/lib/multi-tk.rb: fail to get an available slave IP object
33537           when call Tk.mainloop in the block which is given to new_* method,
33538             because cannot finish initialize while the root widget is alive.
33540         * ext/tk/lib/multi-tk.rb: fail to control a slave IP when Tk.mainloop
33541           runs on the IP.
33543 Thu Jul 21 01:00:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33545         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c,config.h}:
33546           import 1.76
33547           [ruby-dev:26592] nkf constification
33549 Wed Jul 20 19:18:52 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33551         * io.c (S_ISREG): need to define S_ISREG before it is used first.
33553 Wed Jul 20 18:33:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33555         * io.c (wsplit_p): patch for the environment where
33556           fcntl(F_GETFL, O_NONBLOCK) is not supported. in that case,
33557           set FMODE_WSPLIT without fcntl check. [ruby-dev:26566]
33559 Wed Jul 20 18:07:11 2005  Tanaka Akira  <akr@m17n.org>
33561         * io.c (rb_io_ctl): update FMODE_WSPLIT_INITIALIZED and FMODE_WSPLIT
33562           by F_SETFL.
33564 Wed Jul 20 10:04:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33566         * variable.c (rb_class_path): need to adjust snprintf() len for
33567           teminating NUL.  [ruby-dev:26581]
33569 Wed Jul 20 03:58:52 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33571         * ext/socket/socket.c: sorry, BeOS also uses HAVE_CLOSESOCKET,
33572           so reverted.
33574         * ext/socket/extconf.rb: should not define HAVE_CLOSESOCKET
33575           on windows.
33577 Wed Jul 20 03:12:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33579         * ext/socket/socket.c: should not undef close() on win32.
33580           it's defined to rb_w32_close(), otherwise handle leaks.
33581           [ruby-Bugs-2131]
33583 Wed Jul 20 00:48:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33585         * error.c (syserr_initialize): don't use str before StringValue()
33586           check.  [ruby-dev:26579]
33588 Tue Jul 19 22:47:29 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33590         * error.c (syserr_initialize): add 1 byte for snprintf() size for
33591           NUL at the end.  [ruby-dev:26574]
33593 Tue Jul 19 17:16:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33595         * signal.c (trap): remove sigexit(); handle "EXIT" via sig_exec().
33596           [ruby-dev:26440]
33598         * io.c (rb_io_inspect): replace sprintf() with "%s" format all
33599           over the place by snprintf() to avoid integer overflow.
33601 Tue Jul 19 14:10:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33603         * ext/tk/tcltklib.c: rbtk_eventloop_depth is used as int.
33605         * ext/tk/tcltklib.c: rbtk_pending_exception is tested with
33606           NIL_P, so should assign Qnil instead of 0 (Qfalse).
33608         * ext/tk/tcltklib.c (ip_invoke_real): fixed memory leak when
33609           ip is deleted.
33611 Tue Jul 19 13:19:46 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33613         * ext/tk/lib/tk/variable.rb: For symmetry, add TkVariable#string. It
33614           returns a string even if the default value type of the TkVariable
33615           object is not "string".
33617 Mon Jul 18 21:39:18 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33619         * eval.c (rb_call0): make the pointer to NODE volatile
33620           instead of NODE itself.
33622 Mon Jul 18 14:32:21 2005  Tanaka Akira  <akr@m17n.org>
33624         * eval.c (rb_call0): make body volatile to avoid possible optimization
33625           problem.
33626           [ruby-dev:26195]
33628 Mon Jul 18 12:23:27 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33630         * ext/io/wait/wait.c: wrong backport from trunk, and compile error on
33631           platforms fd_set is not a bit set.  fixed: [ruby-dev:26562]
33633 Mon Jul 18 09:36:25 2005  Tanaka Akira  <akr@m17n.org>
33635         * rubyio.h (FMODE_WSPLIT, FMODE_WSPLIT_INITIALIZED): new constant.
33637         * io.c (wsplit_p): new function.
33638           (io_fflush): split writing data by PIPE_BUF if wsplit_p is true in
33639           multi-threaded mode.
33640           (io_fwrite): ditto.
33641           [ruby-dev:26540]
33643 Mon Jul 18 05:00:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33645         * ext/nkf/nkf-utf8/nkf.c: import nkf.c 1.73
33646           fix: TestKconv 1F
33648 Sun Jul 17 13:46:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33650         * ext/io/wait/extconf.rb, ext/io/wait/wait.c: Win32 platforms support.
33652 Sat Jul 16 23:43:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33654         * enumerator.c (Init_Enumerator): wrong argument specs.
33655           [ruby-core:05481]
33657 Sat Jul 16 15:52:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33659         * win32/win32.[hc]: constified socket functions. [ruby-dev:26553]
33661 Fri Jul 15 23:59:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33663         * lib/rdoc/parsers/parse_c.rb (handle_class_module): handle a
33664           module enclosed in a built-in module.  fixed: [ruby-talk:148239]
33666         * lib/rdoc/parsers/parse_c.rb (find_body): allow macros as methods.
33668         * lib/rdoc/parsers/parse_c.rb (find_call_seq): allow :nodoc: modifier
33669           in C.  [ruby-core:04572]
33671 Fri Jul 15 23:20:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33673         * enumerator.c (Init_Enumerator): use an internal directly.
33675 Fri Jul 15 07:58:10 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33677         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
33678           sockets should be non-blocking mode. [ruby-dev:26405]
33680         * lib/webrick/utils.rb (WEBrick::Utils.set_non_blocking): new method.
33682 Fri Jul 15 00:11:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33684         * enum.c (enumeratorize): create new enumerator for current method if
33685           no block is given.
33687         * enumerator.c: moved from ext/enumerator.
33689 Thu Jul 14 18:27:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33691         * win32/win32.c (rb_w32_strerror): should return correct message
33692           for ENAMETOOLONG and ENOTEMPTY. (bcc32) [ruby-dev:26533]
33694         * win32/win32.c (rb_w32_strerror): stripped CR LF on the tail.
33695           (bcc32) [ruby-dev:26533]
33697 Thu Jul 14 00:45:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33699         * LEGAL (ext/nkf/nkf-utf8): updated from nkf1.7 to nkf-utf8.
33701 Wed Jul 13 22:44:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33703         * parse.y: remove static variables.  [ruby-dev:26530]
33705 Wed Jul 13 19:36:29 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33707         * win32/win32.c (rb_w32_mkdir): should set EEXIST (not EACCES)
33708           if file or directory already exists. (bcc32) [ruby-dev:26508]
33710         * win32/win32.c (rb_w32_rmdir): should set ENOTDIR (not EINVAL)
33711           if it is not directory. (bcc32, win32)
33713         * win32/win32.c (rb_w32_rmdir, rb_w32_unlink): restore
33714           FILE_ATTRIBUTE_READONLY flag on function failure.
33716 Wed Jul 13 12:40:00 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33718         * ext/tk/tcltklib.c: TclTkLib.do_one_event doesn't work.
33720         * ext/tk/lib/tk.rb: Tk.thread_update is available.
33722 Tue Jul 12 23:32:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33724         * lib/mkmf.rb: keep curdir unexpanded.
33726 Mon Jul 11 23:50:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33728         * eval.c, intern.h (rb_proc_call, rb_obj_method, rb_method_call):
33729           export.
33731         * ext/enumerator/enumerator.c (enumerator_with_index): [EXPERIMENTAL]
33732           added a new method Enumerator#with_index.  [ruby-talk:147728]
33734 Mon Jul 11 08:31:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33736         * regparse.c (fetch_escaped_value): mask values following \c in
33737           regexp.  fixed: [ruby-dev:26500]
33739 Sun Jul 11 05:18:17 2005  Michael Neumann  <mneumann@ruby-lang.org>
33741         * lib/xmlrpc/server.rb (XMLRPC::Server): Switch from GServer over to
33742           WEBrick. This makes file lib/xmlrpc/httpserver.rb obsolete (at least it is
33743           no further used by the XML-RPC library).
33745 Mon Jul 11 02:50:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33747         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line):
33748           mistook to merge the patch of [ruby-dev:26235] at
33749           revision 1.11.
33751 Sun Jul 10 23:58:04 2005  Tanaka Akira  <akr@m17n.org>
33753         * lib/pathname.rb (Pathname#unlink): try Dir.unlink first to
33754           avoid unlink a directory by root.
33755           cf. [ruby-dev:26237]
33757 Sun Jul 10 12:47:01 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33759         * lib/debug.rb (debug_command): added a deficient format specifier.
33760           fixed: [ruby-core:05419]
33762 Sat Jul  9 22:02:37 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
33764         * ext/win32ole/win32ole.c (ole_method_dispid): convert dispid
33765           in Ruby and C by INT2NUM and NUM2INT.
33767         * ext/win32ole/win32ole.c (ole_invoke2): ditto.
33769         * ext/win32ole/test/testWIN32OLE.rb: ditto.
33771         * ext/win32ole/test/testOLEMETHOD.rb: ditto.
33773 Fri Jul  8 15:45:04 2005  Kouhei Sutou  <kou@cozmixng.org>
33775         * lib/rss/rss.rb (RSS::VERSION): 0.1.4 -> 0.1.5.
33777         * test/rss/test_version.rb (RSS::TestVersion#test_version):
33778           ditto.
33780         * lib/rss/0.9.rb (RSS::Rss::Channel::Item::Category):
33781           domain attribute of <category> is optional. Thanks to
33782           Chris Lee <clee@kde.org>.
33784         * test/rss/test_parser.rb (RSS::TestParser#test_category20):
33785           adjusted test case.
33787 Wed Jul  6 18:45:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33789         * object.c (rb_obj_pattern_match): now returns nil.
33790           [ruby-core:05391]
33792 Mon Jul  4 14:35:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33794         * sample/svr.rb: service can be stopped by ill-behaved client; use
33795           tsvr.rb instead.
33797 Mon Jul  4 13:25:21 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33799         * missing/erf.c: original erf.c by prof. Okumura is confirmed to
33800           be public domain.  reverted BSD implementation.
33802 Wed Jul  6 11:15:21 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33804         * win32/win32.c (open_ifs_socket): new function.
33806         * win32/win32.c (StartSockets, rb_w32_socket): use open_ifs_socket()
33807           instead of socket().
33808           all changes are derived from [ruby-core:5388].
33810 Wed Jul  6 00:15:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33812         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c,config.h}:
33813           imported nkf.c 1.70 (support UTF-8-MAC)
33815         * ext/nkf/lib/kconv.rb: add :utf8mac and :internalunicode
33817 Tue Jul  5 23:44:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33819         * instruby.rb: expand source library path.
33821 Tue Jul  5 23:27:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33823         * array.c (sort_2): get rid of yet another bcc's bug.
33824           fixed: [ruby-core:05152]
33826         * eval.c (rb_thread_save_context): must not switch contexts during
33827           re-allocating stack.  fixed: [ruby-core:05219]
33829 Tue Jul  5 15:15:10 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33831         * ext/tk/tkutil.c: fix typo.
33833 Tue Jul  5 14:52:56 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33835         * ext/tk/tcltklib.c: bug fix on treating Unicode strings.
33837         * ext/tk/tcltklib.c: add methods to treat encoding mode.
33839         * ext/tk/MANUAL_tcltklib.eng: add description of TclTkLib#encoding,
33840           encoding_system, and so on.
33842         * ext/tk/MANUAL_tcltklib.eucj: ditto.
33844         * ext/tk/tkutil/tkutil.c: fail to create a Tcl's list string from
33845           an array including multiple kind of encoded strings.
33847         * ext/tk/lib/tk.rb: ditto.
33849         * ext/tk/lib/multi-tk.rb: 2nd arg of _{to|from}UTF8 is omissible.
33851         * ext/tk/lib/remote-tk.rb: ditto.
33853         * ext/tk/lib/tk.rb: override TclTkLib#encoding and encoding= to
33854           use TkCore::INTERP.encoding and encoding=.
33856         * ext/tk/lib/tk.rb: when "require 'tk'" and $KCODE=='NONE', check
33857           DEFAULT_TK_ENCODING to decide Ruby/Tk's system encoding mode.
33859         * ext/tk/lib/tk/encodedstr.rb: check both of Tk.encoding and
33860           Tk.encoding_system. Tk.encoding has higher priority.
33862         * ext/tk/lib/tk/optiondb.rb: ditto.
33864         * ext/tk/lib/tk/spinbox.rb: ditto.
33866         * ext/tk/lib/tk/validation.rb: ditto.
33868         * ext/tk/lib/tk/namespace.rb: arguemnts for TclTkIp#_merge_tklist
33869           should be UTF-8 strings.
33871 Mon Jul  4 19:29:32 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33873         * lib/set.rb: test change to follow revision 1.28. (duck typing?)
33875 Mon Jul  4 11:23:50 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33877         * test/{dbm,gdbm,sdbm}/test_{dbm,gdbm,sdbm}.rb: skip some tests
33878           which using fork on fork-less platforms.
33880 Sun Jul  3 23:26:30 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
33882         * test/wsdl/document/test_rpc.rb: compare formatted time string of
33883           Time objects instead of comparing Time objects itself to avoid
33884           unintended conflict of usec part.  [ruby-dev:26220]
33886 Sat Jul  2 22:41:04 2005  Tanaka Akira  <akr@m17n.org>
33888         * ext/socket/socket.c (unix_send_io, unix_recv_io): support x86-64 and
33889           IA64.
33891 Sat Jul  2 17:06:23 2005  Tanaka Akira  <akr@m17n.org>
33893         * defines.h (FLUSH_REGISTER_WINDOWS): defined for IA64.
33894           (flush_register_windows): declare flush_register_windows.
33896         * eval.c (flush_register_windows): new function.
33898         * ruby.h (NOINLINE): move up to be effective in defines.h.
33900 Sat Jul  2 15:19:41 2005  Tanaka Akira  <akr@m17n.org>
33902         * configure.in: check select_large_fdset.
33904         * eval.c: use select_large_fdset to support large file descriptors
33905           on Solaris.  [ruby-dev:26404]
33907 Fri Jul  1 17:55:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33909         * bignum.c (rb_big_neg): may be accessing bogus pointer value.
33911 Fri Jul  1 15:50:12 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33913         * missing/erf.c: need to include some headers for some platforms.
33915         * win32/win32.h (copysign, scalb): define for compatibility with
33916           other platforms. [ruby-dev:26430]
33918 Fri Jul  1 15:37:42 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33920         * missing/crypt.c: modified to make it compilable on platforms
33921           other than BSD.  [ruby-dev:26430]
33923         * missing/erf.c: ditto.  code from <exp.c> merged.
33925 Fri Jul  1 12:44:56 2005  Tanaka Akira  <akr@m17n.org>
33927         * lib/open-uri.rb (OpenURI.open_http): refine post_connection_check
33928           call.
33930 Fri Jul  1 11:34:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33932         * missing/crypt.c: replaced with 4.4BSD version.
33934         * missing/erf.c: ditto.
33936         * missing/vsnprintf.c: removed the third provision from the old
33937           BSD license.  [ruby-core:05177]
33939 Fri Jul  1 01:45:21 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33941         * enum.c (enum_min, enum_max): must not return Qundef.
33942           fixed: [ruby-core:05299]
33944 Fri Jul  1 00:18:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33946         * lib/delegate.rb (Delegator::respond_to): respond_to? must check
33947           destination object.  [ruby-talk:146894]
33949 Thu Jun 30 23:52:12 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33951         * signal.c (trap): non-string trap hander was ignored.
33952           fixed: [ruby-dev:26417]
33954 Thu Jun 30 19:00:21 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
33956         * lib/irb/ruby-lex.rb (RubyLex::identify_number): alternative implements
33957           for [ruby-dev:26410]. And support a numeric form of 0d99999.
33959 Thu Jun 30 17:28:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33961         * lib/irb/ruby-lex.rb (RubyLex::identify_number): should not treat
33962           plain zero as an octal number.  [ruby-dev:26410]
33964 Thu Jun 30 15:13:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33966         * eval.c (rb_eval): pre-evaluate argument for unambiguous
33967           evaluation order.  [ruby-dev:26383]
33969 Thu Jun 30 14:48:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33971         * lib/net/http.rb (Net::HTTP#connect, Net::HTTP#request): should
33972           not send proxy username and password to origin servers.
33973           [ruby-dev:25673]
33975         * lib/net/http.rb (Net::HTTP::ProxyDelta#edit_path): should not
33976           send HTTPS scheme URL to origine servers. [ruby-dev:25689]
33978 Thu Jun 30 09:53:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33980         * lib/delegate.rb (Delegator::method_missing): forward unknown
33981           method to the destination.  suggested by
33982           <christophe.poucet@gmail.com>.  [ruby-talk:146776]
33984 Wed Jun 29 00:03:20 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
33986         * regparse.c (fetch_token): avoid warning of unused goto tag.
33987           [ruby-dev:26389]
33989 Tue Jun 28 21:59:29 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
33991         * dir.c, eval.c, parse.y, process.c, ruby.c: avoid warning "unused
33992           variable" [ruby-dev:26387]
33994         * dir.c (glob_helper): avoid warning "enumeration value `RECURSIVE'
33995           not handled in switch" [ruby-dev:26392]
33997 Tue Jun 28 01:52:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33999         * ext/nkf/lib/kconv.rb: add Kconv::VERSION
34000         * ext/nkf/lib/kconv.rb (conv): can process arrayed options
34001         * ext/nkf/nkf-utf8/nkf.c: imported Revision 1.69
34002         * ext/nkf/nkf-utf8/utf8tbl.c: imported Revision 1.9
34004 Sat Jun 25 23:30:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34006         * process.c (detach_process_watcher): terminate process watcher
34007           thread right after rb_waitpid() succeed.  [ruby-talk:146430]
34009 Sat Jun 25 17:12:20 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34011         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_query): should
34012           discard if key=val pair is empty. patch from Gary Wright.
34014 Sat Jun 25 15:49:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34016         * enum.c (enum_min, enum_max, enum_min_by, enum_max_by): do not ignore
34017           nil as the first element.
34019 Sat Jun 25 15:13:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34021         * lib/set.rb (Set#==): [ruby-dev:25206] (ported from ruby_1_8 branch)
34023 Sat Jun 25 11:37:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
34025         * ext/nkf/lib/kconv.rb: remove constants
34026           Iconv_Shift_JIS, Uconv_EUC_JP, Iconv_UTF8
34027         * ext/nkf/lib/kconv.rb: add module functions to Kconv
34028           conv, {eucjp, shiftjis, utf8}?, guess_as_symbol
34029         * ext/nkf/lib/kconv.rb: add instance methods to String
34030           conv, {eucjp, shiftjis, utf8}?
34031         * ext/nkf/lib/kconv.rb: add aliases Kconv.to_* and String#to_*
34033 Fri Jun 24 17:00:00 2005  Shigeo Kobayashi  <shigeo@tinyforest.jp>
34035         * ext/bigdecimal/bigdecimal.c: patch from "NATORI Shin"
34036           (u-tokyo.ac.jp) applied to fix rounding bug.
34038 Fri Jun 24 13:17:45 2005  akira yamada  <akira@ruby-lang.org>
34040         * lib/uri/common.rb, lib/uri/generic.rb: fixed typo in documents and
34041           replaced some existent domain name with "example.com".
34043 Fri Jun 24 12:23:19 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34045         * ext/tk/lib/tk.rb: fix typo on Tk.grid_propagate.
34047         * ext/tk/lib/tk.rb: Tk.event_generate and TkWindow#event_generate
34048           accept TkEvent::Event object as context argument.
34050         * ext/tk/lib/tk/event.rb: add TkEvent::Event#valid_fields and
34051           valid_for_generate to get field parameters of event_generate.
34053 Thu Jun 23 23:55:59 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34055         * runruby.rb: should load built rbconfig.rb.
34057 Thu Jun 23 16:53:15 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34059         * ext/tk/lib/tk/canvastag.rb: TkcGroup.new cannot include given items.
34060           TkcGroup#exclude calls wrong method.
34061           Add alias TkcGroup#add [ruby-talk:146049].
34063         * ext/tk/lib/tk/canvas.rb: TkCanvas#dtag and some subcommands of
34064           TkCanvas#addtag fail to treat a TkcTag argument.
34066         * ext/tk/lib/tk/event.rb: add TkEvent::Event#generate to help to send
34067           current event to other widgets.
34069 Mon Jun 20 18:44:04 2005  Tanaka Akira  <akr@m17n.org>
34071         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): DUMMY_SETJMP is replaced
34072           because setjmp is not enough to fix getcontext and SPARC register
34073           window problem.
34075 Mon Jun 20 17:15:51 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34077         * ext/dbm/dbm.c (fdbm_closed): new method DBM#closed?
34079         * ext/gdbm/gdbm.c (fgdbm_closed): new method GDBM#closed?
34081         * ext/sdbm/init.c (fsdbm_closed): new method SDBM#closed?
34083         * test/dbm/test_dbm.rb, test/gdbm/test_gdbm.rb, test/sdbm/test_sdbm.rb
34084           (teardown): close all db objects before deleting data files.
34086         * win32/win32.{ch} (unlink): hook runtime function to change
34087           file attribute before unlinking.
34088           merge from 1.8, see [ruby-dev:26360]
34090 Mon Jun 20 02:15:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34092         * gc.c (define_final): document fix: finalizers never get called
34093           before target object is destroyed.
34095 Mon Jun 20 01:26:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34097         * ext/openssl/openssl_missing.c, ext/openssl/ossl.h,
34098           ext/openssl/ossl_asn1.c, ext/openssl/ossl_bio.c,
34099           ext/openssl/ossl_pkcs12.h, ext/openssl/ossl_x509req.c: avoid
34100           compiler warnings. suggested by Michal Rokos.
34102 Sun Jun 20 00:22:02 2005  Michael Neumann  <mneumann@ruby-lang.org>
34104         * lib/xmlrpc/utils.rb: Patch by Nobuhiro IMAI fixes the following
34105           problem: Default value modification on
34106           Module#public_instance_methods (false -> true) breaks
34107           s.add_handler(XMLRPC::iPIMethods("sample"), MyHandler.new) style
34108           security protection.
34110         * lib/xmlrpc/client.rb: Aliased XMLRPC::Client#new2 as
34111           XMLRPC::Client#new_from_uri, and #new3 as #new_from_hash.
34113 Sun Jun 19 14:09:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34115         * gc.c (run_final): reduce unnecessary object allocation during
34116           finalization.
34118         * gc.c (rb_gc_call_finalizer_at_exit): deferred finalizers list should
34119           be cleared before calling them.  fixed: [ruby-talk:145790]
34121 Sat Jun 18 01:15:36 2005  Shugo Maeda  <shugo@ruby-lang.org>
34123         * ext/readline/readline.c (readline_readline): do not set
34124           rl_{in,out}stream.
34126         * ext/readline/readline.c (readline_s_set_input): new method.
34128         * ext/readline/readline.c (readline_s_set_output): new method.
34130         * lib/irb/input-method.rb: set Readline.input and Readline.output.
34132 Fri Jun 17 13:01:40 2005  Tanaka Akira  <akr@m17n.org>
34134         * lib/time.rb (Time.parse): fix previous leap seconds support.
34135           (Time.rfc2822): ditto.
34136           (Time.xmlschema): ditto.
34138 Thu Jun 16 15:41:32 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34140         * ruby.c (load_file): '!' is already read. reported by gotoyuzo.
34142 Thu Jun 16 15:09:38 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34144         * ext/tk/tcltklib.c (ip_rb_threadVwaitCommand): Tcl_Release
34145           was missing.
34147 Thu Jun 16 13:34:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34149         * ext/tk/lib/tk.rb: add Tk.getMultiple{Open|Save}File() which return
34150           an Array of selected files.
34152 Thu Jun 16 12:53:24 2005  Tanaka Akira  <akr@m17n.org>
34154         * lib/time.rb (Time.parse): "Fri Jan  1 08:59:60 +0900 1999" was
34155           parsed as "Fri Jan 01 09:00:00 JST 1999" even on an environment
34156           which supports leap seconds.
34157           (Time.rfc2822): ditto.
34158           (Time.xmlschema): ditto.
34160 Thu Jun 16 00:13:41 2005  Tanaka Akira  <akr@m17n.org>
34162         * lib/resolv.rb (Resolv::DNS::Resource#ttl): new attribute.
34163           (Resolv::DNS::Resource#==): ignore @ttl.
34164           (Resolv::DNS::Resource#hash): ditto.
34165           (Resolv::DNS::Message::MessageDecoder#get_rr): save TTL in a
34166           Resource object.
34167           based on [ruby-core:5190] by Eric Hodel.
34169 Wed Jun 15 18:26:39 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34171         * ext/tk/lib/tk.rb: support "tk inactive" sub-command [for Tcl/Tk8.5a3]
34173         * ext/tk/lib/tk/namespace.rb: support "namespace path" sub-command and
34174           'namespace ensemble' sub-command [for Tcl/Tk8.5a3]
34176 Tue Jun 14 02:02:43 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34178         * ext/tk/tkutil/tkutil.c: add TkUtil::CallbackSubst.subst_arg(m, ...)
34179           & _define_attribute_aliases(hash) to get substitution-argument from
34180           attributes (e.g. subst_arg(:x,:y,:num,:button) --> "%x %y %b %b ").
34182         * ext/tk/lib/tk/event.rb: use _define_attribute_aliases().
34184 Mon Jun 13 13:03:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34186         * hash.c (ruby_setenv): fixed SEGV. [ruby-dev:26186]
34188 Mon Jun 13 01:54:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34190         * signal.c (sigexit): call rb_thread_signal_exit() instead of
34191           rb_exit().  [ruby-dev:26347]
34193         * eval.c (rb_thread_signal_exit): a new function to exit on main
34194           thread.
34196         * eval.c (rb_thread_switch): exit status should be retrieved from
34197           ruby_errinfo.
34199         * eval.c (rb_f_exit): ensure exit(0) should call
34200           exit(EXIT_SUCCESS).
34202 Mon Jun 13 01:20:02 2005  Tanaka Akira  <akr@m17n.org>
34204         * eval.c (rb_gc_mark_threads): curr_thread may not be part of the
34205           thread list.  [ruby-dev:26312]
34207 Sat Jun 11 22:34:44 2005  Minero Aoki  <aamine@loveruby.net>
34209         * parse.y: missing arg_paren event.  This patch is contributed by
34210           Mitchell N Charity.
34212 Fri Jun 10 23:55:17 2005  Tanaka Akira  <akr@m17n.org>
34214         * eval.c (unknown_node): show more information.  [ruby-dev:26196]
34216 Fri Jun 10 23:35:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34218         * missing/mkdir.c: remove. [ruby-core:05177]
34220 Fri Jun 10 22:54:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34222         * missing.h: fd_set stuffs need sys/types.h.  fixed: [ruby-core:05179]
34224 Thu Jun  9 23:58:12 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34226         * ext/Win32API/Win32API.c (Win32API_Call): disable global
34227           optimization. fixed: [ruby-core:05143]
34229 Thu Jun  9 23:35:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34231         * enum.c (enum_inject): default the result value to Qundef to use
34232           first element as initial value if not given.
34234 Thu Jun  9 19:55:41 2005  Tanaka Akira  <akr@m17n.org>
34236         * eval.c (ruby_longjmp): new macro to call longjmp, setcontext, etc.
34237           (ruby_setjmp): new macro to call setjmp, getcontext, etc.
34238           (ruby_setjmp): call setjmp before getcontext to avoid IA64 register
34239           stack problem.
34240           [ruby-talk:144939]
34242         * gc.c (Init_stack): remove IA64_MAGIC_STACK_LIMIT.
34244 Thu Jun  9 18:24:16 2005  Tanaka Akira  <akr@m17n.org>
34246         * configure.in, eval.c, gc.c: use libunwind only on HP-UX.
34247           [ruby-dev:26297]
34249 Thu Jun  9 14:46:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34251         * hash.c (env_aset): do not treat nil as key-removing value.
34252           [ruby-list:40865]
34254         * parse.y (method_call): allow aref expression ([]) to take a
34255           block.
34257         * parse.y (block_dup_check): a function to check duplication of
34258           a block argument and an actual block.
34260 Thu Jun  9 11:55:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34262         * lib/delegate.rb (SimpleDelegator::__setobj__): need check for
34263           recursive delegation.  [ruby-core:04940]
34265 Thu Jun  9 11:50:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34267         * lib/cgi.rb: add underscore aliases CGI::escape_html,
34268           CGI::unescape_html, CGI::escape_element, CGI::unescape_element.
34269           [ruby-core:05058]
34271 Wed Jun  8 18:47:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34273         * misc/ruby-mode.el (ruby-expr-beg): fix looking point drift.
34275 Wed Jun  8 12:25:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34277         * array.c (rb_ary_nitems): add the block feature to Array#nitems.
34278           suggested by Bertram Scharpf <lists@bertram-scharpf.de> in
34279           [ruby-talk:134083].
34281 Wed Jun  8 11:11:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34283         * bignum.c (get2comp): revert all prior changes, and calculate
34284           proper 2's complement for negative numbers.
34286 Wed Jun  8 08:33:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34288         * enum.c (enum_min_by, enum_max_by): return nil if no iteration.
34289           fixed: [ruby-dev:26245]
34291         * eval.c (rb_need_block): ensure a block is given.
34293         * eval.c (backtrace): skip successive frames sharing same node.
34295 Wed Jun  8 01:27:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34297         * bignum.c (bignorm): fixed a bug in normalizing negative numbers
34298           reported from Honda Hiroki <hhonda@ipflex.com>.  normalizing
34299           should not trim leading zeros from negative numbers.
34301         * bignum.c (rb_cstr_to_inum): must remove leading zeros for this
34302           case.
34304 Wed Jun  8 00:15:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34306         * ext/socket/socket.c (ruby_getaddrinfo__aix): merged a patch from
34307           KUBO Takehiro <kubo at jiubao.org> to support AIX.  [ruby-list:40832]
34309 Wed Jun  8 00:09:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34311         * lib/yaml/rubytypes.rb (Array::to_yaml): merged a patch from
34312           Tilman Sauerbeck <tilman at code-monkey.de>.  [ruby-core:05055]
34314         * lib/yaml/rubytypes.rb (Hash::to_yaml): ditto.
34316 Wed Jun  8 00:00:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34318         * ext/curses/curses.c (curses_insertln): merged a patch from
34319           TAKAHASHI Tamotsu <ttakah at lapis.plala.or.jp>.  [ruby-ext:02305]
34321 Tue Jun  7 19:34:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34323         * lib/irb/init.rb (IRB::IRB.rc_file_generators): more flexible
34324           IRB.rc_file_generators.  [ruby-core:05163]
34326 Tue Jun  7 18:39:31 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34328         * lib/thread.rb: RDoc documentation from Eric Hodel
34329           <drbrain@segment7.net> added.  [ruby-core:05148]
34331 Tue Jun  7 18:30:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34333         * lib/mkmf.rb (create_makefile): add .SUFFIXES from depend file.
34334           fixed: [ruby-dev:26294]
34336 Tue Jun  7 17:20:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34338         * parse.y (parser_yylex): allow ';;' to be block terminator in
34339           place of 'end'.  [highly experimental]
34341         * misc/ruby-mode.el (ruby-block-end-re): allow ';;' to be a
34342           negative indent trigger.  [highly experimental]
34344         * parse.y (parser_yylex): small error fixed.
34346 Tue Jun  7 16:45:49 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34348         * parse.y (parser_yylex): "respond_to?:foo" should be interpreted
34349           as "respond_to? :foo" at the command level.  [ruby-talk:144303]
34351 Tue Jun  7 16:32:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34353         * sprintf.c (rb_f_sprintf): raise exception on debug mode (-d),
34354           not verbose mode (-v/-w).  [ruby-core:05123]
34356         * sprintf.c (rb_f_sprintf): warn always on verbose mode.
34358 Tue Jun  7 10:30:49 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34360         * ext/tk/lib/multi-tk.rb: slave-ip fails to call procedures
34361           delegated by master-ip.
34363 Mon Jun  6 16:35:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34365         * ext/ripper/depend: add .y to .SUFFIXES for nmake.
34367 Sun Jun  5 23:00:35 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34369         * ext/tk/lib/tk/console.rb: create console when required
34371         * ext/tk/sample/tkextlib/tile/demo.rb: fix TypeError & create Console
34373 Sun Jun  5 10:23:52 2005  Tanaka Akira  <akr@m17n.org>
34375         * signal.c (ruby_signal): don't set SA_RESTART.
34376           [ruby-dev:26276]
34378 Sat Jun  4 14:55:18 2005  Tanaka Akira  <akr@m17n.org>
34380         * test/dbm/test_dbm.rb: merged from ext/dbm/testdbm.rb.
34382         * test/gdbm/test_gdbm.rb: merged from ext/gdbm/testgdbm.rb.
34384         * test/sdbm/test_sdbm.rb: renamed from ext/sdbm/testsdbm.rb with
34385           modification to use test/unit.
34387 Fri Jun  3 23:23:02 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34389         * intern.h (rb_fdset_t): deal with fd bit sets over FD_SETSIZE.
34390           fixed: [ruby-dev:26187]
34392         * eval.c (rb_fd_init, rb_fd_term, rb_fd_zero, rb_fd_set, rb_fd_clr,
34393           rb_fd_isset, rb_fd_copy): ditto.
34395         * io.c (rb_io_wait_readable, rb_io_wait_writable, rb_f_select): ditto.
34397         * ext/io/wait/wait.c (io_wait): ditto.
34399         * ext/socket/socket.c (wait_connectable, unix_recv_io): ditto.
34401 Fri Jun  3 14:06:12 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34403         * ext/tk/lib/multi-tk.rb: fix typo.
34405 Thu Jun  2 23:42:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34407         * parse.y: pragma support on ripper.  [ruby-dev:26266]
34409 Thu Jun  2 00:02:16 2005  Minero Aoki  <aamine@loveruby.net>
34411         * struct.c: accessing >10 member caused segmentation fault.
34412           [ruby-dev:26247]
34414         * test/ruby/test_struct.rb: test it.
34416 Wed Jun  1 11:30:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34418         * bcc32/Makefile.sub: can use single quote character in DESTDIR.
34419           [ruby-dev:26205]
34421         * bcc32/Makefile.sub: Dir.glob in 1.9 doesn't treat \ as path separator.
34422           [ruby-dev:26254]
34424 Wed Jun  1 00:11:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34426         * parse.y (method_call): new experiment: "(expr)(args...)" to
34427           invoke "expr.call(args...)".  [EXPERIMENTAL]
34429 Tue May 31 23:43:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34431         * parse.y (command): revert implicit "call" for local variables.
34433 Tue May 31 15:52:45 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34435         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should
34436           break the loop if the socket reached to EOF. [ruby-talk:142285]
34438         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): send response
34439           without reading the whole request body if keep-alive is diabled.
34440           [experimental]
34442 Mon May 30 23:48:29 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34444         * ext/tk/lib/tk/macpkg.rb: add PACKAGE_NAME information of Tcl/Tk
34445           Extension.
34447         * ext/tk/lib/tk/msgcat.rb: ditto.
34449         * ext/tk/lib/tk/winpkg.rb: ditto.
34451         * ext/tk/lib/tkextlib/*: ditto.
34453 Sat May 28 16:39:21 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34455         * test/openssl/test_x509store.rb: add test for expired CRL
34456           and refine some assertions.
34458 Sat May 28 05:15:44 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34460         * ext/openssl/ossl_x509store.c (ossl_x509stctx_set_time): should
34461           not set internal flag directry.
34463 Sat May 28 02:00:11 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34465         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line):
34466           ENV["REQUEST_URI"] is better to get correct Request-URI
34467           than ENV["SCRIPT_NAME"] + ENV["PATH_INFO"].  [ruby-dev:26235]
34469 Fri May 27 16:32:04 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34471         * lib/mkmf.rb: use the semicolon as the path separator
34472           in the environment of MSYS.  fixed: [ruby-dev:26232]
34474 Thu May 26 20:31:21 2005  Minero Aoki  <aamine@loveruby.net>
34476         * lib/fileutils.rb (remove_entry_secure): add documentation.
34478         * lib/fileutils.rb (remove_entry_secure): should not invoke
34479           unlink(2) against a directory.
34481 Thu May 26 08:29:19 2005  Akiyoshi, Masamichi  <akiyoshi@hp.com>
34483         * vms/vmsruby_private.c, vms/vmsruby_private.h: private routines
34484           for VMS port are added.
34486         * eval.c (ruby_init): change to call VMS private intialization routine.
34488 Thu May 26 07:39:07 2005  Minero Aoki  <aamine@loveruby.net>
34490         * lib/fileutils.rb (rm_r): use lchown(2), not chown(2).
34491           [ruby-dev:26226]
34493         * lib/fileutils.rb (cd): remove :noop option. (feature change)
34495         * lib/fileutils.rb (cp_r): should copy symlink as symlink, for
34496           also tree root. (feature change)
34498         * lib/fileutils.rb (cp_r): new option :dereference_root.
34500         * lib/fileutils.rb: new method remove_entry.
34502         * lib/fileutils.rb: new method remove_entry_secure.
34504         * lib/fileutils.rb: add documentation.
34506 Thu May 26 06:08:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34508         * ext/tk/lib/tk.rb: add shortcut-methods of tk_call + tk_split_list
34510 Wed May 25 20:06:27 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34512         * ext/tk/lib/tk.rb: TkComm#tk_split_*list fail to split a kind of SJIS
34513           strings. To avoid the trouble, add arguments to control converting
34514           encoding, and do split on a UTF8 string.
34516         * ext/tk/lib/multi-tk.rb: modify to attend encoding.
34518         * ext/tk/lib/remote-tk.rb: ditto.
34520         * ext/tk/lib/tk/itemconfig.rb: ditto.
34522         * ext/tk/lib/tk/listbox.rb: ditto.
34524         * ext/tk/lib/tk/namespace.rb: ditto.
34526         * ext/tk/lib/tk/panedwindow.rb: ditto.
34528         * ext/tk/lib/tk/text.rb: ditto.
34530         * ext/tk/lib/tk/textmark.rb: ditto.
34532         * ext/tk/lib/tk/texttag.rb: ditto.
34534         * ext/tk/lib/tk/variable.rb: ditto.
34536         * ext/tk/lib/tk/winfo.rb: ditto.
34538         * ext/tk/lib/tkextlib/iwidgets/scrolledlistbox.rb: ditto.
34540         * ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: ditto.
34542         * ext/tk/lib/tk.rb: add TkWindow#lower_window/raise_window and
34543           Tk#lower_window/raise_window by reason of method-name conflict
34545         * ext/tk/lib/tk/canvas.rb: bug fix on TkCanvas#delete when given
34546           non-TkcItem arguments.
34548         * ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb: ditto.
34550 Wed May 25 19:48:12 2005  Minero Aoki  <aamine@loveruby.net>
34552         * lib/fileutils.rb (rm_r): does chown(2). [ruby-dev:26199]
34554 Wed May 25 12:59:48 2005  Tanaka Akira  <akr@m17n.org>
34556         * lib/open-uri.rb (OpenURI::Meta::RE_QUOTED_STRING): a content of
34557           quoted-string should be zero or more characters.
34559 Tue May 24 23:42:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34561         * numeric.c (fix_pow): support Fixnum ** Float case directly
34562           without coercing.  [ruby-talk:142697] [ruby-talk:143054]
34564 Tue May 24 16:57:24 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34566         * ruby.c (require_libraries): caused SEGV when continuation jumped
34567           in to the required library code.
34569 Tue May 24 17:45:59 2005  Shugo Maeda  <shugo@ruby-lang.org>
34571         * test/readline/test_readline.rb: do not test libedit.
34572           fixed: [ruby-dev:26217]
34574 Tue May 24 06:45:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34576         * misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): string
34577           literals to be matched non-greedy.
34579 Tue May 24 00:39:14 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
34581         * test/soap/calc: method name 'set' was able to crash with a class Set.
34582           [ruby-dev:26210]
34584         * test/wsdl/document/test_rpc.rb: dateTime comparison failed under
34585           TZ=right/Asia/Tokyo (with leap second.) [ruby-dev:26208]
34587 Mon May 23 16:23:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34589         * ext/tk/extconf.rb: Framework support on MacOS X Tiger.
34591         * ext/tk/README.tcltklib: add description of Framework support options.
34593 Mon May 23 15:07:34 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34595         * win32/Makefile.sub ($(PROGRAM)): add dependency on $(LIBRUBY_SO).
34596           [experimental]
34598 Mon May 23 12:21:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34600         * re.c (make_regexp): should not return junk address during
34601           compile time.  [ruby-dev:26206]
34603 Sun May 22 21:54:06 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
34605         * lib/{soap,wsdl,xsd}, test/{soap,wsdl,xsd}: imported soap4r/1.5.4.
34607           == SOAP client and server ==
34609           === for both client side and server side ===
34611           * improved document/literal service support.
34612             style(rpc,document)/use(encoding, literal) combination are all
34613             supported.  for the detail about combination, see
34614             test/soap/test_style.rb.
34616           * let WSDLEncodedRegistry#soap2obj map SOAP/OM to Ruby according to
34617             WSDL as well as obj2soap.  closes #70.
34619           * let SOAP::Mapping::Object handle XML attribute for doc/lit service.
34620             you can set/get XML attribute via accessor methods which as a name
34621             'xmlattr_' prefixed (<foo name="bar"/> -> Foo#xmlattr_name).
34623           === client side ===
34625           * WSDLDriver capitalized name operation bug fixed.  from
34626             1.5.3-ruby1.8.2, operation which has capitalized name (such as
34627             KeywordSearchRequest in AWS) is defined as a method having
34628             uncapitalized name. (converted with GenSupport.safemethodname
34629             to handle operation name 'foo-bar').  it introduced serious
34630             incompatibility; in the past, it was defined as a capitalized.
34631             define capitalized method as well under that circumstance.
34633           * added new factory interface 'WSDLDriverFactory#create_rpc_driver'
34634             to create RPC::Driver, not WSDLDriver (RPC::Driver and WSDLDriver
34635             are merged).  'WSDLDriverFactory#create_driver' still creates
34636             WSDLDriver for compatibility but it warns that the method is
34637             deprecated.  please use create_rpc_driver instead of create_driver.
34639           * allow to use an URI object as an endpoint_url even with net/http,
34640             not http-access2.
34642           === server side ===
34644           * added mod_ruby support to SOAP::CGIStub.  rename a CGI script
34645             server.cgi to server.rb and let mod_ruby's RubyHandler handles the
34646             script.  CGIStub detects if it's running under mod_ruby environment
34647             or not.
34649           * added fcgi support to SOAP::CGIStub.  see the sample at
34650             sample/soap/calc/server.fcgi.  (almost same as server.cgi but has
34651             fcgi handler at the bottom.)
34653           * allow to return a SOAPFault object to respond customized SOAP fault.
34655           * added the interface 'generate_explicit_type' for server side
34656             (CGIStub, HTTPServer).  call 'self.generate_explicit_type = true'
34657             if you want to return simplified XML even if it's rpc/encoded
34658             service.
34660           == WSDL ==
34662           === WSDL definition ===
34664           * improved XML Schema support such as extension, restriction,
34665             simpleType, complexType + simpleContent, ref, length, import,
34666             include.
34668           * reduced "unknown element/attribute" warnings (warn only 1 time for
34669             each QName).
34671           * importing XSD file at schemaLocation with xsd:import.
34673           === code generation from WSDL ===
34675           * generator crashed when there's '-' in defined element/attribute
34676             name.
34678           * added ApacheMap WSDL definition.
34680         * sample/{soap,wsdl}: removed.
34682 Sun May 22 19:11:35 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34684         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLServer#intialize):
34685           should initialize session id context. [ruby-core:4663]
34687         * ext/openssl/ossl_ssl.c (ossl_sslctx_setup): add session id support.
34689 Sun May 22 12:30:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34691         * intern.h, parse.y (ruby_pragma): removed.  fixed: [ruby-dev:26198]
34693         * parse.y (parser_pragma): pragma name was ignored.
34695 Sun May 22 02:39:57 2005  Minero Aoki  <aamine@loveruby.net>
34697         * lib/fileutils.rb (rm_r): new option :secure to avoid
34698           time-to-check-to-time-to-use security problem.  [ruby-dev:26100]
34700         * lib/fileutils.rb (remove_file, remove_dir): try chmod(700) only
34701           on Windows.
34703         * lib/fileutils.rb: does not depend on find.rb.
34705         * lib/fileutils.rb: new method chmod_R.
34707         * lib/fileutils.rb (chown_R): did not work.
34709 Sat May 21 10:23:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34711         * bcc32/Makefile.sub: tds files were not deleted when DESTDIR
34712           included '\' path delimiter. [ruby-dev:26193]
34714 Fri May 20 15:52:18 2005  Shugo Maeda  <shugo@ruby-lang.org>
34716         * ext/readline/readline.c (readline_attempted_completion_function):
34717           return 2 items if completion_proc returns only 1 item (for libedit).
34719 Fri May 20 01:24:33 2005  Shugo Maeda  <shugo@ruby-lang.org>
34721         * ext/readline/extconf.rb: check rl_vi_editing_mode() and
34722           rl_emacs_editing_mode().
34724 Thu May 19 23:33:09 2005  Shugo Maeda  <shugo@ruby-lang.org>
34726         * ext/readline/readline.c: supported libedit. fixed: [ruby-core:4858]
34728         * ext/readline/extconf.rb: added new option --enable-libedit.
34730         * test/readline/test_readline.rb: added assertions for
34731           Readline::HISTORY.
34733         * lib/irb/input-method.rb: do not use Readline::HISTORY.pop.
34735 Wed May 18 23:42:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34737         * error.c (exc_exception): reverted to call Exception#initialize
34738           directly.  fixed: [ruby-dev:26177]
34740 Wed May 18 17:38:51 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34742         * dir.c (glob_helper): check whether path is "" before calling
34743           do_opendir.  [ruby-dev:26183]
34745 Wed May 18 13:40:48 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34747         * win32/win32.c (NtInitialize): fix typo.
34749 Wed May 18 11:07:47 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34751         * dir.c (glob_helper): get rid of using String.  [ruby-dev:26180]
34753         * eval.c (ruby_options), win32/win32.c (NtInitialize): move argument
34754           intialization back.  [ruby-dev:26180]
34756 Tue May 17 11:49:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34758         * win32/win32.c (unixtime_to_filetime): use localtime() instead of
34759           gmtime() when using FileLocalTimeToFileTime().
34761 Mon May 16 22:42:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34763         * win32/win32.h, {bcc32,win32,wince}/Makefile.sub: moved rb_[ugp]id_t
34764           to get rid of redefinition warnings on mingw.
34766         * class.c (rb_class_init_copy): singleton class is disallowed to copy,
34767           from its definition.  fixed: [ruby-talk:142749]
34769         * parse.y (pragma_encoding): add prototype to suppress false warning
34770           by VC.
34772         * process.c (proc_spawn_v): use rb_w32_aspawn on Win32.
34774 Mon May 16 03:29:01 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34776         * win32/win32.{h,c}: define rb_[pgu]id_t.
34778 Mon May 16 00:21:02 2005  Tanaka Akira  <akr@m17n.org>
34780         * lib/pathname.rb (Pathname#unlink): use SystemCallError instead of
34781           Errno::EISDIR because EISDIR is not portable.
34782           [ruby-core:5001]
34784 Sun May 15 22:28:10 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
34786         * lib/drb/drb.rb (DRbObject#method_missing): use raise(exception).
34787           [ruby-dev:26164]
34789 Sun May 15 18:56:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34791         * configure.in, ruby.h: define rb_[pgu]id_t macros instead of typedefs
34792           to get rid of types which might not be defined yet.  [ruby-dev:26165]
34794 Sun May 15 14:35:46 2005  Tanaka Akira  <akr@m17n.org>
34796         * lib/pathname.rb (Pathname#unlink): unlink a symlink to a directory
34797           was failed.  [ruby-core:4992]
34799 Sun May 15 09:57:30 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34801         * win32/win32.c (unixtime_to_filetime): deal with DST.
34802           [ruby-talk:141817]
34804 Sat May 14 23:59:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34806         * error.c (exc_exception, {exit,name_err,syserr}_initialize): call
34807           Execption#initialize.  fixed: [ruby-talk:142593]
34809 Sat May 14 23:56:41 2005  Erik Huelsmann  <ehuels@gmail.com>
34811         * configure.in: Check for the availability of pid_t, gid_t and uid_t and
34812           remove AC_TYPE_UID_T.  fixed: [ruby-core:04745]
34814         * defines.h: Remove pid_t typedef.
34816         * ruby.h: Define rb_pid_t, rb_gid_t and rb_uid_t in accordance with
34817          the available system types.
34819         * process.c: Change instances of pid_t and gid_t to their rb_*
34820          counterparts.
34822         * ext/pty/pty.c: Change pid_t to rb_pid_t.
34824         * vms/config.h: Define HAVE_{P,G,U}ID_T to 1.
34826         * win32/Makefile.sub: Remove #define for {g,u}id_t.
34828         * win32/win32.c: Change pid_t to rb_pid_t.
34830         * wince/Makefile.sub: Remove #define for {g,u}id_t.
34832         * wince/sys/types.h: Remove definitions of {p,g,u}id_t.
34834 Sat May 14 11:47:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34836         * intern.h (ruby_pragma): prototype.  [ruby-core:04881]
34838         * parse.y (parser_pragma): parse Emacsen hack.
34840         * parse.y (parser_prepare): deal with specific syntax at the top.
34842         * ruby.c (load_file): read the first line iff it started with shebang.
34844 Fri May 13 23:44:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34846         * ext/extmk.rb: keep srcdir unexpanded.
34848         * lib/mkmf.rb (create_makefile): quote topdir and hdrdir if necessary.
34849           fixed: [ruby-core:04932]
34851         * lib/mkmf.rb (configuration), {bcc32,win32,wince}/Makefile.sub: make
34852           also INSTALL_PROG and INSTALL_DATA system dependent.
34853           fixed: [ruby-core:04931]
34855 Fri May 13 23:32:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34857         * eval.c (unknown_node): add volatile directive to prototype.
34859 Fri May 13 17:50:49 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34861         * variable.c (generic_ivar_get): rb_attr_get should not warn.
34862           [ruby-dev:26010]
34864 Thu May 12 17:41:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
34866         * ext/nkf/nkf-utf8/nkf.c: follow nkf 2.0.5
34868 Thu May 12 16:50:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34870         * lib/rdoc/parsers/parse_c.rb: more readability for mixing
34871           progress "c..." and warning message.
34873 Thu May 12 15:50:56 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
34875         * lib/rdoc/parsers/parse_c.rb: show parsing progress for C files.
34876           [ruby-core:4341]
34878 Thu May 12 09:53:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34880         * version.c (ruby_show_version): flush for non-tty stdout.
34882 Thu May 12 01:23:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34884         * eval.c (unknown_node): ignore broken NODE to get rid of accessing
34885           possibly inaccessible address.  fixed: [ruby-dev:26122]
34886           should emit more useful information like [ruby-dev:26126], though.
34888 Wed May 11 15:58:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34890         * eval.c (break_jump): break should not cross functions.
34891           [ruby-list:40818]
34893 Wed May 11 10:41:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34895         * lib/tempfile.rb (Tempfile#unlink): fixed typo.
34897 Wed May 11 01:03:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34899         * eval.c (TMP_ALLOC): use macro NEW_NODE() to get rid of warnings on
34900           platforms which have no alloca().  fixed: [ruby-talk:141301]
34902 Sun May  8 23:17:47 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34904         * ext/tk/lib/tk/timer.rb: fix typo.
34906 Sun May  8 21:00:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34908         * hash.c (Init_Hash): remove custom "hash" and "eql?".
34909           (ported from 1.8) [ruby-dev:26132]
34911 Sun May  8 16:50:25 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34913         * lib/profiler.rb: fixed "undefined method `[]' for nil:NilClass"
34914           [ruby-core:4775] [ruby-talk:140401] [ruby-dev:26118]
34916 Sat May  7 22:58:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34918         * lib/mkmf.rb (have_var): no libs argument is given.
34920 Fri May  6 08:08:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34922         * hash.c:rb_hash_hash_i() should be static.  [ruby-core:04815]
34924         * re.c should include regint.h for declarations of oniguruma
34925           functions.  [ruby-core:04815]
34927 Sun May  1 09:15:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34929         * ruby.c (process_sflag): replace '-' in variable names with '_'.
34930           [ruby-dev:26107]
34932         * eval.c (rb_eval), parse.y (arg): reduce fixnum range literal at
34933           parser.  fixed: [ruby-dev:26113]
34935 Sat Apr 30 11:59:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34937         * configure.in (RUBY_FUNC_ATTRIBUTE): check for function attribute.
34938           [ruby-dev:26109]
34940         * eval.c, gc.c: moved noinline to configure.in.
34942         * rubyio.h (DEPRECATED): moved to configure.in.
34944         * ruby.h (DEPRECATED, NOINLINE): default definition.
34946         * win{32,ce}/Makefile.sub (config.h): deprecated and noinline for
34947           __declspec() are available for VC++7 or later.
34949 Sat Apr 30 06:57:39 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34951         * lib/webrick/cgi.rb: new methods WEBrick::CGI#[], WEBrick::CGI#logger
34952           and WEBrick::CGI#config.  these are necessary to use an instance of
34953           WEBrick::CGI as the first argument of HTTPServlet#get_instance.
34954           (suggested by Tatsuki Sugiura)
34956         * lib/webrick/cgi.rb
34957           (WEBrick::CGI#initalize): set a dummy to @config[:ServerSoftware]
34958           if SERVER_SOFTWARE environment variable is not given.
34959           (WEBrick::CGI#start): req.path_info must be a String.
34960           (WEBrick::CGI::Socket#request_line): treat REQUEST_METHOD, PATH_INFO
34961           and SCRIPT_NAME to run in console.
34963         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.escape_path): should
34964           not use String#split("/"). it removes trailing empty path component.
34966 Thu Apr 28 08:21:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34968         * ruby.c (set_arg0): use also environment variable space for setting
34969           $0.  [ruby-core:04774]
34971 Wed Apr 27 23:42:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34973         * win32/Makefile.sub (OPTFLAGS): default global optimization to
34974           disabled only for VC++6.
34976 Tue Apr 26 22:58:00 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34978         * ext/tk/tcltklib.c (ip_invoke_core): call Tcl's "::unknown"
34979           command when can't get information of target command.
34981 Mon Apr 25 13:54:55 2005  speakillof  <speakillof@yahoo.co.jp>
34983         * lib/rexml/encodings/SHIFT-JIS.rb: encoding and decoding were
34984           swapped. [ruby-core:4772]
34986 Mon Apr 25 01:18:43 2005  Tanaka Akira  <akr@m17n.org>
34988         * oniguruma.h (OnigWarnFunc): add a variadic argument.
34989           [ruby-core:4751]
34991 Sat Apr 23 19:49:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34993         * ext/tk/tcltklib.c (ip_RubyExitCommand): exit with status code
34994           via TclTkIp#_eval didn't work. [ruby-talk:139390]
34996 Sat Apr 23 11:45:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34998         * eval.c (rb_provided): should check also path name to be loaded.
34999           fixed: [ruby-dev:26093]
35001 Fri Apr 22 16:55:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35003         * ext/tk/tcltklib.c (ip_set_exc_message): fixed memory leak.
35005         * ext/tk/tcltklib.c: eTkCallbackReturn was not initialized.
35007 Thu Apr 21 06:45:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35009         * ruby.c (ruby_incpush_expand, proc_options): expand relative path
35010           given with -I option.  [ruby-dev:26090]
35012         * configure.in, lib/mkmf.rb, {bcc32,win32,wince}/Makefile.sub: improve
35013           C++ support.  [ruby-dev:26089]
35015 Thu Apr 21 01:53:09 2005  Minero Aoki  <aamine@loveruby.net>
35017         * lib/net/http.rb: add rdoc.
35019 Thu Apr 21 00:07:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35021         * lib/mkmf.rb (create_makefile): support platforms have file separator
35022           other than /.
35024         * {bcc32,win32,wince}/Makefile.sub (BUILD_FILE_SEPARATOR): separator
35025           of building platform.
35027         * {bcc32,win32,wince}/Makefile.sub (CP, INSTALL): use COPY command.
35029 Wed Apr 20 23:22:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35031         * Makefile.in, common.mk: miniruby depends on MINIOBJS.
35033         * dmydln.c (dln_load): dummy function to raise LoadError.
35035         * cygwin/GNUmakefile.in, {bcc32,win32,wince}/Makefile.sub: miniruby
35036           can't load extensions on Windows.
35038 Wed Apr 20 23:01:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35040         * win32/ifchange.bat: delete testing files.
35042 Wed Apr 20 22:54:54 2005  Minero Aoki  <aamine@loveruby.net>
35044         * lib/net/http.rb: new method Net::HTTP.post_form.
35046         * lib/net/http.rb: new method Net::HTTPHeader#set_form_data and
35047           its alias #form_data=.
35049         * lib/net/http.rb: Net::HTTPHeader#add_header -> add_field
35050           (adjustted to Ruby 1.8).
35052 Wed Apr 20 10:53:30 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
35054         * lib/rdoc/parsers/parse_rb.rb (lex_init): use IRB module.
35055           [ruby-core:04737]
35057 Wed Apr 20 07:27:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35059         * {bcc32,win32,wince}/configure.bat, {bcc32,win32,wince}/setup.mak:
35060           add extout option.
35062         * bcc32/setup.mak: make configuration variables overridable.
35064 Tue Apr 19 23:37:09 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
35066         * lib/ftools.rb (File.safe_unlink): do not modify a symlinked file.
35068 Tue Apr 19 23:02:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35070         * eval.c (search_required): deal with features with path too.
35072         * intern.h (rb_file_expand_path): prototype.  fixed: [ruby-dev:26082]
35074 Tue Apr 19 08:38:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35076         * eval.c (search_required, rb_require_safe): expand path in
35077           rb_features.  [ruby-dev:26079]
35079         * file.c (rb_find_file_ext): return absolute path.
35081         * ext/extmk.rb: expand path for ext/**/extconf.rb.
35083         * eval.c (search_required): handle static linked extensions.
35085 Mon Apr 18 15:37:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35087         * eval.c (rb_attr): attribute name check added.
35089         * numeric.c (flo_plus): small typo fix.
35091 Mon Apr 18 11:25:14 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35093         * ext/zlib/zlib.c (zstream_run): fixed SEGV. [ruby-core:4712]
35095 Sun Apr 17 23:57:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35097         * ext/extmk.rb (extmake, parse_args): do not expand destdir.
35099         * ext/extmk.rb (relative_from): treat mere drive letter as an absolute
35100           path.
35102 Sat Apr 16 17:01:16 2005  Kouhei Sutou  <kou@cozmixng.org>
35104         * sample/rss/tdiary_plugin/rss-recent.rb (rss_recent_cache_rss):
35105           use the first date information of items as site date information
35106           if channel doesn't have date information.
35108 Sat Apr 16 15:27:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35110         * configure.in (RUBY_PROG_INSTALL): not add -p option to INSTALL.
35111           files need timestamps to be kept are only ar-archive on a few
35112           platforms, and be installed by instruby.rb but not INSTALL.
35113           fixed: [ruby-core:04721]
35115         * mkconfig.rb: purge autoconf value variables.
35117 Sat Apr 16 10:33:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35119         * bcc32/Makefile.sub: quick hack... prepend DESTDIR.
35120           still have restriction on DESTDIR ("", "/", "e:")
35122 Sat Apr 16 03:59:42 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35124         * ext/openssl/extconf.rb: check for OPENSSL_cleanse.
35126         * ext/openssl/openssl_missing.h: ditto.
35128 Fri Apr 15 22:40:19 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
35130         * ext/win32ole/tests/testWIN32OLE.rb: add test for WIN32OLE.codepage=
35132         * ext/win32ole/tests/testOLETYPELIB.rb: correct expected message.
35134 Fri Apr 15 22:04:07 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
35136         * ext/win32ole/win32ole.c(ole_invoke): retry after converting Qnil
35137           to VT_EMPTY.
35139 Thu Apr 14 19:05:06 2005  Minero Aoki  <aamine@loveruby.net>
35141         * parse.y [ripper] (regexp): dispatch regexp option.
35142           [ruby-Bugs:1688]
35144         * ext/ripper/lib/core.rb: regenerated (interface changed).
35146 Thu Apr 14 18:59:43 2005  Minero Aoki  <aamine@loveruby.net>
35148         * lib/fileutils.rb (remove_file): ignore exceptions caused by
35149           chmod.
35151         * lib/fileutils.rb (remove_dir): try to get rights to rmdir.
35152           [ruby-Bugs:1502]
35154 Thu Apr 14 18:51:02 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
35156         * lib/irb/ruby-lex.rb, lib/irb/slex.rb: bug fix of [ruby-Bugs-1745]
35158         * lib/irb/ext/loader.rb, lib/irb/ext/save-history.rb:
35159           fix location of @RCS_ID
35161         * lib/irb/cmd/help.rb: a lost of release IRB 0.9.5.
35163 Thu Apr 14 15:10:30 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
35165         * lib/irb/notifier.rb, lib/irb/output-method.rb, lib/irb/ext/history.rb
35166           fixed warning of 'ruby -w'
35168 Thu Apr 14 05:35:45 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
35170         * doc/irb/irb.rd.ja: a lost  of release IRB 0.9.5.
35172         * lib/irb/slex.rb: bug fix by [ruby-core:04707].
35174 Thu Apr 14 00:20:31 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
35176         * bin/irb lib/irb.rb lib/irb/...: IRB 0.9.5.
35178 Wed Apr 13 23:40:21 2005  Kouhei Sutou  <kou@cozmixng.org>
35180         * lib/rss/rss.rb (RSS::VERSION): 0.1.3 -> 0.1.4.
35182         * lib/rss/rss.rb (RSS::Element#converter): fixed converter
35183           transmission bug.
35185 Wed Apr 13 22:12:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35187         * lib/optparse.rb (OptionParser#order!): call handlers iff matches
35188           non-switch.
35190 Wed Apr 13 21:20:35 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
35192         * configure.in (mingw32): extract msvcr*.dll from objdump result.
35194 Wed Apr 13 19:25:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35196         * configure.in (mingw32): use actual runtime DLL name as ruby DLL
35197           name and default load path.
35199         * win32/Makefile.sub, win32/setup.mak: ditto.
35201 Tue Apr 12 19:30:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35203         * lib/optparse.rb (OptionParser#make_switch, OptionParser#order!):
35204           added non-option and end-of-args handler.  [ruby-talk:136878]
35205           [EXPERIMENTAL]
35207 Tue Apr 12 15:33:09 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35209         * ext/tk/tcltklib.c (ip_finalize): better modification than the
35210           previous commit [ruby-dev:26029].
35212 Tue Apr 12 12:38:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35214         * ext/tk/tcltklib.c (ip_finalize): fix SEGV when Tcl_GlobalEval()
35215           modifies the argument string to eval.
35217 Tue Apr 12 02:21:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35219         * ext/tk/tcltklib.c (ip_finalize): add existence check of
35220           Tcl commands before calling Tcl_GlobalEval().
35222 Mon Apr 11 23:36:04 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35224         * lib/drb/drb.rb: [druby-ja:123] fix: When reference of my object is
35225           loaded, the object is tainted.
35227         * test/drb/test_drb.rb: ditto.
35229 Mon Apr 11 22:18:23 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
35231         * dir.c, file.c (lstat): avoid warnings for mingw.
35233 Mon Apr 11 20:11:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35235         * ext/tk/tcltklib.c (ip_finalize): adhoc patch to avoid SEGV when exit
35236           on Tcl/Tk8.3.x.
35238 Mon Apr 11 15:24:20 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35240         * lib/mkmf.rb (configuration): shouldn't output hdrdir twice.
35242 Sat Apr  9 18:20:31 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35244         * ext/tk/lib/tk/image.rb: support to create TkImage object without
35245           creating a new image object on Tk.
35247         * ext/tk/lib/tk/menu.rb: use TkCommandNames on create_self()
35249         * ext/tk/lib/tk/root.rb: TkRoot.to_eval() returns '.'.
35251         * ext/tk/lib/tk/text.rb: add methods to create a TkText::IndexString
35252           from (x, y) coords.
35254         * ext/tk/lib/tkextlib/tile/: add demo and update support status.
35256 Sat Apr  9 14:42:29 2005  Kouhei Sutou  <kou@cozmixng.org>
35258         * sample/rss/tdiary_plugin/rss-recent.rb: supported configuration
35259           via Web browser.
35261 Fri Apr  8 20:17:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35263         * ext/extmk.rb (extmake): hdrdir needs to be defined also in
35264           Config::CONFIG.
35266         * lib/mkmf.rb (configuration, create_makefile): get rid of recursive
35267           macro reference.
35269 Fri Apr  8 01:55:20 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35271         * ext/tk/sample/demos-{en,jp}/goldberg.rb: reduced window size.
35272           [ruby-dev:25992]
35274 Thu Apr  7 23:58:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35276         * ext/extmk.rb (extmake): keep directory names in Makefile as macros.
35278         * lib/mkmf.rb (configuration, create_makefile): ditto.
35280         * lib/mkmf.rb (CXX_EXT): separate C++ extensions.
35282 Thu Apr  7 17:24:17 2005  Shugo Maeda  <shugo@ruby-lang.org>
35284         * eval.c (rb_call0): "return" event hook should be always executed
35285           if event_hooks is set.
35287 Thu Apr  7 14:33:09 2005  Kouhei Sutou  <kou@cozmixng.org>
35289         * test/rss/test_maker_dc.rb (test_date): added a test for #date=
35290           and #dc_date=.
35292 Thu Apr  7 11:49:53 2005  Kouhei Sutou  <kou@cozmixng.org>
35294         * lib/rss/maker/dublincore.rb: _really_ supported multiple Dublin
35295           Core items.
35297         * test/rss/rss-assertions.rb (assert_multiple_dublin_core): added
35298           an assertion for testing multiple Dublin Core items.
35300         * test/rss/test_maker_dc.rb (test_rss10_multiple): added a test
35301           for making multiple Dublin Core items.
35303 Wed Apr  6 16:06:30 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35305         * test/ruby/test_env.rb (test_key): should test ENV.key instead of
35306           ENV.index. [ruby-dev:25994]
35308 Tue Apr  5 16:01:12 2005  Kouhei Sutou  <kou@cozmixng.org>
35310         * lib/rss/*: refactored.
35311           - gave a name to 'x'.
35312           - undef_method -> remove_method for avoiding a warning in ruby 1.6.
35314 Tue Apr  5 15:45:33 2005  Kouhei Sutou  <kou@cozmixng.org>
35316         * sample/rss/tdiary_plugin/rss-recent.rb:
35317           new option: @options['rss-recent.use-image-link']:
35318           use image as link instread of text if available.
35320         * sample/rss/tdiary_plugin/rss-recent.rb (RSS_RECENT_VERSION):
35321           0.0.5 -> 0.0.6.
35323 Tue Apr  5 15:15:26 2005  Kouhei Sutou  <kou@cozmixng.org>
35325         * lib/rss/dublincore.rb: supported multiple Dublin Core items.
35327         * lib/rss/parser.rb: added class name registry for complex model
35328           elements. (ex. have childlen elements, have some attributes and
35329           a child element and so on.)
35331         * lib/rss/maker/base.rb: added default current_element implementation.
35333         * lib/rss/maker/dublincore.rb: supported multiple Dublin Core
35334           items.
35336         * lib/rss/maker/image.rb: supproted new Dublin Core API.
35339         * lib/rss/trackback.rb (RSS::TrackBackUtils.new_with_value_if_need):
35340           moved to RSS::Utils.
35342         * lib/rss/utils.rb (RSS::Utils.new_with_value_if_need):
35343           moved from RSS::TrackBackUtils.
35346         * lib/rss/maker/image.rb: fixed invalid argument of
35347           add_need_initialize_variable bug.
35349         * lib/rss/maker/trackback.rb: ditto.
35352         * lib/rss/rss.rb (Hash#merge): added for ruby 1.6.
35354         * lib/rss/rss.rb (RSS::BaseModel.date_writer): changed to accept nil
35355           for date value.
35358         * test/test_dublincore.rb: added tests for plural accessor and
35359           multiple Dublin Core items.
35361         * test/test_setup_maker_1.0.rb: fixed swapped actual and expected
35362           values.
35364 Mon Apr  4 23:17:52 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35366         * ext/tk/lib/tk.rb (TkComm#array2tk_list): accept enc-mode argument to
35367           decide whether convert encoding of each element or not.
35369         * ext/tk/lib/tk/variable.rb (TkVariable#value=): fail to convert the
35370           encoding of array elements when assign an array to an TkVariable
35371           object.
35373 Mon Apr  4 10:26:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35375         * ext/tk/lib/tk/dialog.rb: fixed typo.
35377 Sat Apr  2 23:38:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35379         * configure.in (CP, INSTALL): get rid of less portable options.
35381         * lib/mkmf.rb (configuration, create_makefile): correct configuration
35382           variable.
35384         * wince/configure.bat, wince/setup.mak: add prefix, extstatic and
35385           rdoc options.
35387         * lib/mkmf.rb (create_makefile): ensure library directories get made
35388           before copying libraries there.
35390 Sat Apr  2 16:59:46 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35392         * ext/tk/lib/tk.rb: forgot to update RELEASE_DATE
35394         * ext/tk/lib/tk/variable.rb: fix namespace trouble when autoloading
35396         * ext/tk/lib/tk/palette.rb: define Tcl variable 'tkPalette' as global
35398         * ext/tk/lib/tk/dialog.rb: use array2tk_list method when calling
35399           Tk.ip_eval.
35401         * ext/tk/lib/tk/autoload.rb: add autoload entry 'TkDialogObj' and
35402           'TkWarningObj'
35404 Sat Apr  2 13:23:17 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35406         * hash.c (env_key): ENV.index is deprecated as well as Hash#index.
35407           use ENV.key instead. [ruby-dev:25974]
35409 Sat Apr  2 02:19:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35411         * ext/tk/lib/tk.rb (TkWindow.initialize): accept 'without_creating'
35412           option without 'widgetname' option to allow creating a widget object
35413           which is used as an argument of Tcl/Tk's widget allocation commands.
35415         * ext/tk/lib/tk/image.rb (TkImage.initialize): accept 'imagename'
35416           option to create a image object by the given name.
35418 Thu Mar 31 22:23:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35420         * lib/mkmf.rb (SRC_EXT): exclude just case different suffixes on case
35421           insensitive file system platforms.
35423         * README.EXT, README.EXT.ja (Appendix C): utility functions.
35425 Thu Mar 31 14:08:43 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35427         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should return
35428           value. [ruby-dev:25971]
35430 Thu Mar 31 11:07:50 2005  Kouhei Sutou  <kou@cozmixng.org>
35432         * lib/rss/parser.rb: @@setter -> @@setters.
35434         * lib/rss/parser.rb
35435           (RSS::BaseListener.register_uri)
35436           (RSS::BaseListener.uri_registered?)
35437           (RSS::BaseListener.install_get_text_element):
35438           swapped the first argument and the second argument.
35440         * lib/rss/taxonomy.rb: swapped the first argument and the second
35441           argument for RSS::BaseListener.install_get_text_element.
35442         * lib/rss/image.rb: ditto.
35443         * lib/rss/syndication.rb: ditto.
35444         * lib/rss/dublincore.rb: ditto.
35445         * lib/rss/parser.rb: ditto.
35446         * lib/rss/1.0.rb: ditto.
35447         * lib/rss/2.0.rb: ditto.
35448         * lib/rss/0.9.rb: ditto.
35449         * lib/rss/content.rb: ditto.
35451 Thu Mar 31 11:00:36 2005  Kouhei Sutou  <kou@cozmixng.org>
35453         * lib/rss/parser.rb
35454           (RSS::BaseListener.install_setter)
35455           (RSS::BaseListener.register_uri): changed fallback way.
35457 Thu Mar 31 08:25:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35459         * common.mk (RUBYOPT): clear for the environment RubyGems installed.
35461         * common.mk (clean-local): keep $(PREP) files till distclean.
35463         * common.mk (check): do all tests.
35465 Thu Mar 31 06:00:20 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35467         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should not raise
35468           error even if the specified engine could not be loaded. (Dynamic
35469           engines don't have fixed name to load.)
35471 Wed Mar 30 17:41:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35473         * ext/tk/tcltklib.c: add TclTkIp#_create_console() method to create
35474           a Tcl/Tk's console window.
35476         * ext/tk/lib/multi-tk.rb: support TclTkIp#_create_console() method.
35478         * ext/tk/lib/remote-tk.rb: ditto.
35480         * ext/tk/lib/tk/console.rb: ditto.
35482         * ext/tk/lib/tk.rb: update RELEASE_DATE
35484         * ext/tk/sample/demo-*/check2.rb: use 'return' in the Proc object.
35486         * ext/tk/sample/tkextlib/**: ditto.
35488 Tue Mar 29 22:20:49 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35490         * test/rinda/test_rinda.rb: use DRbObject.new_with instead of reinit.
35491           [ruby-dev:25961]
35493 Tue Mar 29 00:04:57 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35495         * lib/drb/drb.rb: move method DRbObject#reinit to DRbObject.new_with.
35496           extract method DRbObject.prepare_backtrace. add DRb.regist_server,
35497           remove_server, fetch_server. change server in thread variable if
35498           in-proc server. [druby-ja:113]
35500         * lib/drb/gw.rb: ditto.
35502 Mon Mar 28 20:53:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35504         * ext/extmk.rb (extract_makefile): nothing to be removed when no file
35505           was deleted.
35507         * ext/extmk.rb (extmake): restore srcdir.
35509 Mon Mar 28 08:39:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35511         * ext/iconv/iconv.c (iconv_create): Iconv::Failure requires 3
35512           arguments.  (pointed out by NaHi)
35514 Sun Mar 27 00:56:58 2005  Minero Aoki  <aamine@loveruby.net>
35516         * lib/fileutils.rb (remove_file): ignore Errno::E* if force option
35517           is set. [ruby-dev:25944]
35519 Sat Mar 26 22:51:33 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35521         * ext/tk/lib/tk.rb (_callback_entry_class?): add for checking whether
35522           a class is available for a callback entry.
35524         * ext/tk/lib/tk.rb (after_cancel): add Tk.after_cancel(afterID) method.
35526         * ext/tk/lib/tk.rb (array2tk_list): change from private module method
35527           of TkComm to public module method.
35529         * ext/tk/lib/tk.rb (cget): add check that slot argument is not
35530           empty string.
35532         * ext/tk/lib/tk.rb (configinfo): ditto.
35534         * ext/tk/lib/tk/itemconfig.rb (itemcget): add check that slot argument
35535           is not empty string.
35537         * ext/tk/lib/tk/itemconfig.rb (itemconfiginfo): ditto.
35539         * ext/tk/lib/tk/entry.rb: add TkEntry#icursor and icursor= (alias of
35540           cursor and cursor= method).
35542         * ext/tk/lib/tk/font.rb: improve font treatment when the font name is
35543           empty string.
35545         * ext/tk/lib/tk/variable.rb: add :variable, :window and :procedure
35546           type.
35548         * ext/tk/lib/tk/variable.rb: improve treatment of array-type
35549           tkvariable.
35551         * ext/tk/lib/tkextlib/blt.rb: add commands for zooming.
35553         * ext/tk/lib/tkextlib/blt/*: bug fix.
35555         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: bug fix and add methods
35556           to call TreeCtrl commands for bindings.
35558         * ext/tk/sample/tkextlib/blt/*: new sample scripts.
35560         * ext/tk/sample/tkextlib/treectrl/*: ditto.
35562 Fri Mar 25 10:53:16 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
35564         * configure.in (WIN32_LEAN_AND_MEAN): removed because a lot of
35565           troubles.  [ruby-list:40721]
35567 Thu Mar 24 23:10:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35569         * lib/mkmf.rb (macro_defined?): try to compile for an old compiler
35570           which doesn't bail out at #error directive.  [ruby-dev:25818]
35572         * lib/mkmf.rb (check_sizeof): refine logging messages.
35574 Wed Mar 23 19:08:10 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35576         * lib/webrick/utils.rb (WEBrick::Utils.create_listeners):
35577           - should raise ArgumentError if no port is specified.
35578           - even if the specified port is 0, all TCPServers should be
35579             initialized with the port given to the first one.
35581         * lib/webrick/server.rb (WEBrick::GenericServer#initialize): if :Port
35582           parameter is 0, it should be updated with the port number which
35583           ectually listened.
35585 Wed Mar 23 16:12:40 2005  Shugo Maeda  <shugo@ruby-lang.org>
35587         * parse.y (primary): fix lineno of rescue and ensure.
35589 Wed Mar 23 00:39:05 2005  Shugo Maeda  <shugo@ruby-lang.org>
35591         * test/ruby/test_settracefunc.rb (test_event): added tests for
35592           "class" and "end" and "raise".
35594 Sun Mar 20 22:51:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35596         * lib/mkmf.rb (mkmf_failed): check if Makefile is created without
35597           create_makefile.
35599 Sat Mar 19 23:48:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35601         * misc/ruby-mode.el (ruby-expr-beg): returned true always.
35602           fixed: [ruby-list:40683]
35604 Sat Mar 19 00:41:02 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35606         * ext/tk/lib/tk/font.rb: add some TkFont class methods to get font
35607           information without creating a TkFont object.
35609         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: bug fix and define some
35610           classes for components of Tk::TreeCtrl
35612 Thu Mar 17 17:42:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35614         * struct.c (make_struct): allow non local-id field
35615           names. [ruby-core:04575]
35617         * struct.c (inspect_struct): ditto.
35619 Wed Mar 16 23:39:13 2005  Shugo Maeda  <shugo@ruby-lang.org>
35621         * test/ruby/test_settracefunc.rb: added test for c-return.
35623 Wed Mar 16 22:57:43 2005  Shugo Maeda  <shugo@ruby-lang.org>
35625         * eval.c (rb_call0): call_cfunc() should be protected.
35627         * eval.c (rb_add_event_hook): use K&R style.
35629         * eval.c (rb_remove_event_hook): ditto.
35631 Wed Mar 16 22:03:15 2005  Shugo Maeda  <shugo@ruby-lang.org>
35633         * eval.c (rb_add_event_hook): new function to add a hook function for
35634           interpreter events.
35636 Wed Mar 16 18:08:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35638         * eval.c (rb_call0): reorganize "return" event post.
35640         * eval.c (return_jump): no need to post "return" event here.
35642 Tue Mar 15 23:49:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35644         * ext/iconv/iconv.c (Init_iconv): InvalidEncoding also should include
35645           Iconv::Failure.
35647 Tue Mar 15 23:12:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35649         * eval.c (recursive_check, recursive_push): more restrictive check.
35650           fixed: [ruby-dev:25916]
35652 Tue Mar 15 16:38:31 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35654         * ext/tk/tkutil/tkutil.c (ary2list): give wrong arguments to hash2kv()
35656 Mon Mar 14 19:39:33 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35658         * ext/tk/lib/tk/timer.rb (TkTimer): forgot to clear @return_value
35659           when restarting
35661         * ext/tk/lib/tk/sample/cd_timer.rb: new sample of TkRTTimer
35663 Mon Mar 14 12:21:03 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35665         * ext/tk/lib/tk/timer.rb (TkRTTimer): forgot to reset the callback
35666           time. So, 'continue' do all callbacks between 'stop' and 'continue'.
35668 Mon Mar 14 08:14:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35670         * object.c (str_to_id): raise ArgumentError for NUL containing
35671           strings.
35673 Mon Mar 14 00:13:49 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35675         * ext/tk/lib/tk/timer.rb (TkRTTimer): correct calculation of offset
35676           value. get a little better accuracy.
35678         * ext/tk/sample/demos-en/widget: use a binding with no local variables
35679           when eval a sample script.
35681         * ext/tk/sample/demos-en/bind.rb: ditto.
35683         * ext/tk/sample/demos-en/tcolor: ditto.
35685         * ext/tk/sample/demos-jp/widget: ditto.
35687         * ext/tk/sample/demos-jp/bind.rb: ditto.
35689         * ext/tk/sample/demos-jp/tcolor: ditto.
35691 Sun Mar 13 22:19:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35693         * eval.c (recursive_pop): raise TypeError instead of fatal error.
35694           fixed: [ruby-dev:25843]
35696 Sun Mar 13 10:09:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35698         * test/rinda/test_rinda.rb: remove test_gc. [ruby-dev:25871]
35700 Sun Mar 13 02:32:54 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35702         * ext/openssl/ossl_ssl.c (ossl_tmp_dh_callback): should get DH
35703           parameter from the current SSL object.
35705 Sun Mar 13 02:09:03 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35707         * ext/openssl/ossl_pkey_dh.c (ossl_create_dh): fix typo.
35708           patch from IWATSUKI Hiroyuki. [ruby-dev:25867]
35710         * ext/openssl/ossl_ssl.c (ossl_tmp_dh_callback): ditto.
35711           (ossl_call_tmp_dh_callback): ditto
35713 Fri Mar 11 03:24:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35715         * parse.y (primary): wrong var node was set for NODE_LAMBDA.
35716           [ruby-core:04555]
35718 Thu Mar 10 19:10:29 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35720         * ext/tk/tcltklib.c (lib_eventloop_ensure): mis-delete a timer handler
35721           when exit from a recursive called eventloop
35723         * ext/tk/lib/tk/timer.rb: new TkRTTimer class, which can works for a
35724           realtime operation
35726         * ext/tk/sample/tkrttimer.rb: sample of TkRTTimer class
35728         * ext/tk/lib/tk/textmark.rb: move  TkTextMark#+ and TkTextMark#- to
35729           TkText::IndexModMethods
35731         * ext/tk/lib/tk/text.rb: improve TkTextMark#+ and TkTextMark#-, and
35732           add them to TkText::IndexModMethods module
35734         * ext/tk/sample/tktextio.rb: add test part of "seek by text index
35735           modifiers"
35737 Thu Mar 10 08:10:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35739         * re.c (make_regexp): need to free internal regexp structure when
35740           compilation fails.  [ruby-talk:133228]
35742 Thu Mar 10 01:08:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35744         * parse.y (bv_decl): remove initialize rule from block local
35745           variable declaration.
35747 Wed Mar  9 23:55:34 2005  Tanaka Akira  <akr@m17n.org>
35749         * lib/pp.rb (PP::PPMethods#guard_inspect_key): support
35750           __recursive_key__.  [ruby-dev:25821]
35752 Wed Mar  9 19:42:21 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35754         * ext/openssl/ossl_ssl.c: OpenSSL::SSL::SSLContexts suports callbacks:
35755           - SSLContext#client_cert_cb is a Proc. it is called when a client
35756             certificate is requested by a server and no certificate was yet
35757             set for the SSLContext. it must return an Array which includes
35758             OpenSSL::X509::Certificate and OpenSSL::PKey::RSA/DSA objects.
35759           - SSLContext#tmp_dh_callback is called in key exchange with DH
35760             algorithm. it must return an OpenSSL::PKey::DH object.
35762         * ext/openssl/ossl_ssl.c:
35763           (ossl_sslctx_set_ciphers): ignore the argument if it's nil.
35764           (ossl_start_ssl, ossl_ssl_write): call rb_sys_fail if errno isn't 0.
35765           [ruby-dev:25831]
35767         * ext/openssl/ossl_pkey.c
35768           (GetPrivPKeyPtr, ossl_pkey_sign): should call rb_funcall first.
35769           (DupPrivPKeyPtr): new function.
35771         * ext/openssl/ossl_pkey_dh.c: add default DH parameters.
35773         * ext/openssl/ossl_pkey.h: ditto.
35775         * ext/openssl/lib/openssl/cipher.rb: fix typo. [ruby-dev:24285]
35777 Wed Mar  9 18:09:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35779         * parse.y (gettable_gen): warns if VCALL name is used as
35780           out-of-scope block local variable.  [EXPERIMENTAL]
35782         * parse.y (opt_bv_decl): add explicit block local variable
35783           declaration.  raises error for name conflicts.  [EXPERIMENTAL]
35785 Wed Mar  9 13:37:57 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35787         * ext/tk/sample/tktextio.rb: fix bug of handling 'end' position.
35788           support initial text, overwrite setting and pos_gravity control.
35790 Tue Mar  8 18:16:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35792         * ext/tk/sample/tktextio.rb: New sample script. TkTextIO class in this
35793           sample supports to use a text widget as if it is a I/O stream (such
35794           like as StringIO class).
35796 Tue Mar  8 13:39:25 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35798         * ext/socket/mkconstants.rb: workaround for some of 4.4BSD-Lite
35799           derived OSs.
35801 Tue Mar  8 12:36:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35803         * ext/socket/socket.c: document from Sam Roberts
35804           <sroberts@uniserve.com> for getsockopt and setsockopt is merged.
35805           [ruby-doc:824]
35807 Tue Mar  8 10:48:53 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35809         * eval.c (rb_exec_recursive): declaration should precede statements
35810           before C99.
35812 Tue Mar  8 10:05:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35814         * error.c (errno_missing): Errno.const_missing to allow references
35815           to SyscallError exceptions not defined on the platform.
35816           [ruby-core:04522]
35818         * error.c (Init_syserr): Errno::NOERROR(0) for fallback exception.
35820 Tue Mar  8 01:19:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
35822         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.66
35823           fixed: [ruby-dev:25828]
35825 Mon Mar  7 21:29:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35827         * lib/webrick/server.rb (WEBrick::GenericServer#start): should
35828           restore @token if accept failure. suggested by Dominique Brezinski.
35829           [ruby-core:04518]
35831         * sample/webrick/httpsd.rb: fix typo in comment. suggested by
35832           Kazuhiko Shiozaki.
35834 Mon Mar  7 21:01:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35836         * eval.c (rb_require_safe): get actual path string under safe level
35837           when requested.  fixed: [ruby-dev:25815]
35839 Mon Mar  7 16:46:02 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35841         * ext/openssl/ossl_ssl.c (ossl_start_ssl, ossl_ssl_read,
35842           ossl_ssl_write): need to set errno on Win32 platform.
35844 Mon Mar  7 14:55:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35846         * eval.c (block_pass): should not push unique number if a block is
35847           not an orphan.  [ruby-dev:25808]
35849 Mon Mar  7 14:13:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35851         * ext/openssl/lib/openssl/buffering.rb (Buffering#initialize):
35852           should set @eof and @rbuffer.
35854 Mon Mar  7 10:28:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35856         * object.c (inspect_obj): unintended space removal.
35857           [ruby-dev:25810]
35859         * eval.c (rb_exec_recursive): should not use NODE in disclosed
35860           context.  [ruby-dev:25812]
35862         * io.c (rb_f_open): need not to check if to_open value is a
35863           T_FILE.  [ruby-dev:25812]
35865 Mon Mar  7 01:21:01 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35867         * ext/tk/tkutil/tkutil.c: follow the change of st.c (committed
35868           at Fri, 4 Mar 2005 15:47:47 +0900 by matz)
35870 Mon Mar  7 00:01:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35872         * ext/tk/tcltklib.c: fail to call TclTkLib.mainloop when $SAFE==4
35874 Sun Mar  6 13:04:10 2005  Dee Zsombor  <zsombor@ruby-lang.org>
35876         * misc/ruby-electric.el: added.
35877         * misc/Readme: updated.
35879 Sun Mar  6 11:47:10 2005  Sam Roberts  <sroberts@uniserve.com>
35881         * lib/pp.rb: rdoced.  [ruby-core:4490]
35883 Sun Mar  6 11:36:37 2005  Tanaka Akira  <akr@m17n.org>
35885         * lib/pp.rb (File::Stat#pretty_print): Etc.getpwuid and Etc.getgrgid
35886           may return nil.  [ruby-talk:129826]
35887           reported by Daniel Berger.
35889 Sun Mar  6 06:34:31 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35891         * ext/openssl/ossl_ssl.c (ossl_start_ssl): should wait for that
35892           the underlying IO become readable or writable if the error was
35893           SSL_ERROR_WANT_READ or SSL_ERROR_WANT_WRITE. [ruby-dev:25795]
35895         * ext/openssl/ossl_ssl.c (ossl_ssl_read, ossl_ssl_write): ditto.
35897         * ext/openssl/lib/openssl/buffering.rb
35898           (Buffering#consume_rbuf): pointless eof flag resetting is deleted.
35899           (Buffering#read): should return an empty string if the specified
35900           size is zero.
35901           (Buffering#readpartial): new method.
35902           (Buffering#readline): fix typo.
35903           (Buffering#getc): return the first character of string correctly.
35904           (Buffering#readchar): fix typo.
35905           (Buffering#eof?): should read again it the input buffer is empty.
35906           (Buffering#do_write): should rescue Errno::EAGAIN.
35907           (Buffering#puts): use "\n" as the output field separator.
35909         * ext/openssl/extconf.rb: get rid of GNUmakefile generation.
35911         * text/openssl/test_pair.rb: test for IO like methods.
35913         * test/ruby/ut_eof.rb: test about empty file.
35915 Sat Mar  5 17:48:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35917         * dir.c (rb_glob): fixed mismatch of argument.
35919         * dir.c (fnmatch): removed unnecessary code. (by string.c 1.219)
35921         * win32/win32.c (NtInitialize): ditto. (by numeric.c 1.117)
35923 Sat Mar  5 16:50:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
35925         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.65
35927 Sat Mar  5 16:29:26 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35929         * ext/tk/lib/multi-tk.rb: freeze callback-entry objects
35931         * ext/tk/lib/tkextlib/tile.rb: support tile-0.6
35933 Sat Mar  5 12:52:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35935         * lib/mkmf.rb (create_makefile): allow putting spaces between target
35936           and colon in depend file.
35938 Sat Mar  5 02:41:00 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35940         * file.c (eaccess): workaround for VC++8 runtime.
35942         * win32/win32.c (ioinfo): VC++8 support.
35944 Fri Mar  4 19:39:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35946         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#do_includes): replace
35947           also locally defined modules.
35949         * ext/iconv/iconv.c: rdocified.
35951         * ext/strscan/strscan.c: moved misplaced rdoc.
35953 Fri Mar  4 16:11:20 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35955         * eval.c (rb_exec_recursive): matched the declaration to prototype.
35957         * ext/curses/curses.c: don't need to check HAVE_WCOLOR_SET excluding
35958           window_color_set().
35960         * ext/tk/tcltklib.c: fixed commit mistakes.
35962 Fri Mar  4 12:45:17 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
35964         * lib/rdoc/parsers/parse_c.rb: allow whitespace after function names.
35965           [ruby-core:4296]
35967         * lib/rdoc/parsers/parse_simple.rb: adds support for private comments
35968           in the "simple" parser. [ruby-core:4301]
35970 Fri Mar  4 12:45:17 2005  Charles Mills  <cmills@freeshell.org>
35972         * lib/rdoc/parsers/parse_c.rb: adds support for constants
35973           (rb_define_const), accessors (rb_define_attr), and makes a
35974           couple fixes. [ruby-core:4307]
35976 Fri Mar  4 12:45:17 2005  Florian Gross  <florgro@gmail.com>
35978         * lib/rdoc/parsers/parse_rb.rb: Logic for def Builtin.method() end
35979           [ruby-core:4302]
35981 Fri Mar  4 12:45:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35983         * array.c: replace rb_protect_inspect() and rb_inspecting_p() by
35984           rb_exec_recursive() in eval.c.
35986         * eval.c (rb_exec_recursive): new function.
35988         * array.c (rb_ary_join): use rb_exec_recursive().
35990         * array.c (rb_ary_inspect, rb_ary_hash): ditto.
35992         * file.c (rb_file_join): ditto.
35994         * hash.c (rb_hash_inspect, rb_hash_to_s, rb_hash_hash): ditto.
35996         * io.c (rb_io_puts): ditto.
35998         * object.c (rb_obj_inspect): ditto
36000         * struct.c (rb_struct_inspect): ditto.
36002 Fri Mar  4 10:15:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36004         * lib/set.rb (SortedSet::setup): a hack to shut up warning.
36005           [ruby-talk:132866]
36007 Fri Mar  4 09:37:12 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36009         * common.mk (install-nodoc, pre-install-doc, post-install-doc):
36010           fix some omissions.
36012 Fri Mar  4 08:09:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36014         * lib/time.rb (Time::strptime): add new function.  inspired by
36015           [ruby-talk:132815].
36017         * lib/parsedate.rb (ParseDate::strptime): ditto.
36019 Fri Mar  4 07:07:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
36021         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.63
36023 Thu Mar  3 23:24:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
36025         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.62
36027 Thu Mar  3 18:47:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36029         * {bcc32,win32,wince}/Makefile.sub (config.h): check if affected
36030           when makefiles are modified.
36032         * {bcc32,win32,wince}/Makefile.sub (config.status): add variables
36033           for tests.
36035         * win32/ifchange.bat: try to update a file only if modified.
36037         * win32/resource.rb: more descriptions.
36039         * common.mk: add {pre,post}-install targets.
36041         * instruby.rb (install?): install particular part.
36043         * bcc32/Makefile.sub (post-install-ext): remove debug information
36044           files after installation.
36046         * ext/tk/tcltklib.c (ip_rbUpdateCommand, ip_rb_threadUpdateCommand):
36047           get rid of warnings with Tcl/Tk 8.3 or former.
36049 Thu Mar  3 11:49:51 2005  Kouhei Sutou  <kou@cozmixng.org>
36051         * sample/rss/tdiary_plugin/rss-recent.rb: added site information.
36053 Wed Mar  2 19:53:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36055         * ext/extmk.rb (parse_args): return false if nothing matched.
36057 Wed Mar  2 17:15:08 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36059         * ext/tk/tcltklib.c (lib_eventloop_core): fix typo
36061 Wed Mar  2 16:59:50 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36063         * eval.c (ruby_native_thread_kill): call pthread_kill() to send a
36064           signal to ruby's native thread
36066         * ruby.h: add definition of ruby_native_thread_kill()
36068         * signal.c (sigsend_to_ruby_thread): send the signal to ruby's
36069           native thread ([ruby-dev:25744], [ruby-dev:25754]), and set
36070           signal mask to the current native thread
36072 Wed Mar  2 16:03:08 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36074         * ext/tk/tcltklib.c: enforce thread-check and exception-handling to
36075           avoid SEGV trouble.
36077         * ext/tk/tkutil/tkutil.c; fix a bug on converting a SJIS string array
36078           to a Tcl's list string.
36080         * ext/tk/tcltklib.c: wrap Tcl's original "namespace" command to
36081           protect from namespace crash.
36083         * ext/tk/lib/multi-tk.rb: enforce exception-handling.
36085         * ext/tk/lib/multi-tk.rb: catch IRB_EXIT to work on irb.
36087         * ext/tk/lib/tk.rb: ditto.
36089         * ext/tk/tcltklib.c: add TclTkLib.mainloop_thread?
36091         * ext/tk/lib/multi-tk.rb: (bug fix) callback returns a value.
36093         * ext/tk/lib/tk/canvas.rb (delete): bug fix when multiple arguments.
36095         * ext/tk/lib/clock.rb: fix 'no method error'.
36097         * ext/tk/lib/clock.rb (self.clicks): accept a Symbol argument.
36099         * ext/tk/lib/variable.rb: be able to set default_value_type; :numeric,
36100           :bool, :string, :symbol, :list, :numlist or nil (default; same to
36101           :string). If set a type, TkVariable#value returns a value of the
36102           type.
36104         * ext/tk/lib/tkextlib/tclx/tclx.rb: add Tk::TclX.signal to warn the
36105           risk of using TclX extension's 'signal' command.
36107         * ext/tk/sample/irbtk.rb: irb with Ruby/Tk.
36109         * ext/tk/sample/demos-*/anilabel.rb: bug fix on 'show code'
36111         * ext/tk/sample/demos-*/aniwave.rb: new Ruby/Tk animation demo.
36113         * ext/tk/sample/demos-*/pendulum.rb: ditto.
36115         * ext/tk/sample/demos-*/goldberg.rb: ditto.
36117         * ext/tk/sample/demos-*/widget: add entries of animation demos.
36119 Wed Mar  2 12:21:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36121         * eval.c (rb_eval): [EXPERIMENTAL] NODE_LAMBDA implemented.
36122           [ruby-dev:25780]
36124         * node.h (NODE_LAMBDA): for literal Proc object.
36126         * parse.y (expr): interpret mere do...end block as proc object.
36128         * parse.y (primary): ditto, for brace block.
36130 Tue Mar  1 21:16:54 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
36132         * regcomp.c (optimize_node_left): uninitialized member
36133           (OptEnv.backrefed_status) was used. [ruby-dev:25778]
36135 Tue Mar  1 16:50:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36137         * regparse.c: move st_*_strend() functions from st.c.  fixed some
36138           potential memory leaks.
36140 Tue Mar  1 00:40:35 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36142         * lib/rinda/tuplespace.rb (Rinda::TupleSpace): improved keeper thread.
36144         * test/rinda/test_rinda.rb: ditto.
36146 Mon Feb 28 23:10:13 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36148         * ext/socket/socket.c (Init_socket): IPv6 is not supported although
36149           AF_INET6 is defined on bcc32. (rev1.108 again)
36151         * ext/socket/mkconstants.rb: ditto.
36153 Mon Feb 28 21:55:49 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
36155         * ext/strscan/strscan.c (strscan_s_allocate):
36156           use onig_region_init().
36158         * ext/strscan/strscan.c (adjust_registers_to_matched):
36159           use onig_region_set().
36161 Mon Feb 28 15:12:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36163         * ext/socket/socket.c (Init_socket): ported more Socket::Constants
36164           from ruby_1_8, and made it easy to add new constants.
36165           [ruby-dev:25771]
36167         * ext/socket/depend: ditto.
36169         * ext/socket/mkconstants.rb: ditto. (added)
36171 Mon Feb 28 11:42:23 2005  Ian Macdonald  <ian@caliban.org>
36173         * exception error messages updated.  [ruby-core:04497]
36175 Mon Feb 28 09:03:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36177         * ext/socket/socket.c (Init_socket): add bunch of Socket
36178           constants.  Patch from Sam Roberts <sroberts@uniserve.com>.
36179           [ruby-core:04409]
36181 Sun Feb 27 05:55:38 2005  Minero Aoki  <aamine@loveruby.net>
36183         * parse.y [ripper]: fix typo. [ruby-core:04494]
36185 Sat Feb 26 16:58:20 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
36187         * parse.y, re.c, regex.h, LEGAL, ext/strscan/strscan.c:
36188           remove oniggnu.h (GNU regex API).
36190 Wed Feb 23 22:08:16 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36192         * st.c, st.h: imported additional file changes on
36193           Oniguruma 3.7.0.
36195 Wed Feb 23 21:45:29 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36197         * ascii.c, euc_jp.c, oniggnu.h, oniguruma.h, regcomp.c,
36198           regenc.c, regenc.h, regerror.c, regexec.c, regint.h,
36199           regparse.c, regparse.h, sjis.c, utf8.c: imported Oni Guruma
36200           3.7.0.
36202 Wed Feb 23 15:04:32 2005  akira yamada  <akira@ruby-lang.org>
36204         * lib/uri/generic.rb (split_userinfo): should split ":pass" into ""
36205           and "pass".  [ruby-dev:25667]
36207 Wed Feb 23 08:00:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36209         * array.c (rb_ary_s_create): no need for negative argc check.
36210           [ruby-core:04463]
36212         * array.c (rb_ary_unshift_m): ditto.
36214 Wed Feb 23 01:53:29 2005  Shugo Maeda  <shugo@ruby-lang.org>
36216         * lib/net/imap.rb (initialize): handle certs correctly. Thanks,
36217           NABEYA Kenichi.
36219 Wed Feb 23 00:37:34 2005  Kouhei Sutou  <kou@cozmixng.org>
36221         * lib/mkmf.rb (mkmf_failed): fixed typo.
36223 Tue Feb 22 23:52:45 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36225         * configure.in, lib/mkmf.rb: use simple commands if available.
36227         * mkconfig.rb: remove autoconf internal variables from rbconfig.rb.
36229         * lib/mkmf.rb (create_makefile): substitute implicit rules in depend
36230           file.
36232         * {bcc32,win32,wince}/Makefile.sub (COMPILE_RULES, RULE_SUBST):
36233           include $(topdir) and $(hdrdir) to search path.
36235 Tue Feb 22 23:51:45 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36237         * ext/syck/rubyext.c: get rid of warnings caused by a bug of VC.
36239 Tue Feb 22 23:50:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36241         * signal.c (ruby_signal, ruby_nativethread_signal): must be valid as
36242           expressions, not only statements.
36244 Tue Feb 22 12:54:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36246         * eval.c (rb_thread_start_0): update curr_thread before raising
36247           TAG_THREAD.  [ruby-dev:25712]
36249 Tue Feb 22 07:24:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36251         * parse.y (parser_yylex): identifier after dot must not be a variable.
36253 Mon Feb 21 18:31:12 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36255         * signal.c: Standard signal handlers ignore signals on non-Ruby native
36256           threads. When a handler is entried with ruby_signal() (like as the
36257           standard signal handlers), the handler for the signal is marked as
36258           it cannot accept non-Ruby native threads. If a handler can treat all
36259           signals on all native threads, please use ruby_nativethread_signal()
36260           to entry it.
36262 Sun Feb 20 00:48:48 2005  Tanaka Akira  <akr@m17n.org>
36264         * lib/open-uri.rb (URI::FTP#buffer_open): access mechanism
36265           re-implemented according to RFC 1738.
36266           reported by Guillaume Marcais.  [ruby-talk:131650]
36268 Sat Feb 19 18:46:56 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36270         * lib/drb/drb.rb (DRbObject#respond_to?): take two arguments.
36271           [ruby-dev:25722]
36273         * test/drb/drbtest.rb: ditto.
36275 Sat Feb 19 13:52:02 2005  Tanaka Akira  <akr@m17n.org>
36277         * lib/open-uri.rb: call OpenSSL::SSL::SSLSocket#post_connection_check
36278           after connection is made.
36280 Sat Feb 19 13:31:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36282         * ext/extmk.rb (extract_makefile): remove no longer existing installed
36283           files.
36285         * lib/mkmf.rb (install_dirs): return installation directory list.
36287         * lib/mkmf.rb (create_makefile): reverted wrongly removed lines.
36289 Sat Feb 19 01:28:56 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36291         * ext/bigdecimal/lib/bigdecimal/newton.rb: resolved LoadError.
36292           [ruby-dev:25685]
36294         * ext/bigdecimal/sample/linear.rb: ditto.
36296         * ext/bigdecimal/sample/nlsolve.rb: ditto.
36298         * ext/bigdecimal/lib/bigdecimal/nlsolve.rb: removed because this file
36299           is sample script and same file exists in ext/bigdecimal/sample.
36301 Fri Feb 18 17:14:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36303         * lib/xmlrpc/parser.rb (XMLRPC::FaultException): make it subclass
36304           of StandardError class, not Exception class.  [ruby-core:04429]
36306 Fri Feb 18 04:06:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36308         * parse.y (fcall_gen): lvar(arg) will be evaluated as
36309           lvar.call(arg) when lvar is a defined local variable. [new]
36311 Thu Feb 17 22:15:34 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
36313         * ext/strscan/strscan.c: calls Oniguruma API directly.
36315 Thu Feb 17 21:53:12 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
36317         * common.mk, LEGAL: remove reggnu.c.
36319 Thu Feb 17 21:53:12 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36321         * gc.c, re.c: now ruby calls Oniguruma API directly, bypassing
36322           GNU compatible APIs.
36324 Thu Feb 17 20:09:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36326         * lib/drb/drb.rb (DRbServer.default_safe_level): fix typo.
36328 Thu Feb 17 20:09:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36330         * test/digest/test_digest.rb: separate test case for each algorithms.
36331           [ruby-dev:25412]
36333 Thu Feb 17 14:31:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36335         * object.c (rb_class_initialize): call inherited method before
36336           calling initializing block.
36338         * eval.c (rb_thread_start_1): initialize newly pushed frame.
36339           fixed: [ruby-dev:25707]
36341 Thu Feb 17 13:46:00 2005  Nathaniel Talbott  <ntalbott@ruby-lang.org>
36343         * lib/test/unit/collector.rb (collect_file): now deletes paths added
36344           to $LOAD_PATH instead of restoring it verbatim.
36346         * lib/test/unit/autorunner.rb (AutoRunner.run): fixed so that
36347           'ruby -rtest/unit -rtest1 -rtest2 -e0' will use the objectspace
36348           collector again. Also tried to simplify the calling convention.
36350         * test/runner.rb: adjusted for new AutoRunner semantics.
36352         * lib/test/unit.rb: ditto.
36354 Thu Feb 17 04:21:47 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36356         * lib/open3.rb (Open3::popen3): $? should not be EXIT_FAILURE.
36357           fixed: [ruby-core:04444]
36359 Thu Feb 17 00:31:21 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36361         * test/drb/test_drb.rb, ut_safe1.rb: port from 1.8
36363 Thu Feb 17 00:02:27 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36365         * eval.c (is_defined): NODE_IASGN is an assignment.
36367 Wed Feb 16 23:54:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36369         * eval.c (rb_thread_start_1): outer block variables wasn't linked to
36370           threads.  fixed: [ruby-dev:25700]
36372 Wed Feb 16 15:11:43 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36374         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::Nonblock#initialize):
36375           native win32 platform doesn't have F_GETFL.
36377 Wed Feb 16 02:47:45 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36379         * ext/openssl/ossl_ssl.c (ossl_ssl_read, ossl_ssl_write): should
36380           call rb_sys_fail instead of raising SSLError if SSL_ERROR_SYSCALL
36381           occurred.
36383         * ext/openssl/lib/openssl/buffering.rb (Buffering#fill_rbuff):
36384           should rescue Errno::EAGAIN.
36386         * ext/openssl/lib/openssl/buffering.rb (Buffering#each): fix typo.
36387           suggested by Brian Ollenberger.
36389         * ext/openssl/lib/openssl/ssl.rb: set non-blocking flag to the
36390           underlying IO.
36392 Tue Feb 15 22:14:34 2005  sheepman  <sheepman@tcn.zaq.ne.jp>
36394         * ext/readline/readline.c (Readline.readline): use rl_outstream
36395           and rl_instream.  [ruby-dev:25699]
36397 Mon Feb 14 23:58:17 2005  Kouhei Sutou  <kou@cozmixng.org>
36399         * lib/rss/parser.rb (RSS::ListenerMixin::tag_end):
36400           fixed invalid namespace handling bug.
36402 Mon Feb 14 13:12:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36404         * ext/openssl/lib/openssl/ssl.rb
36405           (OpenSSL::SSL::SSLSocket#post_connection_check): new method.
36407 Mon Feb 14 00:10:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36409         * lib/drb/drb.rb (DRbServer): add default_safe_level, safe_level,
36410           config[:safe_level] ([druby-ja:120])
36412         * test/drb/test_drb.rb, ut_eval.rb, ut_safe1.rb: ditto.
36414 Sun Feb 13 23:13:46 2005  Kouhei Sutou  <kou@cozmixng.org>
36416         * lib/rss/dublincore.rb (RSS::DublicCoreModel#date{,=}): added
36417           convenient methods.
36419         * lib/rss/0.9.rb (RSS::Rss::Channel#date{,=}): ditto.
36421         * lib/rss/2.0.rb (RSS::Rss::Channel::Item#date{,=}): ditto.
36423         * test/rss/: added tests for the convenient methods.
36425 Sun Feb 13 23:12:47 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36427         * eval.c (rb_thread_start_0): restore prot_tag before rewinding.
36429 Sun Feb 13 16:56:52 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36431         * lib/webrick/cgi.rb (WEBrick::CGI.start): should set reason-phrase
36432           to the value of status header field. ([ruby-dev:40617])
36434 Sun Feb 13 11:38:40 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36436         * regparse.c (type_cclass_hash): (Thanks Nobu) fixed
36437           overrun. ([ruby-dev:25676]).
36439 Sun Feb 13 10:53:08 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36441         * oniggnu.h, oniguruma.h, regcomp.c, st.c: imported
36442           Oni Guruma 3.6.0.
36444 Sun Feb 13 01:33:19 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36446         * lib/erb.rb (ERB::Util.h, u): make it module_function.
36448 Sat Feb 12 22:17:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36450         * eval.c (TAG_THREAD): to start a new thread.
36452         * eval.c (ruby_init, ruby_options, ruby_cleanup, rb_protect,
36453           rb_load_protect, rb_thread_start_0): make thread anchor.
36455         * eval.c (proc_alloc): clone proc object if klass is not Proc or
36456           created in different thread.
36458         * eval.c (rb_block_pass): call a function with a block.  [new]
36460         * eval.c (rb_f_throw): raise NameError in main thread.
36462 Sat Feb 12 17:29:19 2005  Tanaka Akira  <akr@m17n.org>
36464         * lib/open-uri.rb (OpenURI.open_loop): send authentication only for
36465           the URI directly specified.
36467 Sat Feb 12 15:07:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36469         * random.c (rand_init): suppress warning.
36471 Sat Feb 12 14:10:24 2005  Tanaka Akira  <akr@m17n.org>
36473         * lib/open-uri.rb (OpenURI.open_http): reject userinfo explicitly.
36475 Sat Feb 12 13:54:03 2005  Tanaka Akira  <akr@m17n.org>
36477         * lib/open-uri.rb: support https if the platform provides CA
36478           certificates.
36480 Sat Feb 12 06:18:28 2005  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
36482         * ext/etc/etc.c (Init_etc): sGroup needs HAVE_ST_GR_PASSWD check
36483           [ruby-dev:25675]
36485 Fri Feb 11 17:37:50 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36487         * ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths):
36488           new method OpenSSL::X509::Store#set_default_paths.
36490 Fri Feb 11 11:33:53 2005  Tanaka Akira  <akr@m17n.org>
36492         * lib/open-uri.rb (URI::HTTP#proxy_open): new option supported:
36493           :http_basic_authentication.
36494           suggested by Kent Sibilev.  [ruby-core:4392]
36496 Fri Feb 11 06:30:07 2005  George Ogata  <g_ogata@optushome.com.au>
36498         * misc/ruby-mode.el: ignore parenthesis inside heredoc.
36499           [ruby-core:04415]
36501 Fri Feb 11 04:54:13 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
36503         * lib/rdoc/generators/html_generator.rb: [ruby-core:04412]
36505         * lib/rdoc/generators/ri_generator.rb: ditto.
36507 Thu Feb 10 13:52:42 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36509         * configure.in, win32/Makefile.sub (LIBS, COMMON_HEADERS): use
36510           winsock2 on mswin32/mingw.
36512         * ext/socket/extconf.rb: ditto.
36514         * win32/win32.c (StartSockets): ditto.
36516         * win32/win32.h: ditto.
36518 Thu Feb 10 12:09:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36520         * ext/extmk.rb (extract_makefile): default to true if not compiled
36521           previously.
36523         * ext/extmk.rb (extmake): create dummy makefile if extconf failed.
36525 Thu Feb 10 12:07:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36527         * win32/win32.c (init_stdhandle): assign standard file handles.
36529         * bcc32/Makefile.sub (COMMON_LIBS): add libraries included in
36530           import32.lib.
36532         * lib/mkmf.rb (create_makefile): restrict prefixing with srcdir to
36533           rule lines, add search path to implicit rules, and set Borland make
36534           special macros for search path.
36536         * win32/win32.c, win32/win32.h (read): avoid a BCC runtime bug.
36538 Thu Feb 10 00:47:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36540         * struct.c (make_struct): fixed: [ruby-core:04402]
36542 Wed Feb  9 16:33:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36544         * ext/socket/socket.c (wait_connectable): fixed wrong condition.
36546 Wed Feb  9 14:42:28 2005  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
36548         * eval.c (scope_dup): add volatile not to optimize tbl.
36550 Wed Feb  9 10:02:02 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36552         * ext/tk/make-tkutil, ext/tk/tkutil/subconf.rb: no longer used.
36554         * ext/tk/tkutil/extconf.rb: need to compile tkutil. [ruby-dev:25607]
36556 Wed Feb  9 08:07:08 2005  Paul Duncan  <pabs@pablotron.org>
36558         * ext/curses/curses.c (window_color_set): [ruby-core:04393]
36560 Tue Feb  8 23:48:36 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36562         * lib/drb/drb.rb: reject :instance_eval, :class_eval, :module_eval
36563           [druby-ja:117]
36565 Tue Feb  8 22:38:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36567         * keywords, parse.y: separate EXPR_VALUE from EXPR_BEG.
36568           fixed: [ruby-core:04310], [ruby-core:04368]
36570 Tue Feb  8 13:06:12 2005  Sam Roberts  <sroberts@uniserve.com>
36572         * ext/socket/socket.c (Init_socket): SO_REUSEPORT added.
36573           [ruby-talk:130092]
36575 Tue Feb  8 00:19:02 2005  Tanaka Akira  <akr@m17n.org>
36577         * lib/resolv.rb (Resolv::DNS::Name#subdomain_of?): new method.
36578           (Resolv::DNS::Name#inspect): ditto.
36579           Suggested by Sam Roberts.  [ruby-talk:129086]
36581 Mon Feb  7 23:14:11 2005  Tanaka Akira  <akr@m17n.org>
36583         * io.c (io_getc): flush rb_stdout before read from stdin, which is
36584           connected to a tty.  [ruby-core:4378]
36586         * rubyio.h (FMODE_TTY): renamed from FMODE_LINEBUF.
36588 Mon Feb  7 10:06:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36590         * object.c: [ruby-doc:818]
36592 Mon Feb  7 02:13:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36594         * ext/socket/extconf.rb (sockaddr_storage): winsock2.h have the
36595           definition of struct sockaddr_storage, but socket.c doesn't
36596           include it because this version of ruby still has binary level
36597           compatibility with winsock1.
36599 Mon Feb  7 01:22:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36601         * ext/extmk.rb (extract_makefile): extract previously collected
36602           informations from existing Makefile.
36604         * ext/socket/extconf.rb: check if getaddrinfo() works fine only when
36605           wide-getaddrinfo option is not given.  fixed: [ruby-dev:25422]
36607         * ext/tk/extconf.rb: separate tkutil configuration.
36609         * lib/mkmf.rb ($extmk): check if under ext directory.
36611         * lib/mkmf.rb (Logging.postpone): allow recursive operation.
36613         * lib/mkmf.rb (try_constant): make sure if really a constant, reduce
36614           the number of times of compile.
36616         * lib/mkmf.rb (have_macro, have_var, byte_order): new functions.
36618         * lib/mkmf.rb (find_library): allow directory list with separators.
36620         * lib/mkmf.rb (arg_config): manage provided configuration options.
36622         * lib/mkmf.rb (dir_config): accept arrays of directory names as
36623           default values.
36625         * lib/mkmf.rb (with_cppflags, with_cflags, with_ldflags): keep flags
36626           modified if the block returned true.
36628 Sun Feb  6 19:20:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36630         * eval.c (stack_extend): add prototype because VC++8 doesn't
36631           accept __declspec(noinline) with K&R style function definitions.
36633 Sun Feb  6 13:56:19 2005  Tadayoshi Funaba  <tadf@dotrb.org>
36635         * lib/date.rb (new_with_hash): changed messages of exception.
36637         * lib/date/format.rb (str[fp]time): undocumented conversion
36638           specifications %[1-3] are now deprecated.
36640 Sun Feb  6 11:27:37 2005  Tanaka Akira  <akr@m17n.org>
36642         * ext/dl/dl.c (Init_dl): function declaration should precede
36643           statements before C99.
36645 Sun Feb  6 03:24:20 2005  Tanaka Akira  <akr@m17n.org>
36647         * lib/resolv.rb (Resolv::DNS::Resource::TXT): multiple strings was not
36648           handled.
36649           (Resolv::DNS::Resource::TXT#strings): new method to return all
36650           strings.
36651           (Resolv::DNS::Message::MessageEncoder#put_string_list): new method.
36652           (Resolv::DNS::Message::MessageDecoder#get_string_list): ditto.
36653           based on [ruby-talk:129732] by Sam Roberts.
36655 Sat Feb  5 02:24:06 2005  Minero Aoki  <aamine@loveruby.net>
36657         * test/ripper/test_scanner_events.rb: fix test.
36659 Fri Feb  4 18:44:35 2005  Minero Aoki  <aamine@loveruby.net>
36661         * ext/ripper/lib/ripper/lexer.rb: last Lexer fix was incomplete;
36662           test all green.
36664 Fri Feb  4 15:57:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36666         * parse.y (open_args): fix too verbose warnings for the space
36667           before argument parentheses.  [ruby-dev:25492]
36669         * parse.y (parser_yylex): ditto.
36671 Fri Feb  4 14:33:25 2005  Minero Aoki  <aamine@loveruby.net>
36673         * ext/ripper/lib/ripper/filter.rb: ripper/tokenizer ->
36674           ripper/lexer. [ruby-dev:25632]
36676 Fri Feb  4 00:24:15 2005  Kouhei Sutou  <kou@cozmixng.org>
36678         * lib/rss: supported Image module.
36679           http://web.resource.org/rss/1.0/modules/image/
36681 Thu Feb  3 23:42:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36683         * ext/stringio/stringio.c (strio_close, strio_close_read, strio_close_write):
36684           should return nil instead of self as well as IO.  [ruby-dev:25623]
36686         * ext/stringio/stringio.c (strio_extend, strio_putc): fill with zero
36687           extended portion.  [ruby-dev:25626]
36689 Thu Feb  3 16:12:57 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36691         * parse.y (parser_yylex): the first expression in the parentheses
36692           should not be a command.  [ruby-dev:25492]
36694 Thu Feb  3 03:31:20 2005  NARUSE, Yui  <naruse@ruby-lang.org>
36696         * ext/nkf/nkf-utf8/nkf.c: follow original v 1.57
36698         * ext/nkf/nkf-utf8/utf8tbl.c: follow original v 1.8
36700         * ext/nkf/nkf-utf8/config.h: follow original v 1.7
36702 Wed Feb  2 23:52:53 2005  sheepman  <sheepman@tcn.zaq.ne.jp>
36704         * ext/stringio/stringio.c (strio_truncate): should MEMZERO an extended
36705           part.  [ruby-dev:25618]
36707 Wed Feb  2 21:56:01 2005  Kouhei Sutou  <kou@cozmixng.org>
36709         * lib/rss/rss.rb (RSS::Element#convert): added.
36711         * lib/rss/rss.rb: convert -> need_convert.
36713         * lib/rss/1.0.rb: ditto.
36715         * lib/rss/0.9.rb: ditto.
36717         * lib/rss/2.0.rb: ditto.
36719         * lib/rss/trackback.rb: ditto.
36721 Wed Feb  2 03:30:58 2005  Minero Aoki  <aamine@loveruby.net>
36723         * ext/ripper/lib/ripper/tokenizer.rb -> lexer.rb.
36725         * ext/ripper/lib/ripper/lexer.rb: new method Ripper.slice.
36726           [experimental]
36728         * ext/ripper/lib/ripper/sexp.rb: new file. [experimental]
36730         * ext/ripper/lib/ripper.rb: require ripper/lexer and ripper/sexp.
36732 Tue Feb  1 21:49:24 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36734         * lib/drb/drb.rb (DRb::DRbObject#respond_to?): check marshal_dump and
36735           _dump.
36737 Tue Feb  1 00:20:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36739         * Makefile.in, configure.in: made EXTOUT configurable.
36741         * ext/extmk.rb (extmake), lib/mkmf.rb: keep topdir as relative style.
36743         * lib/mkmf.rb: make extensions in depth order.  [ruby-dev:25522]
36745         * configure.in (aix): fix linker flags on AIX.  [ruby-talk:125460]
36747 Mon Jan 31 13:16:39 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36749         * ext/tk/extconf.rb: add tkutil configuration step (remove old schema)
36751         * ext/tk/depend: remove the information of tkutil
36753         * ext/tk/make-tkutil: sub-part of Makefile to compile tkutil
36755         * ext/tk/tkutil/tkutil.c: move tkutil.c to subdirectory
36757         * ext/tk/tkutil/subconf.rb: configuration file for tkutil.c
36759         * ext/tk/tkutil/depend: ditto
36761 Mon Jan 31 13:13:35 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36763         * ext/tk/tcltklib.c: add invalid namespace check
36765         * ext/tk/lib/multi-tk.rb: add invalid_namespace? method
36767         * ext/tk/lib/remote-tk.rb: ditto
36769 Mon Jan 31 10:29:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36771         * lib/irb/context.rb (IRB::Context::initialize): [ruby-core:04330]
36773 Mon Jan 31 09:44:03 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36775         * object.c (Init_Object): remove Object#type.  [ruby-core:04335]
36777 Sat Jan 29 09:42:12 2005  Sam Roberts  <sroberts@uniserve.com>
36779         * lib/resolv.rb (Resolv::DNS::Resource::IN::SRV): Added RFC2782 SRV
36780           resource record for specifying location of services.
36782 Sat Jan 29 00:10:33 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36784         * ascii.c, euc_jp.c, hash.c, oniggnu.h, oniguruma.h, regcomp.c,
36785           regenc.c, regenc.h, regerror.c, regexec.c, reggnu.c, regint.h,
36786           regparse.c, regparse.h, sjis.c, st.c, st.h, utf8.c: imported
36787           Oni Guruma 3.5.4.
36789 Fri Jan 28 17:16:55 2005  Tanaka Akira  <akr@m17n.org>
36791         * lib/resolv.rb (Resolv::DNS::Config.parse_resolv_conf):
36792           parse options line for ndots option.
36793           (Resolv::Hosts#lazy_initialize): return self.
36794           (Resolv::DNS#lazy_initialize): ditto.
36795           (Resolv::DNS::Config#lazy_initialize): ditto.
36796           Suggested by Sam Roberts.
36798 Thu Jan 27 17:15:03 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36800         * ext/tk/extconf.rb: support new tk scheme on bccwin32.
36801           fixed: [ruby-dev:25546]
36803 Thu Jan 27 13:18:03 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36805         * st.c (st_foreach): report success/failure by return value.
36806           [ruby-Bugs-1396]
36808 Thu Jan 27 00:12:19 2005  Minero Aoki  <aamine@loveruby.net>
36810         * test/fileutils/test_fileutils.rb (setup): support BSD style
36811           directory group inheritance (again).
36813 Thu Jan 27 00:02:40 2005  Minero Aoki  <aamine@loveruby.net>
36815         * test/fileutils/test_fileutils.rb (setup): support BSD style
36816           directory group inheritance. [ruby-dev:25440]
36818         * test/fileutils/fileasserts.rb (assert_same_entry): show entry
36819           difference.
36821 Wed Jan 26 17:12:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36823         * parse.y: forgot to initialize parser struct.  [ruby-dev:25492]
36825         * parse.y (parser_yylex): no tLABEL on EXPR_BEG.
36826           [ruby-talk:127711]
36828 Wed Jan 26 14:12:58 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36830         * ext/Setup*: remove tcltklib.
36832 Wed Jan 26 12:45:16 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36834         * ext/tk/extconf.rb: support new tk scheme on mswin32.
36835          fixed: [ruby-dev:25535]
36837 Wed Jan 26 10:45:19 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36839         * win32/win32.c (flock_winnt, flock_win95): unlock file even if
36840           LOCK_NB is specified.
36842 Tue Jan 25 23:10:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36844         * ext/tk: merge tcltklib for Ruby/Tk installation control
36846         * ext/tcltklib: remove
36848 Tue Jan 25 17:05:15 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36850         * ruby.c (proc_options): correct -T option in RUBYOPT.
36851           fixed: [ruby-dev:25512]
36853 Tue Jan 25 14:05:52 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36855         * ext/tcltklib/tcltklib.c: fix SEGV bug; trouble on canceling remained
36856           after scripts [ruby-dev:25479]: NULL current namespace when deleting
36857             Tk interpreter [ruby-talk:126225]
36859         * ext/tcltklib/extconf.rb: bug fix; TCL_ENABLE_THREAD flag is inverted
36860           [ruby-talk:126360]
36862         * ext/tcltklib/extconf.rb: add yet another native-thread check
36864         * ext/tk/tkutil.c: fix SEGV bug; NULL string pointer when finalize
36865           Ruby interpreter
36867         * ext/tk/lib/multi-tk.rb: avoid warning for deleted safeTk ip frame
36869         * ext/tk/lib/tk/bindtag.rb: bug fix; new method of named bindtag
36870           doesn't return the created object [ruby-dev:25479]
36872         * ext/tk/lib/tk/menu.rb: bug on treating arguments [ruby-dev:25479]
36874         * ext/tk/lib/tk.rb: bug fix; cannot accept a callback ID string for
36875           a command argument [ruby-dev:25479]
36877         * ext/tk/lib/multi-tk.rb: ditto
36879         * ext/tk/lib/tk/*.rb: ditto
36881         * ext/tk/lib/tkextlib/*.rb: ditto
36883         * ext/tk/sample/demos-jp/anilabel.rb: new demo script
36885         * ext/tk/sample/demos-en/anilabel.rb: ditto
36887         * ext/tk/sample/tkHTML/ss.rb: local variable scope bug fix
36888           [ruby-dev:25479]
36890 Mon Jan 24 16:00:53 2005  NARUSE, Yui  <naruse@ruby-lang.org>
36892         * ext/nkf/lib/kconv.rb (guess_old): not use NKF.guess_old
36893           but NKF.guess1. fixed: [ruby-dev:25491]
36895 Mon Jan 24 15:44:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36897         * document updates - [ruby-core:04296], [ruby-core:04301],
36898           [ruby-core:04302], [ruby-core:04307]
36900 Sun Jan 23 12:38:01 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
36902         * lib/soap/wsdlDriver.rb: from 1.5.3-ruby1.8.2, operation which has
36903           capitalized name (such as KeywordSearchRequest in AWS) is defined as
36904           a method having uncapitalized name. (converted with
36905           GenSupport.safemethodname to handle operation name 'foo-bar').  it
36906           introduced serious incompatibility; in the past, it was defined as a
36907           capitalized.
36909           define capitalized method as well under that circumstance.
36911 Sun Jan 23 05:24:42 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36913         * ext/openssl/ossl_ocsp.c (ossl_ocspreq_to_der): should call
36914           GetOCSPReq at first.
36916 Sat Jan 22 22:59:08 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36918         * lib/drb/ssl.rb (accept): rescue SSLError. [druby-ja:110]
36920 Sat Jan 22 22:27:28 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36922         * lib/drb/unix.rb: fail if UNIXFileOwner is set. [druby-ja:111]
36924 Fri Jan 21 20:07:02 2005  Tanaka Akira  <akr@m17n.org>
36926         * lib/resolv.rb (Resolv::DNS::Config.resolv): don't raise ResolvError.
36927           reported by Sam Roberts.  [ruby-talk:127133]
36929 Fri Jan 21 17:09:44 2005  Shugo Maeda  <shugo@ruby-lang.org>
36931         * lib/net/imap.rb (decode_utf7): use pack("U*") to encode UTF-8.
36933         * lib/net/imap.rb (encode_utf7): use unpack("U*") to decode UTF-8.
36935         * test/net/imap/test_imap.rb: added tests for Net::IMAP.
36937 Fri Jan 21 16:58:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36939         * dir.c (rb_push_glob): should work for NUL delimited patterns.
36941         * dir.c (rb_glob2): should aware of offset in the pattern.
36943 Fri Jan 21 13:58:37 2005  Shugo Maeda  <shugo@ruby-lang.org>
36945         * lib/net/imap.rb (u8tou16): fixed typo. fixed: [ruby-list:40546]
36947 Fri Jan 21 00:37:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36949         * ext/syck/rubyext.c (syck_parser_bufsize_set): avoid VC++ warning
36950           "local variable 'size' used without having been initialized".
36952 Thu Jan 20 11:42:02 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36954         * string.c (rb_str_new4): should propagate taintedness.
36956         * env.h: rename member names in struct FRAME; last_func -> callee,
36957           orig_func -> this_func, last_class -> this_class.
36959         * struct.c (rb_struct_set): use original method name, not callee
36960           name, to retrieve member slot.  [ruby-core:04268]
36962         * time.c (time_strftime): protect from format modification from GC
36963           finalizers.
36965 Thu Jan 20 02:01:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36967         * object.c (Init_Object): remove rb_obj_id_obsolete()
36969 Wed Jan 19 18:02:19 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36971         * lib/ipaddr.rb (to_s, test_to_s): too many colons with some cases.
36973 Wed Jan 19 01:16:30 2005  Tanaka Akira  <akr@m17n.org>
36975         * lib/resolv.rb (Resolv::DNS::Config.parse_resolv_conf): ignore
36976           domain and search directive without an argument.
36977           reported by Sam Roberts.  [ruby-talk:126781]
36979 Mon Jan 17 23:33:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36981         * configure.in (aix): fix typo.  [ruby-talk:126401]
36983 Mon Jan 17 07:08:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36985         * ext/readline/readline.c: suppress warnings.
36987         * lib/irb/extend-command.rb (IRB::ContextExtender.def_extend_command):
36988           ditto.
36990         * lib/irb/ext/history.rb (IRB::Context::set_last_value): ditto.
36992         * lib/irb/ext/history.rb (IRB::Context::eval_history): ditto.
36994         * lib/irb/locale.rb (IRB::Locale::real_load): ditto.
36996         * lib/irb/slex.rb (SLex::Node::create_subnode): remove garbage.
36998 Mon Jan 17 00:09:42 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
37000         * lib/uri/common.rb (PORT): typo fix. fixed: [ruby-core:04256]
37002 Sat Jan 15 14:57:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37004         * ruby.c (proc_options): ignore trailing CRs at the end of short
37005           options as well as long options.  fixed: [ruby-core:04232]
37007 Sat Jan 15 13:44:22 2005  Kouhei Sutou  <kou@cozmixng.org>
37009         * lib/rss/rss.rb (RSS::VERSION): 0.1.2 -> 0.1.3.
37011         * lib/rss/rss.rb: accept inheritance. [ruby-talk:126104]
37013 Wed Jan 12 12:29:28 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
37015         * eval.c (rb_mod_define_method): incomplete subclass check.
37016           [ruby-dev:25464]
37018         * class.c (rb_make_metaclass): class of metaclasses should be
37019           plain Class.  [ruby-list:40524]
37021 Tue Jan 11 20:58:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37023         * io.c (remain_size): use buffered data instead of unreading to avoid
37024           inconsistency of text mode.  fixed: [ruby-dev:25446]
37026 Tue Jan 11 09:37:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
37028         * numeric.c (Init_Numeric): turn off floating point exceptions
37029           on bcc32. "1e300".to_f had crashed by overflow.
37031 Mon Jan 10 15:28:51 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37033         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line): should
37034           escape SCRIPT_NAME and PATH_INFO before being parsed as a URI.
37036         * lib/webrick/httputils.rb (WEBrick::HTTPUtils#escape_path): add
37037           new method to escape URI path component.
37039         * lib/webrick/ssl.rb (WEBrick::Config::SSL): the default value
37040           of :SSLEnable is false.
37042         * test/webrick/{test_cgi.rb,webrick.cgi}: new file.
37044         * test/webrick/utils.rb: require "webrick/https.h".
37046 Mon Jan 10 01:22:55 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
37048         * gc.c (rb_data_object_alloc): klass may be NULL.
37049           [ruby-list:40498]
37051 Sun Jan  9 14:12:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37053         * io.c (rb_f_select): IO list could be altered.  [ruby-dev:25312]
37055 Sun Jan  9 04:08:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37057         * test/webrick/test_server.rb (test_daemon): delete an assertion
37058           which has possibility to fail by race condition.
37060 Sun Jan  9 03:22:46 2005  Minero Aoki  <aamine@loveruby.net>
37062         * test/fileutils/test_fileutils.rb (test_copy_entry): copy_entry
37063           copies only file type, not mtime. [ruby-dev:25383]
37065 Sat Jan  8 04:38:47 2005  why the lucky stiff  <why@ruby-lang.org>
37067         * lib/yaml.rb: Kernel#y requires an argument.
37069 Fri Jan  7 21:12:29 2005  TAMURA Takashi  <sheepman@tcn.zaq.ne.jp>
37071         * random.c (rand_init): use ALLOC_N instead of ALLOCA_N
37072           [ruby-dev:25426]
37074 Fri Jan  7 20:01:31 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37076         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_service):
37077           should delete trailing LF from the result of pack("m*").
37079         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_connect):
37080           - should delete trailing LF from the result of pack("m*").
37081           - clear Request-Line not to send the response by HTTPServer#run.
37083         * lib/webrick/httputils (WEBrick::HTTPUtils.parse_qvalues):
37084           refine regexp (and change the name of a local variable).
37086         * lib/webrick/server.rb (WEBrick::Daemon.start): prepared stdio
37087           don't allow changing its mode.
37089         * test/webrick/*, sample/webrick/httpproxy.rb: add new files.
37091 Fri Jan  7 18:03:35 2005  Tanaka Akira  <akr@m17n.org>
37093         * gc.c (mark_locations_array): avoid core dump with -O3.
37094           [ruby-dev:25424]
37096 Thu Jan  6 20:29:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
37098         * ext/zlib/zlib.c (zstream_end): should return value.
37100 Thu Jan  6 19:59:03 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
37102         * win32/win32.c (rb_w32_close): didn't close socket handle.
37103           [ruby-dev:25414]
37105         * win32/win32.c (rb_w32_open_osfhandle): bcc32's _open_osfhandle
37106           never set EMFILE.
37108 Thu Jan  6 17:22:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
37110         * random.c (random_seed): O_NONBLOCK isn't defined on some
37111           platforms. [ruby-dev:25417]
37113 Thu Jan  6 13:45:35 2005  Tanaka Akira  <akr@m17n.org>
37115         * lib/time.rb: recognize +00:00 and GMT as a localtime.
37117 Thu Jan  6 07:58:28 2005  Dave Thomas  <dave@pragprog.com>
37119         * lib/rdoc/usage.rb (RDoc::RDoc.usage_no_exit): Allow for colons
37120           in path names on DOS machines. (thanks to Johan Nilsson)
37122 Thu Jan  6 00:02:35 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37124         * test/rinda/test_rinda.rb: use MockClock.sleep instead of Kernel.sleep
37125           [ruby-dev:25387]
37127 Wed Jan  5 20:16:32 2005  Tanaka Akira  <akr@m17n.org>
37129         * random.c (limited_big_rand): didn't work if SIZEOF_BDIGITS == 2.
37130           [ruby-dev:25408]
37132         * random.c (random_seed): refined.
37134 Wed Jan  5 16:39:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
37136         * parse.y (BITSTACK_POP): workaround for bcc32 compiler's bug.
37137           shift assignment operator '>>=' for __int64 in struct may
37138           generate collapsed code. [ruby-dev:25342]
37140         * win32/win32.[ch]: failed to compile on bcc32 (and probably wince)
37141           [ruby-dev:25306]
37143 Wed Jan  5 12:49:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37145         * eval.c (rb_thread_initialize): Thread objects cannot be initialized
37146           again.  fixed: [ruby-core:04067]
37148 Wed Jan  5 02:30:11 2005  Tanaka Akira  <akr@m17n.org>
37150         * random.c (init_by_array): imported from mt19937ar-cok.tgz.
37151           (genrand_int32): ditto.
37152           (genrand_real): replaced with genrand_res53 in mt19937ar-cok.
37153           (rand_init): support bignum for longer seed.
37154           (random_seed): generate longer seed.
37155           (make_mask): new function.
37156           (limited_rand): ditto.
37157           (limited_big_rand): ditto.
37158           (rb_f_rand): call limited_rand and limited_big_rand.
37159           [ruby-dev:25403]
37161 Tue Jan  4 23:25:29 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
37163         * bignum.c (rb_big_rand): should return positive random number.
37164           [ruby-dev:25401]
37166 Tue Jan  4 21:25:43 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37168         * test/drb/{test_drbssl.rb,test_drbunix.rb,ut_drb.rb}: use
37169           DRbService.ext_service. reduce sleep.
37171 Mon Jan  3 14:01:54 2005  Tanaka Akira  <akr@m17n.org>
37173         * random.c (random_seed): don't use /dev/urandom if it is not
37174           character device.
37176 Mon Jan  3 11:37:42 2005  Tanaka Akira  <akr@m17n.org>
37178         * random.c (random_seed): use /dev/urandom if available.
37179           [ruby-dev:25392]
37181 Tue Jan  4 11:15:29 2005  TAMURA Takashi  <sheepman@tcn.zaq.ne.jp>
37183         * bignum.c (rb_big_rand): do not use rb_big_modulo to generate
37184           random bignums.  [ruby-dev:25396]
37186 Mon Jan  3 11:03:37 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37188         * test/drb/test_drb.rb: move TestDRbReusePort to new file.
37189           [ruby-dev:25238]
37191         * test/drb/drbtest.rb: change timeout.
37193         * test/drb/ignore_test_drb.rb: new file.
37195 Mon Jan  3 07:27:46 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37197         * lib/webrick/httpauth/htpasswd.rb (WEBrick::Htpasswd#reload):
37198           raise NotImplementedError if password is encrypted by digest
37199           algorithms. This patch is contributed by sheepman. [ruby-list:40467]
37201         * lib/webrick/httpauth/digestauth.rb
37202           (WEBrick::HTTPAuth::DigestAuth#_authenticate): fix digest calculation.
37203           This patch is contributed by sheepman. [ruby-list:40482]
37205         * lib/webrick/{httpauth.rb,httpauth/basicauth.rb,httpproxy.rb}: use
37206           pack/unpack-template char "m" instead of lib/base64.rb to do base64
37207           encoding/decoding. fixed: [ruby-dev:25336]
37209         * test/webrick/test_httpauth.rb: new file.
37211 Sun Jan  2 15:42:10 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37213         * lib/drb/drb.rb: add lazy stop_service.
37215         * lib/drb/extserv.rb: ditto.
37217 Sun Jan  2 01:17:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37219         * test/drb/drbtest.rb: add method DRbService.ext_service.
37221         * test/drb/test_drb.rb: ditto.
37223         * test/drb/test_drbssl.rb: ditto.
37225 Sat Jan  1 20:23:02 2005  Tanaka Akira  <akr@m17n.org>
37227         * io.c (argf_readpartial): new method ARGF.readpartial.
37228           (io_getpartial): extracted from io_readpartial.
37229           (io_readpartial): call io_getpartial.
37231 Sat Jan  1 17:44:54 2005  Minero Aoki  <aamine@loveruby.net>
37233         * lib/net/http.rb (each_capitalized): should join header field
37234           value.  This patch is contributed sheepman [ruby-list:40478]
37236         * test/net/http/test_httpheader.rb: test it.
37238 Sat Jan  1 16:21:29 2005  Minero Aoki  <aamine@loveruby.net>
37240         * lib/fileutils.rb (copy_stream): use read/write instead of
37241           sysread/syswrite, which allows duck typing. [ruby-dev:25369]
37243         * lib/fileutils.rb (copy_stream): does NOT support nonblocking IO.
37244           [ruby-dev:25370]
37246         * lib/fileutils.rb (copy_entry): could not copy symlink.
37248         * test/fileutils/test_fileutils.rb: test copy_entry, copy_file,
37249           copy_stream.
37251 Sat Jan  1 04:20:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37253         * ext/openssl/ossl_ns_spki.c (ossl_spki_set_challenge): should call
37254           StringValue before GetSPKI. fixed: [ruby-dev:25359].
37256 Sat Jan  1 01:13:28 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
37258         * variable.c (rb_autoload): [ruby-dev:25373]
37260 Fri Dec 31 14:10:43 2004  Dave Thomas  <dave@pragprog.com>
37262         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::display_flow_item):
37263           Fix problem if heading contains formatting.
37265 Fri Dec 31 00:08:02 2004  Tanaka Akira  <akr@m17n.org>
37267         * configure.in (HAVE_RLIM_T): removed because not used.
37269 Thu Dec 30 22:45:39 2004  Tanaka Akira  <akr@m17n.org>
37271         * rubyio.h: don't deprecate rb_read_check.
37273         * io.c (STDIO_READ_DATA_PENDING): reverted from old READ_DATA_PENDING
37274           to check stdio read buffer.
37275           (rb_read_check): use STDIO_READ_DATA_PENDING.
37276           (rb_read_pending): ditto.
37277           (rb_getc): ditto.
37279 Thu Dec 30 05:39:35 2004  Minero Aoki  <aamine@loveruby.net>
37281         * parse.y: eliminate unused members in struct parser_params.
37282           [ruby-dev:25258] (again)
37284         * parse.y: make parser_new() static.
37286 Thu Dec 30 00:41:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37288         * eval.c (svalue_to_avalue): [ruby-dev:25366]
37290         * string.c (rb_str_justify): [ruby-dev:25367]
37292 Wed Dec 29 11:07:07 2004  Dave Thomas  <dave@pragprog.com>
37294         * lib/rdoc/generators/template/html/kilmer.rb: Update to use new
37295           sections.
37297 Tue Dec 28 22:31:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37299         * string.c (rb_str_justify): create buffer string after argument type
37300           conversion.  fixed: [ruby-dev:25341]
37302 Tue Dec 28 17:18:17 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37304         * lib/net/telnet.rb (preprocess): remove NULL unless binmode.
37305           fixed: [ruby-list:40320]
37307 Tue Dec 28 15:41:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37309         * ext/nkf/nkf-utf8/nkf.c (reinit): should initialize all static
37310           variables.  fixed: [ruby-list:40445]
37312 Tue Dec 28 15:25:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37314         * ext/nkf/lib/kconv.rb (Kconv::RegexpEucjp): second byte is up to
37315           0xfe.
37317         * ext/nkf/lib/kconv.rb (Kconv#kconv): should handle UTF8 and UTF16
37318           properly.
37320 Tue Dec 28 13:35:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37322         * ext/zlib/zlib.c (rb_deflate_s_deflate, rb_inflate_s_inflate): ensure
37323           freeing internal zstreams.  fixed: [ruby-dev:25309]
37325         * ext/zlib/zlib.c (rb_deflate_init_copy): replace rb_deflate_clone.
37327 Mon Dec 27 20:02:14 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37329         * ext/tcltklib/tcltklib.c: fix SEGV bug when deleting Tk interp
37331         * ext/tk/lib/multi-tk.rb: ditto
37333 Mon Dec 27 16:54:05 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37335         * ext/openssl/ossl_x509name.c (Init_ossl_x509name): should use
37336           rb_hash_new to get exactly a Hash. fix [ruby-dev:25325].
37338 Mon Dec 27 15:29:12 2004  Minero Aoki  <aamine@loveruby.net>
37340         * test/fileutils/test_fileutils.rb (cp_r): tested wrong file name.
37341           [ruby-dev:25339]
37343 Mon Dec 27 15:15:18 2004  Minero Aoki  <aamine@loveruby.net>
37345         * lib/fileutils.rb (mv): should raise error when moving a
37346           directory to the (empty) directory. [ruby-talk:124368]
37348         * lib/fileutils.rb (mv): wrongly did not overwrite file on Win32
37349           platforms.
37351 Mon Dec 27 14:36:20 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37353         * process.c (NUM2RLIM, RLIM2NUM): Without SIZEOF_RLIM_T is not error.
37354           fixed: [ruby-dev:25346]
37356 Sun Dec 26 16:21:39 2004  Shugo Maeda  <shugo@ruby-lang.org>
37358         * lib/net/imap.rb (Net::IMAP::PlainAuthenticator): added a new class
37359           to support the PLAIN authentication mechanism. Thanks, Benjamin
37360           Stiglitz.
37362 Sat Dec 25 01:28:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37364         * io.c (rb_f_select): [ruby-dev:25312]
37366 Fri Dec 24 23:27:18 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37368         * ext/tk/lib/tk/image.rb: TkPhotoImage#cget bug fix
37370 Fri Dec 24 03:06:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37372         * io.c (io_reopen, rb_io_reopen): prohibit to change access mode for
37373           special IO ports.  [ruby-dev:25225]
37375         * io.c (next_argv): reduce use of stdio.
37377 Fri Dec 24 02:22:53 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37379         * ext/syck/rubyext.c (syck_loader_transfer): check type conversion.
37381         * ext/syck/rubyext.c (syck_parser_assign_io, rb_new_syck_node): duck
37382           typing.
37384         * ext/syck/rubyext.c (syck_parser_s_alloc, syck_parser_initialize):
37385           allocation framework.
37387         * ext/syck/rubyext.c (syck_emitter_s_alloc, syck_emitter_initialize):
37388           ditto.
37390 Fri Dec 24 01:21:00 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37392         * ext/tk/lib/tkextlib/blt.rb: add BLT extension support
37394         * ext/tk/lib/tkextlib/blt/*.rb: ditto
37396         * ext/tk/lib/tkextlib/blt/tile/*.rb: ditto
37398 Thu Dec 23 23:43:24 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37400         * process.c (proc_setgroups): check if the argument length is
37401           modified.  fixed: [ruby-dev:25285]
37403         * process.c (SIZEOF_RLIM_T): err if size of rlim_t is not set.
37405 Thu Dec 23 19:08:41 2004  Tanaka Akira  <akr@m17n.org>
37407         * rubyio.h: rename FMODE_UNSEEKABLE to FMODE_DUPLEX.
37409         * io.c (io_check_tty): extracted function to set FMODE_LINEBUF and
37410           FMODE_DUPLEX.
37412 Thu Dec 23 13:13:33 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37414         * ext/tcltklib/tcltklib.c: define TclTkLib::COMPILE_INFO and
37415           RELEASE_DATE
37417         * ext/tcltklib/extconf.rb: ditto
37419         * ext/tk/tkutil.c: define TkUtil::RELEASE_DATE
37421         * ext/tk/lib/tk.rb: define Tk::RELEASE_DATE
37423 Thu Dec 23 00:16:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37425         * configure.in (bsdi): use $(CC) for LDSHARED.  fixed [ruby-dev:25270]
37427 Wed Dec 22 11:14:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37429         * io.c (rb_io_mode_modenum): replace O_ACCMODE with O_RDWR.
37430           fixed: [ruby-dev:25273]
37432 Wed Dec 22 08:34:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37434         * ext/dl/sym.c (rb_dlsym_initialize): extract internal pointers after
37435           all argument conversion.  fixed: [ruby-dev:25271]
37437 Tue Dec 21 16:15:21 2004  Michael Neumann  <mneumann@ruby-lang.org>
37439         * lib/xmlrpc/client.rb: use "" instead of "." if prefix argument is
37440           nil in proxy methods. nil is default value.
37442         * test/xmlrpc/test_webrick_server.rb, test/xmlrpc/webrick_testing.rb:
37443           use threads instead of forking. this should fix issue #1208
37444           (http://rubyforge.org/tracker/?func=detail&atid=1698&aid=1208&group_id=426).
37445           removed testing of SSL enabled servlet as this hangs.
37447 Wed Dec 22 00:05:10 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37449         * lib/soap/*, test/soap/*, sample/soap/authheader/*: eval cleanup.
37451 Tue Dec 21 22:07:41 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37453         * ext/openssl/ossl_asn1.c (ossl_asn1_decode_all): use rb_str_new4
37454           to avoid SEGV.
37456         * ext/openssl/ossl_asn1.c (ossl_asn1_traverse, ossl_asn1_decode,
37457           ossl_asn1_decode_all): temporary value should be marked volatile.
37459 Tue Dec 21 12:42:34 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37461         * ext/openssl/ossl_asn1.c (ossl_asn1_traverse, ossl_asn1_decode):
37462           use rb_str_new4 to avoid SEGV. fix [ruby-dev:25261]
37464         * test/openssl/test_asn1.rb: add tests for OpenSSL::ASN1.
37466 Tue Dec 21 12:10:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37468         * ext/tk/lib/tk/grid.rb: rescue bug of 'grid configure' on Tcl/Tk8.3-
37470 Mon Dec 20 22:52:29 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37472         * added samples for the previous soap4r's commit.
37474 Mon Dec 20 22:56:39 2004  Tanaka Akira  <akr@m17n.org>
37476         * gc.c (set_stack_end): gcc noinline attribute is available since
37477           gcc-3.1.
37479 Mon Dec 20 22:40:31 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37481         * added files:
37482           * lib/soap/mapping/wsdl*.rb
37483           * lib/wsdl/soap/element.rb
37484           * lib/wsdl/xmlSchema/simpleContent.rb
37486         * modified files:
37487           * lib/soap/*
37488           * lib/wsdl/*
37489           * lib/xsd/*
37490           * test/soap/*
37491           * test/wsdl/*
37492           * test/xsd/*
37494         * summary
37495           * imported from the soap4r repository.  Version: 1.5.3-ruby1.8.2
37497           * added several XSD basetype support: nonPositiveInteger,
37498             negativeInteger, nonNegativeInteger, unsignedLong, unsignedInt,
37499             unsignedShort, unsignedByte, positiveInteger
37501           * HTTP client connection/send/receive timeout support.
37503           * HTTP client/server gzipped content encoding support.
37505           * improved WSDL schema definition support; still is far from
37506             complete, but is making step by step improvement.
37508 Mon Dec 20 14:45:19 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37510         * lib/net/https.rb: delete descriptions about key_file and cert_file.
37511           fixed: [ruby-dev:25243]
37513         * ext/openssl/lib/net/telnets.rb: ditto.
37515 Mon Dec 20 14:07:02 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37517         * ext/tk/lib/multi-tk.rb: supports new features of Tcl/Tk8.5a2
37519         * ext/tk/lib/tk/clock.rb: ditto
37521         * ext/tk/lib/tk/text.rb: ditto
37523         * ext/tk/lib/tk/panedwindow.rb: ditto
37525 Mon Dec 20 13:51:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37527         * ext/socket/socket.c (sock_s_getservbyport): [ruby-talk:124072]
37529 Mon Dec 20 10:51:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37531         * parse.y (special_local_set): prevent the parser object from GC.
37532           fixed: [ruby-dev:25252]
37534 Mon Dec 20 03:30:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37536         * lib/cgi/session.rb (CGI::Session#initialize): empty session id was
37537           used if request had no session key.  fixed: [ruby-core:03981]
37539 Mon Dec 20 01:51:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37541         * struct.c (make_struct): [ruby-dev:25249]
37543 Mon Dec 20 00:16:54 2004  Kouhei Sutou  <kou@cozmixng.org>
37545         * lib/rexml/encodings/SHIFT_JIS.rb: fixed LoadError bug.
37546           [ruby-core:3958]
37548 Sun Dec 19 17:24:59 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37550         * configure.in (enable_rpath): use rpath flag to embed the library
37551           path into extensions on ELF environment.  [ruby-dev:25035]
37553 Sun Dec 19 11:01:25 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37555         * lib/test/unit.rb: use standalone runner for -e.
37557         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner#options): accept
37558           multiple -p and -x options.
37560         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#recursive_collect):
37561           ditto.
37563 Sat Dec 18 16:36:23 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37565         * ext/zlib/zlib.c (rb_deflate_s_deflate, rb_inflate_s_inflate):
37566           disallow interrupt by type conversion.  fixed: [ruby-dev:25226]
37568 Sat Dec 18 15:09:02 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37570         * lib/webrick/httpauth.rb,
37571           lib/webrick/httpauth/{basicauth.rb,digestauth.rb}: use
37572           pack/unpack-template char "m" instead of lib/base64.rb to do base64
37573           encoding/decoding.
37575 Sat Dec 18 10:51:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37577         * dir.c (dir_open_dir): new function.  [ruby-dev:25242]
37579         * io.c (rb_f_open): add type check for return value from to_open.
37581 Fri Dec 17 16:44:26 2004  Tanaka Akira  <akr@m17n.org>
37583         * configure.in (ac_cv_sizeof_rlim_t): set 8 for BSD/OS.
37584           Reported by OHARA Shigeki.  [ruby-dev:25236]
37586 Fri Dec 17 16:28:12 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37588         * ext/tk/lib/tk.rb: fix bug on setting up system encoding
37590         * ext/tk/lib/tk/event.rb: fix error on require process
37592         * ext/tk/lib/tk/font.rb: fix abnormal termination error on Windows
37594         * ext/tk/lib/tk/virtevent.rb: TkVirtualEvent::PreDefVirtEvent.new()
37595           accepts event-sequence arguments
37597         * ext/tk/lib/tk/text.rb: fail to dump embedded images
37599         * ext/tk/lib/tk/text.rb: tag_nextrange and tag_prevrange returns wrong
37600           types of values
37602         * ext/tk/lib/tk/texttag.rb: nextrange and prevrange returns wrong
37603           types of values
37605         * ext/tk/lib/tk/text.rb: add TkText::IndexModMethods module and
37606           TkText::IndexString class to treat text index modifiers
37608         * ext/tk/lib/tk/texttag.rb: use TkText::IndexModMethods module
37610         * ext/tk/lib/tk/textmark.rb: ditto
37612         * ext/tk/lib/tk/textimage.rb: ditto
37614         * ext/tk/lib/tk/textwindow.rb: ditto
37616         * ext/tk/lib/tk/textimage.rb: wrong gravity of text mark for embedded
37617           image
37619         * ext/tk/lib/tk/textwindow.rb: wrong gravity of text mark for
37620           embedded window
37622 Fri Dec 17 13:33:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37624         * lib/cgi/session.rb (CGI::Session#initialize): control adding
37625           session_id hidden fields.  fixed: [ruby-talk:123850]
37627 Fri Dec 17 00:01:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37629         * eval.c (rb_proc_arity, rb_node_arity, rb_mod_method_arity,
37630           rb_obj_method_arity): new functions to obtain method arity.
37631           [ruby-dev:25143]
37633 Thu Dec 16 23:31:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37635         * lib/mkmf.rb (create_makefile): create RUBYARCHDIR also when no extension
37636           is installed.  fixed: [ruby-dev:25215]
37638 Thu Dec 16 22:36:57 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37640         * test/drb/test_drb.rb: adjust and reduce sleep.
37642 Thu Dec 16 18:37:08 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37644         * ext/openssl/ossl.c (ossl_raise): refine message format.
37646 Thu Dec 16 16:29:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37648         * ext/tk/sample/demos-en/widget: modify version check for
37649           supporting features
37651 Thu Dec 16 16:03:50 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37653         * ext/tk/lib/tk/bindtag.rb: bug fix [ruby-talk: 123667]
37655         * ext/tk/lib/tk/timer.rb: accept :idle for the interval argument
37657         * ext/tk/lib/tk.rb: add TkComm._callback_entry?()
37659         * ext/tk/lib/multi-tk.rb: add MultiTkIp.cb_entry_class
37661         * ext/tk/lib/tk/canvas.rb: use TkComm._callback_entry?()
37663         * ext/tk/lib/tk/canvastag.rb: ditto
37665         * ext/tk/lib/tk/dialog.rb: ditto
37667         * ext/tk/lib/tk/optiondb.rb: ditto
37669         * ext/tk/lib/tk/text.rb: ditto
37671         * ext/tk/lib/tk/texttag.rb: ditto
37673         * ext/tk/lib/tk/textwindow.rb: ditto
37675         * ext/tk/lib/tk/timer.rb: ditto
37677         * ext/tk/lib/tk/validation.rb: ditto
37679         * ext/tk/lib/tkextlib/*: ditto
37681 Thu Dec 16 04:02:28 2004  Minero Aoki  <aamine@loveruby.net>
37683         * ext/ripper/extconf.rb: bison is not needed if ripper.c exists.
37684           [ruby-dev:25191]
37686 Thu Dec 16 03:27:10 2004  Minero Aoki  <aamine@loveruby.net>
37688         * lib/net/http.rb: remove junk.
37690 Thu Dec 16 00:57:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37692         * ext/syck/rubyext.c (rb_syck_io_str_read): [ruby-core:03973]
37694 Thu Dec 16 00:43:29 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37696         * lib/drb/drb.rb: changed default binded address family to use an
37697           available address family of host name. [druby-ja:101]
37699         * lib/drb/ssl.rb: ditto
37701 Wed Dec 15 17:47:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37703         * lib/webrick/server.rb (WEBrick::GenericServer#start_thread):
37704           should log about all accepted socket. [ruby-core:03962]
37706         * lib/webrick/accesslog.rb (WEBrick::AccessLog#setup_params):
37707           "%%" and "%u" are supported. [webricken:135]
37709         * lib/webrick/httpservlet/filehandler.rb
37710           (WEBrick::HTTPServlet::FileHandler#check_filename):
37711           :NondisclosureName is acceptable if it is Enumerable.
37713         * lib/webrick/config.rb (WEBrick::Config::FileHandler):
37714           default value of :NondisclosureName is [".ht*", "*~"].
37716 Wed Dec 15 16:10:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37718         * object.c (rb_obj_id_obsolete): warn always.
37720 Wed Dec 15 15:31:02 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37722         * lib/set.rb (Set#==): [ruby-dev:25206]
37724 Wed Dec 15 14:32:18 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37726         * win32/win32.c (rb_w32_fdisset): check whether the handle is valid.
37728 Wed Dec 15 10:30:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37730         * ext/openssl/ossl_digest.c (ossl_digest_initialize): [ruby-dev:25198]
37732 Tue Dec 14 19:17:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37734         * utf8.c (utf8_is_mbc_ambiguous): [ruby-talk:123561]
37736         * utf8.c (utf8_mbc_to_normalize): ditto.
37738 Tue Dec 14 17:08:15 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37740         * win32/win32.c (rb_w32_close): need to reset osfhnd().
37742 Tue Dec 14 14:03:57 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37744         * ext/openssl/ossl.c (ossl_raise): avoid buffer overrun.
37745           [ruby-dev:25187]
37747 Tue Dec 14 12:36:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37749         * lib/cgi/session.rb (CGI::Session::initialize): generate new
37750           session if given session_id does not exist.  [ruby-list:40368]
37752 Tue Dec 14 08:47:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37754         * eval.c (Init_eval): should mark ruby_eval_tree.  [ruby-dev:25189]
37756 Mon Dec 13 18:13:52 2004  Tanaka Akira  <akr@m17n.org>
37758         * gc.c (set_stack_end): new function to obtain stack end address.
37759           set_stack_end obtains a stack end address by an address of local
37760           variable in the function.
37761           (SET_STACK_END, STACK_END): use set_stack_end.  don't use alloca.
37762           This makes the conservative garbage collector to scan a stack frame
37763           of the garbage_collect function itself.  This is required because
37764           callee-save registers may be stored in the frame.
37765           [ruby-dev:25158]
37767 Mon Dec 13 02:45:51 2004  Shugo Maeda  <shugo@ruby-lang.org>
37769         * ext/curses/curses.c (window_subwin): call NUM2INT() before
37770           GetWINDOW(). fixed: [ruby-dev:25161]
37772 Mon Dec 13 00:58:02 2004  Tanaka Akira  <akr@m17n.org>
37774         * lib/pathname.rb (cleanpath_aggressive): make it private.
37775           (cleanpath_conservative): ditto.
37776           Suggested by Daniel Berger.  [ruby-core:3914]
37778 Sun Dec 12 21:32:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37780         * test/ruby/test_super.rb (TestSuper#test_define_method): now methods
37781           from procs can call super.
37783 Sun Dec 12 10:35:10 2004  Dave Thomas  <dave@pragprog.com>
37785         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Don't
37786           show an accessor's r/w flag if none was specified
37788 Sun Dec 12 10:14:03 2004  Dave Thomas  <dave@pragprog.com>
37790         * lib/rdoc/rdoc.rb (RDoc::RDoc::parse_files): Never exclude files
37791           explicitly given on the command line.
37793 Sat Dec 11 21:10:16 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37795         * lib/drb/drb.rb: add DRbRemoteError. [ruby-list:40348],
37796           [ruby-list:40390]
37798         * test/drb/drbtest.rb: ditto.
37800         * test/drb/ut_drb.rb: ditto.
37802 Sat Dec 11 13:08:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37804         * sample/optparse/subcommand.rb: a sample for sub commands like
37805           cvs.  contributed by Minero Aoki.
37807 Fri Dec 10 08:39:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37809         * ext/socket/socket.c (sock_listen): get OpenFile just before calling
37810           listen(2).
37812 Thu Dec  9 16:28:35 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37814         * ext/sdbm/init.c (GetDBM): typo.
37816 Thu Dec  9 16:21:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37818         * lib/webrick/cgi.rb (WEBrick::CGI#setup_header): avoid
37819           SecurityError. [ruby-dev:24970]
37821         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should wait
37822           for reading request till data arrive. [ruby-talk:121068]
37824 Thu Dec  9 14:38:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37826         * string.c (rb_str_inspect): escape # which starts an expression
37827           substitution.  fixed: [ruby-core:03922]
37829         * string.c (rb_str_dump): not escape # which isn't a substitution.
37831 Thu Dec  9 12:31:53 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37833         * io.c (pipe_open): should set prog if argc != 0.
37835 Thu Dec  9 10:54:36 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37837         * ext/dbm/dbm.c (fdbm_select): [ruby-dev:25132]
37839         * ext/sdbm/init.c: ditto.
37841         * ext/gdbm/gdbm.c: ditto.
37843 Thu Dec  9 10:19:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37845         * test/socket/test_socket.rb (test_setsockopt): use SO_LINGER instead
37846           of SO_BINDTODEVICE.  fixed: [ruby-dev:25133]
37848 Thu Dec  9 03:08:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37850         * ext/tcltklib/tcltklib.c (ip_init): set root-win title to "ruby" when
37851           the running script is '-e one-liner' or '-' (stdin).
37853         * ext/tcltklib/extconf.rb: add find_library("#{lib}#{ver}",..) for
37854           stub libs
37856         * ext/tk/lib/tk/textmark.rb: TkTextMarkCurrent and TkTextMarkAnchor
37857           have a wrong parent class.
37859         * ext/tk/lib/tk/dialog.rb: rename TkDialog2 --> TkDialogObj and
37860           TkWarning2 --> TkWarningObj (old names are changed to alias names)
37862         * ext/tk/lib/tk/dialog.rb: bug fix of treatment of 'prev_command'
37863           option and hashes for configuration
37865         * ext/tk/lib/tk/dialog.rb: add TkDialogObj#name to return the
37866           button name
37868         * ext/tk/lib/tk/radiobutton.rb: rename enbugged method value() ==>
37869           get_value() and value=(val) ==> set_value(val).
37871         * ext/tk/lib/tk/menu.rb: add TkMenu.new_menuspec
37873         * ext/tk/lib/tk/menu.rb: add alias (TkMenuButton = TkMenubutton,
37874           TkOptionMenuButton = TkOptionMenubutton)
37876         * ext/tk/lib/tk/event.rb: new method aliases (same as option keys of
37877           event_generate) for Event object
37879         * ext/tk/lib/tk/font.rb: configinfo returns proper types of values
37881         * ext/tk/lib/tk.rb: bind methods accept subst_args + block
37883         * ext/tk/lib/tk/canvas.rb: ditto
37885         * ext/tk/lib/tk/canvastag.rb: ditto
37887         * ext/tk/lib/tk/frame.rb: ditto
37889         * ext/tk/lib/tk/text.rb: ditto
37891         * ext/tk/lib/tk/texttag.rb: ditto
37893         * ext/tk/lib/tk/toplevel.rb: ditto
37895         * ext/tk/lib/tkextlib/*: ditto and bug fix
37897 Wed Dec  8 23:54:29 2004  Dave Thomas  <dave@pragprog.com>
37899         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Typo
37900           meant that h2 tag was invisible.
37902 Wed Dec  8 22:10:02 2004  Tanaka Akira  <akr@m17n.org>
37904         * rubyio.h, io.c, ext/dl/dl.c, ext/pty/pty.c, ext/socket/socket.c:
37905           create FILE object only when required: popen(3) and DL's IO#to_ptr.
37906           [ruby-dev:25122]
37908         * io.c (rb_io_binmode): use setmode for Human68k.  [ruby-dev:25121]
37910 Wed Dec  8 20:13:06 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37912         * process.c (rb_spawn): support for DJGPP.
37914         * lib/mkmf.rb (VPATH): specify the implicit path separator for DJGPP.
37916 Wed Dec  8 17:48:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37918         * eval.c (proc_invoke): merge Guy Decoux's argument preserve
37919           patch in [ruby-core:03874].
37921 Wed Dec  8 17:37:33 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37923         * win32/win32.c (rb_w32_pipe_exec): need to close original socket
37924           handle.
37926 Wed Dec  8 14:31:36 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37928         * sprintf.c (rb_f_sprintf): [ruby-dev:25104]
37930 Wed Dec  8 13:49:46 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37932         * win32/win32.c (rb_w32_pipe_exec): must close original handle
37933           before exec. fixed: [ruby-dev:25112]
37935 Wed Dec  8 11:46:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37937         * parse.y (string_content): get rid of segfault at empty evstr.
37938           fixed: [ruby-dev:25113]
37940 Wed Dec  8 03:26:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37942         * ext/openssl/ossl_bio.c (ossl_obj2bio): should not use fptr->f.
37943           [ruby-dev:25101]
37945 Wed Dec  8 03:26:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37947         * runruby.rb: prepend LIBRUBY_SO to LD_PRELOAD as well as rubytest.rb.
37949 Wed Dec  8 01:35:44 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37951         * win32/win32.c (is_socket): reorder of function definitions.
37953 Wed Dec  8 00:44:31 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37955         * io.c (pipe_open): win32 bidirectional pipe support.
37957         * win32/win32.[ch] (rb_w32_pipe_exec): ditto.
37959         * win32/win32.[ch] (socketpair): new function. POSIX socketpair
37960           emulation.
37962         * win32/win32.c (socketpair_internal): ditto.
37964 Wed Dec  8 00:25:07 2004  Kouhei Sutou  <kou@cozmixng.org>
37966         * test/rss/test_version.rb: added version check test.
37967           [ruby-dev:25053]
37969 Tue Dec  7 15:40:38 2004  Tanaka Akira  <akr@m17n.org>
37971         * io.c (io_fwrite): avoid context switch before writing to stderr.
37972           [ruby-dev:25080]
37974         * rubyio.h: refine deprecated declaration.
37976         * configure.in, file.c, io.c: remove useless check: fseeko, etc.
37978 Tue Dec  7 13:42:07 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37980         * dir.c (dir_s_mkdir): win32 special processing doesn't need any
37981           longer.
37983         * win32/win32.[ch] (rb_w32_mkdir): new function. POSIX.1 compatible
37984           interface.
37986         * win32/win32.[ch] (rb_w32_rmdir): new function.
37988 Tue Dec  7 00:27:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37990         * process.c (proc_setgroups): [ruby-dev:25081]
37992 Mon Dec  6 23:07:57 2004  Tanaka Akira  <akr@m17n.org>
37994         * configure.in: check -lsocket for socketpair and shutdown.
37995           reported by Ville Mattila.  [ruby-core:03903]
37997 Mon Dec  6 23:00:45 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37999         * configure.in (ac_cv_sizeof_rlim_t): setup for DJGPP.
38001         * io.c (is_socket, shutdown): define dummy macros for DJGPP.
38003         * process.c: use SIZEOF_RLIM_T instead of HAVE_RLIM_T for DJGPP.
38005 Mon Dec  6 21:19:40 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38007         * io.c (is_socket): fix typos. [ruby-core:03900]
38009 Mon Dec  6 20:13:28 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38011         * io.c (is_socket): new function.
38013         * io.c (rb_io_close_read, rb_io_close_write): use is_socket().
38015         * io.c (rb_io_fptr_finalize): need to check fptr->f before calling
38016           rb_io_fptr_cleanup().
38018         * io.c (pipe_open): win32 pipe support (experimental).
38020         * win32/win32.[ch] (rb_w32_pipe_exec): return file descriptors
38021           instead of FILE structure objects.
38023         * win32/win32.[ch] (rb_w32_is_socket): new function.
38025 Mon Dec  6 19:40:40 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38027         * Makefile.in (.y.c): simplify the rule.
38029 Mon Dec  6 18:08:10 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38031         * re.c (rb_reg_eqq): document fix.  [ruby-talk:122541]
38033 Mon Dec  6 17:49:30 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38035         * eval.c (run_trap_eval): add prototype for Microsoft compiler.
38037 Mon Dec  6 17:32:38 2004  Tanaka Akira  <akr@m17n.org>
38039         * rubyio.h, intern.h, io.c, file.c, process.c, ext/socket/socket.c,
38040           ext/pty/pty.c, ext/io/wait/wait.c, ext/openssl/ossl_ssl.c:
38041           Use own buffering mechanism instead of stdio.  [ruby-dev:25056]
38043         * io.c, ext/stringio/stringio.c, test/ruby/ut_eof.rb:
38044           EOF flag removed.
38046 Mon Dec  6 17:15:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38048         * test/socket/test_socket.rb (TestBasicSocket#test_setsockopt):
38049           BasicSocket#setsockopt dumps core.  [ruby-dev:25039]
38051         * test/socket/test_tcp.rb (TestTCPSocket#test_recvfrom):
38052           TCPSocket#recvfrom dumps core.  [ruby-dev:24705]
38054         * test/socket/test_udp.rb (TestUDPSocket#test_connect):
38055           UDPSocket#connect dumps core.  [ruby-dev:25045]
38057         * test/socket/test_udp.rb (TestUDPSocket#test_bind):
38058           UDPSocket#bind dumps core.  [ruby-dev:25057]
38060 Mon Dec  6 09:59:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38062         * io.c (io_fread): take VALUE argument.
38064         * ext/socket/socket.c (sock_connect): use rb_str_new4().
38065           [ruby-dev:25052]
38067         * eval.c (rb_yield_0): [ruby-dev:25051]
38069 Mon Dec  6 01:32:31 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
38071         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_public_encrypt,
38072           ossl_rsa_public_decrypt, ossl_rsa_private_encrypt,
38073           ossl_rsa_private_decrypt): should take an optional argument
38074           to specify padding mode. [ruby-talk:122539]
38076         * ext/openssl/ossl_pkey_rsa.c (Init_ossl_rsa): add new constants
38077           PKCS1_PADDING, SSLV23_PADDING, NO_PADDING and PKCS1_OAEP_PADDING
38078           under OpenSSL::PKey::RSA.
38080         * test/openssl/test_pkey_rsa.rb: new file.
38082 Sun Dec  5 19:39:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38084         * lib/optparse.rb (OptionParser::Completion#complete): new parameter
38085           to direct case insensitiveness.
38087         * lib/optparse.rb (OptionParser#order!): ignore case only for long
38088           option.  [ruby-dev:25048]
38090 Sun Dec  5 00:54:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38092         * mkconfig.rb: setup library paths before requiring library.
38093           [ruby-core:03892]
38095 Sat Dec  4 22:54:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38097         * io.c (io_write): remove rb_str_locktmp().  [ruby-dev:25050]
38099         * io.c (io_fwrite): takes VALUE string as an argument.
38100           [ruby-dev:25050]
38102         * ext/socket/socket.c (sock_connect): remove rb_str_locktmp().
38103           [ruby-dev:25050]
38105         * ext/socket/socket.c (udp_connect): [ruby-dev:25045]
38107         * ext/socket/socket.c (udp_bind): ditto.
38109         * ext/socket/socket.c (udp_send): ditto.
38111         * ext/socket/socket.c (bsock_send): ditto.
38113         * ext/socket/socket.c (s_recvfrom): ditto.
38115         * hash.c (rb_hash_hash): should provide "hash" method where "eql?"
38116           is redefined.  [ruby-talk:122482]
38118 Sat Dec  4 21:29:05 2004  Minero Aoki  <aamine@loveruby.net>
38120         * lib/fileutils.rb: (In previous commit) new method chown.
38122         * lib/fileutils.rb: (In previous commit) new method chown_R.
38124         * lib/fileutils.rb: (In previous commit) new method chmod_R
38125           wrongly added.  Removed now.
38127 Sat Dec  4 20:45:52 2004  Minero Aoki  <aamine@loveruby.net>
38129         * lib/fileutils.rb (mkdir, mkdir_p): should chmod explicitly.
38130           [ruby-core:03881]
38132 Sat Dec  4 18:54:09 2004  Kouhei Sutou  <kou@cozmixng.org>
38134         * lib/rss/rss.rb: removed empty lines from output.
38136 Sat Dec  4 18:49:09 2004  Kouhei Sutou  <kou@cozmixng.org>
38138         * lib/rss/rss.rb (RSS::VERSION): 0.1.1 -> 0.1.2
38140         * lib/rss/rss.rb: #item=/#set_item and so on are obsolete.
38142 Sat Dec  4 14:28:56 2004  Dave Thomas  <dave@pragprog.com>
38144         * lib/rdoc/code_objects.rb (RDoc::Context::Section::set_comment):
38145           Section comments may now be bracketed by lines which are
38146           ignored. You can now write
38147               # -----------
38148               # :section: Dave's Section
38149               # comment material
38150               # -----------
38151            The lines before :section: are removed, and identical lines at the end are
38152            also removed if present.
38154 Sat Dec  4 00:35:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38156         * ext/socket/socket.c (bsock_setsockopt): [ruby-dev:25039]
38158 Fri Dec  3 12:25:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38160         * st.h: fix prototype for C++.
38162 Fri Dec  3 01:55:24 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38164         * ext/tk/lib/tk.rb: widget configuration by TkWindow#method_missing
38165           returns proper object. "widget.option = val" returns val, and
38166           "widget.option(val)" returns self.
38168         * ext/tk/lib/tk/font.rb: TkFont#replace accepts only one font argument.
38170         * ext/tk/lib/tk/radiobutton.rb: add TkRadiobutton#value and
38171           TkRadiobutton#value=(val).
38173         * ext/tk/lib/tk/spinbox.rb: callback substitution support on
38174           command option.
38176         * ext/tk/sample/demos-en/widget: bug fix (wrong image height)
38178         * ext/tk/sample/demos-jp/widget: ditto.
38180 Fri Dec  3 00:21:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38182         * eval.c (proc_invoke): prepare to pass a block from "call" method
38183           to a Proc generated by Method#to_proc.  [ruby-dev:25031]
38185         * eval.c (rb_yield_0): actually passes a block given to "call".
38187         * object.c (convert_type): use rb_respond_to() again.  this fix is
38188           based on [ruby-dev:25021]
38190         * eval.c (rb_respond_to): funcall respond_to? if it's redefined.
38191           [ruby-dev:25021]
38193 Thu Dec  2 15:13:53 2004  Michael Neumann  <mneumann@ruby-lang.org>
38195         * test/xmlrpc/test_parser.rb, test/xmlrpc/data/*.expected: Expected
38196           values are now stored in YAML instead of using #inspect. This fixes
38197           false hash order.
38199 Fri Dec  3 00:11:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38201         * io.c (rb_file_initialize): [ruby-dev:25032]
38203 Thu Dec  2 16:41:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38205         * eval.c (rb_protect): prevent continuations created inside from being
38206           called from the outside.  [ruby-dev:25003]
38208         * eval.c (rb_callcc, rb_cont_call): prohibit calling from different
38209           signal contexts.  [ruby-dev:25022]
38211 Thu Dec  2 10:45:02 2004  Shugo Maeda  <shugo@ruby-lang.org>
38213         * test/readline/test_readline.rb: fix for NetBSD.
38215 Thu Dec  2 09:57:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38217         * lib/ostruct.rb (OpenStruct::Marshaler): OpenStruct can be
38218           marshaled again.  [ruby-core:03862]
38220 Thu Dec  2 09:30:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38222         * eval.c (thread_mark): mark thread group.  [ruby-dev:25020]
38224         * eval.c (thgroup_add): check whether the argument is really a Thread.
38226 Thu Dec  2 07:57:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38228         * io.c (rb_io_ctl): [ruby-dev:25019]
38230 Wed Dec  1 06:13:00 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38232         * ext/nkf/nkf.c: add constant NKF::VERSION
38234         * ext/nkf/nkf.c(guess): this becomes an alias of guess2
38236         * ext/nkf/test.rb: add --no-cp932
38238         * ext/nkf/nkf-utf8/nkf.c: original nkf2 revision 1.47
38240 Wed Dec  1 02:21:02 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38242         * signal.c (sighandler): call handler immediately only for default
38243           handlers.  [ruby-dev:25003]
38245 Tue Nov 30 23:49:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38247         * io.c (pipe_open): errno should be preserved for rb_sys_fail() when
38248           fork failed.
38250 Tue Nov 30 16:18:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38252         * io.c (io_fread): need not to null terminate.  [ruby-dev:24998]
38254         * eval.c (rb_eval): should check previous frame for ZSUPER.
38256         * io.c (read_all): remove unnecessary rb_str_resize().
38257           [ruby-dev:24996]
38259         * io.c (io_readpartial): ditto.
38261         * io.c (io_read): ditto.
38263 Tue Nov 30 14:58:33 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38265         * instruby.rb (install): add arguments explicitly to "super".
38267 Tue Nov 30 00:49:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38269         * eval.c (PUSH_FRAME): flags should have been initialized.
38271         * eval.c (rb_eval): [ruby-core:03856]
38273         * io.c (rb_io_sysread): use temporary lock.  [ruby-dev:24992]
38275 Tue Nov 30 00:12:57 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
38277         * regparse.c: now handles many alternatives (over 500000)
38278           in regexp. [ruby-dev:24773]
38280 Mon Nov 29 16:06:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38282         * ext/stringio/stringio.c (strio_write): insufficiently filled string
38283           being extended when overwriting.  [ruby-core:03836]
38285 Mon Nov 29 15:59:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38287         * lib/ostruct.rb (OpenStruct::method_missing): check method
38288           duplication for -d.
38290         * lib/ostruct.rb (OpenStruct::initialize): ditto.
38292 Mon Nov 29 15:22:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38294         * test/io/nonblock/test_flush.rb: abandon tests when io/nonblock is
38295           not supported.
38297 Mon Nov 29 13:37:54 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38299         * io.c (fptr_finalize): must not use FILE after fclose().
38300           [ruby-dev:24985]
38302 Mon Nov 29 13:13:13 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38304         * win32/win32.c (CreateChild): push back the last space before next
38305           loop because CharNext() eats it.
38307 Mon Nov 29 03:08:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38309         * object.c (convert_type): [ruby-core:03845]
38311         * eval.c (rb_funcall_rescue): new function.
38313         * object.c (rb_Array): avoid using rb_respond_to().
38315         * object.c (rb_Integer): ditto.
38317         * eval.c (get_backtrace): no conversion for nil.
38319         * parse.y (reduce_nodes): empty body should return nil.
38321 Mon Nov 29 01:18:18 2004  Tanaka Akira  <akr@m17n.org>
38323         * io.c (rb_io_check_writable): call io_seek regardless of
38324           NEED_IO_SEEK_BETWEEN_RW.  [ruby-dev:24986]
38326 Sun Nov 28 15:57:58 2004  Kouhei Sutou  <kou@cozmixng.org>
38328         * lib/rss/rss.rb (RSS::Element#tag): not use block_given? for
38329           working with ruby 1.6 again.
38331         * lib/rss/{0.9,2.0,trackback}.rb, lib/rss/maker/base.rb:
38332           undef -> remove_method for working with ruby 1.6 again.
38334 Sun Nov 28 15:51:40 2004  Kouhei Sutou  <kou@cozmixng.org>
38336         * lib/rss/rss.rb (RSS::NotSetError): added.
38338         * lib/rss/maker/{1.0,0.9,2.0}.rb: changed RSS Maker to raise
38339           RSS::NotSetError if required values of maker.channel are not
38340           set. [ruby-talk:120061]
38342         * test/rss/test_maker_{1.0,0.9,2.0}.rb: changed tests to check RSS
38343           Maker raises or not.
38345 Sun Nov 28 12:14:47 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
38347         * regparse.c (fetch_token): fixed test failure on HP-UX ia64
38348           ([ruby-dev:24859]).
38350 Sun Nov 28 12:08:15 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
38352         * regparse.c, test/ruby/test_regexp.rb: fixed problem with UTF-8
38353           characters that have U+00FE or invalid characters.
38355 Sun Nov 28 12:07:04 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
38357         * regexec.c, test/ruby/test_regexp.rb: fixed segmentation fault
38358           ([ruby-dev:24887]).
38360 Sun Nov 28 12:05:48 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
38362         * regcomp.c, regint.h: fixed PLATFORM_UNALIGNED_WORD_ACCESS
38363           problem ([ruby-dev:24802] and [ruby-core:3733])
38365 Sat Nov 27 23:43:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38367         * io.c (rb_io_initialize): [ruby-dev:24972]
38369 Sat Nov 27 21:43:39 2004  Tanaka Akira  <akr@m17n.org>
38371         * io.c: avoid data lost with nonblocking fd and
38372           stdio buffering in sync mode.  [ruby-dev:24966]
38373           based on matz's patch [ruby-dev:24967]
38374           (io_fwrite): new primitive writing function which writes
38375           directly if sync mode.
38376           (rb_io_fwrite): wrapper for io_fwrite now.
38377           (io_write): call io_fwrite instead of rb_io_fwrite.
38379 Sat Nov 27 17:43:21 2004  Kouhei Sutou  <kou@cozmixng.org>
38381         * lib/rss/{0.9,1.0,2.0,trackback,xml-stylesheet}.rb: added
38382           #setup_maker.
38384         * test/rss/test_setup_maker_*.rb: added tests for #setup_maker.
38386         * lib/rss/maker/base.rb(RSS::Maker::Items#max_size=): supported
38387           output item size limitation.
38389         * sample/rss/blend.rb: added sample for RSS Maker.
38391 Sat Nov 27 17:41:35 2004  Kouhei Sutou  <kou@cozmixng.org>
38393         * lib/rss/maker/0.9.rb: supported RSS::Maker.make("0.91"). Now,
38394           "0.9" is just alias of "0.91."
38396         * test/rss/test_maker_0.9.rb: make("0.9") -> maker("0.91").
38398         * test/rss/test_to_s.rb: ditto.
38400 Sat Nov 27 17:21:30 2004  Kouhei Sutou  <kou@cozmixng.org>
38402         * sample/rss/list_description.rb: untabified.
38404         * sample/rss/rss_recent.rb: ditto.
38406 Sat Nov 27 14:44:15 2004  Kent Sibilev  <ksibilev@bellsouth.net>
38408         * lib/cgi/session.rb (CGI::Session::initialize): [ruby-core:03832]
38410 Sat Nov 27 09:41:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38412         * io.c (io_fread): old rb_io_fread with file closing checking.
38413           (rb_io_fread): wrapper for io_fread now.
38414           [ruby-dev:24964]
38416 Fri Nov 26 18:02:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38418         * ext/tk/lib/tk.rb: Tk.destroy uses TkWindow#epath
38420         * ext/tk/lib/tk/image.rb: bug fix
38422         * ext/tk/lib/tk/wm.rb: add 'iconphoto' method(Windows only)
38424         * ext/tk/lib/tkextlib/*: some methods uses TkWindow#epath
38426 Fri Nov 26 14:29:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38428         * io.c (rb_io_initialize): uninitialized fd was checked to see open
38429           mode.  [ruby-dev:24963]
38431         * io.c (rb_io_initialize): uninitialized fd was used.  [ruby-dev:24962]
38433 Fri Nov 26 13:49:06 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38435         * io.c (rb_io_initialize): should retrieve flags from copying file
38436           descriptor. [ruby-dev:24961]
38438         * eval.c (method_missing): raise TypeError for classes do not
38439           have allocators.  [ruby-core:03752]
38441         * lib/erb.rb: add RDoc by James Edward Gray II.  [ruby-core:03786]
38443 Fri Nov 26 13:29:02 2004  Dave Thomas  <dave@pragprog.com>
38445         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::look_for_directives_in): Break
38446           out of preprocessing when we find a :section: directive (previously cleared out the
38447           comment, but this apparently now generates an error in gsub!)
38449 Fri Nov 26 00:17:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38451         * io.c (io_read): move StringValue() check before GetOpenFile().
38452           [ruby-dev:24959]
38454 Thu Nov 25 20:14:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38456         * lib/thwait.rb (ThreadsWait#join_nowait): abnormally terminated
38457           threads should be also processed.  [ruby-talk:121320]
38459 Thu Nov 25 18:06:37 2004  Tanaka Akira  <akr@m17n.org>
38461         * configure.in: AC_CHECK_SIZEOF(rlim_t) to include stdio.h to fix
38462           problem with autoconf 2.52 or earlier.
38463           revert AC_PREREQ to 2.50.
38464           [ruby-core:3809]
38466 Thu Nov 25 07:59:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38468         * configure.in: AC_PREREQ(2.53) [ruby-core:03800]
38470         * io.c (read_all): stringify non-nil buffer argument, and always
38471           taint the result.  [ruby-dev:24955]
38473 Wed Nov 24 01:01:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38475         * io.c (io_read): integer conversion should be prior to
38476           GetOpenFile().  [ruby-dev:24952]
38478         * configure.in, io.c: cancel [ ruby-Patches-1074 ].
38480 Tue Nov 23 08:09:50 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38482         * ext/tk/lib/tk/menu.rb: improve usability of TkOptionMenubutton
38484 Tue Nov 23 02:00:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38486         * file.c (rb_file_chown): integer conversion should be prior to
38487           GetOpenFile().  [ruby-dev:24949]
38489 Tue Nov 23 00:10:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38491         * file.c (rb_file_chown): integer conversion should be prior to
38492           GetOpenFile().  [ruby-dev:24947]
38494         * file.c (rb_file_truncate): ditto.
38496         * file.c (rb_file_s_truncate): ditto.
38498         * dir.c (dir_seek): use NUM2OFFT().
38500         * misc/ruby-mode.el (ruby-non-block-do-re): [ruby-core:03719]
38502 Mon Nov 22 22:33:02 2004  Dave Thomas  <dave@pragprog.com>
38504         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_require): Don't use names
38505           of variables or constants when parsing 'require'
38507 Mon Nov 22 00:13:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38509         * dir.c (dir_seek): should retrieve dir_data after NUM2INT().
38510           [ruby-dev:24941]
38512 Sat Nov 20 23:57:33 2004  Dave Thomas  <dave@pragprog.com>
38514         * lib/rdoc/README (et al): Add a new directive, :section:, and
38515           change the output format to accommodate. :section: allows to to
38516           group together methods, attributes, constants, etc under
38517           headings in the output. If used, a table of contents is
38518           generated.
38520 Sat Nov 20 23:56:54 2004  Dave Thomas  <dave@pragprog.com>
38522         * lib/rdoc/options.rb (Options::parse): Force --inline-source if
38523           --one-file option given
38525 Sat Nov 20 23:55:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38527         * string.c (rb_str_splice): should place index wrapping after
38528           possible modification.  [ruby-dev:24940]
38530 Sat Nov 20 23:25:12 2004  Minero Aoki  <aamine@loveruby.net>
38532         * io.c (rb_io_getline): f.gets("") did not work. [ruby-core:03771]
38534         * test/ruby/test_io.rb (test_gets_rs): test it.
38536 Sat Nov 20 22:55:09 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38538         * test/runner.rb (CROSS_COMPILING): need to require rbconfig.rb before
38539           using CROSS_COMPILNG.
38541 Sat Nov 20 20:42:42 2004  Minero Aoki  <aamine@loveruby.net>
38543         * ext/ripper/depend: fix ripper.o dependency.
38545 Sat Nov 20 17:48:29 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38547         * io.c (io_reopen): work around problem with Cygwin fseeko
38548           returning ESPIPE.
38550 Sat Nov 20 05:34:24 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38552         * ext/nkf/nkf-utf8/nkf.c: original nkf.c rev:1.40
38554         * ext/nkf/test.rb: add test for mime encode/decode
38556 Sat Nov 20 01:45:04 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38558         * test/xmlrpc/test_webrick_server.rb: move `requrie "webrick/https"'
38559           into #setup_http_server method to avoid soap test errors.
38561 Sat Nov 20 01:37:34 2004  Johan Holmberg  <holmberg@iar.se>
38563         * eval.c (error_print): nicer traceback at interrupt.
38564           [ruby-core:03774]
38566 Sat Nov 20 00:07:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38568         * string.c (str_gsub): internal buffer should not be listed by
38569           ObjectSpace.each_object() by String#gsub.  [ruby-dev:24931]
38571 Fri Nov 19 22:44:43 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38573         * lib/test/unit/collector/dir.rb: better support for -p/-x option.
38575 Fri Nov 19 17:46:56 2004  Kouhei Sutou  <kou@cozmixng.org>
38577         * lib/rss/maker/0.9.rb (RSS::Maker::RSS09::Image#have_required_values):
38578           changed /rss/channel/image to be optional. [ruby-Bugs:1047]
38580         * test/rss/test_maker_0.9.rb: added tests for the above.
38582 Fri Nov 19 17:18:17 2004  Kouhei Sutou  <kou@cozmixng.org>
38584         * lib/rss/rss.rb (RSS::VERSION): 0.1.0 -> 0.1.1.
38586         * lib/rss: #to_s used #tag.
38588         * test/rss/test_to_s.rb: added.
38590         * lib/rss/maker.rb (RSS::Maker.make): changed API. It's not
38591           received modules which is used as the second argument.
38593         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#alternate):
38594           changed return value type which is not String but Boolean.
38596         * lib/rss/2.0.rb (RSS::Rss::Channel#ttl): changed return value
38597           type which is not String but Integer.
38599         * lib/rss/0.9.rb (RSS::Rss::Channel): <skipDays> has <day>s and
38600           <skipHours> has <hour>s.
38602         * lib/rss/maker/0.9.rb (RSS::Maker::RSS09::Channel): ditto.
38604         * lib/rss/0.9.rb (RSS::Rss::Channel::Item): <item> has <category>s.
38606         * lib/rss/maker/2.0.rb (RSS::Maker::Rss20::Channel::Item): ditto.
38608         * lib/rss/2.0.rb (RSS::Rss::Channel): <channel> has <category>s.
38610         * lib/rss/maker/2.0.rb (RSS::Maker::RSS20::Channel): ditto.
38612         * lib/rss/trackback.rb: parent element has <trackback:about>s.
38614         * lib/rss/maker/trackback.rb: ditto.
38616 Fri Nov 19 11:10:16 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38618         * lib/test/unit/collector/dir.rb: add support for directory name
38619           with -p/-x options.
38621         * test/testunit/collector/test_dir.rb: ditto.
38623         * lib/xmlrpc/datetime.rb (XMLRPC::DateTime#==): should use Array()
38624           instead of to_a.
38626 Fri Nov 19 10:32:36 2004  Shugo Maeda  <shugo@ruby-lang.org>
38628         * ext/readline/readline.c (readline_s_set_completion_append_character):
38629           accept nil.  [ruby-core:03765]
38631 Fri Nov 19 01:20:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38633         * lib/cgi/session.rb (CGI::Session::FileStore::initialize): raise
38634           exception if data corresponding to session specified from the
38635           client does not exist.
38637 Fri Nov 19 00:59:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38639         * string.c (str_gsub): internal buffer should not be listed by
38640           ObjectSpace.each_object().  [ruby-dev:24919]
38642 Thu Nov 18 23:42:36 2004  Minero Aoki  <aamine@loveruby.net>
38644         * ext/ripper/depend: Never regenerate lib/ripper/core.rb
38645           automatically. [ruby-dev:24911]
38647 Thu Nov 18 20:47:24 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38649         * win32/win32.[ch] (rb_w32_isatty): new function to replace MSVCRT's
38650           isatty because it never sets errno.
38652 Thu Nov 18 18:41:08 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
38654         * test/ruby/test_stringchar.rb (test_bang): added.
38656         * string.c (rb_str_upcase_bang, rb_str_capitalize_bang)
38657           (rb_str_swapcase_bang): missing rb_str_modify().
38659 Thu Nov 18 17:05:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38661         * parse.y (f_rest_arg): store rest args into invisible local variable
38662           in order to get rid of SEGV at ZSUPER.  [ruby-dev:24913]
38664 Thu Nov 18 15:39:52 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38666         * hash.c (rb_f_getenv): prohibit for $SAFE=4. [ruby-dev:24908]
38668 Thu Nov 18 14:58:42 2004  Shugo Maeda  <shugo@ruby-lang.org>
38670         * ext/readline/readline.c: check $SAFE.
38672         * test/readline/test_readline.rb: added tests for readline.
38674 Thu Nov 18 00:21:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38676         * process.c (proc_getpgrp): prohibit for $SAFE=2.
38677           [ruby-dev:24899]
38679         * process.c (get_pid): ditto.  [ruby-dev:24904]
38681         * process.c (get_ppid): ditto.
38683         * array.c (rb_ary_delete): defer rb_ary_modify() until actual
38684           modification.  [ruby-dev:24901]
38686 Thu Nov 18 10:10:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38688         * io.c, rubyio.h (rb_io_modenum_flags): exported.
38690         * ext/stringio/stringio.c (strio_initialize): allow Fixnum as mode as
38691           well as IO.new does.  [ruby-dev:24896]
38693 Wed Nov 17 23:47:30 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38695         * test/ruby/test_settracefunc.rb: added.  [ruby-dev:24884]
38697 Wed Nov 17 18:59:16 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
38699         * process.c (proc_getrlimit, proc_setrlimit): add rb_secure(2) to
38700           methods of Process.{getrlimit,setrlimit}
38702 Wed Nov 17 13:56:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38704         * parse.y (newline_node): should not use FL_SET. [ruby-dev:24874]
38706         * parse.y (string_content): should not use FL_UNSET.
38708         * node.h (NODE_NEWLINE): remove unused bit to utilize flag field
38709           in nodes.
38711 Wed Nov 17 13:05:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38713         * dir.c (rb_push_glob): fix overrun.  [ruby-dev:24886]
38715 Wed Nov 17 11:48:17 2004  Michael Neumann  <mneumann@ruby-lang.org>
38717         * lib/xmlrpc/parser.rb, test/xmlrpc/test_features.rb: fixed "assigning
38718           to constants" warnings
38720 Wed Nov 17 09:38:18 2004  Johan Holmberg  <holmberg@iar.se>
38722         * re.c (rb_reg_initialize_m): should raise exception instead of
38723           compile error.  [ruby-core:03755]
38725 Wed Nov 17 03:42:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38727         * string.c (rb_str_splice): move rb_str_modify() after
38728           StringValue(), which may alter the receiver.  [ruby-dev:24878]
38730         * error.c (rb_error_frozen): now raise RuntimeError instead of
38731           TypeError.
38733 Tue Nov 16 21:22:47 2004  Michael Neumann  <mneumann@ruby-lang.org>
38735         * lib/xmlrpc/server.rb (CGIServer): fixed bug when client sends
38736           "Content-typ: text/xml; ..."
38738 Tue Nov 16 23:45:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38740         * numeric.c (flo_divmod): protect float values from GC by
38741           assignment to local variables.  [ruby-dev:24873]
38743 Tue Nov 16 14:31:54 2004  Michael Neumann  <mneumann@ruby-lang.org>
38745         * test/xmlrpc/*: imported and refactored original test cases.
38747         * test/xmlrpc/test_webrick_server.rb, test/xmlrpc/webrick_testing.rb:
38748           added test case that starts up a WEBrick XML-RPC server and performs
38749           some tests on it (both http and https servers are started).
38751         * lib/xmlrpc/create.rb (XMLWriter::each_installed_writer),
38752           lib/xmlrpc/parser.rb (XMLParser::each_installed_parser):
38753           added methods to simply original test cases
38755         * lib/xmlrpc/parser.rb, lib/xmlrpc/datetime.rb: applied patch by
38756           MoonWolf <moonwolf@moonwolf.com> to allow parsing datetime.iso8601
38757           (e.g. 20041105T01:15:23Z).
38759         * lib/xmlrpc/server.rb: fixed issue #998
38760           (http://rubyforge.org/tracker/?func=detail&atid=1700&aid=998&group_id=426)
38762         * lib/xmlrpc/create.rb, lib/xmlrpc/utils.rb: when marshalling/loading
38763           user-defined data structures, use Class#allocate instead of defining
38764           an empty #initialize method. module XMLRPC::Marshallable is now only
38765           used for tagging.
38767         * lib/xmlrpc/.document, lib/xmlrpc/README.rdoc: added howto
38769 Tue Nov 16 16:26:12 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38771         * {bcc32,win32,wince}/setup.mak (-epilogue-): remove config.h and
38772           config.status to force updating them.
38774 Tue Nov 16 16:20:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38776         * ext/stringio/stringio.c (strio_read): position was ignored when a
38777           buffer was passed.  http://www.yo.rim.or.jp/~nov/d/?date=20041116#p03
38779 Tue Nov 16 13:35:54 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38781         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::options): add
38782           new option --exclude (-x) to skip some tests. [ruby-core:3363],
38783           [ruby-dev:24865]
38785         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir.exclude):
38786           ditto.
38788 Tue Nov 16 11:19:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38790         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::options): use
38791           Regexp conversion.
38793 Tue Nov 16 01:41:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38795         * string.c (str_mod_check): frozen check should be separated.
38796           [ruby-core:3742]
38798         * array.c (rb_ary_update): pedantic check to detect
38799           rb_ary_to_ary() to modify the receiver.  [ruby-dev:24861]
38801 Mon Nov 15 18:58:05 2004  Tanaka Akira  <akr@m17n.org>
38803         * configure.in: check rlim_t more portably. [ruby-core:3735]
38805 Mon Nov 15 11:50:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38807         * misc/ruby-mode.el (ruby-special-char-p, ruby-parse-partial): handle
38808           operator symbols.  [ruby-talk:120177]
38810 Mon Nov 15 08:58:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38812         * eval.c (Init_Proc): make proc as an alias to Proc.new.
38813           [ruby-dev:24848]
38815 Mon Nov 15 00:46:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38817         * eval.c (rb_yield_0): lambda{}.call(1) should raise exception.
38818           [ruby-talk:120253]
38820 Mon Nov 15 00:33:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38822         * string.c (rb_str_clear): avoid revealing NULL pointer.
38823           [ruby-dev:24766]
38825         * string.c (str_gsub): add paranoid check. [ruby-dev:24827]
38827         * string.c (str_mod_check): check frozen status as well.
38828           [ruby-dev:24801]
38830 Sun Nov 14 18:59:03 2004  Tanaka Akira  <akr@m17n.org>
38832         * process.c (proc_getrlimit): new function for Process.getrlimit.
38833           (proc_setrlimit): new function for Process.setrlimit.
38834           [ruby-dev:24834]
38836         * configure.in: check rlim_t and its size.  check setrlimit.
38838         * ruby.h (NUM2ULL): new macro.
38840 Sun Nov 14 13:27:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38842         * lib/pp.rb (PP#object_address_group): remove odd number of 'f'
38843           prefixed to negative address.
38845 Sun Nov 14 10:48:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38847         * lib/mathn.rb (Integer::gcd2): faster implementation by
38848           <erlercw@siu.edu>. [ruby-talk:120232]
38850 Sun Nov 14 08:46:33 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38852         * test/logger/test_logger.rb: Logger just expects
38853           Logger#datetime_format to be used for Time#strftime independently of
38854           locale. [ruby-dev:24828]
38856 Fri Nov 12 17:32:07 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38858         * bcc32/README.bcc32, win32/README.win32: need bison instead of
38859           byacc.
38861 Fri Nov 12 15:15:06 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38863         * eval.c (ruby_options): now we cannot call rb_glob() before
38864           ruby_init(), so call rb_w32_cmdvector() at ruby_options().
38866         * win32/win32.{c,h} (rb_w32_cmdvector): rename make_cmdvector() and
38867           export it.
38869 Fri Nov 12 14:08:01 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38871         * ext/tk/lib/tk/event.rb: remove $LOADED_FEATURES trick
38873         * ext/tk/lib/tk.rb: ditto
38875 Fri Nov 12 00:31:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38877         * ext/gdbm/gdbm.c (fgdbm_store): StringValue() may alter string
38878           pointer.  [ruby-dev:24783]
38880 Thu Nov 11 17:58:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38882         * dir.c (rb_glob): should have called rb_glob_caller().
38883           [ruby-dev:24773]
38885 Thu Nov 11 16:56:10 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38887         * test/ruby/test_file.rb (test_truncate_wbuf): we want to test
38888           only File#truncate, not behavior of seek(2).
38890 Thu Nov 11 01:52:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38892         * error.c (syserr_initialize): use stringified object.
38893           [ruby-dev:24768]
38895 Wed Nov 10 22:49:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38897         * lib/delegate.rb (SimpleDelegator::dup): wrong number of
38898           arguments.
38900         * lib/delegate.rb (DelegateClass::dup): ditto.
38902 Wed Nov 10 19:47:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38904         * dir.c (glob_helper): path is a string object now.
38906 Wed Nov 10 12:31:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38908         * README.EXT (Example): extconf.rb is indispensable now.
38910 Wed Nov 10 03:33:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38912         * ext/tcltklib/tcltklib.c: fix SEGV when compiled with Tcl/Tk8.3.x
38913           or older
38915         * ext/tk/lib/tkextlib/tile/style.rb: bug fix
38917 Tue Nov  9 22:24:07 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38919         * ext/nkf: original nkf.c rev:1.38
38921         * ext/nkf/nkf.c: fix bug: can't parse long-name options
38923         * ext/nkf/test.rb: fix bug: mime tests fail
38925 Tue Nov  9 14:27:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38927         * lib/optparse.rb (OptionParser::Officious): moved from DefaultList.
38929 Tue Nov  9 00:50:06 2004  Dave Thomas  <dave@pragprog.com>
38931         * lib/rdoc/rdoc.rb: Change version numbering of RDoc and ri
38933 Tue Nov  9 01:05:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38935         * dir.c (rb_glob2): do not allocate buffer from heap to avoid
38936           memory leaks.  use string object for buffering instead.
38937           [ruby-dev:24738]
38939         * dir.c (join_path): ditto.
38941         * io.c (io_read): external input buffer may be modified even after
38942           rb_str_locktmp().  [ruby-dev:24735]
38944         * dir.c (fnmatch): p or s may be NULL.  [ruby-dev:24749]
38946 Tue Nov  9 00:36:26 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
38948         * lib/drb/extservm.rb: add DRb::ExtServManager#uri=.
38949           [ruby-dev:24743]
38951 Mon Nov  8 22:20:19 2004  Dave Thomas  <dave@pragprog.com>
38953         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
38954           Fix bug where parent class wasn't being detected if the
38955           child class was defined using the A::B notation.
38957 Mon Nov  8 00:14:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38959         * configure.in: add setup for mignw32 cross compiling.
38960           [ruby-talk:119413]
38962 Sun Nov  7 23:49:26 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38964         * ext/tk/lib/tk.rb: bind-event methods accept multi substitution
38965           arguments.
38967         * ext/tk/lib/tk/canvas.rb: ditto.
38969         * ext/tk/lib/tk/canvastag.rb: ditto.
38971         * ext/tk/lib/tk/text.rb: ditto.
38973         * ext/tk/lib/tk/texttag.rb: ditto.
38975         * ext/tk/lib/tkextlib: ditto.
38977 Sat Nov  6 20:40:16 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
38979         * ext/win32ole/win32ole.c: rename WIN32OLE#ole_obj_help to
38980           WIN32OLE#ole_type. alias ole_obj_help to ole_type.
38982         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
38984 Sat Nov  6 11:18:59 2004  Tadayoshi Funaba  <tadf@dotrb.org>
38986         * lib/date.rb (_parse): checks whether zone was given.
38988 Sat Nov  6 00:46:27 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38990         * string.c (rb_str_locktmp): check STR_TMPLOCK flag before
38991           locking.  [ruby-dev:24727]
38993 Fri Nov  5 19:07:16 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38995         * ext/nkf: follow CVS Head of original nkf.
38997 Fri Nov  5 18:12:42 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38999         * ext/tk/lib/tk/scrollable.rb: divide Scrollable module into
39000           X_Scrollable and Y_Scrollable
39002         * ext/tk/lib/tk/entry.rb: include X_Scrollable instead of Scrollable
39004         * ext/tk/lib/tk/autoload.rb: define autoload for X_Scrollable and
39005           Y_Scrollable
39007 Fri Nov  5 16:05:32 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39009         * ext/tk/lib/tk.rb: TkComm._at() supprts both of "@x,y" and "@x"
39011 Fri Nov  5 13:22:58 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39013         * ext/tk/lib/tk/text.rb: sorry. bug fix again.
39015 Fri Nov  5 13:17:54 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39017         * ext/tk/lib/tk/text.rb: bug fix
39019 Fri Nov  5 08:52:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39021         * gc.c (gc_mark): stricter GC stack check.
39023 Fri Nov  5 08:34:43 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39025         * string.c (str_gsub): should have removed rb_str_unlocktmp(str).
39026           [ruby-dev:24708]
39028         * ext/socket/socket.c (s_recvfrom): buffer modification check.
39029           [ruby-dev:24708]
39031 Thu Nov  4 23:54:21 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
39033         * regexec.c, regparse.c, regint.h: fixed conflicts between
39034           vendor branch.
39036 Thu Nov  4 23:41:55 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
39038         * ascii.c, euc_jp.c, oniggnu.h, oniguruma.h, regcomp.c,
39039           regenc.c, regenc.h, regerror.c, regexec.c, reggnu.c,
39040           regint.h, regparse.c, regparse.h, sjis.c, utf8.c:
39041           imported Oni Guruma 3.4.0.
39043         * parse.y, re.c: Now mbclen() takes unsigned char as
39044           its argument.
39046 Thu Nov  4 21:25:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39048         * string.c (str_gsub): string modify check no longer based on
39049           tmplock.  [ruby-dev:24706]
39051 Thu Nov  4 21:13:48 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
39053         * ext/win32ole/win32ole.c(typelib_file_from_typelib): search "win16"
39054           entry to get library path.
39056         * ext/win32ole/win32ole.c(oletypelib_path): ditto.
39058         * ext/win32ole/win32ole.c(ole_typedesc2val): add VT_LPWSTR, VT_LPSTR,
39059           VT_ERROR case.
39061 Thu Nov  4 15:02:14 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39063         * ext/tk/lib/tk/variable.rb: forget to initialize instance_variables
39064           of TkVarAccess objects
39066 Thu Nov  4 09:11:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39068         * gc.c (gc_mark): enable GC stack checking.
39070 Thu Nov  4 03:11:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39072         * string.c (str_gsub): lock strings temporarily.  [ruby-dev:24687]
39074         * ext/socket/socket.c (s_recvfrom): tmplock input buffer.
39075           [ruby-dev:24705]
39077 Wed Nov  3 22:24:17 2004  Daigo Moriwaki  <techml@sgtpepper.net>
39079         * lib/webrick/httpauth/digestauth.rb: use Base64.encode64 to
39080           avoid warnings.
39082 Wed Nov  3 17:19:59 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39084         * array.c (rb_ary_uniq_bang): do not push frozen string from hash
39085           table.  [ruby-dev:24695]
39087         * array.c (rb_ary_and): ditto.
39089         * array.c (rb_ary_or): ditto.
39091 Wed Nov  3 17:02:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39093         * ext/tk/lib/tk.rb: support to use different Tcl commands between
39094           configure and configinfo
39096         * ext/tk/lib/font.rb: ditto.
39098         * ext/tk/lib/itemconfig.rb: support to use different Tcl commands
39099           between item_configure and item_configinfo
39101         * ext/tk/lib/itemfont.rb: ditto.
39103         * ext/tk/extconf.rb: install SUPPORT_STATUS
39105         * ext/tk/lib/tkextlib: some bug fixes (see ext/tk/ChangeLog.tkextlib)
39107 Wed Nov  3 15:38:28 2004  Kouhei Sutou  <kou@cozmixng.org>
39109         * test/rss/*.rb: removed tab width configuration headers.
39111         * test/rss/test_maker_{0.9,1.0}.rb: sort -> do_sort.
39113         * lib/rss/maker/*.rb: changed API to RSS version independence.
39115         * lib/rss/maker/base.rb
39116           (RSS::Maker::XMLStyleSheets::XMLStyleSheet): checked required
39117           (pseudo) attributes.
39119         * lib/rss/maker/base.rb (RSS::Maker::Items): sort -> do_sort.
39121         * lib/rss/rss.rb (RSS::BaseModel.install_date_element): avoided
39122           warning.
39124         * lib/rss/0.9.rb (RSS::Rss#textinput): added convenience method.
39126 Tue Nov  2 16:35:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39128         * ext/enumerator/enumerator.c (each_cons_i): pass copy of an
39129           internal consequent array.  [ruby-talk:118691]
39131 Tue Nov  2 14:54:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39133         * io.c (pipe_open): need to set cmd if argc == 0 (win32).
39135 Tue Nov  2 01:20:09 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39137         * io.c (pipe_open): IO.popen should take array as 1st argument for
39138           a command line.  [ruby-dev:24678]
39140         * eval.c (proc_invoke): nail down dyna_var node when Proc object
39141           or continuation is created.  [ruby-dev:24671]
39143         * io.c (rb_io_s_popen): do not expand argv array.  [ruby-dev:24670]
39145 Mon Nov  1 22:25:56 2004  Kouhei Sutou  <kou@cozmixng.org>
39147         * lib/rss/maker/base.rb: changed xml-stylesheet's API of RSS Maker
39148           like to item's one.
39150         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#guess_type): fixed
39151           regular expression bug.
39153         * test/rss/test_maker_xml-stylesheet.rb: updated tests for
39154           xml-stylesheet.
39156 Mon Nov  1 13:59:28 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39158         * ext/extmk.rb (MANIFEST): do not use anymore, use extconf.rb instead.
39160         * ext/enumerator/extconf.rb, ext/fcntl/extconf.rb,
39161           ext/stringio/extconf.rb: added.
39163         * MANIFEST, ext/**/MANIFEST: removed.
39165         * README.EXT, README.EXT.ja: remove MANIFEST stuff.
39167 Mon Nov  1 11:52:18 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39169         * io.c (pipe_open): avoid conflict of variable name. [ruby-dev:24662]
39171 Mon Nov  1 11:46:19 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39173         * process.c (rb_f_exec): should check whether prog is NULL.
39175 Mon Nov  1 09:37:19 2004  Kouhei Sutou  <kou@cozmixng.org>
39177         * lib/rss/maker.rb: added entry point of RSS Maker.
39179 Mon Nov  1 03:14:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39181         * eval.c (rb_get_method_body): store ICLASS in the cache.
39182           [ruby-core:03672]
39184         * eval.c (rb_provided): should return true for loading library
39185           too for autoloading.  [ruby-core:03655]
39187 Mon Nov  1 01:14:52 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39189         * io.c (rb_f_open): create copy of popen specifier.  [ruby-dev:24656]
39191         * string.c (rb_str_locktmp): lock string temporarily.
39193         * string.c (str_independent): add tmplock check.
39195         * io.c (io_write): lock output string temporarily.
39196           [ruby-dev:24649]
39198         * io.c (io_write): use rb_str_locktmp().
39200         * io.c (read_all): ditto.
39202 Sun Oct 31 23:37:00 2004  NARUSE, Yui  <naruse@ruby-lang.org>
39204         * process.c: on NetBSD don't use setruid() and setrgid().
39206 Sun Oct 31 23:12:10 2004  Kouhei Sutou  <kou@cozmixng.org>
39208         * lib/rss/maker/*.rb: added RSS Maker.
39210         * test/rss/test_maker_*.rb: added tests for RSS Maker.
39212 Sun Oct 31 16:58:12 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
39214         * ext/win32ole/win32ole.c: add WIN32OLE.codepage, WIN32OLE.codepage=.
39216         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
39218 Sun Oct 31 14:35:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39220         * ext/nkf/nkf-utf8/nkf.c: add "\075?UTF-8?Q?" for Gmail.
39222 Sun Oct 31 14:18:56 2004  Minero Aoki  <aamine@loveruby.net>
39224         * parse.y [ripper]: emit lexer-event values to the parser
39225           (still incomplete).
39227 Sat Oct 30 15:24:41 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
39229         * ext/win32ole/win32ole.c: add WIN32OLE_TYPELIB class. add
39230           WIN32OLE#ole_typelib method.
39232         * ext/win32ole/tests/testOLETYPELIB.rb: add WIN32OLE_TYPELIB class.
39234 Sat Oct 30 06:53:24 2004  Peter Vanbroekhoven  <peter.vanbroekhoven@cs.kuleuven.ac.be>
39236         * eval.c (rb_eval): NODE_XSTR should pass copy of literal string.
39238 Sat Oct 30 00:19:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39240         * array.c (rb_ary_update): a[n,m]=nil no longer works as element
39241           deletion.
39243         * enum.c (enum_sort_by): protect continuation jump in.
39244           [ruby-dev:24642]
39246         * eval.c (rb_eval), gc.c (gc_mark_children), node.h (NEW_ALIAS,
39247           NEW_VALIAS), parse.y (fitem): allow dynamic symbols to
39248           NODE_UNDEF and NODE_ALIAS.
39250 Fri Oct 29 21:27:51 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39252         * io.c (rb_io_check_initialized): new function to check uninitialized
39253           object.  [ruby-talk:118234]
39255         * file.c (rb_file_path), io.c (rb_io_closed): check if initialized.
39257 Fri Oct 29 19:05:33 2004  NARUSE, Yui  <naruse@ruby-lang.org>
39259         * ext/nkf: follow nkf2.0.
39261 Fri Oct 29 17:18:22 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39263         * parse.y (ripper_s_allocate): add prototype for Microsoft compiler.
39265         * range.c (range_step, range_each): need cast.
39267 Fri Oct 29 16:34:19 2004  Daiki Ueno  <ueno@unixuser.org>
39269         * misc/ruby-mode.el (ruby-parse-partial): Parse the rest of the
39270           line after opening heredoc identifier.  [ruby-dev:24635]
39272 Fri Oct 29 11:35:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39274         * parse.y (rb_parser_append_print, rb_parser_while_loop): body node
39275           can be empty.  [ruby-dev:24628]
39277 Fri Oct 29 10:00:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39279         * eval.c (rb_thread_start_0): forget to free some memory chunks.
39280           [ruby-core:03611]
39282         * eval.c (ruby_cleanup): ruby_finalize_1 may cause exception,
39283           should be wrapped by PUSH_TAG/POP_TAG().  [ruby-dev:24627]
39285 Thu Oct 28 08:42:02 2004  Tanaka Akira  <akr@m17n.org>
39287         * io.c (argf_forward): use ANSI style.
39288           (argf_read): call argf_forward with argv argument.
39289           [ruby-dev:24624]
39291 Wed Oct 27 09:17:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39293         * string.c (str_gsub): use a string object for exception safeness.
39294           [ruby-dev:24601]
39296 Wed Oct 27 07:38:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39298         * node.h (NODE_TYPESHIFT): allow 4 more bits for line numbers.
39299           [ruby-talk:117841]
39301         * ruby.h (FL_ABLE): nodes are not subject for flag operations.
39303         * io.c (ARGF_FORWARD): should have specified argv explicitly,
39304           since we no longer have frame->argv saved.  [ruby-dev:24602]
39306 Tue Oct 26 23:30:39 2004  Dave Thomas  <dave@pragprog.com>
39308         * lib/rdoc/code_objects.rb (RDoc::Context::add_class_or_module):
39309           Restore correct :nopdoc: behavior with nested classes and modules.
39311 Tue Oct 26 18:21:29 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39313         * string.c (RESIZE_CAPA): check string attribute before modifying
39314           capacity member of string structure.  [ruby-dev:24594]
39316 Tue Oct 26 11:33:26 2004  David G. Andersen  <dga@lcs.mit.edu>
39318         * ext/zlib/zlib.c (gzreader_gets): use memchr() to to gain
39319           performance.  [ruby-talk:117701]
39321 Tue Oct 26 10:56:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39323         * sprintf.c (rb_f_sprintf): raise ArgumentError for extra
39324           arguments, unless (digit)$ style used.
39326 Mon Oct 25 18:35:39 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39328         * win32/win32.c (isUNCRoot): should check NUL after '.'.
39329           [ruby-dev:24590]
39331         * win32/win32.c (isUNCRoot): fixed buffer overrun.
39333 Mon Oct 25 08:03:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39335         * eval.c (get_backtrace): ignore illegal backtrace.  [ruby-dev:24587]
39337 Sun Oct 24 00:40:50 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39339         * eval.c (rb_load, search_required, rb_require_safe, rb_require): use
39340           frozen shared string to avoid outside modification.  [ruby-dev:24580]
39342 Sat Oct 23 23:40:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39344         * io.c (rb_io_fptr_finalize): leave stdin/stdout/stderr open in
39345           interpreter termination.  [ruby-dev:24579]
39347 Sat Oct 23 22:18:32 2004  Guy Decoux  <ts@moulon.inra.fr>
39349         * eval.c (frame_free): Guy Decoux solved the leak problem.
39350           Thanks.  [ruby-core:03549]
39352 Sat Oct 23 00:20:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39354         * ext/zlib/zlib.c (zstream_append_input): clear klass for z->input
39355           to avoid potential vulnerability.
39357         * ext/zlib/zlib.c (zstream_run): always use zstream_append_input()
39358           to avoid SEGV.  [ruby-dev:24568]
39360 Fri Oct 22 12:02:28 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39362         * eval.c (rb_alias): was warning for wrong condition.
39363           [ruby-dev:24565]
39365 Fri Oct 22 10:36:37 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39367         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#meta_vars):
39368           should check if path_info is not nil.
39370 Fri Oct 22 00:22:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39372         * ext/zlib/zlib.c (zstream_shift_buffer): should restore class
39373           field of a buffer.  [ruby-dev:24562]
39375 Fri Oct 22 00:20:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39377         * string.c (rb_str_include): should not treat char as negative value.
39378           [ruby-dev:24558]
39380 Thu Oct 21 21:32:30 2004  IWATSUKI Hiroyuki  <don@na.rim.or.jp>
39382         * lib/pstore.rb (PStore#transaction): Use the empty content when a
39383           file is not found.  [ruby-dev:24561]
39385 Thu Oct 21 19:06:15 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39387         * lib/webrick/httpresponse.rb (WEBrick::HTTPResponse#send_body_io):
39388           ensure to close @body. (http://bugs.debian.org/277520)
39390 Thu Oct 21 13:11:31 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39392         * io.c (pipe_open): variable name "fpw" is conflicted.
39394 Thu Oct 21 00:36:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39396         * eval.c (rb_alias): should warn on method discarding.
39397           [ruby-dev:24546]
39399         * ext/zlib/zlib.c (zstream_expand_buffer_into): hide internal
39400           string buffer by clearing klass.  [ruby-dev:24548]
39402         * parse.y (lex_getline): should not touch ruby_debug_lines if
39403           RIPPER is defined.  [ruby-dev:24547]
39405 Wed Oct 20 19:45:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39407         * string.c (str_gsub):  reentrant check.  [ruby-dev:24432]
39409 Wed Oct 20 12:42:53 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39411         * io.c (rb_io_getline): rs modification check should not interfere
39412           in the loop.
39414 Wed Oct 20 10:31:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39416         * parse.y (lex_getline): should update ruby_debug_lines.
39418 Wed Oct 20 04:17:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39420         * ext/dbm/dbm.c (fdbm_delete_if): should check if deleting element
39421           is a string.  [ruby-dev:24490]
39423         * ext/sdbm/init.c (fsdbm_delete_if): ditto.
39425 Wed Oct 20 01:37:18 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39427         * array.c (rb_ary_times): Array#* should return an instance of
39428           the class of right operand.  [ruby-dev:24526]
39430         * ext/zlib/zlib.c (zstream_detach_buffer): should not expose
39431           class-less object to Ruby world. [ruby-dev:24530]
39433         * eval.c (proc_dup): provide Proc#dup as well.  [ruby-talk:116915]
39435         * eval.c (ruby_exec): stack marking position may be higher than
39436           expected.  thanks to Guy Decoux.  [ruby-core:03527]
39438 Wed Oct 20 00:25:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39440         * eval.c (search_required): required name must not be changed before
39441           loading.  [ruby-dev:24492]
39443 Tue Oct 19 23:59:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39445         * eval.c (rb_require_safe): provide the feature after loaded.
39446           [ruby-list:40085]
39448 Tue Oct 19 22:43:12 2004  Dave Thomas  <dave@pragprog.com>
39450         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_attr): If
39451           we come across 'attr' in a context where it isn't
39452           followed by a symbol, just issue a warning.
39454 Tue Oct 19 20:32:50 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
39456         * ext/win32ole.c(ole_invoke): retrieve the result value when
39457           retrying the IDispatch::invoke.
39459 Tue Oct 19 17:24:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39461         * io.c (read_all): block string buffer modification during
39462           rb_io_fread() by freezing it temporarily. [ruby-dev:24479]
39464         * dir.c (rb_push_glob): block call at once the end of method.
39465           [ruby-dev:24487]
39467         * ext/enumerator/enumerator.c (enum_each_slice): remove
39468           rb_gc_force_recycle() to prevent potential SEGV.
39469           [ruby-dev:24499]
39471         * ext/zlib/zlib.c (zstream_expand_buffer): hide internal string
39472           buffer by clearing klass.  [ruby-dev:24510]
39474 Tue Oct 19 08:47:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39476         * string.c (rb_str_upto): method result must be checked.  [ruby-dev:24504]
39478         * eval.c (error_print): ditto.  [ruby-dev:24519]
39480 Mon Oct 18 23:37:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39482         * marshal.c (r_object0): check inheritance by the internal function.
39483           [ruby-dev:24515]
39485 Mon Oct 18 11:29:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39487         * io.c (rb_io_flags_mode, rb_io_mode_flags): distinguish whether file
39488           not existing is created.  [ruby-dev:24505]
39490 Mon Oct 18 07:26:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39492         * file.c (rb_file_truncate): discard read buffer before truncation.
39493           [ruby-dev:24197]
39495 Mon Oct 18 01:56:03 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39497         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#initialize):
39498           initial value of accpet-* should be array.
39500 Mon Oct 18 00:42:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39502         * ext/socket/socket.c (sock_s_getservbyaname): protocol string
39503           might be altered.  [ruby-dev:24503]
39505         * string.c (rb_str_upto): check if return value from succ is a
39506           string.  [ruby-dev:24504]
39508 Sun Oct 17 23:03:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39510         * ext/tk/lib/tk/timer.rb: TkTimer#start and restart accept a block
39512 Sun Oct 17 12:53:46 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
39514         * ext/win32ole/win32ole.c (fole_func_methods): correct argument mismatch.
39515         * ext/win32ole/win32ole.c (fole_get_methods): ditto.
39516         * ext/win32ole/win32ole.c (fole_put_methods): ditto.
39517         * ext/win32ole/tests/testWIN32OLE.rb: add test for WIN32OLE#ole_func_methods
39518           WIN32OLE#ole_get_methods, WIN32OLE#ole_put_methods
39520 Sat Oct 16 14:45:28 2004  Kouhei Sutou  <kou@cozmixng.org>
39522         * lib/rss/0.9.rb (RSS::Rss#to_s): removed garbage.
39524 Sat Oct 16 13:42:49 2004  Kouhei Sutou  <kou@cozmixng.org>
39526         * lib/rss/: untabified.
39527         * test/rss/: untabified.
39528         * lib/rss/0.9.rb (RSS::Rss#to_s): inent -> indent.
39530 Sat Oct 16 13:34:56 2004  Kouhei Sutou  <kou@cozmixng.org>
39532         * lib/rss: supported prety print.
39533         * test/rss/test_1.0.rb: added test for calculating default indent size.
39535 Sat Oct 16 10:56:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39537         * lib/mkmf.rb (create_makefile): install-rb is needed for statically
39538           linked extensions.  [ruby-dev:24491]
39540 Fri Oct 15 18:07:08 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39542         * ext/openssl/ossl_x509store.c
39543           (ossl_x509stctx_initialize): setup OpenSSL::X509::StoreContext with
39544           ossl_x509stctx_* functions instead of X509_STORE_CTX_*.
39545           (ossl_x509store_set_time): add OpenSSL::X509::Store#time=.
39546           (ossl_x509stctx_set_time): add OpenSSL::X509::StoreContext#time=.
39548         * test/openssl/ossl_x509store.rb: test certificate validity times.
39550 Fri Oct 15 18:04:35 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39552         * ext/tk/lib/tk/timer.rb: TkTimer.new(interval, loop){ ... } is
39553           acceptable. Add TkTimer.start ( == new + start ).
39555 Fri Oct 15 12:43:09 2004  Tanaka Akira  <akr@m17n.org>
39557         * eval.c (Init_stack): make prototype declaration consistent with
39558           the definition in gc.c.
39560 Thu Oct 14 13:33:59 2004  Kouhei Sutou  <kou@cozmixng.org>
39562         * lib/rss/rss.rb: added link to Tutorial.
39564 Tue Oct 12 21:22:50 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39566         * lib/webrick/config.rb:
39567           add WEBrick::Config::FileHandler[:AcceptableLanguages].
39569         * lib/webrick/httpservlet/filehandler.rb
39570           (WEBrick::HTTPServlet::FileHandler#set_filename): search files
39571           having suffix of language-name which Accept-Language header field
39572           includes if :AcceptableLanguages options is present.
39574         * lib/webrick/httpservlet/filehandler.rb
39575           (WEBrick::HTTPServlet::FileHandler#get_servlet): new method to
39576           search servlet correspond to the suffix of filename.
39578         * lib/webrick/httprequest.rb: add attributes access methods: accept,
39579           accept_charset, accept_encoding, accept_language, content_length
39580           and content_type.
39582         * lib/webrick/httpresponse.rb: add attribute access methods:
39583           content_length, content_length=, content_type and content_type=.
39585         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.mime_types):
39586           use the second suffix to detect media type. (the first suffix
39587           may be a language name.)
39589         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_qvalues):
39590           add method to parse Accept header field. it returns an Array of
39591           values sorted by the qvalues.
39593 Tue Oct 12 15:05:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39595         * io.c (MODE_BINMODE, MODE_BINARY): fixed reversed condition.
39597 Mon Oct 11 17:51:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39599         * io.c (rb_io_popen): get mode string via rb_io_flags_mode() to
39600           avoid mode string modification.  [ruby-dev:24454]
39602         * io.c (rb_io_getline_fast): should take delim as unsigned char to
39603           distinguish EOF and '\377'.  [ruby-dev:24460]
39605         * io.c (rb_io_getline): add check for RS modification.
39606           [ruby-dev:24461]
39608         * enum.c (enum_sort_by): use qsort() directly instead using
39609           rb_iterate().  [ruby-dev:24462]
39611         * enum.c (enum_each_with_index): remove rb_gc_force_recycle() to
39612           prevent access to recycled object (via continuation for
39613           example).  [ruby-dev:24463]
39615 Mon Oct 11 13:48:20 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39617         * ext/tk/lib/tk/*: untabify
39619 Sun Oct 10 12:32:08 2004  Dave Thomas  <dave@pragprog.com>
39621         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_require): Allow 'require'
39622           to be used as a variable name
39624 Sun Oct 10 02:49:14 2004  Minero Aoki  <aamine@loveruby.net>
39626         * ext/ripper/lib/ripper/filter.rb: require ripper/tokenizer.
39628         * ext/ripper/lib/ripper/filter.rb (parse): argument is optional.
39630 Sun Oct 10 02:43:13 2004  Minero Aoki  <aamine@loveruby.net>
39632         * parse.y [ripper]: \n between two comments disappeared.
39634 Sat Oct  9 21:23:37 2004  Kouhei Sutou  <kou@cozmixng.org>
39636         * lib/rss/converter.rb: changed to try to use Iconv for default
39637           conversion.
39639         * lib/rss/rss.rb: 0.0.9 -> 0.1.0.
39641 Sat Oct  9 19:50:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39643         * io.c (rb_io_getline): should not treat char as negative value.
39644           [ruby-dev:24460]
39646 Sat Oct  9 00:25:39 2004  Tanaka Akira  <akr@m17n.org>
39648         * io.c (rb_io_fread): rb_thread_wait_fd() was lost.
39649           [ruby-dev:24457]
39651 Fri Oct  8 21:36:56 2004  Minero Aoki  <aamine@loveruby.net>
39653         * lib/fileutils.rb (fu_traverse): return value of Dir.entries is
39654           reliable. (pass $SAFE=1)
39656         * lib/fileutils.rb (remove_dir): return value of Dir.foreach is
39657           reliable. (pass $SAFE=1)
39659 Fri Oct  8 09:49:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39661         * pack.c (pack_pack): pointer modification check before each
39662           iteration.  [ruby-dev:24445]
39664 Fri Oct  8 01:13:05 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39666         * ext/tk/lib/tk/optiondb.rb: make it more secure
39668 Thu Oct  7 23:47:57 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39670         * ext/tk/lib/tk/scrollbar.rb: When 'set' operation, a scrollbar
39671           cannot propagate view port information from the source widget
39672           (that calls 'set') to other assigned widgets.
39674 Thu Oct  7 17:36:25 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39676         * ext/tk/lib/tk.rb: When CHILDKILLED and so on, Tk.errorCode returns
39677           a Fixnum for 2nd element (it's pid) of the return value.
39679 Thu Oct  7 12:55:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39681         * io.c (io_read): should freeze buffer before thread context
39682           switch. [ruby-dev:24442]
39684         * pack.c (pack_unpack): string conversion should at the top of the
39685           method.  [ruby-dev:24439]
39687         * io.c (io_read): buffer should be frozen only after the length
39688           check.  [ruby-dev:24440]
39690 Thu Oct  7 02:56:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39692         * ext/stringio/stringio.c: use FMODE_APPEND.
39694 Thu Oct  7 01:05:33 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39696         * ext/tk/lib/tk.rb: add Tk.errorInfo and Tk.errorCode
39698 Thu Oct  7 00:08:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39700         * io.c (rb_io_s_sysopen): preserve path in the buffer allocated by
39701           ALLOCA_N() to prevent modification.  [ruby-dev:24438]
39703 Wed Oct  6 09:21:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39705         * io.c (rb_io_mode_flags): preserve append mode flag.
39706           [ruby-dev:24436]
39708         * io.c (rb_io_modenum_mode): do not use external output buffer.
39710         * string.c (rb_str_justify): differ pointer retrieval to prevent
39711           padding string modification.  [ruby-dev:24434]
39713         * range.c (range_each_func): allow func to terminate loop by
39714           returning RANGE_EACH_BREAK.
39716         * range.c (member_i): use RANGE_EACH_BREAK. [ruby-talk:114959]
39718 Tue Oct  5 09:53:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39720         * io.c (rb_fopen): mode string copy at the lowest level.
39722         * io.c (rb_io_flags_mode): requires output buffer no more.  no
39723           allocation needed.
39725         * array.c (rb_ary_index): takes a block to compare items in an
39726           array.  [ruby-talk:113069] [Ruby2]
39728         * array.c (rb_ary_rindex): ditto.
39730 Mon Oct  4 14:03:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39732         * io.c (rb_file_open_internal, rb_io_reopen): fname might be altered
39733           while GC.  [ruby-dev:24408]
39735 Mon Oct  4 12:53:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39737         * ext/tk/lib/tk/optiondb.rb: support definition of command
39738           resources on widgets
39740         * ext/tk/lib/tk/image.rb: bug fix
39742 Sun Oct  3 21:16:05 2004  Shugo Maeda  <shugo@ruby-lang.org>
39744         * lib/net/imap.rb (TEXT_REGEXP): allow 8-bit characters for the german
39745           version of Microsoft Exchange Server.
39747         * lib/net/imap.rb (RTEXT_REGEXP): ditto.
39749         * lib/net/imap.rb (CTEXT_REGEXP): ditto.
39751 Sat Oct  2 20:34:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39753         * parse.y (local_vars): moved to struct parser_params.
39754           [ruby-dev:24391]
39756         * parser.y (stmts): remove suspicious NODE_BEGIN.  [ruby-dev:24390]
39758         * node.h (NEW_DVAR): extra semicolon.
39760 Sat Oct  2 00:42:20 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39762         * marshal.c (r_byte): retrieve pointer from string value for each
39763           time.  [ruby-dev:24404]
39765         * marshal.c (r_bytes0): ditto.
39767         * enum.c (sort_by_i): re-entrance check added.  [ruby-dev:24399]
39769         * io.c (io_read): should freeze all reading buffer.
39770           [ruby-dev:24400]
39772         * string.c (rb_str_sum): should use bignums when bits is greater
39773           than or equals to sizeof(long)*CHAR_BITS. [ruby-dev:24395]
39775         * eval.c (specific_eval): defer pointer retrieval to prevent
39776           unsafe sourcefile string modification.  [ruby-dev:24382]
39778         * string.c (rb_str_sum): wrong cast caused wrong result.
39779           [ruby-dev:24385]
39781         * enum.c (enum_sort_by): hide temporary array from
39782           ObjectSpace.each_object.  [ruby-dev:24386]
39784         * string.c (rb_str_sum): check was done with false pointer.
39785           [ruby-dev:24383]
39787         * string.c (rb_str_sum): string may be altered.  [ruby-dev:24381]
39789 Fri Oct  1 11:40:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39791         * eval.c (rb_f_eval): defer pointer retrieval to prevent unsafe
39792           sourcefile string modification.  [ruby-dev:24373]
39794         * io.c (io_read): block string buffer modification during
39795           rb_io_fread() by freezing it temporarily. [ruby-dev:24366]
39797         * io.c (rb_io_s_popen): mode argument may be altered.
39798           [ruby-dev:24375]
39800         * file.c (rb_file_s_basename): ext argument may be altered.
39801           [ruby-dev:24377]
39803         * enum.c (enum_sort_by): use NODE instead of 2 element arrays.
39804           [ruby-dev:24378]
39806         * string.c (rb_str_chomp_bang): StringValue() may change the
39807           receiver.  [ruby-dev:24371]
39809 Fri Oct  1 11:25:20 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39811         * ext/tk/lib/tk/grid.rb: revive TkGrid.grid
39813         * ext/tk/lib/tk/pack.rb: revive TkPack.pack
39815         * ext/tk/lib/tk/place.rb: revive TkPlace.place
39817 Thu Sep 30 00:50:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39819         * ext/tcltklib/tcltklib.c (ip_init): bug fix
39821         * ext/tk/tkutil.c (get_eval_string_core): accept a Regexp object
39823         * ext/tk/lib/multi-tk.rb: fix bug on 'exit' operation
39825         * ext/tk/lib/tk/text.rb: 'tksearch' accepts a Regexp object as a
39826           matting pattern argument
39828 Wed Sep 29 10:58:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39830         * enum.c (sort_by_i): internally used object must not be changed
39831           outside.  [ruby-dev:24368]
39833 Mon Sep 27 21:25:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39835         * eval.c (rb_call0): invoke finalizers periodically.
39837         * gc.c (gc_sweep): defer running finalizers.  [ruby-dev:24354]
39839         * gc.c (rb_gc_finalize_deferred): run deferred finalizers.
39841 Mon Sep 27 15:01:59 2004  Minero Aoki  <aamine@loveruby.net>
39843         * parse.y [ripper]: missing ';'.
39845 Mon Sep 27 13:46:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39847         * intern.h, struct.c (rb_struct_s_members, rb_struct_members): public
39848           accessors.  [ruby-dev:24342]
39850         * marshal.c (w_object, r_object0): use accessors.
39852 Mon Sep 27 09:14:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39854         * array.c (rb_ary_delete): comparison may change the capacity.
39855           [ruby-dev:24348]
39857         * array.c (rb_ary_fill): fill should honor length argument.
39858           [ruby-dev:24346]
39860         * array.c (rb_ary_replace): should not use ptr from shared array.
39861           [ruby-dev:24345]
39863         * ext/socket/socket.c (s_accept): don't retry for EWOULDBLOCK.
39864           [ruby-talk:113807]
39866 Sun Sep 26 08:05:10 2004  Tadayoshi Funaba  <tadf@dotrb.org>
39868         * lib/date.rb: provides {Time,Date,DateTime}#to_{time,date,datetime}.
39870         * sample/cal.rb: uses getoptlong instead of getopts.
39872 Sat Sep 25 18:39:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39874         * array.c (flatten): element size might change during comparison.
39875           [ruby-dev:24343]
39877 Sat Sep 25 01:52:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39879         * struct.c (rb_struct_s_members): wrong call of struct_members.
39880           [ruby-dev:24333]
39882 Fri Sep 24 16:09:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39884         * eval.c (proc_invoke): propagate DVAR_DONT_RECYCLE on termination
39885           to avoid double call to rb_gc_force_recycle(). [ruby-dev:24311]
39887 Fri Sep 24 08:29:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39889         * parse.y (rb_parser_append_print): should handle prelude.
39890           [llama@u01.gate0]
39892         * parse.y (rb_parser_while_loop): ditto.
39894         * array.c (rb_ary_subseq): original object might be modified after
39895           sharing data creation.  [ruby-dev:24327]
39897         * array.c (rb_ary_replace): ditto.
39899         * array.c (ary_make_shared): freeze shared array. [ruby-dev:24325]
39901         * struct.c (struct_members): always check struct size and size of
39902           members list in the class.  [ruby-dev:24320]
39904 Thu Sep 23 19:48:14 2004  Minero Aoki  <aamine@loveruby.net>
39906         * ext/ripper/Makefile.dev: removed.
39908         * ext/ripper/ripper.rb.in: moved to lib/ripper/core.rb.in.
39910         * ext/ripper/lib/ripper/core.rb: new file.
39912         * ext/ripper/lib/ripper/core.rb.in: new file.
39914         * ext/ripper/tools/generate-ripper_rb.rb: change comment.
39916         * test/ripper/*.rb: on__scan event removed.
39918         * test/ripper/*.rb: event name is changed: on__XXX -> on_XXX.
39920 Thu Sep 23 09:29:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39922         * string.c (rb_str_sub_bang): check if string is not modified
39923           during iteration.  [ruby-dev:24315]
39925         * hash.c (rb_hash_rehash): replace st_foreach() by its deep
39926           checking counterpart.  [ruby-dev:24310]
39928 Wed Sep 22 14:21:54 2004  Minero Aoki  <aamine@loveruby.net>
39930         * parse.y [ripper]: on__scan event removed.
39932         * parse.y [ripper]: event name is changed: on__XXX -> on_XXX.
39934         * ext/ripper/eventids2.c: ditto.
39936         * ext/ripper/ripper.rb.in: ditto.
39938         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
39940         * ext/ripper/lib/ripper/tokenizer: ditto.
39942         * ext/ripper/lib/ripper/filter: new file.
39944         * sample/ripper/colorize.rb: new file.
39946         * sample/ripper/strip-comment.rb: new file.
39948 Wed Sep 22 13:50:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39950         * hash.c (hash_alloc): was using tbl pointer without
39951           initialization.
39953 Wed Sep 22 13:38:12 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39955         * hash.c (rb_hash_rehash): add iteration check.  [ruby-dev:24301]
39957         * st.c (st_foreach): add deep check.
39959         * hash.c (rb_hash_fetch): returns KeyError instead of IndexError.
39961         * hash.c (env_fetch): ditto.
39963 Wed Sep 22 13:02:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39965         * win32/win32.c (rb_w32_call_handler): workaround for Ctrl-C.
39967 Wed Sep 22 09:04:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39969         * parse.y: remove global variables ruby_eval_tree and
39970           ruby_eval_tree_begin.
39972         * array.c (rb_ary_collect_bang): element size might change during
39973           comparison.  [ruby-dev:24300]
39975         * array.c (rb_ary_reject_bang): ditto. [ruby-dev:24300]
39977         * array.c (rb_ary_eql): ditto. [ruby-dev:24300]
39979 Wed Sep 22 00:11:12 2004  Dave Thomas  <dave@pragprog.com>
39981         * process.c: Add documentation for fork()
39983 Tue Sep 21 18:29:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39985         * array.c (rb_ary_uniq_bang): element size might change during
39986           comparison.  [ruby-dev:24298]
39988 Mon Sep 20 17:46:51 2004  Minero Aoki  <aamine@loveruby.net>
39990         * ext/ripper/lib/ripper/tokenizer.rb: fix typo.
39992 Mon Sep 20 17:38:43 2004  Minero Aoki  <aamine@loveruby.net>
39994         * test/ripper/test_scanner_events.rb: tokens must be reordered.
39996         * ext/ripper/lib/ripper/tokenizer.rb: ditto.
39998 Mon Sep 20 16:58:16 2004  Minero Aoki  <aamine@loveruby.net>
40000         * parse.y [ripper]: do not delay dispatching.
40002         * ext/ripper/lib/ripper/tokenizer.rb: sort tokens by right order.
40004 Mon Sep 20 15:17:47 2004  Minero Aoki  <aamine@loveruby.net>
40006         * ext/ripper/lib/ripper/tokenizer.rb: new file.
40008 Mon Sep 20 15:13:52 2004  Minero Aoki  <aamine@loveruby.net>
40010         * test/ripper/test_scanner_events.rb: test #lineno and #column.
40012 Mon Sep 20 14:50:17 2004  Minero Aoki  <aamine@loveruby.net>
40014         * parse.y [ripper]: delayed heredocument events should be
40015           dispatched after EOF.
40017 Mon Sep 20 14:39:42 2004  Minero Aoki  <aamine@loveruby.net>
40019         * parse.y [ripper]: adjust lineno and columns for multi-line
40020           strings.
40022         * parse.y [ripper]: delay heredocument events until seeing
40023           end-of-line.
40025         * parse.y [ripper]: event on__heredoc_contentn ->
40026           on__tstring_content.
40028         * ext/ripper/eventids2.c: ditto.
40030         * ext/ripper/lib/ripper.rb: sync with eventids2.c.
40032         * test/ripper/test_scanner_events.rb: test it.
40034         * ext/ripper/tools/generate-ripper_rb.rb: show basename of input.
40036         * ext/ripper/Makefile.dev: support objdir build.
40038 Mon Sep 20 13:22:55 2004  Minero Aoki  <aamine@loveruby.net>
40040         * parse.y [ripper]: remove Ripper#pos.
40042         * parse.y [ripper]: Ripper#column should return the column of the
40043           current token.
40045 Mon Sep 20 12:02:41 2004  Minero Aoki  <aamine@loveruby.net>
40047         * parse.y [ripper]: unify old_lex_p and token_head.
40049         * test/ripper/test_scanner_events.rb: now \r\n is saved correctly.
40051         * parse.y: new macro lex_goto_eol() for next change.
40053 Mon Sep 20 11:01:55 2004  Minero Aoki  <aamine@loveruby.net>
40055         * parse.y [ripper]: adjust line number for heredoc.  [ruby-dev:24272]
40057 Mon Sep 20 04:49:22 2004  Minero Aoki  <aamine@loveruby.net>
40059         * ext/ripper/ripper.rb.in: new const Ripper::PARSER_EVENT_TABLE.
40061         * ext/ripper/ripper.rb.in: new const Ripper::SCANNER_EVENT_TABLE.
40063         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
40065 Mon Sep 20 04:13:00 2004  Minero Aoki  <aamine@loveruby.net>
40067         * test/ripper/test_scanner_events.rb: test spaces before heredoc
40068           mark.
40070 Mon Sep 20 03:46:54 2004  Minero Aoki  <aamine@loveruby.net>
40072         * parse.y [ripper]: spaces before heredoc marker was lost.
40073           [ruby-dev:24272]
40075         * keywords: rb_reserved_word() should be defined only in ruby
40076           core.  [ruby-dev:24272]
40078         * lex.c: sync with keywords.
40080         * ext/ripper/ripper.rb.in (parse): fix typo.
40082         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
40084 Mon Sep 20 03:37:59 2004  Tanaka Akira  <akr@m17n.org>
40086         * ext/zlib/zlib.c (gzfile_read_raw): call readpartial at first.
40087           (Zlib::GzipReader#readpartial): new method.
40089 Mon Sep 20 00:24:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40091         * enum.c (enum_sort_by): do not use qsort directly.  use
40092           rb_ary_sort_bang() instead.  [ruby-dev:24291]
40094         * enum.c (enum_sort_by): pedantic type check added.
40095           [ruby-dev:24291]
40097         * hash.c (rb_hash_foreach_iter): check iter_lev after each
40098           iteration.  [ruby-dev:24289]
40100         * array.c (rb_ary_and): element size might change during
40101           comparison.  [ruby-dev:24290]
40103         * array.c (rb_ary_or): ditto. [ruby-dev:24292]
40105         * array.c (rb_ary_equal): wrong fix. [ruby-dev:24286]
40107 Sat Sep 18 15:02:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40109         * array.c (rb_ary_equal): element size might change during
40110           comparison.  [ruby-dev:24254]
40112         * array.c (rb_ary_diff): ditto. [ruby-dev:24274]
40114         * array.c (rb_ary_select): ditto. [ruby-dev:24278]
40116         * array.c (rb_ary_delete): ditto. [ruby-dev:24283]
40118         * array.c (rb_ary_rindex): ditto. [ruby-dev:24275]
40120         * array.c (rb_ary_initialize): element size might change during
40121           initializing block.  [ruby-dev:24284]
40123 Sat Sep 18 14:10:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40125         * dir.c (dir_s_chdir): avoid memory leak and unnecessary chdir to
40126           the original directory when exception has caused in changing
40127           direcotry or within block.  thanks to Johan Holmberg
40128           <holmberg@iar.se> [ruby-core:03446]
40130 Fri Sep 17 20:29:33 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40132         * parse.y: add prototypes for Microsoft compiler.
40134         * ext/ripper/depend (parse.obj): lex.c exists at hdrdir.
40136         * {bcc32,win32,wince}/Makefile.sub (YACC, YFLAGS, parse.c):
40137           use bison.
40139 Fri Sep 17 17:11:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40141         * array.c (rb_ary_delete): element comparison might change array
40142           size. [ruby-dev:24273]
40144         * parse.y: make ruby parser reentrant. merge ripper parser to the
40145           real one.  this change makes ruby require bison.
40147         * file.c (rb_file_truncate): clear stdio buffer before truncating
40148           the file.  [ruby-dev:24191]
40150         * ext/digest/digest.c: use rb_obj_class() instead of CLASS_OF
40151           which might return singleton class.  [ruby-dev:24202]
40153 Fri Sep 17 16:07:09 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40155         * ext/tk/lib/multi-tk.rb: improve exit operation
40157 Fri Sep 17 15:01:57 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40159         * ext/tcltklib/tcltklib.c: fix SEGV when (thread_)vwait or
40160           (thread_)tkwait
40162         * ext/tk/lib/tk.rb: add alias wait_window to wait_destroy
40164         * ext/tk/lib/multi-tk.rb: support calling 'mainloop' on slave
40165           interpreters (however, the 'real' eventloop must be run on the
40166           Default Master IP)
40168         * ext/tk/lib/remote-tk.rb: follow the changes of ext/tk/lib/multi-tk.rb
40170         * ext/tk/sample/remote-ip_sample2.rb: ditto
40172         * ext/tk/sample/tkoptdb-safeTk.rb: ditto
40174 Thu Sep 16 18:12:13 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40176         * lib/webrick/cgi.rb (WEBrick::CGI#start): should set REMOTE_USER
40177           to request.user attribute.
40179         * lib/webrick/httpservlet/filehandler.rb
40180           (WEBrick::HTTPServlet::FileHandler#initialize): should expand
40181           the pathname of document root directory.
40183 Thu Sep 16 15:49:28 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40185         * string.c (rb_str_intern): protect string argument from GC.
40186           [ruby-core:03411]
40188 Wed Sep 15 20:22:23 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40190         * ext/tk/sample/tkoptdb-safeTk.rb: fix a bug depend on the changes
40191           of MultiTkIp
40193 Tue Sep 14 23:54:11 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40195         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string was en-bugged by
40196           the previous changes.
40198 Tue Sep 14 23:45:44 2004  Dave Thomas  <dave@pragprog.com>
40200         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::TextFormatter.for):
40201           Add Eric Hodel's simpleformatter.
40203 Tue Sep 14 22:11:08 2004  Minero Aoki  <aamine@loveruby.net>
40205         * parse.y [ripper]: Add rdoc.
40207 Tue Sep 14 20:24:49 2004  Minero Aoki  <aamine@loveruby.net>
40209         * parse.y [ripper]: space event is on__sp, not on__lwsp.
40210           [ruby-dev:24257]
40212         * ext/ripper/eventids2.c: ditto.
40214         * ext/ripper/lib/ripper.rb: ditto.
40216         * ext/ripper/depend (ripper.o): No action is needed.
40217           [ruby-dev:24260]
40219         * ext/ripper/depend: Borland make does not accept pipes in
40220           Makefile rules. [ruby-dev:24589]
40222         * ext/ripper/depend: separate rules for developpers.
40224         * ext/ripper/Makefile.dev: new file.
40226         * ext/ripper/MANIFEST: add Makefile.dev.
40228         * ext/ripper/tools/generate-eventids1.rb: read from file, not
40229           stdin.
40231         * ext/ripper/extconf.rb: clean ripper.E.
40233         * ext/ripper/tools/generate-ripper_rb.rb: #include ids1/ids2
40234           function was lost.
40236         * ext/ripper/tools/generate-ripper_rb.rb: SCANNER_EVENTS wrongly
40237           contained parser events.
40239         * ext/ripper/lib/ripper.rb: ditto.
40241 Tue Sep 14 16:59:37 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40243         * ext/tcltklib/tcltklib.c: fix SEGV
40245         * ext/tk/lib/multi-tk.rb: improve safe-level handling of argument proc
40247         * ext/tk/sample/multi-ip_sample.rb: rename of old 'safe-tk.rb'
40249         * ext/tk/sample/safe-tk.rb: new sample script
40252 Mon Sep 13 21:33:40 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40254         * ext/openssl/ossl_x509name.c (ossl_x509name_to_s): add optional
40255           second argument to specify the output format (see also
40256            X509_NAME_print_ex).
40258         * ext/openssl/ossl_x509name.c (ossl_x509name_init): new constants:
40259           OpenSSL::X509::Name::COMPAT, OpenSSL::X509::Name::RFC2253,
40260           OpenSSL::X509::ONELINE, OpenSSL::X509::MULTILINE.
40262         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name::RFC2253DN):
40263           new module to provide the parse for RFC2253 DN format.
40265         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name.parse_rfc2253):
40266           new method to parse RFC2253 DN format.
40268 Mon Sep 13 19:16:33 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40270         * eval.c (blk_copy_prev): need frame_dup().  [ruby-dev:24103]
40272 Mon Sep 13 16:23:27 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40274         * ext/tk/lib/multi-tk.rb: MultiTkIp.new_master and new_slave accept
40275           safe-level value argument
40277 Mon Sep 13 10:48:37 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40279         * win32/win32.c (rb_w32_getpid): don't need to use _getpid() on
40280           mswin32 and mingw32.
40282 Mon Sep 13 10:22:05 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40284         * object.c (nil_inspect): fix typo.
40286 Mon Sep 13 09:29:58 2004  Minero Aoki  <aamine@loveruby.net>
40288         * ext/ripper/depend: (nmake hack) prepend "./" to ripper.c to
40289           avoid {$(srcdir)}.
40291 Mon Sep 13 06:43:42 2004  Minero Aoki  <aamine@loveruby.net>
40293         * ext/ripper/tools/list-parse-event-ids.rb: does not use getopts.
40295         * ext/ripper/tools/list-scan-event-ids.rb: ditto.
40297 Mon Sep 13 02:42:28 2004  Minero Aoki  <aamine@loveruby.net>
40299         * ext/Setup: add ripper.
40301         * ext/Setup.atheos: ditto.
40303         * ext/Setup.dj: ditto.
40305         * ext/Setup.emx: ditto.
40307         * ext/Setup.nt: ditto.
40309         * ext/Setup.x68: ditto.
40311 Mon Sep 13 02:26:31 2004  Minero Aoki  <aamine@loveruby.net>
40313         * ext/ripper: ripper extention added.
40315         * ext/ripper/MANIFEST: new file.
40317         * ext/ripper/README: new file.
40319         * ext/ripper/depend: new file.
40321         * ext/ripper/extconf.rb: new file.
40323         * ext/ripper/eventids2.c: new file.
40325         * ext/ripper/ripper.rb.in: new file.
40327         * ext/ripper/lib/ripper.rb: new file.
40329         * ext/ripper/test/check-event-arity.rb: new file.
40331         * ext/ripper/test/check-event-coverage.sh: new file.
40333         * ext/ripper/test/check-scanner-event-coverage.rb: new file.
40335         * ext/ripper/test/list-called-events.rb: new file.
40337         * ext/ripper/test/src_rb: new file.
40339         * ext/ripper/test/validate.rb: new file.
40341         * ext/ripper/tools/generate-eventids1.rb: new file.
40343         * ext/ripper/tools/generate-param-macros.rb: new file.
40345         * ext/ripper/tools/generate-ripper_rb.rb: new file.
40347         * ext/ripper/tools/list-parse-event-ids.rb: new file.
40349         * ext/ripper/tools/list-scan-event-ids.rb: new file.
40351         * ext/ripper/tools/preproc.rb: new file.
40353         * ext/ripper/tools/strip.rb: new file.
40355         * test/ripper: ripper tests added.
40357         * test/ripper/dummyparser.rb: new file.
40359         * test/ripper/test_parser_events.rb: new file.
40361         * test/ripper/test_scanner_events.rb: new file.
40363 Mon Sep 13 01:03:02 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40365         * ext/tcltklib/tcltklib.c: improve control of preserv/release tcltkip
40367         * ext/tcltklib/tcltklib.c: store original 'exit' command
40369         * ext/tk/tkutil.c: fix(?) SEGV
40371 Mon Sep 13 00:22:53 2004  Minero Aoki  <aamine@loveruby.net>
40373         * parse.y: fix file header.
40375 Mon Sep 13 00:20:39 2004  Minero Aoki  <aamine@loveruby.net>
40377         * parse.y: ripper merged.
40379         * lex.c: ditto.
40381         * keywords: ditto.
40383 Sun Sep 12 23:53:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40385         * util.c (ruby_strdup): remove unnecessary code. (xmalloc never
40386           returns NULL.)
40388         * util.c (ruby_getcwd): fix memory leak on failure.
40390 Sun Sep 12 02:41:58 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40392         * ext/tcltklib/tcltklib.c: add TclTkIp#allow_ruby_exit? and
40393           allow_ruby_exit=
40395         * ext/tk/lib/multi-tk.rb: ditto.
40397         * ext/tk/lib/remote-tk.rb: ditto.
40399         * ext/tcltklib/MANUAL.euc: ditto.
40401         * ext/tcltklib/MANUAL.eng: ditto.
40403         * ext/tcltklib/tcltklib.c: fix some reasons of SEGV
40405         * ext/tk/tkutil.c: ditto.
40407         * ext/tk/lib/multi-tk.rb: ditto.
40409         * ext/tk/lib/tk/timer.rb: ditto.
40411 Sat Sep 11 16:09:46 2004  Dave Thomas  <dave@pragprog.com>
40413         * lib/rdoc/parsers/parse_rb.rb: Fix up cross-file class merging.
40415 Fri Sep 10 20:18:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40417         * ext/tcltklib/tcltklib.c (lib_merge_tklist): fix suspicious
40418           pointer conversion.
40420 Fri Sep 10 19:16:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40422         * bcc32/Makefile.sub: bccwin32 port starts to use RTL dll.
40423           (need to rebuild all) [ruby-dev:24138]
40425         * win32/win32.{h,c}: ditto.
40427 Fri Sep 10 15:55:59 2004  Minero Aoki  <aamine@loveruby.net>
40429         * lib/fileutils.rb (mkdir_p): should pass mode argument to
40430           Dir.mkdir. [ruby-dev:24242]
40432         * test/fileutils/test_fileutils.rb: test it.
40434 Fri Sep 10 02:43:54 2004  Dave Thomas  <dave@pragprog.com>
40436         * lib/rdoc/generators/template/kilmer.rb: James Buck's
40437           patch for call-seq.
40439 Thu Sep  9 13:58:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40441         * ext/tcltklib/tcltklib.c (ip_init): change flag value for setting
40442           'argv' and 'argv0' variable
40444         * ext/tk/lib/remote-tk.rb: follow changes of multi-tk.rb
40446 Thu Sep  9 11:46:18 2004  Dave Thomas  <dave@pragprog.com>
40448         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_classes): Allow
40449           spaces aroun parameter to define_method_under (James Buck)
40451 Wed Sep  8 18:44:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40453         * ext/stringio/stringio.c (strio_write): zero fill a gap if exsts.
40454           [ruby-dev:24190]
40456 Wed Sep  8 15:19:49 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40458         * ext/tcltklib/tcltklib.c (ip_init): cannot create a IP at level 4
40460         * ext/tk/lib/multi-tk.rb: improve 'exit' operation, security check,
40461           and error treatment
40463         * ext/tk/lib/multi-tk.rb: allow a trusted slave IP to create slave IPs
40465         * ext/tk/lib/tk/listbox.rb: add TkListbox#value, value=, clear, and
40466           erase
40468         * ext/tk/lib/tk/text.rb: add TkText#clear and erase
40470 Tue Sep  7 15:17:49 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40472         * ext/socket/socket.c (ruby_connect): break immediately if a
40473           socket is non-blocking.  [ruby-talk:111654]
40475 Tue Sep  7 12:48:22 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40477         * {bcc32,win32,wince}/Makefile.sub (config.h): add fcntl.
40479         * win32/win32.[ch] (fcntl): ditto.
40481         * win32/win32.c (rb_w32_connect): support nonblocking mode.
40483         * ext/socket/socket.c (wait_connectable, ruby_connect): support
40484           nonblocking connect on various platforms.
40486 Mon Sep  6 11:00:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40488         * dir.c (dir_s_chdir): the patch to shut up false warning when
40489           exception occurred within a block.  a patch was given from Johan
40490           Holmberg <holmberg at iar.se>.  [ruby-core:03292]
40492 Mon Sep  6 10:57:40 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40494         * ext/tk/lib/tk/menu.rb(TkOptionMenubutton#insert): call correct method
40496 Mon Sep  6 07:51:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40498         * eval.c (cvar_cbase): singletons should refer outer cvar scope.
40499           [ruby-dev:24223]
40501         * eval.c (rb_load): should preserve previous ruby_wrapper value.
40502           [ruby-dev:24226]
40504 Sat Sep  4 01:14:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40506         * eval.c (cvar_cbase): class variables cause SEGV in
40507           instance_eval() for fixnums and symbols. [ruby-dev:24213]
40509 Fri Sep  3 17:47:58 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40511         * struct.c (make_struct): remove redefining constant when
40512           conflict.  [ruby-dev:24210]
40514 Fri Sep  3 11:31:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40516         * ext/tk/lib/tk.rb: Tk.after makes TkCore::INTERP.tk_cmd_tbl grow
40517           [ruby-dev:24207]
40519 Fri Sep  3 02:12:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40521         * ext/tcltklib/tcltklib.c: fix typo [ruby-talk:111266]
40523         * ext/tk/lib/tk/text.rb: fix typo
40525         * ext/tk/lib/multi-tk.rb: improve safe-level treatment on slave IPs
40527 Fri Sep  3 01:54:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40529         * ext/extmk.rb (extmake): extact target prefix from Makefiles.
40531         * ext/extmk.rb: already built-in libraries satisfy dependencies.
40532           [ruby-dev:24028]
40534 Wed Sep  1 21:16:50 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40536         * ext/tk/lib/tk/spinbox.rb: fix typo
40538 Wed Sep  1 19:28:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40540         * process.c (rb_proc_exec): label cannot precede variable declarations.
40542 Tue Aug 31 18:20:49 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40544         * ext/tk/tkutil.c (cbsubst_init): fix memory leak
40546         * ext/tk/tkutil.c (cbsubst_get_all_subst_keys): fix SEGV
40548 Tue Aug 31 16:04:22 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40550         * ext/tcltklib/tcltklib.c (ip_delete): when a tcltkip is deleted,
40551           destroy its root widget
40553 Tue Aug 31 12:30:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40555         * ext/tcltklib/tcltklib.c (del_root): fix SEGV
40557 Mon Aug 30 21:50:14 2004  Dave Thomas  <dave@pragprog.com>
40559         * object.c: Add RDoc for Module.included.
40561 Mon Aug 30 23:11:06 2004  Dave Thomas  <dave@pragprog.com>
40563         * lib/rdoc/ri/ri_driver.rb (and others): ri now merges documentation
40564           if it finds the same class in multiple places.
40566 Mon Aug 30 22:40:30 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40568         * ext/tk/lib/multi-tk.rb: 'restart' method accepts arguments
40570 Mon Aug 30 15:10:46 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40572         * configure.in (GNU/k*BSD): fixed FTBFS on GNU/k*BSD. [ruby-dev:24051]
40574 Sun Aug 29 14:08:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40576         * ext/tcltklib/tcltklib.c: compile error on bcc32 [ruby-dev:24081]
40578         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string does not work
40580 Sat Aug 28 23:04:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40582         * bignum.c (rb_big_and): protect parameters from GC.
40583           [ruby-talk:110664]
40585 Fri Aug 27 12:13:50 2004  Tanaka Akira  <akr@m17n.org>
40587         * ext/stringio/stringio.c (Init_stringio): add StringIO#readpartial as
40588           an alias for StringIO#sysread.
40590 Fri Aug 27 10:14:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40592         * process.c (rb_proc_exec): strip trailing spaces.  [ruby-dev:24143]
40594         * win32/win32.c (CreateChild): ditto.
40596 Thu Aug 26 04:38:29 2004  Dave Thomas  <dave@pragprog.com>
40598         * eval.c (return_jump): Minor typo in error message. Now reads
40599           "return can't jump across threads".
40601 Wed Aug 25 15:18:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40603         * eval.c (rb_longjmp): Exception#to_str is no longer defined.
40605 Wed Aug 25 11:39:10 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40607         * error.c (exc_equal): exceptions are equal if they share same
40608           class, message and backtrace. [ruby-talk:110354]
40610         * error.c (name_err_mesg_equal): ditto.
40612 Tue Aug 24 16:41:48 2004  Shugo Maeda  <shugo@ruby-lang.org>
40614         * lib/cgi/session.rb (CGI::Session::FileStore#initialize): do not
40615           use a session id as a filename.
40617         * lib/cgi/session/pstore.rb (CGI::Session::PStore#initialize): ditto.
40619         * lib/cgi/session/pstore.rb (CGI::Session::PStore#initialize): use
40620           Dir::tmpdir.
40622 Tue Aug 24 14:32:17 2004  Shugo Maeda  <shugo@ruby-lang.org>
40624         * lib/cgi/session.rb (CGI::Session::FileStore#initialize): untaint
40625           session id after check.
40627 Tue Aug 24 08:57:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40629         * ext/openssl/ossl_x509attr.c (ossl_x509attr_initialize): d2i
40630           functions may replace the pointer indicated by the first argument.
40632         * ext/openssl/ossl_x509ext.c (ossl_x509ext_initialize): ditto.
40634         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): ditto.
40636 Mon Aug 23 12:43:32 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40638         * lib/resolv.rb (Config.default_config_hash): when multiple domains
40639           are set, Win32::Resolv.get_resolv_info returns Array.
40641 Sun Aug 22 16:27:38 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40643         * ext/openssl/ossl_ssl.c (ossl_ssl_read):
40644           - should return an empty string if specified length to read is 0.
40645           - should check for pending data and wait for fd before reading.
40646           - call underlying IO's sysread if SSL session is not started.
40647           [ruby-dev:24072], [ruby-dev:24075]
40649         * ext/openssl/ossl_ssl.c (ossl_ssl_write):
40650           - call underlying IO's syswrite if SSL session is not started.
40652         * ext/openssl/ossl_ssl.c (ossl_ssl_pending): new method
40653           OpenSSL::SSL#pending.
40655         * ext/openssl/lib/openssl/buffering.rb: should not use select.
40657 Sun Aug 22 01:10:36 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40659         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_connect):
40660           should call :ProxyContentHandler before finishing CONNECT.
40662 Sat Aug 21 06:41:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40664         * ext/tcltklib/extconf.rb (find_tcl, find_tk): find stub library.
40666         * lib/mkmf.rb (arg_config, with_config): deal with '-' and '_'
40667           uniformly.  [ruby-dev:24118]
40669 Fri Aug 20 14:49:42 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40671         * io.c (rb_io_check_writable): no need to check read buffer if
40672           already changed to write mode.
40674 Fri Aug 20 11:46:43 2004  UENO Katsuhiro  <katsu@blue.sky.or.jp>
40676         * ext/zlib/zlib.c: GzipReader#ungetc caused crc error.
40678 Thu Aug 19 16:29:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40680         * ext/tk/lib/tk.rb: Fail to treat a hash value of 'font' option.
40682         * ext/tk/lib/tk.rb: bindinfo cannot return '%' substiturion infomation.
40684         * ext/tk/lib/menu.rb: typo bug.
40686 Thu Aug 19 15:15:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40688         * dir.c (free_dir): fix memory leak.  reported by yamamoto
40689           madoka.
40691 Thu Aug 19 09:19:27 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40693         * configure.in, win32/Makefile.sub (LIBS): need to link shell32
40694           library for SH* functions on mswin32 and mingw32.
40696         * wince/Makefile.sub (LIBS): need to link ceshell library for SH*
40697           functions on mswince.
40699 Thu Aug 19 03:07:00 2004  why the lucky stiff  <why@ruby-lang.org>
40701         * lib/yaml/baseemitter.rb: folding now handles double-quoted strings,
40702           fixed problem with extra line feeds at end of folding, whitespace
40703           opening scalar blocks.
40705         * lib/yaml/rubytypes.rb: subtelties in handling strings with
40706           non-printable characters and odd whitespace patterns.
40708 Wed Aug 18 23:44:20 2004  Minero Aoki  <aamine@loveruby.net>
40710         * lib/net/protocol.rb (rbuf_fill): OpenSSL::SSLSocket has its own
40711           buffer, select(2) might not work. [ruby-dev:24072]
40713 Wed Aug 18 17:10:12 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40715         * ext/tcltklib/stubs.c (ruby_tcltk_stubs): need to call
40716           Tcl_FindExecutable() for Tcl/Tk 8.4.
40718 Wed Aug 18 12:52:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40720         * eval.c (rb_obj_instance_eval): evaluates under special singleton
40721           classes as for special constants.
40723 Wed Aug 18 11:22:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40725         * win32/win32.c (init_env): initialize HOME and USER environment
40726           variables unless set.
40728 Wed Aug 18 10:17:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40730         * eval.c (bind_eval): new method. [RCR 251]
40732         * string.c (rb_str_clear): new method. [ruby-dev:24104]
40734 Tue Aug 17 17:20:59 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40736         * io.c (rb_io_reopen): should clear allocated OpenFile.  pointed
40737           out by Guy Decoux. [ruby-core:03288]
40739 Tue Aug 17 01:36:32 2004  Dave Thomas  <dave@pragprog.com>
40741         * lib/rdoc/usage.rb: Remove extra indent. Tidy 'ri' option
40742           parsing so RDoc::usage plays better with OptionParser.
40744 Sat Aug 14 02:48:16 2004  Dave Thomas  <dave@pragprog.com>
40746         * lib/rdoc/usage.rb: Added. Allows command line programs
40747           to report usage using their initial RDoc comment.
40749 Sat Aug 14 01:25:48 2004  why the lucky stiff  <why@ruby-lang.org>
40751         * ext/syck/token.c: re2c no longer compiled with bit vectors.  caused
40752           problems for non-ascii characters. [ruby-core:03280]
40753         * ext/syck/implicit.c: ditto.
40754         * ext/syck/bytecode.c: ditto.
40756 Fri Aug 13 12:55:20 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40758         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_range_header):
40759           fix regex for range-spec.
40761         * lib/webrick/httpservlet/filehandler.rb
40762           (WEBrick::HTTPServlet::DefaultFileHandler#make_partial_content):
40763           multipart/byteranges response was broken.
40765         * lib/xmlrpc/server.rb: refine example code.
40767 Thu Aug 12 10:54:17 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40769         * rubyio.h (rb_eof_error): should mark as NORETURN.
40771         * win32/win32.c (make_cmdvector): adjust escaped successive
40772           double-quote handling.
40774 Thu Aug 12 01:53:10 2004  Tanaka Akira  <akr@m17n.org>
40776         * io.c (read_buffered_data): extracted from rb_io_fread.
40777           (io_readpartial): new method IO#readpartial.
40778           [ruby-dev:24055]
40780 Wed Aug 11 17:17:50 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40782         * configure.in (RPATHFLAG): stop setting RPATHFLAG on Interix.
40784 Mon Aug  9 15:03:20 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40786         * lib/webrick/httpservlet/erbhandler.rb
40787           (WEBrick::HTTPServlet::ERBHandler#do_GET): should select media type
40788           by suffix of script filename.
40790 Mon Aug  9 12:51:43 2004  Dave Thomas  <dave@pragprog.com>
40792         * dir.c (dir_s_glob): Roll in Austin Ziegler's Dir.glob and
40793           fnmatch updates.
40795 Mon Aug  9 06:33:06 2004  Minero Aoki  <aamine@loveruby.net>
40797         * lib/fileutils.rb (cp_r): copies symlink to symlink, except
40798           root entries of cp_r.
40800         * lib/fileutils.rb: new method FileUtils.copy_entry.
40802         * test/fileutils/test_fileutils.rb: more cp_r tests.
40804 Sun Aug  8 00:43:31 2004  why the lucky stiff  <why@ruby-lang.org>
40806         * lib/implicit.c: added sexagecimal float#base60.
40808         * ext/syck/rubyext.c (yaml_org_handler): ditto.
40810         * lib/token.c: indentation absolutely ignored when processing flow
40811           collections.  plain scalars are trimmed if indentation follows in
40812           an ambiguous flow collection.
40814 Sat Aug  7 03:08:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40816         * process.c (proc_daemon): new method.  should be modified for
40817           platforms without /dev/null.
40819 Sat Aug  7 00:50:01 2004  Tanaka Akira  <akr@m17n.org>
40821         * ext/zlib/zlib.c: Zlib::GzipReader#read(0) returns "" instead of nil.
40823 Wed Aug  4 13:26:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40825         * marshal.c (r_bytes0): optimize out read(0). [ruby-talk:108276]
40827 Tue Aug  3 13:49:12 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40829         * ext/tk/lib/tk/namespace.rb: bug fix
40831         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: add Tk::TreeCtrl.loupe
40833 Mon Aug  2 23:33:48 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40835         * test/ruby/test_file.rb (test_fnmatch): added more tests.
40837 Mon Aug  2 18:04:21 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40839         * ext/tk/lib/tk/msgcat.rb (set_translation): bug fix (fail to set
40840           trans_str to the same as src_str when trans_str is not given.)
40842 Mon Aug  2 17:40:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40844         * eval.c (blk_free): fixed serious memory leak. [ruby-dev:24013]
40846 Mon Aug  2 11:53:06 2004  Dave Thomas  <dave@pragprog.com>
40848         * lib/rdoc/code_objects.rb (RDoc::Context::find_symbol): Fix infinite recursion
40849           looking up some top level symbols (batsman)
40851 Mon Aug  2 11:48:29 2004  Dave Thomas  <dave@pragprog.com>
40853         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods): Allow '.'s in
40854           variable names to support SWIG generated files (Hans Fugal)
40856 Sat Jul 31 23:08:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40858         * eval.c (is_defined): stupid mistakes fixed. [ruby-dev:24006]
40860 Sat Jul 31 17:39:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40862         * misc/ruby-mode.el (ruby-expr-beg, ruby-parse-partial,
40863           ruby-calculate-indent, ruby-move-to-block, ruby-forward-sexp,
40864           ruby-backward-sexp): keywords must match word-wise.
40866 Sat Jul 31 13:37:51 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40868         * eval.c (is_defined): avoid unnecessary method invocations.
40870 Sat Jul 31 05:35:37 2004  why the lucky stiff  <why@ruby-lang.org>
40872         * lib/yaml/rubytypes.rb: exceptions were using an older
40873           YAML.object_maker. [ruby-core:03080]
40875         * ext/syck/token.c (sycklex_yaml_utf8): using newline_len to
40876           handline CR-LFs.  "\000" was showing up on folded blocks which
40877           stopped at EOF.
40879 Sat Jul 31 01:25:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40881         * eval.c (is_defined): call is_defined() before invoking
40882           rb_eval().  [ruby-talk:107867]
40884 Fri Jul 30 16:10:54 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40886         * ext/tcltklib/tcltklib.c (lib_fromUTF8_core): raise ArgumentError when
40887           the unknown encoding name is given.
40889         * ext/tcltklib/tcltklib.c (lib_toUTF8_core): ditto.
40891         * ext/tk/lib/tk.rb (Tk::Encoding.encoding_convertfrom): bug fix.
40893         * ext/tk/lib/tk.rb (Tk::Encoding.encoding_convertto): ditto.
40895 Wed Jul 28 18:59:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40897         * lib/cgi.rb (CGI::initialize): remove at_exit code for CGI_PARAMS
40898           and CGI_COOKIES.  they will no longer be used.
40900 Wed Jul 28 15:44:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40902         * eval.c (rb_call0): should call rb_call_super() directly for
40903           visibility overriding.  [ruby-dev:23989]
40905 Wed Jul 28 01:04:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40907         * env.h: remove argv from ruby_frame.
40909         * eval.c (rb_eval): no more copy on write.
40911         * eval.c (assign): ditto.
40913         * eval.c (rb_call0): can receive *rest by specifying negative
40914           argc.  (-1 means 0 arg and *rest, -2 means 1 arg and *rest...)
40916         * eval.c (rb_call0): properly set frame's argc counter.
40918         * gc.c (rb_gc_mark_frame): need not to mark frame's argv
40920         * gc.c (run_final): wrong order of data. [ruby-dev:23984]
40922 Tue Jul 27 07:05:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40924         * eval.c (rb_eval): copy on write for argument local variable
40925           assignment.
40927         * eval.c (assign): ditto.
40929         * eval.c (rb_call0): update ruby_frame->argv with the default
40930           value used for the optional arguments.
40932         * object.c (Init_Object): "===" calls rb_obj_equal() directly.
40933           [ruby-list:39937]
40935 Mon Jul 26 11:22:55 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40937         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.escape): should
40938           escape space.
40940 Sun Jul 25 10:56:28 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40942         * win32/win32.{h,c} (rb_w32_{f,fd,fs}open): workaround for bcc32's
40943           {f,fd,fs}open bug. set errno EMFILE and EBADF. [ruby-dev:23963]
40945         * test/drb/drbtest.rb: fix method duplication.
40947 Sat Jul 24 13:32:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40949         * range.c (rb_range_beg_len): returns Qnil only when "beg" points
40950           outside of a range.  No boundary check for "end".
40952 Fri Jul 23 16:40:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40954         * gc.c (define_final): should not disclose NODE* to Ruby world.
40955           [ruby-dev:23957]
40957 Fri Jul 23 08:52:22 2004  Shugo Maeda  <shugo@ruby-lang.org>
40959         * lib/net/imap.rb (disconnected?): new method.
40961 Thu Jul 22 16:41:54 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40963         * lib/cgi/session.rb (CGI::Session::FileStore#update): sets the
40964           permission of the session data file to 0600.
40966         * lib/cgi/session/pstore.rb (CGI::Session::Pstore#initialize):
40967           ditto.
40969 Mon Jul 19 00:53:46 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40971         * lib/webrick/httpservlet/cgihandler.rb
40972           (WEBrick::HTTPServlet::CGIhandler#do_GET): set SystemRoot environment
40973           variable to CGI process on Windows native platforms. [ruby-dev:23936]
40975 Sun Jul 18 16:14:29 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40977         * ext/tk/lib/tk/msgcat.rb (TkMsgCatalog.callback): bug fix
40978           ( wrong number of argument )
40980 Sun Jul 18 08:13:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40982         * sprintf.c (rb_f_sprintf): remove extra sign digit.
40984 Sun Jul 18 03:19:14 2004  Akinori MUSHA  <knu@iDaemons.org>
40986         * dir.c (bracket): use NULL instead of 0.
40988 Sun Jul 18 02:35:30 2004  Shugo Maeda  <shugo@ruby-lang.org>
40990         * lib/net/imap.rb (receive_responses): return if a LOGOUT response
40991           received.
40993 Sat Jul 17 23:59:01 2004  Shugo Maeda  <shugo@ruby-lang.org>
40995         * lib/net/imap.rb (send_string_data): wait command continuation
40996           requests before sending octet data of literals.
40998 Sat Jul 17 23:54:59 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41000         * ext/tk/lib/tk/variable.rb: TkVariable#ref returns a TkVariable object
41002 Sat Jul 17 22:04:44 2004  akira yamada  <akira@ruby-lang.org>
41004         * lib/uri/ldap.rb: method hierarchical? should be in URI::LDAP.
41006 Sat Jul 17 18:29:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41008         * parse.y (stmt): not to show same error messages twice.
41010 Sat Jul 17 14:18:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41012         * string.c (rb_str_match_m): String#match should also take
41013           optional argument.  [ruby-core:03205]
41015         * re.c (rb_reg_match_m): add optional second argugment "pos" to
41016           specify match start point.  [ruby-core:03203]
41018 Sat Jul 17 13:13:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41020         * lib/irb/ruby-lex.rb (RubyLex::identify_string): %s string do not
41021           process expression interpolation.  [ruby-talk:106691]
41023 Sat Jul 17 05:26:27 2004  Dave Thomas  <dave@pragprog.com>
41025         * lib/rdoc/diagram.rb: Incorporate Micheal Neumann's
41026           client-side imagemao patch
41028 Sat Jul 17 01:57:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41030         * eval.c (THREAD_ALLOC): th->thread should be initialized to NULL.
41031           [ruby-talk:106657]  The solution was found by Guy Decoux.
41033 Fri Jul 16 22:30:28 2004  Michael Neumann  <mneumann@ntecs.de>
41035         * file.c (rb_stat_dev_major): new methods File::Stat#dev_major and
41036           #dev_minor. [ruby-core:03195]
41038 Fri Jul 16 11:17:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41040         * error.c (exit_initialize): use EXIT_SUCCESS instead of 0.
41041           [ruby-dev:23913]
41043         * error.c (exit_success_p): new method SystemExit#success?.
41044           [ruby-dev:23912]
41046         * error.c (syserr_initialize): initialization for subclasses.
41047           [ruby-dev:23912]
41049 Thu Jul 15 23:53:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41051         * lib/optparse.rb (OptionParser#warn, OptionParser#abort): Exception
41052           no longer has to_str method.
41054 Thu Jul 15 22:59:48 2004  Shugo Maeda  <shugo@ruby-lang.org>
41056         * ext/readline/extconf.rb: added dir_config for curses, ncurses,
41057           termcap.
41059 Thu Jul 15 20:44:46 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41061         * class.c: rdoc patch
41063 Thu Jul 15 14:12:34 2004  why the lucky stiff  <why@ruby-lang.org>
41065         * lib/yaml.rb (YAML::load_file, YAML::parse_file): added.
41067         * ext/syck/token.c: re2c compiled with bit vectors now.
41068         * ext/syck/implicit.c: ditto.
41069         * ext/syck/bytecode.c: ditto.
41071 Thu Jul 15 10:15:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41073         * ext/tk/, ext/tcltklib/: bug fix
41075         * ext/tk/lib/tk.rb: better operation for SIGINT when processing
41076           callbacks.
41077         * ext/tk/lib/tk/msgcat.rb: ditto.
41078         * ext/tk/lib/tk/variable.rb: ditto.
41079         * ext/tk/lib/tk/timer.rb: ditto.
41081         * ext/tk/lib/tk/validation.rb: add Tk::ValidateConfigure.__def_validcmd
41082           to define validatecommand methods easier
41084         * ext/tk/lib/tk.rb (_genobj_for_tkwidget): support autoload Tk ext
41085           classes
41087         * ext/tk/lib/tk/canvas.rb and so on: remove the parent widget type
41088           check for items (e.g. canvas items; depends on the class) to
41089           avoid some troubles on Tk extension widget class definition.
41091         * ext/tk/lib/tkextlib/: add Iwidget and TkTable extension support
41093         * ext/tk/sample/tkextlib/: add samples of Iwidget and TkTable
41096 Wed Jul 14 23:49:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41098         * enum.c (enum_min_by): new method Enum#min_by.  added Enum#max_by
41099           as well.
41101 Wed Jul 14 18:05:21 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41103         * ext/openssl/ossl_asn1.c (ossl_asn1cons_to_der): fix type of
41104           argument. [ruby-dev:23891]
41106         * test/openssl/test_x509store.rb: prune tests for CRL checking
41107           unless X509::V_FLAG_CRL_CHECK is defined.
41109 Wed Jul 14 12:20:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41111         * util.c (ruby_strtod): should not convert string in the form of
41112           "-I.FE-X" which both "I" and "F" are ommitted. [ruby-dev:23883]
41114         * test/ruby/test_float.rb (test_strtod): add test for bug fix.
41116 Wed Jul 14 00:33:48 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41118         * array.c: rdoc patch. merged patch from Johan Holmberg
41119           <holmberg@iar.se> [ruby-core:3170]
41121 Tue Jul 13 19:39:12 2004  akira yamada  <akira@ruby-lang.org>
41123         * lib/uri/generic.rb (URI::Generic#merge_path):
41124           "URI('http://www.example.com/foo/..') + './'" should return
41125           "URI('http://www.example.com/')".  [ruby-list:39838]
41126           "URI('http://www.example.com/') + './foo/bar/..'" should return
41127           "URI('http://www.example.com/foo/')".  [ruby-list:39844]
41129         * test/uri/test_generic.rb (TestGeneric#test_merge): added tests.
41131 Tue Jul 13 15:48:56 2004  Akinori MUSHA  <knu@iDaemons.org>
41133         * lib/mkmf.rb (init_mkmf): Do not add $(libdir) to $LIBPATH in
41134            extmk mode.
41136         * lib/mkmf.rb (dir_config): Prepend a new library path instead of
41137           appending so it is tried first.
41139 Tue Jul 13 00:50:48 2004  Dave Thomas  <dave@pragprog.com>
41141         * lib/rdoc/parsers/parse_rb.rb: Support call-seq: for Ruby files.
41143 Mon Jul 12 21:20:51 2004  Dave Thomas  <dave@pragprog.com>
41145         * html_generator.rb: Support hyperlinks of the form {any text}[xxx]
41146           as well as stuff[xxx]
41148 Sat Jul 10 09:30:24 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41150         * test/soap/marshal/test_struct.rb: use qualified built-in class name
41151           (::Struct) to avoid name crash.
41153 Sat Jul 10 04:21:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41155         * ext/tk/lib/tk.rb: better operation for SIGINT when processing
41156           callbacks.
41157         * ext/tk/lib/tk/msgcat.rb: ditto.
41158         * ext/tk/lib/tk/variable.rb: ditto.
41159         * ext/tk/lib/tk/timer.rb: ditto.
41161         * ext/tk/lib/tk/validation.rb (__def_validcmd):  add a module
41162           function of Tk::ValidateConfigure to define validatecommand
41163           methods easier
41165 Fri Jul  9 22:18:59 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41167         * array.c, enum.c, pack.c: rdoc patch from Johan Holmberg
41168           <holmberg@iar.se> [ruby-core:3132] [ruby-core:3136]
41170         * numeric.c: rdoc patch.
41172 Fri Jul  9 19:26:39 2004  Tanaka Akira  <akr@m17n.org>
41174         * lib/open-uri.rb (URI::HTTPS#proxy_open): raise ArgumentError to
41175           notice https is not supported.
41177 Fri Jul  9 14:28:54 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41179         * eval.c (rb_thread_raise): accept third argument as well as
41180           Kernel#raise, and evaluate the arguments to create an exception in
41181           the caller's context.  [ruby-talk:105507]
41183 Fri Jul  9 01:47:08 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41185         * ext/tk/lib: bug fix
41186         * ext/tk/lib/tkextlib/itcl: add [incr Tcl] support
41187         * ext/tk/lib/tkextlib/itk: add [incr Tk] support
41188         * ext/tk/lib/tkextlib/iwidgets: midway point of [incr Widgets] support
41189         * ext/tk/sample/tkextlib/iwidgets: very simple examples of
41190           [incr Widgets]
41192 Thu Jul  8 19:27:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41194         * configure.in (rb_cv_stack_end_address): detect stack end address
41195           variable supplied by system.  [ruby-core:03115]
41197         * gc.c (Init_stack): use system provided address if possible.
41199 Thu Jul  8 00:05:23 2004  akira yamada  <akira@ruby-lang.org>
41201         * lib/tempfile.rb (Tempfile::initialize): got out code of
41202           generating tmpname.  [ruby-dev:23832][ruby-dev:23837]
41204 Wed Jul  7 02:31:41 2004  Kouhei Sutou  <kou@cozmixng.org>
41206         * lib/rss/{rss,parser,0.9,1.0,2.0}.rb: supported RSS 0.9x/2.0
41207           validation and validation which disregard order of elements.
41208         * test/rss/test_parser.rb: added tests for RSS 0.9x/2.0
41209           validation.
41210         * test/rss/{test_trackback,rss-testcase}.rb: fixed no good method
41211           name.
41213 Wed Jul  7 00:48:34 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41215         * ext/tk/lib/tkextlib/tktrans.rb,
41216           ext/tk/lib/tkextlib/treectrl.rb: fix syntax errors.
41218 Tue Jul  6 18:38:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41220         * ext/tk/lib: improve framework of developping Tcl/Tk extension
41221           wrappers
41223 Mon Jul  5 23:56:42 2004  Kouhei Sutou  <kou@cozmixng.org>
41225         * lib/rss/{trackback,syndication,dublincore,content}.rb: worked
41226           with ruby 1.6 again.
41228         * test/rss/rss-assertions.rb: ditto.
41230 Mon Jul  5 22:54:39 2004  Tanaka Akira  <akr@m17n.org>
41232         * lib/uri/common.rb (Kernel#URI): new global method for parsing URIs.
41234 Mon Jul  5 09:02:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41236         * eval.c (rb_thread_yield, rb_f_catch): 4th argument to rb_yield_0()
41237           is a set of bit flags.  [ruby-dev:23859]
41239 Mon Jul  5 01:20:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41241         * lib/drb/drb.rb(DRbConn self.open): If socket pool is full, close
41242           the socket whose last-access-time is oldest. (and add new one)
41243           [ruby-dev:23860]
41245 Sun Jul  4 12:24:50 2004  Kouhei Sutou  <kou@cozmixng.org>
41247         * lib/rss/rss.rb: added copyright header.
41249 Sat Jul  3 22:25:27 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41251         * added files:
41252           * lib/soap/header/*
41253           * lib/soap/rpc/httpserver.rb
41254           * lib/wsdl/soap/cgiStubCreator.rb
41255           * lib/wsdl/soap/classDefCreator.rb
41256           * lib/wsdl/soap/classDefCreatorSupport.rb
41257           * lib/wsdl/soap/clientSkeltonCreator.rb
41258           * lib/wsdl/soap/driverCreator.rb
41259           * lib/wsdl/soap/mappingRegistryCreator.rb
41260           * lib/wsdl/soap/methodDefCreator.rb
41261           * lib/wsdl/soap/servantSkeltonCreator.rb
41262           * lib/wsdl/soap/standaloneServerStubCreator.rb
41263           * lib/wsdl/xmlSchema/enumeration.rb
41264           * lib/wsdl/xmlSchema/simpleRestriction.rb
41265           * lib/wsdl/xmlSchema/simpleType.rb
41266           * lib/xsd/codegen/*
41267           * lib/xsd/codegen.rb
41268           * sample/soap/authheader/*
41269           * sample/soap/raa2.4/*
41270           * sample/soap/ssl/*
41271           * sample/soap/swa/*
41272           * sample/soap/whois.rb
41273           * sample/wsdl/raa2.4/*
41274           * test/soap/header/*
41275           * test/soap/ssl/*
41276           * test/soap/struct/*
41277           * test/soap/swa/*
41278           * test/soap/wsdlDriver/*
41279           * test/wsdl/multiplefault.wsdl
41280           * test/wsdl/simpletype/*
41281           * test/wsdl/test_multiplefault.rb
41283         * modified files:
41284           * lib/soap/baseData.rb
41285           * lib/soap/element.rb
41286           * lib/soap/generator.rb
41287           * lib/soap/netHttpClient.rb
41288           * lib/soap/parser.rb
41289           * lib/soap/property.rb
41290           * lib/soap/soap.rb
41291           * lib/soap/streamHandler.rb
41292           * lib/soap/wsdlDriver.rb
41293           * lib/soap/encodingstyle/handler.rb
41294           * lib/soap/encodingstyle/literalHandler.rb
41295           * lib/soap/encodingstyle/soapHandler.rb
41296           * lib/soap/mapping/factory.rb
41297           * lib/soap/mapping/mapping.rb
41298           * lib/soap/mapping/registry.rb
41299           * lib/soap/mapping/rubytypeFactory.rb
41300           * lib/soap/mapping/wsdlRegistry.rb
41301           * lib/soap/rpc/cgistub.rb
41302           * lib/soap/rpc/driver.rb
41303           * lib/soap/rpc/proxy.rb
41304           * lib/soap/rpc/router.rb
41305           * lib/soap/rpc/soaplet.rb
41306           * lib/soap/rpc/standaloneServer.rb
41307           * lib/wsdl/data.rb
41308           * lib/wsdl/definitions.rb
41309           * lib/wsdl/operation.rb
41310           * lib/wsdl/parser.rb
41311           * lib/wsdl/soap/definitions.rb
41312           * lib/wsdl/xmlSchema/complexContent.rb
41313           * lib/wsdl/xmlSchema/complexType.rb
41314           * lib/wsdl/xmlSchema/data.rb
41315           * lib/wsdl/xmlSchema/parser.rb
41316           * lib/wsdl/xmlSchema/schema.rb
41317           * lib/xsd/datatypes.rb
41318           * lib/xsd/qname.rb
41319           * sample/soap/sampleStruct/server.rb
41320           * sample/wsdl/amazon/AmazonSearch.rb
41321           * sample/wsdl/amazon/AmazonSearchDriver.rb
41322           * test/soap/test_property.rb
41323           * test/soap/calc/test_calc_cgi.rb
41324           * test/wsdl/test_emptycomplextype.rb
41326         * summary
41327           * add SOAP Header mustUnderstand support.
41329           * add HTTP client SSL configuration and Cookies support (works
41330             completely with http-access2).
41332           * add header handler for handling sending/receiving SOAP Header.
41334           * map Ruby's anonymous Struct to common SOAP Struct in SOAP Object
41335             Model.  it caused error.
41337           * add WSDL simpleType support to restrict lexical value space.
41339 Sat Jul  3 17:19:44 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41341         * ext/tk/lib/tkextlib/tkDND.rb: fix syntax error.
41343 Thu Jul  1 18:36:08 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41345         * ext/tk/lib/tcltklib: bug fix
41347         * ext/tk/lib/tk: bug fix and add Tcl/Tk extension support libraries
41349 Thu Jul  1 18:31:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41351         * lib/pstore.rb (PStore#transaction): get rid of opening in write mode
41352           when read only transaction.  [ruby-dev:23842]
41354 Thu Jul  1 00:44:42 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41356         * ext/openssl/ossl_cipher.c (ossl_cipher_encrypt, ossl_cipher_decrypt):
41357           re-implemnt (the arguments for this method is ).
41359         * ext/openssl/ossl_cipher.c (ossl_cipher_pkcs5_keyivgen): new method
41360           OpenSSL::Cipher::Cipher#pkcs5_keyivgen. it calls EVP_BytesToKey().
41362         * ext/openssl/ossl_cipher.c (ossl_cipher_set_key_length): new method
41363           OpenSSL::Cipher::Cipher#key_len=.
41365 Wed Jun 30 19:48:09 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41367         * ext/openssl/extconf.rb: check for EVP_CIPHER_CTX_copy, ENGINE_add,
41368           EVP_CIPHER_CTX_set_padding, EVP_CipherFinal_ex, EVP_CipherInit_ex,
41369           EVP_DigestFinal_ex and EVP_DigestInit_ex.
41371         * ext/openssl/openssl_missing.c (EVP_CIPHER_CTX_copy): new function.
41373         * ext/openssl/openssl_missing.h (EVP_DigestInit_ex, EVP_DigestFinal_ex,
41374           EVP_CipherInit_ex, EVP_CipherFinal_ex, HMAC_Init_ex): new macro for
41375           OpenSSL 0.9.6.
41377         * ext/openssl/ossl_cipher.c (ossl_cipher_alloc, ossl_cipher_initialize,
41378           ossl_cipher_copy, ossl_cipher_reset, ossl_cipher_encrypt,
41379           ossl_cipher_decrypt, ossl_cipher_final, ossl_cipher_set_key,
41380           ossl_cipher_set_iv): replace all EVP_CipherInit and
41381           EVP_CipherFinal into EVP_CipherInit_ex and EVP_CipherFinal_ex.
41382           and EVP_CIPHER_CTX_init should only be called once.
41384         * ext/openssl/ossl_cipher.c (ossl_cipher_set_padding): check for
41385           EVP_CIPHER_CTX_set_padding.
41387         * ext/openssl/ossl_cipher.c (Init_ossl_cipher): Cipher#<< is deprecated.
41389         * ext/openssl/ossl_digest.c: replace all EVP_DigestInit and
41390           EVP_DigestFinal into EVP_DigestInit_ex and EVP_DigestFinal_ex.
41391           and EVP_MD_CTX_init should only be called once.
41393         * ext/openssl/ossl_digest.c (digest_final): should call
41394           EVP_MD_CTX_cleanup to avoid memory leak.
41396         * ext/openssl/ossl_hmac.c (ossl_hmac_initialize): repalce HMAC_init
41397           into HMAC_init_ex. and HMAC_CTX_init is moved to ossl_hmac_alloc.
41399         * ext/openssl/ossl_hmac.c (hmac_final): should call
41400           HMAC_CTX_cleanup to avoid memory leak.
41402         * test/openssl/test_cipher.rb, test/openssl/test_digest.rb,
41403           test/openssl/test_hmac.rb: new file.
41405 Wed Jun 30 16:59:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41407         * test/ruby/test_file.rb (test_fnmatch): some tests for File.fnmatch
41408           are added.
41410 Wed Jun 30 11:38:51 2004  Mikael Brockman  <phubuh@phubuh.org>
41412         * parse.y (primary): should not be NULL.  [ruby-core:03098]
41414 Wed Jun 30 02:41:10 2004  why the lucky stiff  <why@ruby-lang.org>
41416         * ext/syck/rubyext.c (syck_emitter_new): set buffer after
41417           Data_Wrap_Struct to avoid possible GC. [ruby-talk:104835]
41419 Tue Jun 29 10:31:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41421         * eval.c (rb_eval_cmd, rb_thread_trap_eval): restore safe level.
41423         * gc.c (define_final, run_final): preserve and restore safe level for
41424           finalizers.  [ruby-core:03058]
41426         * signal.c (signal_exec, rb_trap_exit, trap): preserve and restore
41427           safe level for signal handlers.  [ruby-dev:23829]
41429 Mon Jun 28 14:57:56 2004  Jeff Mitchell  <quixoticsycophant@yahoo.com>
41431         * configure.in, lib/mkmf.rb (LIBPATHFLAG): use double quotes due to
41432           DOSISH compilers.  [ruby-core:03107]
41434 Mon Jun 28 00:35:29 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41436         * sample/drb/*.rb: using 'DRb.thread.join' instead of 'gets'
41438 Sun Jun 27 22:36:47 2004  Kouhei Sutou  <kou@cozmixng.org>
41440         * sample/rss/tdiary_plugin/rss-recent.rb: supported Hiki.
41442 Sat Jun 26 15:17:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41444         * variable.c (rb_mod_class_variables): class variables are no longer
41445           inherited.  [ruby-dev:23808]
41447 Sat Jun 26 11:07:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41449         * configure.in (aix): -b must come at the start of the command line,
41450           and -e must not appear while testing libraries.  [ruby-talk:104501]
41452         * lib/mkmf.rb (find_header, dir_config): quote directory names if
41453           necessary.  [ruby-talk:104505]
41455 Sat Jun 26 00:13:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41457         * io.c (rb_fopen, rb_fdopen, rb_io_reopen): setvbuf() may return
41458           positive value on failure.  [ruby-dev:23792]
41460 Fri Jun 25 18:07:15 2004  Michal Rokos  <michal@ruby-lang.org>
41462         * gc.c: bring back _stklen for DJGPP [ruby-core:3084]
41464 Fri Jun 25 15:33:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41466         * ext/iconv/extconf.rb: check stricter.  [ruby-talk:104501]
41468 Fri Jun 25 01:58:01 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41470         * {bcc32,win32,wince}/setup.mak: remove RUBY_EXTERN lines when
41471           including version.h. [ruby-talk:104456]
41473 Thu Jun 24 14:23:29 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41475         * io.c (rb_io_fread): return already read data when system call is
41476           interrupted.  [ruby-talk:97206]
41478 Thu Jun 24 01:25:21 2004  Shugo Maeda  <shugo@ruby-lang.org>
41480         * version.h: added declarations of ruby_version,
41481           ruby_release_date, ruby_platform.
41483 Thu Jun 24 01:07:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41485         * ext/socket/socket.c (sock_sockaddr): Socket#gethostbyname()
41486           should give us packed address, not struct sockaddr.
41487           [ruby-core:03053]
41489 Wed Jun 23 22:19:10 2004  Dave Thomas  <dave@pragprog.com>
41491         * ext/socket/socket.c (sock_s_gethostbyaddr): Work around problem
41492           with OS X not returning 'from' parameter to recvfrom for
41493           connection-oriented sockets.
41495 Wed Jun 23 22:16:16 2004  Michal Rokos  <michal@ruby-lang.org>
41497         * io.c: io_seek()'s retval should be checked [ruby-core:03045]
41499 Wed Jun 23 21:48:27 2004  Michal Rokos  <michal@ruby-lang.org>
41501         * time.c: Fix indentation.
41503         * main.c: Remove _stklen, and _CRT_glob. Move _stacksize for
41504           __human68k__ to gc.c where the others are.
41506         * gc.c: put _stacksize in place and clean the #ifdefs macros.
41508 Wed Jun 23 17:37:54 2004  Shugo Maeda  <shugo@ruby-lang.org>
41510         * lib/net/imap.rb: added new option --ssl.
41512 Wed Jun 23 01:45:27 2004  Dave Thomas  <dave@pragprog.com>
41514         * lib/rdoc/parsers/parse_rb.rb (RubyLex::identify_quotation):
41515           Fix problem with the 'r' being dropped from %r{xxx}
41517 Wed Jun 23 00:10:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41519         * ext/win32ole/win32ole.c (ole_hresult2msg): remove trailing
41520           CRs and LFs. (doesn't depend on CR+LF) [ruby-dev:23749]
41522 Wed Jun 23 00:00:25 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41524         * eval.c (return_jump, break_jump): raise unexpected local jump
41525           exception directly.  [ruby-dev:23740]
41527         * io.c (rb_io_initialize): should check fcntl result.  [ruby-dev:23742]
41529 Tue Jun 22 23:35:43 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41531         * sprintf.c (rb_f_sprintf): support FZERO and FSPACE with NaN/Inf.
41533         * test/ruby/test_sprintf.rb (test_nan, test_inf): add tests.
41535 Tue Jun 22 21:11:36 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
41537         * ext/win32ole/win32ole.c (OLE_FREE): should not call CoFreeUnuse-
41538           dLibraries().
41540         * ext/win32ole/win32ole.c (ole_event_free): ditto.
41542         * ext/win32ole/win32ole.c (ole_hresult2msg): truncate error message
41543           before CR.
41545 Tue Jun 22 19:24:59 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41547         * sprintf.c (rb_f_sprintf): unify output of NaN, Inf and -Inf with
41548           "%f" or etc on all platform. [ruby-dev:23704], [ruby-dev:23747]
41550 Tue Jun 22 15:28:12 2004  Michal Rokos  <michal@ruby-lang.org>
41552         * compar.c: Remove explicit NIL_P() checks since rb_cmpint() does it
41553           again in the exactly same manner.
41555 Tue Jun 22 01:32:40 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41557         * ext/openssl/ossl_pkey_dh.c (ossl_dh_initialize): should create
41558           empty pkey object if no argument is passed. [ruby-talk:103328]
41560         * ext/openssl/ossl_pkey_dsa.c (ossl_dsa_initialize): ditto.
41562         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_initialize): ditto.
41564         * ext/openssl/ossl_pkey_dh.c: add new methods: OpenSSL::PKey::DH#p,
41565           OpenSSL::PKey::DH#p=, OpenSSL::PKey::DH#g, OpenSSL::PKey::DH#g=,
41566           OpenSSL::PKey::DH#pub_key, OpenSSL::PKey::DH#pub_key=,
41567           OpenSSL::PKey::DH#priv_key and OpenSSL::PKey::DH#priv_key=.
41569         * ext/openssl/ossl_pkey_dsa.c: add new methods: OpenSSL::PKey::DSA#p,
41570           OpenSSL::PKey::DSA#p=, OpenSSL::PKey::DSA#q, OpenSSL::PKey::DSA#q=,
41571           OpenSSL::PKey::DSA#g, OpenSSL::PKey::DSA#g=,
41572           OpenSSL::PKey::DSA#pub_key, OpenSSL::PKey::DSA#pub_key=,
41573           OpenSSL::PKey::DSA#priv_key and OpenSSL::PKey::DSA#priv_key=.
41575 Mon Jun 21 09:24:51 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41577         * win32/win32.c (rb_w32_opendir): should set errno if error occurs
41578           when calling OS API.
41580 Sun Jun 20 21:12:54 2004  Shugo Maeda  <shugo@ruby-lang.org>
41582         * lib/net/ftp.rb (binary=): send TYPE commands only once.
41584 Sat Jun 19 13:27:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41586         * eval.c (method_call): allow changing $SAFE.  [ruby-dev:23713]
41588         * eval.c (proc_set_safe_level, proc_invoke, rb_mod_define_method): not
41589           set $SAFE for methods defined from Proc.  [ruby-dev:23697]
41591 Sat Jun 19 01:10:12 2004  Kouhei Sutou  <kou@cozmixng.org>
41593         * sample/rss/tdiary_plugin/rss-recent.rb: added more information.
41595 Fri Jun 18 23:12:22 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41597         * eval.c (proc_save_safe_level, rb_set_safe_level, safe_setter): limit
41598           safe level.
41600 Wed Jun 16 23:05:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41602         * object.c (rb_mod_freeze): prepare string representation before
41603           freezing. [ruby-talk:103646]
41605 Wed Jun 16 19:57:24 2004  Michal Rokos  <michal@ruby-lang.org>
41607         * test/ruby/test_array.rb: extend testcase to check #first, #last,
41608           #shift, #unshift, #pop, #push
41610 Wed Jun 16 16:05:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41612         * array.c (ary_new): move alloc behind checks.  [ruby-core:02982]
41614         * array.c (rb_ary_pop_m, rb_ary_shift_m): take arg to behave as push
41615           and unshift.
41617         * array.c (rb_ary_first, rb_ary_last): make shared array for result
41618           array, and correct doc for Array#first(n) and Array#last(n)
41620         * array.c (rb_ary_select): not accept any arg.
41622 Wed Jun 16 16:03:59 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41624         * object.c (rb_class_inherited_p): singleton class inherits Class
41625           rather than its object's class.  [ruby-dev:23690]
41627 Wed Jun 16 16:01:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41629         * gc.c (stack_grow_direction): memoize the direction.
41631         * gc.c (Init_stack): should always move to end of VALUE.
41633 Tue Jun 15 12:10:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41635         * ext/tk/lib/tk.rb: bug fix (TkWindow#grab)
41637 Mon Jun 14 18:23:27 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41639         * ext/tk/lib/remote-tk.rb: bug fix
41641 Sun Jun 13 00:23:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41643         * ext/tcltklib/extconf.rb: [EXPERIMENTAL] MacOS X (darwin) support
41645         * ext/tcltklib/tcltklib.c: fix thread trouble on callback proc, and
41646           eliminate warning about instance variable access
41648         * ext/tk/lib/tk/menubar.rb: improve supported menu_spec
41650         * ext/tk/lib/tk/menuspec.rb: [add] menu_spec support library
41652         * ext/tk/lib/tk/root.rb: add menu_spec support
41654         * ext/tk/lib/tk/text.rb: bug fix
41656         * ext/tk/lib/tk/toplevel.rb: add menu_spec support
41658         * ext/tk/sample/menubar?.rb: [add] sample of menu_spec usage
41660 Sat Jun 12 14:15:20 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41662         * dir.c: RDOC for File::FNM_CASEFOLD was missed.
41664 Sat Jun 12 11:15:53 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41666         * configure.in (target_os): strip -gnu suffix on Linux.
41668 Fri Jun 11 22:08:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41670         * array.c: remove #indexes, #indices.
41672         * hash.c: ditto.
41674         * ext/dbm/dbm.c: remove #indexes, #indices, "values_at" warning
41675           from #select.
41677         * ext/gdbm/gdbm.c: ditto.
41679         * ext/sdbm/init.c: ditto.
41681         * ext/dbm/dbm.c (Init_dbm): set VERSION constant as "unknown" when
41682           DB_VERSION_STRING is not available.
41684 Thu Jun 10 19:19:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41686         * ext/sdbm/init.c (fsdbm_store): sdbm should use StringValue().
41687           [ruby-talk:103062]
41689 Wed Jun  9 16:09:01 2004  akira yamada  <akira@ruby-lang.org>
41691         * lib/uri/generic.rb (URI::Generic::merge,
41692           URI::Generic::route_from): accepts non-hierarchical URI.
41693           [ruby-dev:23631]
41695         * test/uri/test_generic.rb (TestGeneric::test_route,
41696           TestGeneric::test_merge): added tests for above changes.
41698 Wed Jun  9 15:39:55 2004  Akinori MUSHA  <knu@iDaemons.org>
41700         * configure.in: Add support for DragonFly BSD.
41702 Wed Jun  9 15:07:06 2004  Akinori MUSHA  <knu@iDaemons.org>
41704         * config.guess, config.sub: Update to a more recent version as of
41705           2004-01-20.
41707 Wed Jun  9 11:20:05 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41709         * win32/win32.c: remove unused functions and variables.
41711 Wed Jun  2 20:16:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41713         * string.c (str_new4): should share shared instance if it already
41714           exists.  [ruby-dev:23665]
41716 Wed Jun  2 12:41:53 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41718         * io.c (rb_io_gets_m): set lastline ($_) even when read line is
41719           nil.  [ruby-dev:23663]
41721 Fri May 28 11:20:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41723         * eval.c (rb_eval): bad influence on frame node.
41725         * eval.c (eval): reverted wrongly removed condition.  [ruby-dev:23638]
41727 Thu May 27 21:37:50 2004  Tanaka Akira  <akr@m17n.org>
41729         * lib/pathname.rb (Pathname#initialize): fix pathname initialization
41730           by pathname.
41732 Thu May 27 20:02:09 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41734         * io.c (rb_io_fwrite): check all case errno != 0 [ruby-dev:23648]
41736 Thu May 27 15:54:02 2004  Shugo Maeda  <shugo@ruby-lang.org>
41738         * lib/net/ftp.rb (MDTM_REGEXP): fix for demon's ftp server.
41739           Thanks, Rutger Nijlunsing.
41741 Thu May 27 14:53:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41743         * io.c (rb_io_fwrite): workaround for bcc32's fwrite bug.
41744           add errno checking.  [ruby-dev:23627]
41746         * io.c (rb_io_fwrite): should check if errno == ENOENT, too.
41748 Thu May 27 11:25:03 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41750         * test/csv/test_csv.rb: illegal require module name (../lib/csv.rb).
41752 Wed May 26 23:12:13 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41754         * lib/csv.rb (CSV.read, CSV.readlines): added.  works as IO.read and
41755           IO.readlines in CSV format.
41757         * lib/csv.rb (CSV.parse): [CAUTION] behavior changed.  in the past,
41758           CSV.parse accepts a filename to be read-opened (it was just a
41759           shortcut of CSV.open(filename, 'r')).  now CSV.parse accepts a
41760           string or a stream to be parsed e.g.
41761           CSV.parse("1,2\n3,r") #=> [['1', '2'], ['3', '4']]
41763         * test/csv/test_csv.rb: follow above changes.
41765 Wed May 26 14:19:42 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41767         * eval.c (rb_eval, eval): make line number consistent on eval with
41768           Proc.  [ruby-talk:101253]
41770 Wed May 26 13:59:17 2004  Dave Thomas  <dave@pragprog.com>
41772         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::skip_for_variable): Allow for
41773           'do' after for statement
41775 Wed May 26 13:56:03 2004  Dave Thomas  <dave@pragprog.com>
41777         * lib/rdoc/generators/html_generator.rb (Generators::MarkUp::style_url): Fix
41778           relative path to code CSS file
41780 Wed May 26 13:14:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41782         * io.c (rb_io_init_copy): copy also positions.  [ruby-talk:100910]
41784 Wed May 26 00:00:00 2004  why the lucky stiff  <why@ruby-lang.org>
41786         * ext/syck/syck.c (syck_new_parser): clear parser on init.
41787           thanks, ts. [ruby-core:02931]
41789         * ext/syck/token.c (sycklex_yaml_utf8): buffer underflow.
41790           thanks, ts. [ruby-core:02929]
41792         * lib/yaml/baseemitter.rb (indent_text): simpler flow block code.
41794 Tue May 25 11:54:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41796         * eval.c (rb_yield_0, proc_invoke, proc_arity): allow passing a block
41797           to a Proc.  [ruby-dev:23533]
41799         * parse.y (block_par, block_var): ditto.
41801 Tue May 25 01:50:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41803         * ext/openssl/ossl_asn1.c (ossl_i2d_ASN1_TYPE, ossl_ASN1_TYPE_free):
41804           workaround for the versions earlier than OpenSSL-0.9.7.
41806 Mon May 24 10:46:26 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
41808         * lib/rdoc/generators/template/html/html.rb: SYSTEM identifiers
41809           must be absolute URIs
41811 Sun May 23 04:53:50 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
41813         * lib/pstore.rb (transaction): allow overriding dump and load.
41814           [ruby-dev:23567]
41816         * lib/yaml/store.rb: follow lib/pstore.rb's change.
41818 Sat May 22 11:54:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41820         * MANIFEST: add test/openssl/test_x509store.rb.
41822         * ext/tk/MANIFEST: add recent files.
41824 Sat May 22 05:37:11 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41826         * ext/tk/lib/remote-tk.rb: (NEW library) controll Tk interpreters
41827           on the other processes by Tcl/Tk's 'send' command
41829 Fri May 21 09:22:05 2004  Dave Thomas  <dave@pragprog.com>
41831         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_parameters):
41832           Add ()'s around parameters that don't have them
41834 Fri May 21 02:21:11 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41836         * lib/csv.rb: fixed a few bugs around multi char record/field separator.
41838         * test/csv/test_csv.rb: added boundary test for above feature.
41840 Thu May 20 17:02:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41842         * lib/mkmf.rb (check_sizeof): define result size.  [ruby-core:02911]
41844         * lib/mkmf.rb (create_header): macro name should not include equal
41845           sign.
41847 Thu May 20 14:35:52 2004  Tanaka Akira  <akr@m17n.org>
41849         * ext/socket/socket.c: check SCM_RIGHTS macro addition to
41850           the msg_control field to test existence of file descriptor passing
41851           by msg_control.
41853 Thu May 20 12:38:06 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41855         * numeric.c (flo_eq): always check if operands are NaN.
41856           [ruby-list:39685]
41858 Thu May 20 12:34:39 2004  Dave Thomas  <dave@pragprog.com>
41860         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_visibility):
41861           At Ryan Davis' suggestion, honor visibility modifers if guarded by a
41862           statement modifier
41864 Thu May 20 12:22:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41866         * lib/mkmf.rb (have_type): do not check pointer to incomplete type,
41867           which always get compiled.
41868           [ruby-list:39683]
41870 Wed May 19 23:45:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41872         * test/inlinetest.rb (InlineTest::loadtest): requiring library with
41873           replaced $0 can make $0 == __FILE__ block be evaluated twice.
41875         * test/ruby/envutil.rb (EnvUtil::rubybin): give priority to
41876           environment variable.  [ruby-dev:23538]
41878 Wed May 19 11:08:10 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41880         * ext/tk/lib/tk.rb: change permition of TkObject#tk_send from
41881           private to public
41883 Wed May 19 02:29:36 2004  Minero Aoki  <aamine@loveruby.net>
41885         * lib/net/http.rb: support TRACE.
41887 Wed May 19 02:21:53 2004  Minero Aoki  <aamine@loveruby.net>
41889         * lib/net/http.rb: do not use class variables.
41891 Tue May 18 21:21:43 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41893         * lib/csv.rb: writes lines with "\n" when row separator is not given.
41894           formerly it was "\r\n".
41896         * lib/csv.rb: [CAUTION] API change
41898           * CSV::Row removed.  a row is represented as just an Array.  since
41899             CSV::Row was a subclass of Array, it won't hurt almost all programs
41900             except one which depended CSV::Row#match.
41902           * CSV::Cell removed.  a cell is represented as just a String or
41903             nil(NULL).  this change will cause widespread destruction.
41905               CSV.open("foo.csv", "r") do |row|
41906                 row.each do |cell|
41907                   if cell.is_null       # Cell#is_null
41908                     p "(NULL)"
41909                   else
41910                     p cell.data         # Cell#data
41911                   end
41912                 end
41913               end
41915             must be just;
41917               CSV.open("foo.csv", "r") do |row|
41918                 row.each do |cell|
41919                   if cell.nil?
41920                     p "(NULL)"
41921                   else
41922                     p cell
41923                   end
41924                 end
41925               end
41927         * lib/csv.rb: [CAUTION] record separator(CR, LF, CR+LF) behavior
41928           change.  CSV.open, CSV.parse, and CSV,generate now do not force
41929           opened file binmode.  formerly it set binmode explicitly.
41931           with CSV.open, binmode of opened file depends the given mode
41932           parameter "r", "w", "rb", and "wb".  CSV.parse and CSV.generate open
41933           file with "r" and "w".
41935           setting mode properly is user's responsibility now.
41937         * lib/csv.rb: accepts String as a fs (field separator/column separator)
41938           and rs (record separator/row separator)
41940         * lib/csv.rb: added CSV.foreach(path, rs = nil, &block).  CSV.foreach
41941           now does not handle "| cmd" as a path different from IO.foreach.
41942           needed?
41944         * test/csv/test_csv.rb: updated.
41946 Tue May 18 14:24:20 2004  why the lucky stiff  <why@ruby-lang.org>
41948         * lib/yaml.rb: added rdoc to beginning of lib.
41950 Tue May 18 14:00:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41952         * node.h (NEW_DSTR): adjust list length.
41954         * parse.y (literal_concat): ditto.
41956 Tue May 18 09:30:25 2004  SASADA Koichi  <ko1@atdot.net>
41958         * eval.c (rb_method_node): search cache entry first.
41960 Mon May 17 16:04:06 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41962         * numeric.c (flo_to_s): it's preferable that "p 0.0" outputs "0.0"
41963           instead of "0.0e+00". [ruby-dev:23480]
41965         * numeric.c (flo_to_s): it's preferable that "p 0.00000000000000000001"
41966           outputs "1.0e-20" instead of "9.999999999999999e-21". (the precision
41967           is considered, but there is assumption DBL_DIG == 15 in current
41968           implementation)
41970 Mon May 17 10:13:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41972         * ext/socket/socket.c (setup_domain_and_type): honor duck typing.
41973           [ruby-dev:23522]
41975         * ext/socket/socket.c (sock_s_getnameinfo): ditto.
41977 Mon May 17 00:36:21 2004  why the lucky stiff  <why@ruby-lang.org>
41979         * lib/yaml/baseemitter.rb (indent_text): was forcing a mod value
41980           of zero at times, which kept some blocks from getting indentation.
41982 Mon May 17 00:07:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
41984         * lib/drb/drb.rb: Cosmetic documentation changes.
41986 Sun May 16 20:55:49 2004  Tanaka Akira  <akr@m17n.org>
41988         * ext/dbm/dbm.c (fdbm_initialize): accept optional 3rd argument to
41989           specify an open flag.
41990           (Init_dbm): define open flags: DBM::READER, DBM::WRITER, DBM::WRCREAT
41991           and DBM::NEWDB.
41993 Sat May 15 17:52:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41995         * test/ruby/test_float.rb(test_strtod): Add test for signed 0.000...1
41997 Sat May 15 14:20:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41999         * ext/syck/depend: add ruby's headers.
42001 Sat May 15 13:38:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42003         * ext/syck/MANIFEST, ext/syck/depend: new file.
42005         * lib/yaml/rubytypes.rb: range of exponential floats.  [ruby-core:02824]
42007         * test/yaml/test_yaml.rb: tests for strings start with colon and some
42008           round trip.
42010 Sat May 15 12:04:58 2004  why the lucky stiff  <why@ruby-lang.org>
42012         * lib/yaml.rb: removed fallback to pure Ruby parser.
42014         * lib/yaml/baseemitter.rb (node_text): rewriting folded scalars.
42016         * ext/syck/syck.h: reports style of scalars now, be they plain, block
42017           single-, or double-quoted.
42019         * ext/syck/syck.c: ditto.
42021         * ext/syck/gram.c: ditto.
42023         * ext/syck/node.c: ditto.
42025         * ext/syck/token.c: ditto.
42027         * ext/syck/rubyext.c (yaml_org_handler): symbols loaded only
42028           if scalar style is plain.
42030         * test/yaml/test_yaml.rb (test_perl_regexp): updated test to
42031           match new regexp serialization.
42033 Sat May 15 01:41:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42035         * eval.c (eval): forgot to restore $SAFE value before evaluating
42036           compiled node.  [ruby-core:02872]
42038 Sat May 15 01:33:12 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42040         * range.c (range_each_func): terminates loop if generating value
42041           is same to @end.  [ruby-talk:100269]
42043 Fri May 14 22:08:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42045         * string.c (rb_str_new4): should not reuse frozen shared string if
42046           the original is not an instance of String. [ruby-talk:100193]
42048 Fri May 14 21:29:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42050         * time.c (time_mdump): preserve GMT bit in the marshal data.
42051           [ruby-talk:100213]
42053 Fri May 14 18:37:49 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
42055         * ext/tk/lib/tk/canvas.rb: improve coords support for canvas
42056           items. Now, supports all of the followings.
42057                TkcLine.new(c, 0, 0, 100, 100, :fill=>'red')
42058                TkcLine.new(c, [0, 0, 100, 100], :fill=>'red')
42059                TkcLine.new(c, [0, 0], [100, 100], :fill=>'red')
42060                TkcLine.new(c, [[0, 0], [100, 100]], :fill=>'red')
42061                TkcLine.new(c, :coords=>[0, 0, 100, 100], :fill=>'red')
42062                TkcLine.new(c, :coords=>[[0, 0], [100, 100]], :fill=>'red')
42064 Fri May 14 13:30:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42066         * test/ruby/test_float.rb: Add test for util.c revision 1.42.
42068 Fri May 14 12:13:46 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42070         * util.c (ruby_strtod): strtod("0", &end); => end should point '\0'.
42071          [ruby-dev:23498]
42073 Thu May 13 15:47:30 2004  akira yamada  <akira@ruby-lang.org>
42075         * lib/net/telnet.rb (Net::Telnet::login): "options" can specify
42076           regexps for login prompt and/or password prompt.
42078 Thu May 13 14:17:57 2004  why the lucky stiff  <why@ruby-lang.org>
42080         * ext/syck/rubyext.c (yaml_org_handler): some empty strings were
42081           loaded as symbols.
42083 Thu May 13 11:04:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42085         * pack.c (pack_pack): always add with null for 'Z'.
42087         * pack.c (pack_unpack): terminated by null for 'Z'.  [ruby-talk:98281]
42089 Wed May 12 19:59:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42091         * lib/mkmf.rb (have_type, check_sizeof): replace unusable characters.
42092           [ruby-talk:99788]
42094 Wed May 12 17:41:42 2004  Tanaka Akira  <akr@m17n.org>
42096         * lib/resolv.rb (Resolv::DNS::Config): make it configurable without
42097           external file such as /etc/resolv.conf.
42099 Wed May 12 14:37:27 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42101         * ext/openssl/ossl_x509name.c: attribute value of DC (short name of
42102           domainComponent) should be IA5String.
42104 Wed May 12 13:20:19 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
42106         * ext/tk/lib/tk/composite.rb: improve configure methods (based on
42107           the proposal of [ruby-talk:99671]).
42109 Wed May 12 11:51:08 2004  Dave Thomas  <dave@pragprog.com>
42111         * class.c (rb_obj_singleton_methods): fix rdoc
42113 Tue May 11 07:09:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42115         * eval.c (is_defined): do not protect exception during receiver
42116           evaluation.
42118 Mon May 10 22:28:14 2004  Minero Aoki  <aamine@loveruby.net>
42120         * lib/net/protocol.rb (each_crlf_line): remove junk line.
42122 Mon May 10 21:44:42 2004  Dave Thomas  <dave@pragprog.com>
42124         * lib/rdoc/generators/html_generator.rb: Change scheme for
42125           looking up symbols in  HTML generator.
42127 Mon May 10 16:45:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42129         * eval.c (eval): warning during eval should not cause deadlock.
42130           [ruby-talk:98651]
42132         * eval.c (rb_eval): raise TypeError exception for superclass
42133           mismatch.  [ruby-list:39567]
42135 Mon May 10 12:11:37 2004  Dave Thomas  <dave@pragprog.com>
42137         * lib/rdoc/generators/html_generator.rb: Hack to search parents
42138           for unqualified constant names.
42140 Mon May 10 01:18:15 2004  Minero Aoki  <aamine@loveruby.net>
42142         * lib/net/pop.rb (logging): append "\n".
42144 Sun May  9 23:38:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42146         * lib/net/ftp.rb: ported documentation improvement from 1.8 branch
42148         * lib/net/imap.rb:   ditto
42150         * lib/net/pop.rb:    ditto
42152         * lib/net/smtp.rb:   ditto
42154         * lib/net/telnet.rb: ditto
42156 Sun May  9 23:34:51 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42158         * test/ruby/test_float.rb: added test_strtod to test Float("0").
42160 Sun May  9 13:24:24 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42162         * lib/yaml/store.rb: use FileUtils::copy.
42164 Sun May  9 12:34:26 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42166         * regex.c: removed unused file.
42168 Sat May  8 10:53:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42170         * io.c (rb_f_open): open should not ignore block when "to_open"
42171           method is used.  [ruby-dev:23478]
42173 Fri May  7 22:07:39 2004  Minero Aoki  <aamine@loveruby.net>
42175         * lib/fileutils.rb (mv): new option `force'. [ruby-talk:99457]
42177         * lib/fileutils.rb: new method for command option reflection:
42178           FileUtils.commands, .options, .have_option?, .options_of,
42179           .collect_methods.
42181         * lib/fileutils.rb: module Verbose, NoWrite, DryRun do not have
42182           option flags @fileutils_verbose and @fileutils_noop, they make no
42183           sense.
42185 Fri May  7 21:50:21 2004  Dave Thomas  <dave@pragprog.com>
42187         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_include): Allow
42188           multiple arguments to 'include'
42190 Fri May  7 21:03:51 2004  Minero Aoki  <aamine@loveruby.net>
42192         * lib/fileutils.rb (fu_list): Array() breaks pathes including "\n".
42193           [ruby-core:02843]
42195         * test/fileutils/test_fileutils.rb (mkdir): test "\n" in path.
42197 Fri May  7 20:53:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42199         * ext/dbm/dbm.c (fdbm_modify): typo fixed. [ruby-dev:23473]
42201 Fri May  7 11:17:27 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42203         * util.c (ruby_strtod): "0.0000000000000000001" should be converted
42204           to 1.0e-19 instead of 0.0. (leading zeros aren't significant digits)
42205           [ruby-talk:99318] [ruby-dev:23465]
42207 Thu May  6 22:27:32 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42209         * ext/socket/socket.c (ippaddr): use NUMERICHOST if can not resolve
42210           hostname.
42212 Thu May  6 22:09:29 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
42214         * ext/tk/tkutil.c (get_eval_string_core): bug fix. [ruby-dev:23466]
42216 Thu May  6 14:22:29 2004  why the lucky stiff  <why@ruby-lang.org>
42218         * lib/yaml/rubytypes.rb (to_yaml): added instance variable handling
42219           for Ranges, Strings, Structs, Regexps.
42221         * lib/yaml/rubytypes.rb (to_yaml_fold): new method for setting a
42222           String's flow style.
42224         * lib/yaml.rb (YAML::object_maker): now uses Object.allocate.
42226         * ext/syck/gram.c: fixed transfer methods on structs, broke it
42227           last commit.
42229 Thu May  6 14:38:02 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42231         * dir.c (rb_push_glob): simplified code (not change behavior)
42233 Thu May  6 13:32:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42235         * ext/extmk.rb: get rid of side effect of Config.expand, patched by
42236           <tttt01@infoseek.jp>  (ruby-bugs:PR#597)
42238 Thu May  6 11:40:28 2004  Shugo Maeda  <shugo@ruby-lang.org>
42240         * lib/net/imap.rb (string): accept NIL.
42242         * lib/net/imap.rb (body_type_basic): allow body-fields omissions.
42244 Thu May  6 01:59:04 2004  Dave Thomas  <dave@pragprog.com>
42246         * lib/rdoc/generators/html_generator.rb (Generators::HtmlMethod::params):
42247           Don't include the &block parameter if we have explicit
42248           yield parameters.
42250 Wed May  5 03:52:31 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42252         * lib/rinda/ring.rb: use recv instead of recvfrom.
42254 Wed May  5 00:38:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42256         * lib/gserver.rb: documented
42257         * lib/xmlrpc/README.txt: introduced for documentation purposes
42259 Mon May  3 09:47:24 2004  Dave Thomas  <dave@pragprog.com>
42261         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_or_yield_parameters):
42262           Fix parsing bug if yield called within 1 line block
42264 Sun May  2 21:56:48 2004  Minero Aoki  <aamine@loveruby.net>
42266         * test/fileutils/test_fileutils.rb (rm_f, rm_r): test :force flag.
42268 Sun May  2 01:04:38 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
42270         * ext/tcltklib, ext/tk: renewal Ruby/Tk
42272 Fri Apr 30 20:08:41 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42274         * time.c (SIZEOF_TIME_T): support SIZEOF_TIME_T == SIZEOF_INT.
42276 Wed Apr 28 01:26:11 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42278         * oniguruma.h, regparse.c: imported Oni Guruma 2.2.8.
42280 Wed Apr 28 01:16:23 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42282         * oniguruma.h, regparse.c: imported Oni Guruma 2.2.7.
42284 Tue Apr 27 14:43:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42286         * common.mk: LIBURUBY_A is needed for extconf.rb even when
42287           cross-compiling.
42289 Tue Apr 27 13:33:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42291         * parse.y (string_content): turn off NODE_NEWLINE flag to avoid
42292           unnecessary line trace for inlined expression.
42293           (ruby-bugs PR#1320)
42295 Tue Apr 27 08:15:13 2004  why the lucky stiff  <why@ruby-lang.org>
42297         * lib/yaml/rubytypes.rb: passing Range tests.
42299         * ext/syck/syck.h: version 0.44.
42301         * ext/syck/gram.c: transfers no longer open an indentation.
42302           fixed transfers which precede blocks.
42304         * ext/syck/token.c: ditto.
42306         * ext/syck/syck.c: fixed segfault if an anchor has been released already.
42308         * ext/syck/node.c (syck_free_members): organized order of free'd nodes.
42310         * ext/syck/rubyext.c (syck_emitter_write_m): test for proper string with
42311           StringValue.
42313 Mon Apr 26 23:56:54 2004  Daniel Kelley  <news-1082945587@dkelley.gmp.san-jose.ca.us>
42315         * README.EXT, README.EXT.ja: fixed wrong function signature.
42316           [ruby-talk:98349]
42318 Mon Apr 26 21:40:09 2004  Dave Thomas  <dave@pragprog.com>
42320         * lib/rdoc/code_objects.rb (RDoc::Context::add_alias): Only alias
42321           to instance methods.
42323 Sun Apr 25 18:26:23 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42325         * configure.in (ac_cv_func_fork): set to no on DJGPP.
42327 Sat Apr 24 14:32:03 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42329         * re.c: applied stack error handling patch. [ruby-dev:23431]
42331 Sat Apr 24 10:38:31 2004  Dave Thomas  <dave@pragprog.com>
42333         * lib/rdoc/markup/simple_markup.rb (SM::SimpleMarkup::group_lines):
42334           Fix bug where consecutive headings are merged.
42336 Fri Apr 23 23:24:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42338         * lib/mkmf.rb: $hdrdir should not contain macros, for backward
42339           compatibility.  [bruby-dev:28]
42341         * lib/mkmf.rb (create_makefile): in the case of extout, just copy
42342           script files, without comparison.
42344 Fri Apr 23 16:38:46 2004  Tanaka Akira  <akr@m17n.org>
42346         * lib/pathname.rb: sync taint/freeze flag between
42347           a pathname object and its internal string object.
42349 Fri Apr 23 14:52:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42351         * parse.y (stmt, arg, aref_args): should not make sole splat into
42352           array, in aref_args other than aref with op_asgn.
42354 Fri Apr 23 14:14:38 2004  Tanaka Akira  <akr@m17n.org>
42356         * lib/resolv.rb: don't use Regexp#source to embed regexps.
42357           [ruby-dev:23432]
42359 Thu Apr 22 18:25:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42361         * common.mk, ext/extmk.rb: make ext and .ext get removed by distclean.
42363 Thu Apr 22 10:07:01 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42365         * */Makefile.sub (distclean-local): should remove $(RBCONFIG).
42367 Thu Apr 22 04:17:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42369         * eval.c (rb_mod_define_method): allow binding methods to modules.
42370           [ruby-dev:23410]
42372         * parse.y (aref_args): should pass expanded list.  [ruby-core:02793]
42374 Thu Apr 22 01:12:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42376         * numeric.c (flo_to_s): tweak output string based to preserve
42377           decimal point and to remove trailing zeros.  [ruby-talk:97891]
42379         * string.c (rb_str_index_m): use unsigned comparison for T_FIXNUM
42380           search.  [ruby-talk:97342]
42382 Wed Apr 21 23:04:42 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42384         * lib/rinda/rinda.rb, test/rinda/test_rinda.rb: check Hash tuple size.
42386 Wed Apr 21 20:05:00 2004  Tanaka Akira  <akr@m17n.org>
42388         * lib/open-uri.rb (URI::HTTP#proxy_open): set Host: field explicitly.
42389           [ruby-list:39542]
42391 Wed Apr 21 18:39:46 2004  Minero Aoki  <aamine@loveruby.net>
42393         * lib/net/smtp.rb: merge SMTP-TLS patch.  This patch is
42394           contributed by Daniel Hob. [ruby-core:02789]
42396 Wed Apr 21 18:23:45 2004  Minero Aoki  <aamine@loveruby.net>
42398         * lib/net/smtp.rb: change coding style: def m( a ) -> def m(a).
42400 Wed Apr 21 18:01:47 2004  Minero Aoki  <aamine@loveruby.net>
42402         * lib/net/pop.rb: do not use class variables.
42404         * lib/net/pop.rb (do_start): ensure to clean up connection when
42405           authentication failed.
42407 Wed Apr 21 17:23:59 2004  Minero Aoki  <aamine@loveruby.net>
42409         * lib/net/http.rb (HTTP#connect): CONNECT must precede SSL connect.
42410           [ruby-dev:23379]
42412         * lib/net/http.rb (HTTP.new): class variables are not inherited
42413           now.
42415 Wed Apr 21 15:56:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42417         * lib/test/unit/ui/console/testrunner.rb (test_started): restore $0
42418           after changing process title.  [ruby-talk:97426]
42420 Wed Apr 21 10:18:06 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42422         * process.c(rb_spawn): fix SEGV at "p system('command line here')"
42423          (may happen only in bccwin32) [ruby-dev:23380]
42425 Mon Apr 19 20:58:44 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42427         * dir.c: Updated RDocs.
42429 Mon Apr 19 18:11:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42431         * hash.c (rb_hash_equal): returns true if two hashes have same set
42432           of key-value set.  [ruby-talk:97559]
42434         * hash.c (rb_hash_eql): returns true if two hashes are equal and
42435           have same default values.
42437 Mon Apr 19 08:19:11 2004  Doug Kearns  <djkea2@mugca.its.monash.edu.au>
42439         * dln.c, io.c, pack.c, lib/benchmark.rb, lib/cgi.rb, lib/csv.rb,
42440           lib/date.rb, lib/ftools.rb, lib/getoptlong.rb, lib/logger.rb,
42441           lib/matrix.rb, lib/monitor.rb, lib/set.rb, lib/thwait.rb,
42442           lib/timeout.rb, lib/yaml.rb, lib/drb/drb.rb, lib/irb/workspace.rb,
42443           lib/net/ftp.rb, lib/net/http.rb, lib/net/imap.rb, lib/net/pop.rb,
42444           lib/net/telnet.rb, lib/racc/parser.rb, lib/rinda/rinda.rb,
42445           lib/rinda/tuplespace.rb, lib/shell/command-processor.rb,
42446           lib/soap/rpc/soaplet.rb, lib/test/unit/testcase.rb,
42447           lib/test/unit/testsuite.rb: typo fix.
42449 Mon Apr 19 08:14:18 2004  Dave Thomas  <dave@pragprog.com>
42451         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body): Allow for
42452           #ifdef HAVE_PROTOTYPES
42454 Fri Apr 16 17:04:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42456         * string.c (rb_str_equal): always returns true or false, never
42457           returns nil. [ruby-dev:23404]
42459 Fri Apr 16 12:38:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42461         * lib/drb/drb.rb (DRb::DRbUnknown::initialize): Exception#to_str is
42462           deprecated.
42464         * lib/drb/drb.rb (DRb::DRbServer::InvokeMethod::perform): multiple
42465           value class changed.
42467         * lib/drb/invokemethod.rb (DRb::DRbServer::InvokeMethod18Mixin::block_yield):
42468           ditto.
42470 Fri Apr 16 08:27:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42472         * ext/extmk.rb: skip linking when libraries to be preloaded not
42473           compiled.  [ruby-list:39561]
42475 Thu Apr 15 19:57:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42477         * process.c (pst_success_p): new method Process::Status#success?.
42478           [ruby-dev:23385]
42480         * rubytest.rb: do nothing while cross-compiling, return status in
42481           system independent style.
42483 Thu Apr 15 19:26:54 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42485         * dir.c (rb_push_glob): Dir.glob() should return nil if block is given.
42486           (http://www.ruby-lang.org/ja/man/index.cgi?cmd=view;name=Dir)
42488         * dir.c (push_braces): Dir.glob() should handle '{ }' nested more than
42489           3 times.
42491         * dir.c (push_braces, rb_push_glob): Dir.glob() should handle escaped
42492           '{' and '}' and ','.
42494           [ruby-dev:23376]
42496 Thu Apr 15 17:12:13 2004  Tanaka Akira  <akr@m17n.org>
42498         * ext/gdbm/gdbm.c (Init_gdbm): define GDBM::READER, GDBM::WRITER,
42499           GDBM::WRCREAT and GDBM::NEWDB.
42500           (fgdbm_initialize): use specified read/write flag.
42502 Wed Apr 14 13:06:09 2004  Doug Kearns  <djkea2@mugca.its.monash.edu.au>
42504         * array.c, enum.c, eval.c, file.c, io.c, numeric.c, object.c, prec.c,
42505           process.c, re.c, string.c: typos in RDoc comments.  [ruby-core:02783]
42507 Wed Apr 14 11:29:56 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42509         * numeric.c (flo_eq): workaround for bcc32's bug.
42510           (ruby-bugs-ja:PR#594)
42512 Wed Apr 14 11:06:38 2004  Dave Thomas  <dave@pragprog.com>
42514         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::scan): Changed
42515           behavior of :enddoc: -- it now unconditionally terminates
42516           processing of the current file.
42518 Wed Apr 14 10:57:40 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42520         * defines.h: include <net/socket.h> to get fd_set definition in BeOS.
42522 Tue Apr 13 23:00:55 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42524         * lib/rinda/rinda.rb: change pattern matching.
42525           a === b -> a == b || a === b. [druby-ja:98]
42527         * test/rinda/test_rinda.rb: ditto.
42529 Tue Apr 13 21:50:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42531         * bcc32/Makefile.sub (PHONY): Borland make disallows empty command
42532           rules.
42534 Tue Apr 13 17:55:16 2004  Minero Aoki  <aamine@loveruby.net>
42536         * lib/net/http.rb (begin_transport): should not overwrite HTTP
42537           request header. [ruby-list:39543]
42539 Tue Apr 13 16:48:00 2004  Minero Aoki  <aamine@loveruby.net>
42541         * lib/net/pop.rb: merge POP3S patch.  This patch is contributed by
42542           Daniel Hobe.
42544 Tue Apr 13 02:56:29 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42546         * common.mk: changed the order of ascii.c alphabetically.
42548 Mon Apr 12 19:11:21 2004  Eric Hodel  <drbrain@segment7.net>
42550         * gc.c (rb_gc_copy_finalizer): typo.  [ruby-core:02774]
42552 Mon Apr 12 18:45:58 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42554         * ext/openssl/ossl_x509name.c (ossl_x509name_init_i): should return
42555           a value.
42557 Mon Apr 12 10:39:50 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42559         * dir.c (rb_glob2, rb_glob, push_globs, push_braces, rb_push_glob):
42560           fix memory leak. (leaked when block was interrupted)
42562 Sun Apr 11 19:10:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42564         * ruby.c (require_libraries): restore source file/line after
42565           statically linked extensions initialized.  [ruby-dev:23357]
42567 Sun Apr 11 10:47:04 2004  Dave Thomas  <dave@pragprog.com>
42569         * lib/rdoc/code_objects.rb (RDoc::TopLevel::add_class_or_module): Toplevel
42570           classes and modules are a special case too... (handle extending existing
42571           classes with or without :enddoc:)
42573 Sat Apr 10 23:51:13 2004  Dave Thomas  <dave@pragprog.com>
42575         * lib/rdoc/code_objects.rb (RDoc::Context::add_to): Implementation of :enddoc:
42576           made one too many assumptions...
42578 Sat Apr 10 00:00:19 2004  Dave Thomas  <dave@pragprog.com>
42580         * lib/rdoc/markup/simple_markup/inline.rb: Fix problem
42581           with \_cat_<b>dog</b>
42583 Fri Apr  9 17:05:21 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42585         * dir.c (has_magic, find_dirsep): incomplete '[' matches no character
42586           in Dir.glob. (follows File.fnmatch's behavior)
42588         * dir.c (fnmatch_helper): incomplete escape is ignored in File.fnmatch.
42589           (follows Dir.glob's behavior)
42591         * dir.c (find_dirsep): '/' between '[' and ']' is ignored in Dir.glob.
42592           (follows File.fnmatch with File::FNM_PATHNAME 's behavior)
42594         * dir.c (find_dirsep): escaped slash '\/' loses its meaning as
42595           directory separator in Dir.glob.
42597           [ruby-dev:23291]
42599 Thu Apr  8 20:25:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42601         * ext/extmk.rb (extmake): skip uncompiled extensions.
42603         * lib/mkmf.rb (create_makefile): emit no rules for static library if
42604           $static is nil, e.g., outside of ext/.
42606         * lib/test/unit/ui/console/testrunner.rb (test_started): show test
42607           name via $0.
42609         * runruby.rb: set environments to use the compiled binary.
42611         * test/runner.rb: do nothing while cross-compiling.
42613         * test/drb/drbtest.rb, test/soap/calc/test_calc_cgi.rb: use envutil to
42614           know ruby binary, and restore $: after require.
42616         * test/ruby/envutil.rb: give priority to RUBY environment variable to
42617           use just compiled binary and libraries.
42619 Thu Apr  8 19:03:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42621         * io.c (rb_io_binmode): inverted condition.  [ruby-dev:23349]
42623 Thu Apr  8 18:22:00 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42625         * ext/iconv/iconv.c (iconv_s_list): return encoding list if no block
42626           is given.  [ruby-dev:23063]
42628 Wed Apr  7 15:29:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42630         * pack.c (pack_pack): use NUM2INT() instead of num2i32().
42632 Wed Apr  7 12:32:02 2004  Kouhei Sutou  <kou@cozmixng.org>
42634         * lib/rss/parser.rb, lib/rss/1.0.rb: accepted rdf:resource or
42635           resource attribute in rdf:li.
42636         * test/rss/test_parser.rb: added test for above change.
42638         * lib/rss/dublincore.rb: reverted style.
42640         * lib/rss/xmlparser.rb: normalized XMLParser class hierarchy.
42642 Wed Apr  7 10:43:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42644         * Makefile.in, common.mk, */Makefile.sub (ext/extinit.o): OUTFLAG
42645           doesn't work for object files on VC.
42647         * */Makefile.sub (config.h): need SIZEOF_TIME_T now.
42649 Wed Apr  7 00:24:34 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42651         * lib/rinda/rinda.rb: fix hash tuple bug.
42653         * lib/rinda/tuplespace.rb: ditto.
42655         * test/rinda/test_rinda.rb
42657 Tue Apr  6 18:24:18 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42659         * file.c (rb_get_path): get path string via "to_path" method if
42660           path object is not a string. [Ruby2]
42662         * gc.c (rb_gc_call_finalizer_at_exit): do not free threads in the
42663           exit finalizers.
42665         * io.c (rb_io_reopen): should use rb_io_check_io().
42667 Tue Apr  6 16:46:09 2004  Tanaka Akira  <akr@m17n.org>
42669         * configure.in: check the size of time_t.
42671         * time.c (time_add): new function.
42672           (time_plus): use time_add.
42673           (time_minus): use time_add.
42675 Tue Apr  6 13:11:48 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42677         * ext/socket/socket.c (raise_socket_error): never return.
42679         * ext/socket/socket.c (make_hostent): must return value.
42681 Tue Apr  6 00:14:43 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42683         * error.c (Init_Exception): remove Exception#to_str. [Ruby2]
42685         * eval.c (error_print): should no call "to_str" anymore use
42686           "message" method instead.
42688         * io.c (rb_f_open): Kernel#open() calls "to_open" if the first
42689           argument responds to it. [Ruby2]
42691 Tue Apr  6 00:13:43 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42693         * lib/rinda/rinda.rb: add require 'drb/drb'
42695 Mon Apr  5 22:25:32 2004  Tanaka Akira  <akr@m17n.org>
42697         * test/zlib/test_zlib.rb: new file.
42698           (TestZlibGzipWriter#test_new_nil): test for [ruby-dev:23228].
42700 Mon Apr  5 22:16:23 2004  Minero Aoki  <aamine@loveruby.net>
42702         * parse.y (assoc_list): {a: 1, b: 2} should be allowed.
42703           [ruby-dev:23328]
42705 Mon Apr  5 19:43:40 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42707         * regexec.c: imported Oni Guruma 2.2.6.
42709 Mon Apr  5 19:39:10 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42711         * regparse.c, oniguruma.h: imported Oni Guruma 2.2.6.
42713 Mon Apr  5 12:12:09 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42715         * ext/socket/socket.c (raise_socket_error): some platforms don't have
42716           EAI_SYSTEM.
42718 Mon Apr  5 08:18:23 2004  Dave Thomas  <dave@pragprog.com>
42720         * lib/rdoc/rdoc.rb: Remove leading ./ from file names so that cross
42721           references work properly.
42723 Sun Apr  4 14:01:20 2004  Dave Thomas  <dave@pragprog.com>
42725         * lib/rdoc/options.rb (Options::parse): Allow multiple -x options to
42726           RDoc. Fix bug where files weren't being excluded properly
42728 Sat Apr  3 09:36:38 2004  why the lucky stiff  <why@ruby-lang.org>
42730         * ext/syck/syck.h: version 0.43.
42732 Sat Apr  3 08:28:47 2004  why the lucky stiff  <why@ruby-lang.org>
42734         * ext/syck/lib/gram.c: allow root-level inline collections.
42735           [ruby-talk:94922]
42737         * lib/yaml/rubytypes.rb (Symbol#to_yaml): emit symbols as implicits.
42738           [ruby-talk:94930]
42740 Fri Apr  2 19:28:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42742         * bcc32/Makefile.sub (OUTFLAG): needed for static-linked-ext.
42744 Fri Apr  2 18:00:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42746         * ext/extmk.rb (extmake): extract necessary variables for static link
42747           from Makefile.
42749         * lib/mkmf.rb (create_makefile): save preload and libpath for next
42750           compile.
42752 Fri Apr  2 17:27:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42754         * eval.c (top_include): include in the wrapped load is done for
42755           the wrapper, not for a singleton class for wrapped main.
42756           [ruby-dev:23305]
42758 Fri Apr  2 15:13:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42760         * bignum.c (rb_big_eq): use temporary double variable to save the
42761           result (internal float register may be bigger than 64 bits, for
42762           example, 80 bits on x86).  [ruby-dev:23311]
42764 Fri Apr  2 14:35:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42766         * eval.c (block_pass): should generate unique identifier of the
42767           pushing block.  [ruby-talk:96363]
42769 Fri Apr  2 11:36:20 2004  Minero Aoki  <aamine@loveruby.net>
42771         * eval.c (Init_load): make $LOADED_FEATURES built-in.
42772           [ruby-dev:23299]
42774         * ruby.c (ruby_prog_init): make $PROGRAM_NAME built-in.
42776         * lib/English.rb: remove $LOADED_FEATURES and $PROGRAM_NAME.
42778 Fri Apr  2 07:31:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42780         * ext/socket/socket.c: mistakingly removed do_not_reverse_lookup.
42781           [ruby-list:39475]
42783         * ext/socket/socket.c (make_hostent): fix memory leak, based on
42784           the patch from HORIKAWA Hisashi <vzw00011@nifty.ne.jp>.
42786 Thu Apr  1 22:55:33 2004  Dave Thomas  <dave@pragprog.com>
42788         * lib/rdoc/parsers/parse_rb.rb: Allow rdoc comments in
42789           =begin rdoc/=end
42791         * lib/rdoc/parsers/parse_rb.rb: Fix problem with comment in
42792           top-level method being taken as file comment.
42794 Thu Apr  1 22:55:04 2004  Dave Thomas  <dave@pragprog.com>
42796         * lib/rdoc/ri/ri_options.rb: Fix undefined variable warning.
42798 Thu Apr  1 19:58:37 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42800         * lib/soap/mapping/{factory.rb,registry.rb}: fixed illegal mapped URI
42801           object with soap/marshal.
42802           added URIFactory class for URI mapping.  BasetypeFactory checks
42803           instance_variables when original mapping is not allowed (ivar must
42804           be empty).  Instance of URI have instance_variables but it must be
42805           llowed whenever original mapping is allowed or not.
42807 Wed Mar 31 19:06:23 2004  Tanaka Akira  <akr@m17n.org>
42809         * time.c (year_leap_p): new function.
42810           (timegm_noleapsecond): ditto.
42811           (search_time_t): use timegm_noleapsecond instead of
42812           mktime for first guess.
42814 Wed Mar 31 12:05:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42816         * lib/delegate.rb (DelegateClass): define internal methods of the
42817           result class, but not metaclass of the caller.  [ruby-talk:96156]
42819         * intern.h: provide proper prototypes.  [ruby-core:02724]
42821         * ruby.h: missing.h is now prerequisite to intern.h.
42823 Wed Mar 31 11:17:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42825         * pack.c (pack_pack): raises RangeError if uv is out of UTF8 value
42826           range.  [ruby-dev:23281]
42828         * io.c (rb_io_binmode): stdio buffer should be empty when calling
42829           IO#binmode.  [ruby-talk:96155]
42831 Tue Mar 30 20:25:34 2004  Tanaka Akira  <akr@m17n.org>
42833         * time.c (search_time_t): limit guess range by mktime if it is
42834           available.  [ruby-dev:23274]
42836 Tue Mar 30 18:19:00 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42838         * eval.c (rb_eval): fix SEGV at retry in iterator's receiver.
42839           [ruby-dev:23227]
42841 Mon Mar 29 20:17:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42843         * process.c (rb_exec): follow older behavior if close-on-exec is not
42844           available.
42846         * process.c (rb_fork): protect from exceptions while waiting failed
42847           process, if status is given.
42849 Sun Mar 28 16:25:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42851         * cygwin/GNUmakefile.in (clean-local, distclean-local): remove
42852           work files.
42854         * win32/Makefile.sub (clean-local): ditto.
42856 Sun Mar 28 14:23:02 2004  Minero Aoki  <aamine@loveruby.net>
42858         * lib/net/pop.rb: def m( arg ) -> def m(arg).
42860 Sun Mar 28 14:09:13 2004  Minero Aoki  <aamine@loveruby.net>
42862         * lib/net/pop.rb (auth): failed when account/password include "%".
42863           [ruby-talk:95933]
42865 Sat Mar 27 21:40:41 2004  Tanaka Akira  <akr@m17n.org>
42867         * lib/open-uri.rb: permit extra semicolon in content-type field.
42869 Sat Mar 27 10:40:48 2004  Tanaka Akira  <akr@m17n.org>
42871         * (lib/pp.rb, lib/prettyprint.rb): define seplist in PP::PPMethods
42872           instead of PrettyPrint.
42874 Sat Mar 27 01:47:09 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42876         * lib/logger.rb: trim tail space of each line.  no user visible change.
42878         * lib/rss/dublincore.rb: fixed class definition mismatch.
42880         * sample/openssl/gen_csr.rb: fixed wrong usage text.
42882 Thu Mar 25 23:15:24 2004  Dave Thomas  <dave@pragprog.com>
42884         * lib/rdoc/ri/ri_options.rb (RI::Options::show_version):
42885           Add --version option
42887 Thu Mar 25 21:45:00 2004  Shigeo Kobayashi  <shigek@ruby-lang.org>
42889         * ext/bigdecimal/bigdecimal.c: Bug in + and - reported by Bret Jolly
42890           fixed.
42892 Thu Mar 25 21:01:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42894         * version.c (ruby_show_copyright): obtain copyright year from
42895           RUBY_RELEASE_YEAR.
42897         * win32/resource.rb: ditto.
42899 Thu Mar 25 19:37:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42901         * win32/resource.rb: default rubyw icon to ruby.ico, and let DLL also
42902           include them.
42904         * win32/resource.rb: include winver.h for older WindowsCE.
42906 Thu Mar 25 14:01:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42908         * common.mk, */Makefile.sub (lib, dll): phony targets.
42910         * configure.in (ruby, miniruby): ditto.
42912         * cygwin/GNUmakefile.in (rubyw): ditto.
42914 Thu Mar 25 04:16:18 2004  Dave Thomas  <dave@pragprog.com>
42916         * lib/rdoc/ri/ri_options.rb (RI::Options): Add the --list-names option,
42917           which dumps our all known names
42919 Thu Mar 25 03:57:47 2004  Dave Thomas  <dave@pragprog.com>
42921         * lib/rdoc/ri/ri_util.rb (NameDescriptor::initialize): No longer
42922           allow nested classes to be designated using "."--you must
42923           now use "::"
42925 Thu Mar 25 02:00:18 2004  Dave Thomas  <dave@pragprog.com>
42927         * lib/rdoc/generators/template/html/one_page_html.rb (Page):
42928           Fix to work with C modules.
42930 Wed Mar 24 20:49:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42932         * lib/uri.rb: Documented (thanks Dmitry V. Sabanin).
42933         * lib/uri/common.rb: Ditto.
42934         * lib/uri/ftp.rb: Ditto.
42935         * lib/uri/generic.rb: Ditto.
42936         * lib/uri/http.rb: Ditto.
42937         * lib/uri/https.rb: Ditto.
42938         * lib/uri/ldap.rb: Ditto.
42939         * lib/uri/mailto.rb: Ditto.
42941 Wed Mar 24 18:48:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42943         * lib/mkmf.rb ($ruby, $topdir, $hdrdir): should not be affected by
42944           DESTDIR after installed.
42946         * lib/mkmf.rb (dummy_makefile): default file lists to be cleaned.
42948 Wed Mar 24 12:32:56 2004  Dave Thomas  <dave@pragprog.com>
42950         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::handle_class_module):
42951           Don't document methods if we don't know for sure the
42952           class or module.
42954         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
42955           Don't store documentation for singleton classes if we
42956           don't know the real class.
42958 Wed Mar 24 11:11:26 2004  Dave Thomas  <dave@pragprog.com>
42960         * lib/rdoc/generators/html_generator.rb (Generators::HTMLGenerator::load_html_template):
42961           Allow non-RDoc templates by putting a slash in the template name
42963 Wed Mar 24 10:05:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42965         * lib/tempfile.rb (Tempfile::_close): should not clear @tmpname
42966           until the file is really removed. [ruby-core:02684]
42968 Wed Mar 24 04:12:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42970         * object.c (rb_mod_cvar_get): new method Module#class_variable_get.
42972         * object.c (rb_mod_cvar_set): ditto (Module#class_variable_set).
42974 Tue Mar 23 17:45:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42976         * eval.c (rb_thread_atfork): 1.9 warns no more for thread
42977           termination.  [ruby-dev:23212]
42979 Tue Mar 23 14:46:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42981         * Makefile.in, */Makefile.sub, common.mk (clean-local, distclean-local):
42982           separate files under directories due to directory separator.
42984         * */Makefile.sub (MKFILES): common.mk and */Makefile.sub should not be
42985           removed.
42987         * win32/Makefile.sub, wince/Makefile.sub: $* cannot appear in explicit
42988           rules.
42990         * cygwin/GNUmakefile.in: some mingw stuffs were missed.
42992         * lib/mkmf.rb (create_makefile): Borland make wrongly removes braces
42993           from command lines.
42995         * bcc32/Makefile.sub: needs bcc32/mkexports.rb.
42997 Mon Mar 22 08:21:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42999         * Makefile.in, */Makefile.sub, common.mk: extract common portions.
43001         * Makefile.in, cygwin/GNUmakefile.in, */Makefile.sub (RBCONFIG):
43002           separated time stamp file for rbconfig.rb.
43004         * configure.in: append common.mk to Makefile.
43006         * mkconfig.rb: keep mtime of rbconfig.rb if unchanged.
43008         * win32/rm.bat: remove multiple files.
43010         * wince/mkconfig_wce.rb: use fake.rb instead.
43012 Sun Mar 21 22:17:35 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43014         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#virtual_host):
43015           sort @virtual_hosts in address, port, host order.
43017         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server):
43018           hostname should not be match if :ServerAlias is not given.
43020 Sun Mar 21 21:11:16 2004  Keiju Ishitsuka  <keiju@ishitsuka.com>
43022         * lib/shell/*: bug fix for Shell#system(command_line_string).
43024 Sun Mar 21 21:04:42 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43026         * ruby.1: add -width option to .Bl for old groff.
43028 Sun Mar 21 18:57:37 2004  Kouhei Sutou  <kou@cozmixng.org>
43030         * test/rss/*: Test::Unit::TestCase -> RSS::TestCase and
43031           Test::Unit::Assertions -> RSS::Assertions.
43033 Sun Mar 21 18:48:20 2004  Kouhei Sutou  <kou@cozmixng.org>
43035         * lib/rss/{rss,dublincore,syndication}.rb: handled W3CDTF correctly.
43037 Sun Mar 21 18:15:29 2004  Kouhei Sutou  <kou@cozmixng.org>
43039         * test/rss/test_xml-stylesheet.rb: added tests for xml-stylesheet.
43041         * lib/rss/xml-stylesheet.rb: added xml-stylesheet parsing
43042           function.
43044 Sat Mar 20 23:51:03 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43046         * eval.c (rb_require_safe): preserve old ruby_errinfo.
43047           [ruby-talk:95409]
43049         * eval.c (rb_f_raise): should not clear backtrace information if
43050           exception object already have one.
43052 Sat Mar 20 21:21:03 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43054         * ext/extmk.rb: rm -rf $extout, not extout.
43056 Sat Mar 20 15:25:36 2004  Dave Thomas  <dave@pragprog.com>
43058         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Force
43059           page background to white.
43061 Sat Mar 20 09:33:36 2004  Tadayoshi Funaba  <tadf@dotrb.org>
43063         * lib/date.rb, lib/date/format.rb: _parse() now accepts fractional
43064           part of second minute that follows a comma or a full stop.
43066 Fri Mar 19 21:06:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43068         * parse.y (assoc_list): allow {sym: val} style Hash. [Ruby2]
43069           this change is done by Nobuyoshi Nakada <nobu@ruby-lang.org>.
43071 Fri Mar 19 15:15:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43073         * variable.c (rb_cvar_set): class variables become private to the
43074           particular class/module. [Ruby2]
43076         * variable.c (rb_cvar_get): ditto.
43078         * variable.c (rb_cvar_defined): ditto.
43080 Fri Mar 19 11:31:32 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43082         * lib/mkmf.rb ($beos, $solaris): add OS flags.
43084         * lib/mkmf.rb (RUBY): / is not recognized as path separator on
43085            nmake/bmake. [ruby-list:39388]
43087         * lib/mkmf.rb (CLEANLIBS, CLEANOBJS): should remove *.exp with *.so.
43089 Fri Mar 19 01:55:57 2004  Mauricio Fernandez  <batsman.geo@yahoo.com>
43091         * io.c (rb_io_sync): need not to check writable. [ruby-core:02674]
43093 Thu Mar 18 19:47:44 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43095         * instruby.rb, rubytest.rb: do not depend on srcdir.
43097 Thu Mar 18 18:50:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43099         * mkconfig.rb: no longer embed srcdir and compile_dir into
43100           rbconfig.rb.
43102         * ext/extmk.rb, lib/mkmf.rb: obtain top_srcdir and topdir from library
43103           paths.
43105 Thu Mar 18 17:46:35 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43107         * lib/drb/drb.rb: do not undef :to_a.
43109 Thu Mar 18 16:22:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43111         * eval.c (proc_eq): avoid false positive by using scope and
43112           dyna_vars.  no longer use frame.uniq.
43114         * eval.c (proc_arity): arity is now defined as number of
43115           parameters that would not be ignored. i.e. Proc.new{}.arity
43116           returns zero.  update test suites too.
43118 Thu Mar 18 15:27:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43120         * eval.c: remove specialized version of rb_Array().  use simple
43121           one defined in object.c.
43123         * object.c (Init_Object): remove Kernel#to_a.
43125         * enum.c (enum_zip): use "to_a" instead of "to_ary".
43127 Wed Mar 17 00:22:03 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
43129         * oniguruma.h: imported Oniguruma 2.2.5.
43130         * regparse.c: ditto.
43132 Tue Mar 16 11:14:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43134         * dir.c (fnmatch_helper): File.fnmatch('\.', '.') should return true.
43135           (Rev1.112 lost compatiblity)
43137         * dir.c (fnmatch_helper): File.fnmatch('\/', '/', File::FNM_PATHNAME)
43138           should return true. (Rev1.112 lost compatiblity)
43140         * dir.c (fnmatch): File.fnmatch('**/.boo', '.foo/.boo',
43141           File::FNM_PATHNAME) should return false because of leading period.
43143 Mon Mar 15 17:01:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43145         * error.c (exc_initialize): calling 'to_str' each time just for
43146           type checking is too heavy.  [ruby-core:02661]
43148 Mon Mar 15 10:14:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43150         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SocketForwarder):
43151           add do_not_reverse_lookup.
43153 Mon Mar 15 07:39:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43155         * eval.c (rb_yield_0): should not re-submit TAG_BREAK if this
43156           yield is not break destination. [ruby-dev:23197]
43158 Sun Mar 14 22:07:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43160         * eval.c (rb_thread_raise): err at unstarted thread.  (PR#1302)
43162 Sat Mar 13 14:56:32 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43164         * test/drb/ut_drb.rb: use 'druby://localhost:0'. [ruby-dev:23078]
43166         * test/drb/ut_eval.rb: ditto.
43168         * test/drb/ut_large.rb: ditto.
43170         * test/drb/ut_safe1.rb: ditto.
43172         * test/drb/ut_drb_drbssl.rb: use 'drbssl://localhost:0'.
43174 Fri Mar 12 23:52:56 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43176         * dir.c (fnmatch): directory recursion '**/' can be used with
43177           File::FNM_PATHNAME. [ruby-dev:22901]
43179         * dir.c (fnmatch, fnmatch_helper): only '/' is accepted as path
43180           separator even in DOSISH environment. [ruby-dev:22974]
43181           [ruby-list:39337]
43183         * dir.c (fnmatch_helper): faster '*' matching.
43185 Fri Mar 12 20:19:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43187         * configure.in (rb_cv_noreturn): default for platforms not support
43188           prototypes.
43190         * ruby.c (ruby_init_loadpath): buffer for path name should have
43191           MAXPATHLEN.
43193         * lib/mkmf.rb (configuration): include topdir and hdrdir in VPATH.
43195         * lib/mkmf.rb (create_makefile): default dependency rule.
43197 Fri Mar 12 07:35:36 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43199         * lib/webrick/config.rb (WEBrick::Config::General): add
43200           :DoNotReverseLookup.
43202         * lib/webrick/server.rb (WEBrick::GenericServer#accept): call
43203           do_not_reverse_lookup for each socket if :DoNotReverseLookup
43204           is set.  [ruby-code:02357]
43206 Wed Mar 10 22:26:25 2004  Minero Aoki  <aamine@loveruby.net>
43208         * lib/fileutils.rb (remove_dir): should handle symlink correctly.
43209           This patch is contributed by Christian Loew.  [ruby-talk:94635]
43211 Wed Mar 10 16:28:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43213         * eval.c (return_jump): set return value to the return
43214           destination.  separated from localjump_destination().
43216         * eval.c (break_jump): break innermost loop (or thread or proc).
43218         * eval.c (rb_yield_0): set exit_value for block break.
43220 Wed Mar 10 16:00:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43222         * struct.c (rb_struct_s_def): Struct::new executes block with
43223           generated struct class. [ruby-talk:02606]
43225 Wed Mar 10 15:58:43 2004  Ryan Davis  <ryand@zenspider.com>
43227         * eval.c (eval): Only print backtrace if generating the backtrace
43228           doesn't generate an exception.  [ruby-core:02621]
43230 Wed Mar 10 10:15:16 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43232         * ruby.c (opt_W_getter): get rid of warning.
43234         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
43235           fixed dependency.
43237 Tue Mar  9 13:04:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43239         * io.c (rb_io_ungetc): raise IOError instead of calling
43240           rb_sys_fail().  [ruby-talk:23181]
43242 Tue Mar  9 10:03:40 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43244         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
43245           replaced regex.c entry with Oniguruma files.
43247 Tue Mar  9 01:09:46 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
43249         * Makefile.in: replaced regex.c entry with Oniguruma files.
43251 Mon Mar  8 23:16:07 2004  Minero Aoki  <aamine@loveruby.net>
43253         * lib/net/http.rb: HTTPHeader did not initialized correctly.
43255         * lib/net/http.rb (connect): does same debug output.
43257 Mon Mar  8 21:38:18 2004  Minero Aoki  <aamine@loveruby.net>
43259         * lib/net/http.rb (add_header): remove warning. [ruby-dev:23170]
43261 Mon Mar  8 21:09:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43263         * dir.c (range): Cancel change for incomplete '['. More discussion
43264           is needed.
43266 Mon Mar  8 19:35:13 2004  akira yamada  <akira@arika.org>
43268         * lib/uri/common.rb (URI::REGEXP::PATTERN::HOSTPORT): (?:#{PORT})
43269           -> (?::#{PORT}).  [ruby-dev:23170]
43271 Mon Mar  8 15:03:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43273         * dir.c (range): treat incomplete '[' as ordinary character (like
43274           has_magic does). fix buffer overrun at incomplete escape like '[\'.
43276 Mon Mar  8 13:35:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43278         * regparse.c (parse_exp): need to separate initialization for bcc32.
43279           [ruby-dev:23169]
43281         * oniguruma.h (ONIG_EXTERN): check __GNUC__ instead of __CYGWIN__.
43283 Mon Mar  8 01:05:55 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43285         * lib/webrick/config.rb (WEBrick::Config::HTTP): rename :RequestHander
43286           to :RequestCallback and add new option :ServerAlias.
43288         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): use
43289           :RequestCallback and warn if :RequestHandler is in server's option.
43291         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should print
43292           error message for WEBrick::HTTPSataus::Error.
43294         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server):
43295           lookup for hostname from :ServerAlias if the req.host is not match
43296           to :ServerName.
43298         * lib/webrick/httpservlet.rb (WEBrick::HTTPServlet::CGIHandler#do_GET):
43299           use $?.exitstatus and refine log message.
43301 Sun Mar  7 16:22:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43303         * Makefile.in (lex.c): use $? instead of $<.
43305         * lib/pstore.rb (commit_new): use FileUtils.copy_stream for Cygwin.
43306           [ruby-dev:23157]
43308 Sun Mar  7 05:34:42 2004  Minero Aoki  <aamine@loveruby.net>
43310         * lib/net/http.rb: HTTPHeader keeps its header fields as an array.
43312         * lib/net/http.rb: new method HTTPHeader#add_header, get_fields.
43314         * lib/net/http.rb: new method HTTPHeader#content_length=.
43316         * lib/net/http.rb: new method HTTPHeader#content_type, main_type,
43317           sub_type, type_params, content_type=, set_content_type.
43319         * lib/net/http.rb (HTTPHeader#basic_encode): result of pack(m) may
43320           contain multiple LFs.
43322 Sun Mar  7 03:11:00 2004  Minero Aoki  <aamine@loveruby.net>
43324         * lib/net/http.rb: new method Net::HTTPRequest#body(=).
43326         * lib/net/http.rb: new method Net::HTTPRequest#body_stream(=).
43328 Sun Mar  7 02:06:07 2004  Minero Aoki  <aamine@loveruby.net>
43330         * lib/net/http.rb: spin off https code again.
43332         * lib/net/https.rb: new file.
43334         * ext/openssl/lib/net/https.rb: removed.  moved to net/https with
43335           slight modifications.
43337         * ext/openssl/lib/net/protocols.rb: removed.  merged with net/http.
43339         * lib/net/protocol.rb: new class BufferedIO.
43341         * lib/net/protocol.rb: InternetMessageIO < BufferedIO.
43343         * lib/net/protocol.rb: BufferedIO.new takes an IO.
43345         * lib/net/smtp.rb: follow InternetMessageIO's change.
43347         * lib/net/pop.rb: ditto.
43349 Sun Mar  7 00:55:03 2004  Minero Aoki  <aamine@loveruby.net>
43351         * lib/net/protocol.rb: remove method: InternetMessageIO#address,
43352           port, ip_address, read_timeout(=), socket.
43354         * lib/net/protocol.rb: simplify code.
43356         * lib/net/protocol.rb: apply latest coding style.
43358 Sat Mar  6 15:15:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43360         * ext/strscan/depend: depends on re.h and regex.h.
43362         * ext/strscan/strscan.c: no version check needed.
43364         * ext/strscan/strscan.c (strscan_init_copy): struct re_registers must
43365           not be bitwise copied.
43367 Sat Mar  6 11:14:33 2004  David Black  <dblack@wobblini.net>
43369         * lib/scanf.rb: refixed the previous fix in IO#block_scanf
43371 Sat Mar  6 10:49:40 2004  David Black  <dblack@wobblini.net>
43373         * lib/scanf.rb: fixed a logic glitch in IO#block_scanf
43375 Sat Mar  6 02:00:19 2004  Minero Aoki  <aamine@loveruby.net>
43377         * lib/net/http.rb: net/https is merged.
43379         * ext/openssl/lib/net/https.rb: ditto.
43381 Sat Mar  6 00:39:21 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
43383         * oniggnu.h: imported from Oniguruma library.
43384         * oniguruma.h: ditto.
43385         * regcomp.c: ditto.
43386         * regenc.c: ditto.
43387         * regenc.h: ditto.
43388         * regerror.c: ditto.
43389         * regex.c: ditto.
43390         * regexec.c: ditto.
43391         * reggnu.c: ditto.
43392         * regint.h: ditto.
43393         * regparse.c: ditto.
43394         * regparse.h: ditto.
43395         * ascii.c: ditto.
43396         * euc_jp.c: ditto.
43397         * sjis.c: ditto.
43398         * utf8.c: ditto.
43400         * MANIFEST: added Oniguruma files listed above.
43402         * LEGAL: added Oniguruma license.
43404         * regex.h: now includes oniggnu.h.
43406         * re.c: applied Oniguruma patch.
43408 Fri Mar  5 23:13:08 2004  Minero Aoki  <aamine@loveruby.net>
43410         * lib/net/http.rb: support WebDAV methods, PROPPATCH, LOCK,
43411           UNLOCK, OPTIONS, PROPFIND, DELETE, MOVE, COPY, MKCOL.
43412           This patch is contributed by Tatsuki Sugiura.
43414 Fri Mar  5 20:58:37 2004  Minero Aoki  <aamine@loveruby.net>
43416         * lib/net/http.rb: Net::HTTPResponse#response is obsolete.
43417           [ruby-core:02592]
43419         * lib/net/http.rb: Net::HTTPResponse#header is obsolete.
43421         * lib/net/http.rb: Net::HTTPResponse#read_header is obsolete.
43423 Fri Mar  5 20:10:57 2004  Minero Aoki  <aamine@loveruby.net>
43425         * ext/strscan/strscan.c: new method StringScanner#initialize_copy
43426           to allow #dup and #clone.
43428         * test/strscan/test_strscan.rb: test StringScanner#dup.
43430 Fri Mar  5 19:42:09 2004  Minero Aoki  <aamine@loveruby.net>
43432         * lib/net/http.rb (HTTPResponse#to_ary): should return an object
43433           which does not respond to #to_ary.  It causes infinite loop in
43434           puts. [ruby-core:02578]
43436 Fri Mar  5 00:51:35 2004  Dave Thomas  <dave@pragprog.com>
43438         * lib/test/unit.rb: Move RDoc documentation so that you can
43439           now say 'ri Test::Unit'
43441 Thu Mar  4 22:31:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43443         * Makefile.in: miniruby is not needed for cross compile.
43445         * configure.in (PREP): miniruby for native compile.
43447 Thu Mar  4 11:46:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43449         * lib/drb/extservm.rb (DRb::ExtServManager#invoke_service_command):
43450           detach server processes to get rid of zombies.
43452 Thu Mar  4 10:41:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43454         * ruby.h (T_MASK): save 1 bit in flags bits by shifting T_xxx
43455           values.
43457 Thu Mar  4 08:08:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43459         * ext/syck/rubyext.c: get rid of warnings.
43461         * lib/rss/taxonomy.rb: ditto.
43463         * lib/rdoc/ri/ri_formatter.rb: ditto.
43465         * test/ruby/test_assignment.rb: ditto.
43467 Thu Mar  4 01:17:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43469         * lib/rdoc/ri/ri_display.rb (DefaultDisplay::page): wait until the
43470           pager terminates.
43472 Wed Mar  3 13:10:56 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43474         * eval.c (method_hash): new method. [ruby-talk:93968]
43476         * eval.c (proc_eq): do not compare dyna_vars.
43478         * eval.c (proc_hash): new method.
43480         * eval.c (rb_yield_0): protect break/return from within orphan (or
43481           lambda) Proc object.
43483 Wed Mar  3 09:52:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43485         * lib/mkmf.rb ($topdir): use compile_dir only when not installed yet.
43486           [ruby-talk:94098]
43488 Wed Mar  3 01:18:52 2004  Kouhei Sutou  <kou@cozmixng.org>
43490         * lib/rss/converter.rb: handled Uconv::Error.
43492         * lib/rss/dublincore.rb: DublincoreModel -> DublinCoreModel
43494 Wed Mar  3 00:59:30 2004  David Black  <dblack@wobblini.net>
43496         * lib/scanf.rb: soak_up_spaces only ungetc's non-space last
43497           character
43499         * lib/scanf.rb: IO#block_scanf now returns partial last iteration
43500           array if format string matches partly
43502 Tue Mar  2 16:30:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43504         * io.c (pipe_open): erred program name should be reported by
43505           exceptions, instead of the first argument.
43507         * process.c (rb_spawn): ditto.
43509         * process.c (proc_spawn_v): use first argument as program name.
43511         * win32/win32.c (rb_w32_aspawn): ditto.
43513         * win32/win32.c (CreateChild): search executable file if no program
43514           name given.
43516         * lib/drb/extservm.rb (invoke_service_command): use Process.spawn.
43517           [ruby-dev:23103]
43519         * lib/rdoc/ri/ri_display.rb (setup_pager): use IO.popen.
43520           [ruby-dev:23086], [ruby-dev:23103]
43522         * lib/rdoc/diagram.rb (convert_to_png): ditto.
43524         * lib/rdoc/generators/chm_generator.rb (compile_project): ditto.
43526 Tue Mar  2 12:24:03 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43528         * win32/Makefile.sub, wince/Makefile.sub (config.h): shouldn't check
43529           defined? NORETURN. [ruby-dev:23100]
43531 Tue Mar  2 11:28:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43533         * test/ruby/test_iterator.rb (test_ljump): cannot use
43534           assert_nothing_raised due to passing block.
43536 Tue Mar  2 06:23:14 2004  David Black  <dblack@wobblini.net>
43538         * lib/scanf.rb: fixed Kernel#scanf to propagate code block
43540 Mon Mar  1 23:25:40 2004  David Black  <dblack@wobblini.net>
43542         * lib/scanf.rb: Partial fix so STDIN#scanf works with new
43543          STDIN#pos behavior
43545 Mon Mar  1 19:42:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43547         * bcc32/setup.mak: configure's default is "--enable-install-doc"
43549         * win32/setup.mak: ditto.
43551 Mon Mar  1 12:24:10 2004  Dave Thomas  <dave@pragprog.com>
43553         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_alias):
43554           Allow aliases to have parentheses
43556 Sun Feb 29 23:14:53 2004  Dave Thomas  <dave@pragprog.com>
43558         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
43559           Handle :nodoc: on singleton classes.
43561 Sat Feb 28 21:50:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43563         * bcc32/Makefile.sub, bcc32/README.bcc32, bcc32/configure.bat,
43564           bcc32/setup.mak: new configure scheme. use ``configure --prefix=dir''
43565           instead of ``make DESTDIR=dir install''.
43566           --with-static-linked-ext support on bccwin32. [ruby-dev:23034]
43568 Sat Feb 28 21:50:20 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43570         * bcc32/setup.mak: "configure --disable-install-doc" is now working.
43572         * win32/setup.mak: ditto.
43574 Sat Feb 28 15:09:49 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43576         * bcc32/configure.bat: append missing label ":exit".
43578         * bcc32/configure.bat: fix typo.
43580 Sat Feb 28 10:31:03 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43582         * MANIFEST: add test_erb.rb
43584         * lib/erb.rb, test/erb/test_erb.rb: don't forget filename,
43585           if both filename and safe_level given. [ruby-dev:23050]
43587 Sat Feb 28 01:08:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43589         * parse.y (yylex): should not allow symbol for invalid global
43590           variable (e.g. `:$-)`). [ruby-core:02518]
43592 Fri Feb 27 20:37:09 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43594         * eval.c (proc_invoke): no orphan block check is needed when pcall
43595           is true.
43597         * eval.c (localjump_destination): update localjump condition.
43599 Fri Feb 27 02:10:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43601         * eval.c (localjump_destination): lambda should not interfere
43602           return from the yielded block.
43604 Fri Feb 27 00:53:49 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43606         * lib/drb/drb.rb, test/drb/drbtest.rb: require drb/eq.rb by default
43608 Thu Feb 26 12:15:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43610         * win32/win32.c (make_cmdvector): adjust successive double-quote
43611           handling.
43613 Thu Feb 26 09:42:56 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43615         * hash.c (delete_if_i): use st_delete_safe() (via
43616           rb_hash_delete()) instead of returning ST_DELETE.
43618 Thu Feb 26 02:35:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43620         * process.c (rb_f_exec): get rid of SEGV when exec failed for command
43621           in single string.
43623 Wed Feb 25 21:17:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43625         * gc.c (obj_free), io.c (rb_io_fptr_finalize), rubyio.h (OpenFile):
43626           sharing OpenFile.
43628         * io.c (rb_io_initialize): accept IO instance.  [ruby-dev:22195]
43630 Wed Feb 25 21:16:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43632         * instruby.rb (with_destdir): should return the given argument if no
43633           DESTDIR is given.
43635         * instruby.rb: use path name expansion of cmd.exe.
43637 Wed Feb 25 20:44:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43639         * lib/cgi-lib.rb, lib/getopts.rb, lib/importenv.rb, lib/parsearg.rb:
43640           warn with caller position.
43642         * test/rss/test_content.rb, test/rss/test_dublincore.rb,
43643           test/rss/test_syndication.rb, test/rss/test_trackback.rb: use cgi
43644           instead of cgi-lib.
43646 Tue Feb 24 18:42:03 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43648         * dir.c (glob_helper): '**/' should not match leading period
43649           unless File::FNM_DOTMATCH is set. (like '*/') [ruby-dev:23014]
43651 Tue Feb 24 18:03:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43653         * test/ruby/test_file.rb (test_fnmatch): test for dir.c:1.108.
43655 Tue Feb 24 17:07:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43657         * dir.c (fnmatch): File.fnmatch with File::FNM_PATHNAME was broken
43658           for the pattern including '*' followed by '/'.
43660 Tue Feb 24 13:22:21 2004  Dave Thomas  <dave@pragprog.com>
43662         * lib/rdoc/rdoc.rb (RDoc::RDoc::normalized_file_list): Attempt to get better
43663           heuristics on which files to include and exclude. Now only include
43664           non-standard files if they are explicitly named in ARGV.
43666 Tue Feb 24 07:23:30 2004  Dave Thomas  <dave@pragprog.com>
43668         * lib/rdoc/generators/html_generator.rb: Deal with :stopdoc: when
43669           choosing a default main page to display (ie. don't select a page
43670           if we don't have documentation for it).
43672 Tue Feb 24 06:40:14 2004  Dave Thomas  <dave@pragprog.com>
43674         * lib/rdoc/parsers/parse_rb.rb (RubyLex::identify_identifier): Handle
43675           class variables in code listings
43677 Tue Feb 24 06:32:27 2004  Dave Thomas  <dave@pragprog.com>
43679         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_aliases): Handle
43680           aliases in C files.
43682 Tue Feb 24 06:16:22 2004  Dave Thomas  <dave@pragprog.com>
43684         * lib/rdoc/rdoc.rb (RDoc::RDoc::document): Now create op dir _before_
43685           parsing files.
43687 Tue Feb 24 06:08:47 2004  Dave Thomas  <dave@pragprog.com>
43689         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_constant):
43690           Start collecting text of constant values earlier: was missing
43691           values in output if there was no space after '='
43693 Tue Feb 24 06:08:25 2004  Dave Thomas  <dave@pragprog.com>
43695         * lib/rdoc/generators/html_generator.rb: Escape contant values.
43697 Tue Feb 24 03:45:06 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43699         * ext/openssl/ossl_config.c (ossl_config_each): add new method
43700           OpenSSL::Config#each. it iterates with section name, field name
43701           and value.
43703         * ext/openssl/ossl_config.c (Init_ossl_config): include Enumerable.
43705 Mon Feb 23 09:09:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43707         * instruby.rb (parse_args): use optparse instead of getopts.
43709         * instruby.rb (DOSISH): embedded path in batch files should not be
43710           prefixed by DESTDIR.  [ruby-core:02186]
43712 Sun Feb 22 14:58:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43714         * ext/extmk.rb: $extstatic is Array or nil now.  [ruby-talk:93383]
43716         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub: terminate options.
43718         * lib/mkmf.rb (init_mkmf): $INCFLAGS also should be lazy-evaluated.
43720 Sun Feb 22 13:05:37 2004  akira yamada  <akira@ruby-lang.org>
43722         * lib/uri/mailto.rb (URI::MailTo::to_s): should include fragment.
43724 Sun Feb 22 12:58:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43726         * ext/extmk.rb: use optparse instead of getopts.
43728         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub: ditto.
43730 Sun Feb 22 09:51:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43732         * re.c: corrected documentation format (rb_reg_initialize_m)
43734 Sat Feb 21 22:41:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43736         * ext/zlib/zlib.c: documented, but needs more effort.
43738 Sat Feb 21 14:33:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43740         * ext/extmk.rb: prefer relative path.  [ruby-talk:93037]
43742 Sat Feb 21 11:12:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43744         * missing/os2.c, missing/x68.c: typo fix.  pointed out by greentea.
43746 Fri Feb 20 19:11:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43748         * lib/ostruct.rb (OpenStruct#initialize_copy): should not share
43749           members.  [ruby-dev:22966]
43751 Fri Feb 20 18:59:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43753         * lib/irb/init.rb (IRB::IRB.parse_opts): add -I option to
43754           irb. [ruby-dev:39243]
43756 Fri Feb 20 12:55:27 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43758         * io.c (pipe_open): fix typo.
43760         * win32/win32.c (CreateChild): first argument to CreateProcess() must
43761           have path, not just basename.
43763 Thu Feb 19 23:24:16 2004  Dave Thomas  <dave@pragprog.com>
43765         * lib/rdoc/generators/html_generator.rb (Generators::HtmlClass::build_attribute_list):
43766           Support visibility modifiers for attributes
43768 Thu Feb 19 22:39:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43770         * lib/ostruct.rb: documented
43772 Thu Feb 19 22:39:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43774         * test/rinda/test_rinda.rb: DRb.start_service only once in testsuites.
43775           DRb.start_service could handle this.
43777 Thu Feb 19 22:24:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43779         * lib/soap/mapping/rubytypeFactory.rb: should not dump singleton class.
43780           [ruby-dev:22588]
43781           c = class << Object.new; class C; self; end; end; SOAPMarshal.dump(c)
43783 Thu Feb 19 18:08:18 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43785         * ext/strscan/strscan.c: improved documentation
43787 Thu Feb 19 18:08:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43789         * win32/win32.c, win32/win32.h: fixed prototypes.
43791         * win32/win32.c (wait): same as waitpid() with -1.
43793 Thu Feb 19 02:34:28 2004  Dave Thomas  <dave@pragprog.com>
43795         * lib/rdoc/markup/simple_markup/preprocess.rb (SM::PreProcess::include_file):
43796           Only strip comment markers if all lines start with comments.
43798 Thu Feb 19 03:05:49 2004  Minero Aoki  <aamine@loveruby.net>
43800         * ext/strscan/strscan.c: StringScanner#restsize is obsolete;
43801           use #rest_size instead.
43803         * ext/strscan/strscan.c: StringScanner#matchedsize is obsolete;
43804           use #matched_size instead.
43806 Thu Feb 19 02:42:19 2004  Minero Aoki  <aamine@loveruby.net>
43808         * ext/strscan/strscan.c: don't use rb_eval_string, it defines
43809           classes under the module when required in module clauses.
43810           [ruby-dev:22951]
43812 Thu Feb 19 02:37:28 2004  Minero Aoki  <aamine@loveruby.net>
43814         * ext/strscan/strscan.c: merge documentation from 1.8 branch.
43815           Thanks Gavin Sinclair.
43817 Thu Feb 19 00:20:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43819         * lib/cgi-lib.rb:   deprecated after 1.8.1
43821         * lib/getopts.rb:   ditto
43823         * lib/importenv.rb: ditto
43825         * lib/parsearg.rb:  ditto
43827 Thu Feb 19 00:11:05 2004  Dave Thomas  <dave@pragprog.com>
43829         * lib/rdoc/markup/simple_markup/preprocess.rb (SM::PreProcess::handle):
43830           Strip extraneous space from filenames in :include:
43832 Wed Feb 18 22:53:41 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43834         * lib/drb/unix.rb: remove O_NONBLOCk, thanks \ay
43836 Wed Feb 18 22:42:19 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43838         * test/rinda/test_rinda.rb: improt test_rinda.rb
43840 Wed Feb 18 22:03:11 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43842         * test/*: should not depend on $KCODE.
43844 Wed Feb 18 18:07:09 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43846         * test/ruby/test_sprintf.rb: added tests.
43848 Wed Feb 18 17:18:01 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43850         * ext/win32ole/win32ole.c: need to include <olectl.h> on Cygwin.
43852 Wed Feb 18 10:40:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43854         * sprintf.c (rb_f_sprintf): sign bit extension should not be done
43855           if FPLUS flag is specified.  [ruby-list:39224]
43857         * sprintf.c (rb_f_sprintf): do not prepend dots for negative
43858           numbers if FZERO is specified.  [ruby-dev:39218]
43860 Wed Feb 18 10:23:34 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43862         * sprintf.c (rb_f_sprintf): clean up.
43864 Tue Feb 17 23:40:34 2004  Guy Decoux  <ts@moulon.inra.fr>
43866         * sprintf.c (rb_f_sprintf): preserve original val for
43867           format_integer. [ruby-talk:92975]
43869 Tue Feb 17 23:28:45 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43871         * test/soap/marshal/test_marshal.rb, test/ruby/test_marshal.rb: do $:
43872           trick to share the testcase test/ruby/marshaltestlib.rb.
43874 Tue Feb 17 23:13:23 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43876         * test/ruby/marshaltestlib.rb: common marshal testcase added.
43878         * test/ruby/test_marshal.rb: use above testsuite.
43880         * test/soap/marshal/test_marshal.rb: ditto.
43882         * test/soap/marshal/cmarshal.rb: removed (not used).
43884 Tue Feb 17 19:34:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43886         * ext/extmk.rb (extmake): $extout_prefix doesn't vary for libraries.
43888         * ext/extmk.rb (extmake): remove compile directory if empty.
43890         * ext/extmk.rb (parse_args) lib/mkmf.rb (create_makefile): move
43891           initialization of $extout_prefix from lib/mkmf.rb.  [ruby-dev:22928]
43893         * ext/extmk.rb: clear ext and extout directory when cleaning.
43895         * lib/mkmf.rb (CLEANLIBS): should be under $(arch) directory.
43897 Tue Feb 17 18:02:10 2004  Minero Aoki  <aamine@loveruby.net>
43899         * ext/strscan/strscan.c: ScanError may be (wrongly) garbage
43900           collected. (thanks Gavin Sinclair)
43902         * ext/strscan/strscan.c: move ::ScanError to StringScanner::Error.
43903           ::ScanError is also defined for backward compatibility.
43905         * ext/strscan/strscan.c: #peep is obsolete, use #peek.
43907         * ext/strscan/strscan.c: #empty? is obsolete, use #eos?.
43909         * ext/strscan/strscan.c: #clear is obsolete, use #terminate.
43911         * ext/strscan/strscan.c: #getbyte is obsolete, use #get_byte.
43913 Tue Feb 17 12:12:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43915         * ext/extmk.rb (parse_args): delay expanding $(extout) until invoking
43916           make.
43918         * lib/mkmf.rb (CLEANLIBS): should remove files have specific
43919           extensions.
43921 Tue Feb 17 11:33:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43923         * lib/rss/rexmlparser.rb: REXML version may be 4 digits.
43925 Tue Feb 17 10:45:59 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43927         * ext/syck/rubyext.c (syck_emitter_end_object): takes only one arg.
43929 Tue Feb 17 07:48:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43931         * lib/rexml/encodings/SHIFT_JIS: wrong library name.
43933 Tue Feb 17 01:35:28 2004  Tanaka Akira  <akr@m17n.org>
43935         * eval.c (rb_eval): care that another thread replace NODE_DREGX_ONCE
43936           to NODE_LIT.  [ruby-dev:22920]
43938 Tue Feb 17 01:20:57 2004  Minero Aoki  <aamine@loveruby.net>
43940         * lib/fileutils.rb: new module FileUtils::DryRun.
43942 Mon Feb 16 23:28:14 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43944         * lib/csv.rb: document reduction.  [ruby-core:02429]
43946         * test/yaml/test_yaml.rb: added 0..1 test with "0".."1" on display.
43947           it should be defined that the specification about what kind of Range
43948           is supported in ruby's custom type in YAML.
43950 Mon Feb 16 22:22:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43952         * lib/generator.rb: corrected doc format
43954         * lib/rinda/rinda.rb: added documentation (from Hugh Sasse)
43956         * lib/rinda/tuplespace.rb: ditto
43958           [Note: rinda files actually committed Wed Feb 18 07:27:00 2004]
43960 Mon Feb 16 20:28:52 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43962         * bcc32/Makefile.sub: show more warnings. (refering to mingw)
43964         * bcc32/setup.mak: ditto.
43966 Mon Feb 16 18:35:58 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43968         * win32/Makefile.sub (config.status): should create *.pdb on ext/,
43969           not .ext/.
43971         * win32/Makefile.sub (config.status): convert the name of import
43972           library.
43974         * lib/mkmf.rb (create_makefile): now don't need to remove
43975           $(TARGET).lib.
43977 Mon Feb 16 15:45:22 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43979         * configure.in: check functions, fork spawnv.
43981         * io.c (rb_io_s_popen): accept argv not only single command line.
43983         * process.c (rb_proc_exec_n): export.
43985         * process.c (rb_check_argv): check if arguments are safe to invoke.
43987         * process.c (rb_fork): retry to fork.
43989         * process.c (rb_spawn): spawn child process asynchronously.
43991         * process.c (rb_f_system): raise an exception if the command could not
43992           execute.
43994         * win32/win32.c (rb_w32_argv_size): count necessary size for joined
43995           arguments.
43997         * win32/win32.c (rb_w32_join_argv): join arguments with quoting.
43999         * win32/win32.c (rb_w32_pipe_exec, rb_w32_spawn, rb_w32_aspawn):
44000           accept program name adding to command line.
44002 Mon Feb 16 15:18:33 2004  Minero Aoki  <aamine@loveruby.net>
44004         * lib/racc/parser.rb: add note for Racc full package.
44006 Mon Feb 16 15:13:01 2004  Minero Aoki  <aamine@loveruby.net>
44008         * ext/racc/cparse/README: new file.
44010         * ext/racc/cparse/MANIFEST: add README.
44012 Mon Feb 16 12:29:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44014         * ext/iconv/iconv.c (iconv_s_list): new method Iconv.list
44015           (libiconv only).
44017 Mon Feb 16 10:29:52 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
44019         * dir.c (CompareImpl): File.fnmatch and Dir.glob get better performance
44020           in Win32. This is achived by calling downcase() for single-byte
44021           characters. (CharLower() is slower than downcase())
44023 Mon Feb 16 02:14:29 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
44025         * bcc32/Makefile.sub: should warn suspicious pointer conversion.
44027         * bcc32/setup.mak: ditto.
44029 Sun Feb 15 20:56:22 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
44031         * dir.c (push_braces): remove wrong const. [ruby-dev:22891]
44033 Sun Feb 15 20:41:15 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44035         * sample/soap/calc/httpd.rb, sample/soap/exchange/httpd.rb,
44036           sample/soap/sampleStruct/httpd.rb, sample/wsdl/googleSearch/httpd.rb:
44037           use soap/property instead of getopts for configuring DocumentRoot
44038           and port# of httpd.  see samplehttpd.conf below.
44040         * sample/soap/calc/samplehttpd.conf,
44041           sample/soap/exchange/samplehttpd.conf,
44042           sample/soap/sampleStruct/samplehttpd.conf,
44043           sample/wsdl/googleSearch/samplehttpd.conf: added.
44045 Sun Feb 15 19:13:33 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
44047         * lib/rinda/tuplespace.rb: read(tpl,0), raise RequestExpiredError
44048           if not found.
44050 Sun Feb 15 15:48:57 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
44052         * ext/win32ole/win32ole.c: add IDispatch wrapper in val2variant.
44053           Thanks, arton.
44055 Sun Feb 15 15:23:29 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
44057         * ruby.h, dir.c (rb_glob): add const.
44059 Sun Feb 15 01:46:05 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44061         * lib/mkmf.rb: absolute path of ruby is assigned to $(RUBY).
44062           [ruby-dev:22870]
44064 Sat Feb 14 23:59:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44066         * mkconfig.rb: use fileutils.rb instead of ftools.rb.
44068         * bcc32/Makefile.sub, win32/Makefile.sub (config.h): define
44069           STACK_GROW_DIRECTION.
44071         * bcc32/Makefile.sub (config.h): add newer checks.
44073         * wince/Makefile.sub (config.h): define NEED_IO_SEEK_BETWEEN_RW.
44075 Sat Feb 14 23:26:27 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44077         * lib/un.rb: use OptionParser instead of getopts.
44079 Sat Feb 14 11:28:14 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
44081         * sample/drb/*: import lib/drb/sample
44083 Sat Feb 14 11:14:12 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
44085         * lib/drb/drb.rb: add pretty_print, thanks gotoken.
44087 Fri Feb 13 21:51:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
44089         * lib/fileutils.rb: slighly improved documentation (sync with 1.8)
44091 Fri Feb 13 19:57:01 2004  Kouhei Sutou  <kou@cozmixng.org>
44093         * test/rss/test_trackback.rb: added tests for TrackBack with RSS
44094           2.0.
44096         * test/rss/common.rb: added methods make RSS 2.0.
44098         * lib/rss/trackback.rb: TrackBack API is decided.
44100         * lib/rss/rss.rb: RSS::VERSION 0.0.7 -> 0.0.8.
44102         * lib/rss/parser.rb, lib/rss/rss.rb: replaced $DEBUG by RSS::DEBUG.
44104         * lib/rss/2.0.rb: removed RSS 2.0 URI. Because RSS 2.0 doesn't
44105           have URI.
44107 Fri Feb 13 14:41:00 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44109         * ext/tk/lib/tk.rb: en-bugged at last commit (Feb 11 23:24:22 2004)
44111 Fri Feb 13 12:26:37 2004  Minero Aoki  <aamine@loveruby.net>
44113         * test/fileutils/test_fileutils.rb: rescue SystemCallError instead
44114           of EINVAL.  File.link may raise EACCES on network file systems.
44116 Fri Feb 13 05:18:58 2004  Minero Aoki  <aamine@loveruby.net>
44118         * test/fileutils/test_fileutils.rb: File.link raises EINVAL on
44119           Win9x. [ruby-dev:22713]
44121 Thu Feb 12 21:49:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
44123         * lib/ftools.rb: documented
44125 Thu Feb 12 21:19:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
44127         * lib/base64.rb: added and tidied documentation
44129 Thu Feb 12 20:45:01 2004  Minero Aoki  <aamine@loveruby.net>
44131         * lib/net/protocol.rb (WriteAdapater#puts): must append "\n" to
44132           the string, don't prepend. (ruby-bugs:PR#1280)
44134 Thu Feb 12 20:31:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44136         * lib/mkmf.rb (create_tmpsrc): cpp32 of Borland C++ ignores #error
44137           directives in DOS line-ending files at all.
44139 Thu Feb 12 15:23:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44141         * parse.y (rparen): ignore preceding newlines to right parentheses.
44142           (ruby-bugs:PR#1221) [ruby-dev:22858]
44144 Thu Feb 12 14:17:43 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44146         * configure.in: set ac_cv_func_link to yes to enable link() on MinGW.
44147           [ruby-dev:22241]
44149 Thu Feb 12 13:32:49 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44151         * win32/win32.c (link): raise NotImplementedError on Win9X.
44152           contributed by Tietew. [ruby-dev:22713]
44154         * win32/win32.c, win32/win32.h (link): add const.
44156 Thu Feb 12 09:56:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44158         * ext/tk/lib/tk.rb (TkComm::tk_split_list): suppress a warning.
44160 Thu Feb 12 02:23:56 2004  Tanaka Akira  <akr@m17n.org>
44162         * lib/pathname.rb: use assert_raise instead of assert_raises.
44164         * lib/pp.rb: ditto.
44166         * lib/time.rb: ditto.
44168         * lib/tsort.rb: ditto.
44169           use TSortHash and TSortArray instead of Hash and Array in test.
44171 Wed Feb 11 23:24:22 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44173         * ext/tk/lib/tk.rb: properly treat a Tcl/Tk's string with escaping
44174           special characters.
44176 Tue Feb 10 20:49:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44178         * eval.c (method_proc): return bound Proc object.  [ruby-dev:22854]
44180         * eval.c (rb_mod_define_method): bind method body itself for Method
44181           object.
44183         * node.h (NODE_DMETHOD): deprecated.
44185         * object.c (rb_class_inherited_p): export.
44187 Tue Feb 10 16:43:50 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44189         * eval.c (umethod_bind): purge unused check.  [ruby-dev:22850]
44191 Tue Feb 10 14:33:08 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44193         * string.c (rb_str_match): raise TypeError when both arguments are
44194           strings. [ruby-dev:22851]
44196         * string.c (rb_str_match2): removed.
44198         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub,
44199           wince/Makefile.sub (string.c): now not depend on version.h.
44201 Mon Feb  9 17:46:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44203         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub, configure.in,
44204           runruby.rb: run rdoc, test and so on with compiled extension
44205           libraries.  [ruby-dev:22688]
44207         * ext/extmk.rb, lib/mkmf.rb: make extension libraries in separated
44208           directory, similar to the actual directory structure.
44210         * lib/fileutils.rb (FileUtils.copy_file): use the mode of the original
44211           file to create new file.
44213         * lib/rdoc/ri/ri_paths.rb (RI::Paths::SYSDIR): get rid of unexpected
44214           influence by envirionment variable.
44216         * bcc32/configure.bat, win32/configure.bat: add install-doc options.
44218         * win32/win32.c, win32/win32.h (rb_w32_fstat): fix Borland C runtime
44219           bug which returns wrong mode.  [ruby-dev:22846]
44221 Mon Feb  9 16:30:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44223         * process.c (detach_process_watcher): return the last status.
44224           [ruby-dev:22841]
44226 Sun Feb  8 16:46:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44228         * lib/pp.rb (PP::PPMethods::object_address_group): suppress negative
44229           sign for higher heap areas.
44231 Sun Feb  8 16:18:27 2004  akira yamada  <akira@ruby-lang.org>
44233         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_range_cycle):
44234           added tests.
44236 Sun Feb  8 15:51:57 2004  akira yamada  <akira@ruby-lang.org>
44238         * test/ruby/test_file.rb (TestFile::test_fnmatch): added tests for
44239           File.fnmatch. [ruby-dev:22815][ruby-dev:22819]
44241 Sun Feb  8 15:41:45 2004  akira yamada  <akira@ruby-lang.org>
44243         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_range_cycle):
44244           added tests. [ruby-core:02306] [ruby-core:02311]
44246 Sun Feb  8 14:24:35 2004  Minero Aoki  <aamine@loveruby.net>
44248         * lib/net/http.rb (HTTP#request): should not overwrite Connection
44249           header. (ruby-bugs:PR#1274)
44251 Sun Feb  8 10:11:21 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
44253         * dir.c (glob_helper): Dir.glob('**/') did not work. [ruby-dev:22832]
44255 Sun Feb  8 00:29:26 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
44257         * dir.c (fnmatch): File.fnmatch('*?', 'a') should return true.
44258           [ruby-dev:22815]
44260         * dir.c (fnmatch): File.fnmatch('\[1\]' , '[1]') should return true.
44261           [ruby-dev:22819]
44263         * dir.c: Did some styles (no change to behavior)
44265 Sat Feb  7 19:56:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44267         * lib/irb/init.rb (IRB.rc_files): yield possible rc file names.
44269         * lib/irb/input-method.rb (IRB::ReadlineInputMethod::initialize):
44270           load and save history automatically.  [ruby-core:02352]
44272 Fri Feb  6 22:48:16 2004  Dave Thomas  <dave@pragprog.com>
44274         * lib/rdoc/generators/html_generator.rb (gen_url): Support
44275           https in RDoc hyperlinks
44277 Fri Feb  6 22:41:22 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44279         * lib/pp.rb (PPInspectTest#test_to_s_with_iv): rollback the previous
44280           commit.  [ruby-dev:22813]
44282 Fri Feb  6 22:22:50 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44284         * lib/pp.rb (PPInspectTest#test_to_s_with_iv): remove instance
44285           variable which is defined in the test.
44287 Fri Feb  6 18:54:18 2004  akira yamada  <akira@ruby-lang.org>
44289         * test/ruby/test_proc.rb (TestProc::test_eq): added a
44290           test.  [ruby-dev:22599]
44292 Fri Feb  6 18:26:00 2004  akira yamada  <akira@ruby-lang.org>
44294         * test/ruby/test_proc.rb (TestProc::test_eq): added tests for
44295           Proc#==.  [ruby-dev:22592], [ruby-dev:22601]
44297 Fri Feb  6 10:12:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44299         * ext/socket/socket.c (bsock_do_not_reverse_lookup): control reverse
44300           lookup for every instance.  [ruby-core:02346]
44302 Fri Feb  6 09:15:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44304         * lib/irb/extend-command.rb: add irb_help command.  [ruby-talk:91610]
44306         * lib/irb/cmd/help.rb (IRB::ExtendCommand::Help): show RDoc.
44308 Fri Feb  6 00:48:37 2004  Tanaka Akira  <akr@m17n.org>
44310         * lib/prettyprint.rb (PrettyPrint#first?): obsoleted.
44312 Thu Feb  5 23:56:55 2004  Tanaka Akira  <akr@m17n.org>
44314         * lib/prettyprint.rb (PrettyPrint#seplist): added.
44316         * lib/pp.rb (PPMethods#pp_object): use seplist.
44317           (PPMethods#pp_hash): ditto.
44318           (Array#pretty_print): ditto.
44319           (Struct#pretty_print): ditto.
44320           (MatchData#pretty_print): ditto.
44322         * lib/set.rb (Set#pretty_print): use seplist.
44324 Wed Feb  4 22:39:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44326         * file.c (rb_stat_mode): should not sign-expand, so backout.
44328 Wed Feb  4 02:12:06 2004  Tanaka Akira  <akr@m17n.org>
44330         * file.c (test_l): fix wrong method name in document.
44331           (test_S): ditto.
44332           (test_b): ditto.
44333           (test_c): ditto.
44334           (test_suid): ditto.
44335           (test_sgid): ditto.
44336           (test_sticky): ditto.
44338 Tue Feb  3 22:36:25 2004  Kouhei Sutou  <kou@cozmixng.org>
44340         * lib/rss/2.0.rb, lib/rss/content.rb, lib/rss/dublincore.rb,
44341           lib/rss/rss.rb, lib/rss/syndication.rb: removed warnings.
44343         * lib/rss/converter.rb: removed handling load error of nkf.
44345         * test/rss/test_syndication.rb, test/rss/test_trackback.rb,
44346           test/rss/test_dublincore.rb, test/rss/test_content.rb: replaced
44347           'require "rss/parser"' by 'require "rss/1.0"'.
44349         * test/rss/test_parser.rb, test/rss/test_accessor.rb: removed
44350           'require "rss/parser"'.
44352 Tue Feb  3 11:23:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44354         * parse.y (reduce_nodes): remove tail returns.  [ruby-talk:90934]
44356 Tue Feb  3 08:04:57 2004  Tanaka Akira  <akr@m17n.org>
44358         * lib/pp.rb (Struct#pretty_print_cycle): follow 1.8 style.
44360 Mon Feb  2 22:06:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44362         * parse.y (block_append, new_evstr, void_expr0): remove no longer used
44363           labels.
44365 Mon Feb  2 18:45:50 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44367         * dln.c (dln_load): don't specify RTLD_GLOBAL on Interix,
44368           because it caused SEGV when running runner.rb.
44370 Mon Feb  2 01:54:00 2004  Tanaka Akira  <akr@m17n.org>
44372         * lib/pp.rb (Struct#pretty_print): make it 1.8 style.
44373           (Numeric#pretty_print, FalseClass#pretty_print)
44374           (TrueClass#pretty_print, Module#pretty_print): fix pp for objects
44375           with instance variables.  [ruby-talk:91157]
44377         * lib/open-uri.rb (URI::Generic#find_proxy): return nil on loopback
44378           address.
44380         * lib/resolv-replace.rb (BasicSocket#send): don't replace because
44381           it has no hostname argument.
44382           (IPSocket.getaddress): raise SocketError instead of
44383           Resolv::ResolvError for errors.
44384           (TCPSocket#initialize, UDPSocket#bind, UDPSocket#connect)
44385           (SOCKSSocket#initialize): use IPSocket.getaddress instead of
44386           Resolv.getaddress.
44387           (UDPSocket#send): recognize 3 arguments form.  try all addresses on
44388           4 arguments form.
44390 Sun Feb  1 23:00:00 2004  Shigeo Kobayashi  <shigek@ruby-lang.org>
44392         * ext/bigdecimal.c: Bug in BigDecimal("1e#{n}").add BigDecimal('.5'),n)
44393           reported and fixed by Javier Goizueta.
44395 Sun Feb  1 18:21:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
44397           From ruby_1_8 branch:
44398         * lib/test/unit.rb: rearranged documentation for RDoc's sake.
44399         * lib/matrix.rb: improved documentation.
44400         * lib/net/http.rb: slight documentation formatting improvement.
44402 Sun Feb  1 05:30:06 2004  Tanaka Akira  <akr@m17n.org>
44404         * lib/open-uri.rb (URI::Generic#find_proxy): warn HTTP_PROXY.
44405          raise an errror on non-http proxy URI.
44406          (OpenURI::Buffer#<<): make a tempfile binmode.  [ruby-talk:90793]
44408 Sun Feb  1 00:57:41 2004  Kouhei Sutou  <kou@cozmixng.org>
44410         * lib/rss/parser.rb (RSS::Parser): added @@default_parser. Used
44411           XML parser became selectable.
44412         * test/rss/test_parser.rb: added tests for
44413           RSS::Parser.default_parser.
44415 Sat Jan 31 02:28:15 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44417         * configure.in (RPATHFLAG): set to -Wl,-R like NetBSD on Interix.
44419 Sat Jan 31 01:09:41 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44421         * lib/logger.rb: leading 0 padding of timestamp usec part.
44423 Fri Jan 30 18:53:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44425         * re.c (KR_REHASH): wrong hash value on sizeof(long) > sizeof(int).
44427 Thu Jan 29 23:11:57 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44429         * configure.in (DLEXT2): removed.  Ruby does not treat
44430           ".dll" as a extention library anymore.
44432         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub (DLEXT2):
44433           ditto.
44435         * util.c (mblen): fix overrun.  [ruby-dev:22672]
44437 Thu Jan 29 22:41:53 2004  Dave Thomas  <dave@pragprog.com>
44439         * lib/rdoc/generators/html_generator.rb: Allow 'link:' in Tidylinks.
44440           THis means you can write "see f1[link:files/f1_rb.html]".
44442 Thu Jan 29 22:24:47 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44444         * sample/openssl/gen_csr.rb: follow OpenSSL::X509::Name change.
44445           ASN.1 type of subject DN elements were wrong.
44447 Thu Jan 29 22:19:51 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44449         * test/*: remove $: trick.  [ruby-dev:22763]  use test/runner.rb to
44450           run test.
44452 Thu Jan 29 19:28:16 2004  Minero Aoki  <aamine@loveruby.net>
44454         * lib/net/http.rb (Request#initialize): reject only when a path is
44455           empty. [ruby-dev:22771]
44457 Thu Jan 29 18:54:08 2004  H.Yamamoto  <ocean@m2.ccsnet.ne.jp>
44459         * dir.c (glob_helper): infinite loop bug in win32 code.
44460           [ruby-dev:22770]
44462 Thu Jan 29 17:03:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44464         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
44465           [ruby-dev:22761]
44467 Thu Jan 29 11:32:14 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44469         * test/rss/test_*: do $: trick while searching a module in the current
44470           directory.
44472         * test/xsd/test_xmlschemaparser.rb, test/wsdl/test_emptycomplextype.rb,
44473           test/soap/helloworld/test_helloworld.rb,
44474           test/soap/calc/{test_calc.rb,test_calc2.rb}: do File.expand_path
44475           before using __FILE__.
44477         * test/yaml/test_yaml.rb: assert_equals -> assert_equal.
44479 Thu Jan 29 01:56:02 2004  why the lucky stiff  <why@ruby-lang.org>
44481         * ext/syck/rubyext.c: usec round-tripping skew. [ruby-core:2305]
44483         * lib/yaml/rubytypes.rb: character Range now round-trips. [ruby-core:2306]
44485         * test/yaml/test_yaml.rb: add Time and Range tests.
44487 Thu Jan 29 00:00:46 2004  Kouhei Sutou  <kou@cozmixng.org>
44489         * lib/rss: rss/parser.rb is always required.
44491 Wed Jan 28 15:09:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44493         * test/rss/*.rb: remove "test/" prefix.
44495 Wed Jan 28 13:07:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44497         * ext/iconv/extconf.rb: include iconv.h for libiconv.  [ruby-dev:22715]
44499 Wed Jan 28 12:43:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44501         * lib/rss: rss library imported. [ruby-dev:22726]
44503 Wed Jan 28 04:29:41 2004  Eric Schwartz  <emschwar@fc.hp.com>
44505         * lib/cgi/session.rb: use LOCK_SH to read, and a few other
44506           improvements.  [ruby-core:02328]
44508 Tue Jan 27 15:00:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44510         * misc/ruby-mode.el: better support for general delimited
44511           strings.  [ruby-dev:22695]
44513 Tue Jan 27 11:04:40 2004  FUKUMOTO Atsushi  <fukumoto@nospam.imasy.or.jp>
44515         * ext/socket/socket.c (s_recvfrom): sending length should be an
44516           invariant while retrying on EAGAIN.  [ruby-talk:89962]
44518 Tue Jan 27 10:31:28 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44520         * ext/win32ole/win32ole.c (set_argv): fix condition.
44522 Tue Jan 27 02:26:31 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44524         * lib/webrick/httputils.rb (WEBrick:HTTPUtils::parse_header):
44525           refine regex for header-name.
44527 Mon Jan 26 22:53:04 2004  Dave Thomas  <dave@pragprog.com>
44529         * io.c: Remove documentation references to $defout.
44531 Mon Jan 26 14:41:46 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44533         * lib/weakref.rb (WeakRef::initialize): set up @__id before
44534           calling "super".
44536         * lib/delegate.rb (Delegator::initialize): preserve
44537           singleton_method_added method [ruby-dev:22685]
44539         * lib/delegate.rb (Delegator::initialize): use Kernel::raise
44540           instead of mere raise.  [ruby-dev:22681]
44542 Mon Jan 26 12:45:23 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44544         * ext/tcltklib/tcltklib.c: define CONST84 when TCL_MAJOR_VERSION == 7
44546 Mon Jan 26 11:30:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44548         * ext/extmk.rb: Makefiles should depend on also rbconfig.rb.
44549           (ruby-bugs:PR#1256)
44551         * ext/win32ole/win32ole.c (set_argv): set real arguments to
44552           WIN32OLE::ARGV.  [ruby-list:39073]
44554 Sun Jan 25 18:25:26 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44556         * ext/openssl/ossl_x509name.c (ossl_x509name_add_entry): third
44557           argument become optional.
44559         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): ditto.
44561         * ext/openssl/ossl_x509name.c (Init_x509name): emailAddress and
44562           domainComponent should be IA5String.
44564 Sun Jan 25 01:45:38 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44566         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): support
44567           virtual host.
44569         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#virtual_host): add
44570           new method to register virtual hosting server.
44572         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server): add
44573           new method to lookup virtual hosting server.
44575 Sat Jan 24 13:06:26 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44577         * ext/openssl/ossl_x509hame.c (ossl_x509name_initialize): change
44578           second argument. it expected to be a Hash not an Integer.
44580         * ext/openssl/ossl_x509name.c (ossl_x509name_add_entry): add new
44581           function for OpenSSL::X509::Name#add_entry.
44583         * ext/openssl/ossl_x509name.c (Init_ossl_x509name): add constants
44584           OpenSSL::X509::Name::DEFAULT_OBJECT_TYPE and OBJECT_TYPE_TEMPLATE.
44586         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name#initialize):
44587           second argument takes OBJECT_TYPE_TEMPLATE by default.
44589 Fri Jan 23 02:26:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44591         * pack.c (num2i32): pack should not raise RangeError.
44592           [ruby-dev:22654]
44594         * pack.c (pack_pack): do not auto convert nil to zero.
44596 Thu Jan 22 22:54:53 2004  Shugo Maeda  <shugo@ruby-lang.org>
44598         * lib/net/imap.rb (BEG_REGEXP): allow 8-bit characters in quoted
44599           strings for Novell GroupWise Internet Agent.
44601         * lib/net/imap.rb (DATA_REGEXP): ditto.
44603 Thu Jan 22 18:35:49 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44605         * lib/e2mmap.rb (VERSION): remove unnecessary version checking.
44607 Thu Jan 22 16:21:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44609         * parse.y (string_content): reset lexical states at the beginning of
44610           string contents.  [ruby-list:39061]
44612 Thu Jan 22 08:08:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44614         * parse.y (opt_rescue): use NODE_ERRINFO() instead of
44615           NODE_GVAR("$!"), to avoid confusion from variable aliasing.
44616           [ruby-talk:90074]
44618         * version.c (Init_version): remove obsolete constants VERSION
44619           etc.  [ruby-dev:22643]
44621 Thu Jan 22 01:46:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44623         * parse.y (newline_node): do not use NODE_NEWLINE node anymore,
44624           use NEWLINE flag instead.
44626 Thu Jan 22 01:12:12 2004  Siena.  <siena@faculty.chiba-u.jp>
44628         * missing/os2.c (chdir, getcwd):
44629           use _chdir2 and _getcwd2 supporting multiple drives in OS/2 with EMX.
44631 Thu Jan 22 00:33:52 2004  Siena.  <siena@faculty.chiba-u.jp>
44633         * configure.in: check availability of link(). [ruby-dev:22237]
44634         * file.c (rb_file_s_link): raise an exception when link() is unavailable.
44635         * missing/os2.c (link): removed. File#link isn't supported.
44636         * bcc32/Makefile.sub: define HAVE_LINK to enable link(). [ruby-dev:22241]
44637         * win32/Makefile.sub: ditto.
44639 Thu Jan 22 00:26:25 2004  Siena.  <siena@faculty.chiba-u.jp>
44641         * ChangeLog: typo: RUBY_MBCHAR_MAX was RUBY_MBCHAR_MAXSIZE.
44643 Thu Jan 22 00:12:51 2004  Siena.  <siena@faculty.chiba-u.jp>
44645         * defines.h: define RUBY_MBCHAR_MAX instead of MB_CUR_MAX.
44646         * dir.c (Next, emx_mblen): use RUBY_MBCHAR_MAX for mblen().
44647         * file.c (CharNext): ditto.
44648         * ruby.c (translate_char): ditto.
44649         * util.c (__crt0_glob_function): ditto.
44651 Thu Jan 22 00:10:01 2004  Dave Thomas  <dave@pragprog.com>
44653         * lib/base64.rb: :nodoc: the Deprecated module
44655 Wed Jan 21 23:52:39 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44657         * configure.in: Interix(SFU) support.
44659 Wed Jan 21 23:03:45 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
44661         * lib/drb/drb.rb: remove O_NONBLOCK, thanks \ay
44662         * lib/drb/extserv.rb: typo
44664 Wed Jan 21 17:57:56 2004  Shugo Maeda  <shugo@ruby-lang.org>
44666         * lib/net/imap.rb (envelope): allow NIL.
44667         * lib/net/imap.rb (body): ditto.
44668         * lib/net/imap.rb (number): ditto.
44669         * lib/net/imap.rb (ensure_nz_number): show a detailed error
44670           message.
44672 Wed Jan 21 16:44:15 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44674         * lib/mkmf.rb (merge_libs): squeeze successive same libraries.
44675           [ruby-dev:22652]
44677 Wed Jan 21 16:10:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44679         * lib/base64.rb: enclosed in a module.  [ruby-core:02285]
44681 Wed Jan 21 16:01:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44683         * ext/digest/rmd160/extconf.rb: have_library appends found library.
44685 Wed Jan 21 11:36:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44687         * ext/socket/socket.c (sock_gethostbyname): returns host if
44688           ai_canonname is NULL. (ruby-bugs PR#1243)
44690         * parse.y (block_append): update nd_end for "real" head node.
44691           [ruby-list:39058]
44693 Tue Jan 20 14:48:28 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44695         * ext/openssl/extconf.rb: should check <openssl/conf_api.h> instead
44696           of OPENSSL_VERSION_NUMBER. [ruby-list:39056]
44698 Tue Jan 20 14:43:17 2004  Dave Thomas  <dave@pragprog.com>
44700         * lib/base64.rb: Add RDoc
44702 Tue Jan 20 14:25:51 2004  Dave Thomas  <dave@pragprog.com>
44704         * lib/abbrev.rb: Add RDoc
44706 Tue Jan 20 13:22:39 2004  Dave Thomas  <dave@pragprog.com>
44708         * lib/rdoc/generators/html_generator.rb: Document aliases at
44709           top-most level.
44711         * lib/English.rb: Document English.rb.
44713 Tue Jan 20 04:41:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44715         * test/ruby/test_marshal.rb (MarshalTestLib::test_exception): test
44716           for [ruby-dev:22604].
44718         * test/ruby/test_marshal.rb (MarshalTestLibtest_singleton): test
44719           for [ruby-dev:22588].
44721 Tue Jan 20 02:38:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44723         * marshal.c (w_class): should not dump singleton class.
44724           [ruby-dev:22631]
44726 Tue Jan 20 02:49:22 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44728         * ext/openssl/extconf.rb: add check for OpenSSL version.
44729           [ruby-list:39054]
44731 Mon Jan 19 23:56:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44733         * error.c (name_err_mesg_to_str): inverted condition for result of
44734           inspection.  [ruby-dev:22628]
44736 Mon Jan 19 22:24:28 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44738         * sample/exyacc.rb: escape '}' to avoid warning.
44740         * lib/rdoc/parsers/parse_c.rb: escape '{' and '}' to avoid warnings.
44742 Mon Jan 19 21:28:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44744         * ext/digest/defs.h, win32/win3.c, win32/win32.h, file.c: remove
44745           useless casts for Borland C.
44747 Mon Jan 19 17:39:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44749         * error.c (NameError::message): internal use only.
44751         * eval.c (rb_method_missing): use hidden constant.
44753 Mon Jan 19 16:30:53 2004  akira yamada  <akira@ruby-lang.org>
44755         * test/ruby/test_time.rb: added tests for [ruby-dev:22614] and
44756           [ruby-dev:22617].
44758 Mon Jan 19 13:09:21 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44760         * ext/extmk.rb, win32/Makefile.sub, win32/configure.bat,
44761           win32/setup.mak: --with-static-linked-ext support on mswin32.
44763 Mon Jan 19 06:49:07 2004  Tadayoshi Funaba  <tadf@dotrb.org>
44765         * lib/date.rb: zone was wrong when it was behind UTC.
44766           Thanks Mark J. Reed.
44768         * lib/date/format.rb: %z is now always replaced by four digits
44769           with a leading plus or minus sign.
44771         * sample/cal.rb: added a class, anyway.
44773 Mon Jan 19 01:08:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44775         * class.c, error.c, eval.c, intern.h, object.c, variable.c:
44776           do not set path if it is a singleton class.  [ruby-dev:22588]
44778         * lib/cgi.rb (CGI::QueryExtension): give extended string, not a
44779           delegater object.
44781 Sun Jan 18 23:59:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44783         * ext/iconv/charset_alias.rb: prefer us_EN locale encodings or
44784           former.  [ruby-dev:22609]
44786         * ext/iconv/iconv.c (iconv_create): raise InvalidEncoding
44787           exception when EINVAL.
44789 Sun Jan 18 23:16:34 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44791         * class.c, error.c, file.c, io.c, numeric.c, object.c, re.c, struct.c,
44792           time.c: marked init_copy functions nodoc.
44794 Sun Jan 18 20:47:35 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44796         * ruby.c: use translate_char() on Cygwin.
44798 Sun Jan 18 20:00:16 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44800         * lib/soap/wsdlDriver.rb, lib/wsdl/soap/operation.rb: add support of
44801           "parts" attribute of soap:body element in WSDL.
44803         * lib/wsdl/xmlSchema/schema.rb: friendly warning message for
44804           simpleType element which is not supported for now.
44806         * test/wsdl/soap/{soapbodyparts.wsdl,test_soapbodyparts.wsdl}: new
44807           files.
44809 Sun Jan 18 16:46:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44811         * time.c (time_overflow_p): should return results.  [ruby-dev:22614]
44813 Sun Jan 18 12:07:24 2004  Siena.  <siena@faculty.chiba-u.jp>
44815         * test/ruby/test_time.rb: new test case to test Time#[+-].
44817         * time.c (time_plus, time_minus): fix RangeError for a negative
44818           argument in environments whose time_t is unsigned. [ruby-dev:22608]
44820 Sun Jan 18 02:33:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44822         * defines.h (_WIN32): undef _WIN32 on Cygwin before defining DOSISH.
44824 Sun Jan 18 00:23:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44826         * marshal.c (class2path): check anonymous class/module before
44827           checking referable, and allow singleton classes.
44829 Sat Jan 17 23:58:51 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44831         * error.c (NameError::Message): new class for lazy evaluation of
44832           message to ensure replaced before marshalling.  [ruby-dev:22604]
44834         * eval.c (rb_method_missing): use NameError::Message.
44836 Sat Jan 17 21:49:50 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44838         * lib/time.rb (test_rfc2822, test_rfc3339, test_encode_xmlschema):
44839           should not expect that all platforms handle negative time_t value.
44841 Fri Jan 16 23:53:09 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44843         * eval.c (proc_eq): compare also arguments and environment
44844           (including local variables).  [ruby-dev:22590]
44846 Fri Jan 16 14:33:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44848         * marshal.c (class2path): get class path and check referable.
44849           [ruby-dev:22588]
44851 Thu Jan 15 12:58:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44853         * io.c (argf_read): do not append EOF.  (ruby-bugs-ja:PR#585)
44855         * io.c (rb_io_fwrite): ad-hockery hack to get rid of HP-UX stdio
44856           weird behavior.  [ruby-dev:22424]
44858 Wed Jan 14 21:13:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44860         * test/inlinetest.rb (InlineTest::eval_part): eval under the top
44861           level environment.
44863 Wed Jan 14 17:54:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44865         * test/inlinetest.rb (InlineTest::loadtest): require instead of
44866           load, to get rid of multiple loading.
44868 Wed Jan 14 13:30:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44870         * ext/iconv/extconf.rb: wrapper iconv.rb is dependent on platform.
44872 Wed Jan 14 09:32:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44874         * MANIFEST: add test/net/test_httpheader.rb. (commit miss?)
44876 Wed Jan 14 00:58:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44878         * eval.c (Init_Proc): move SystemStackError from under
44879           StandardError to Exception.  [ruby-talk:89782]
44881 Tue Jan 13 18:03:02 2004  Ian Macdonald  <ian@caliban.org>
44883         * file.c (rb_stat_wr, rb_stat_ww): New functions
44884           implementing new methods (File::Stat#world_readable?,
44885           File::Stat#world_writable?).
44887 Tue Jan 13 16:53:25 2004  why the lucky stiff  <why@ruby-lang.org>
44889         * ext/syck/rubyext.c: omission of Date library code caused
44890           test suite failure. [ruby-core:2251]
44892 Tue Jan 13 16:50:03 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44894         * ext/tk/lib/tk.rb: use $0 as the default application class name.
44896 Tue Jan 13 14:48:00 2004  Ian Macdonald  <ian@caliban.org>
44898         * lib/pathname.rb: New methods (Pathname#world_readable?,
44899           Pathname#world_writable?).
44901 Tue Jan 13 14:48:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44903         * parse.y (primary): allow no "when" case. [ruby-dev:22578]
44905         * ruby.h (rb_class_of): reduce branch. [ruby-dev:22577]
44907         * ruby.h (rb_type): ditto.
44909 Tue Jan 13 14:26:59 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
44911         * lib/test/unit/ui/testrunnerutilities.rb (TestRunnerUtilities):
44912           moved run method which allows output level.  [ruby-dev:22554]
44914 Tue Jan 13 13:04:24 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44916         * test/test_*.rb: Pathname#parent -> Pathname#dirname.
44918 Tue Jan 13 11:38:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44920         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_spec_type_{int,float}):
44921           fix syntax error.
44923 Tue Jan 13 07:52:40 2004  why the lucky stiff  <why@ruby-lang.org>
44925         * ext/syck/bytecode.c: turn off default implicit typing.
44927         * ext/syck/implicit.c: detect base60 integers.
44929         * ext/syck/rubyext.c: handle base60, as well as hex and octal
44930           with commas.  implicit typing of ruby symbols.
44932         * test/yaml/test_yaml.rb: add test.
44934 Tue Jan 13 04:29:52 2004  Dave Thomas  <dave@pragprog.com>
44936         * lib/rdoc/ri/ri_driver.rb (RiDriver::report_method_stuff):
44937           Show fully-qualified class names in class list.
44939 Tue Jan 13 01:24:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44941         * file.c (test_wr): Rdoc fix.  [ruby-core:02225]
44943 Tue Jan 13 01:04:37 2004  Dave Thomas  <dave@pragprog.com>
44945         * lib/rdoc/ri/ri_paths.rb (RI::Paths): First attempt at
44946           incorporating DESTDIR in the rdoc installation.
44948 Mon Jan 12 23:26:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44950         * parse.y (primary): fix position after FCALL.  [ruby-dev:22574]
44952 Mon Jan 12 18:00:11 2004  Ian Macdonald  <ian@caliban.org>
44954         * file.c (test_wr, test_ww): New functions implementing new
44955           methods (File::world_readable?, File::world_writable?).
44957         * file.c (S_IRUGO, S_IGUGO): New macros.
44959 Mon Jan 12 12:07:22 2004  Dave Thomas  <dave@pragprog.com>
44961         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods):
44962           Someone changed the "// in eval.c" comments to "/*...*/" style,
44963           so the parsing of the source file name broke.
44965         * object.c: Remove spurious space in TrueClass documentation.
44967         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body): Fix
44968           bad regexp: if the code before a documented method contained
44969           a comment that wasn't terminated by whitespace, that comment
44970           and all intervening code was included in the following
44971           method's documentation.
44973         * lib/rdoc/ri/ri_formatter.rb (RI::HtmlFormatter::break_to_newline):
44974           HTML formats need explicit line breaks.
44976 Mon Jan 12 02:24:07 2004  Dave Thomas  <dave@pragprog.com>
44978         * lib/rdoc/ri/ri_formatter.rb (RI::HtmlFormatter): Add HTML
44979           generation support to ri (Elliot Hughes)
44981 Sun Jan 11 23:54:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44983         * env.h (ruby_frame, ruby_scope, ruby_in_eval, ruby_class,
44984           ruby_dyna_vars): export.  [ruby-dev:22566]
44986 Sun Jan 11 02:35:53 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44988         * ext/socket/socket.c (make_hostent): a bug in brace position.
44990         * configure.in: install rdoc by default. if you do not want to
44991           install rdoc, specify --disable-install-doc.
44993 Sun Jan 11 02:07:47 2004  Dave Thomas  <dave@pragprog.com>
44995         * lib/rdoc/ri/ri_options.rb (RI::Options::OptionList::OptionList):
44996           Also accept command line options via the 'RI' environment variable.
44998 Sat Jan 10 21:27:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
45000         * eval.c (eval): need to add message delimiter. [ruby-dev:22561]
45002 Sat Jan 10 01:54:50 2004  Eric Sunshine  <sunshine@sunshineco.com>
45004         * defines.h (__NeXT__): Ensure that all standard S_IRUSR, S_IWGRP,
45005           S_IRWXO, etc. macros are defined since future code might require
45006           them (even though present code only requires a subset).
45008         * defines.h (__NeXT__): Bug fix: WORDS_BIGENDIAN was not being set
45009           correctly on Rhapsody when -arch compiler flag was used (via
45010           configure's --enable-fat-binary option).
45012 Sat Jan 10 23:01:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45014         * configure.in (LIBPATHFLAG, RPATHFLAG): enclose paths with single
45015           quotes.  [ruby-dev:22564]
45017         * lib/mkmf.rb (libpathflag): do not enclose with quotes always.
45019         * {bcc32,win32,wince}/Makefile.sub (LIBPATHFLAG): quoted.
45021 Sat Jan 10 22:46:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45023         * dir.c (dir_inspect): new method, Dir#inspect.  [ruby-dev:22562]
45025 Fri Jan  9 17:36:51 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
45027         * ext/socket/socket.c (make_hostent): getaddrinfo(3) on BSD do not
45028           fill ai_canonname if serv is not supplied.  (ruby-bugs PR#1243)
45030 Fri Jan  9 13:14:59 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45032         * lib/test/unit/collector/dir.rb: do not ignore exceptions(LoadError
45033           and SystemExitError) while loading a testcase.  smell of bug.
45035         * test/testunit/collector/test_dir.rb: add new test of the LoadError.
45037         * test/drb/{test_drbssl.rb,test_drbunix.rb}: do not define testcase if
45038           openssl is not installed.
45040         * test/testunit/collector/test_dir.rb: assert_raises -> assert_raise.
45042 Fri Jan  9 11:52:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45044         * rubysig.h: <errno.h> is needed to use errno which may be a macro.
45046 Fri Jan  9 11:20:24 2004  Siena.  <siena@faculty.chiba-u.jp>
45048         * ext/extmk.rb (extmake): should not reduce necessary libraries.
45049           [ruby-dev:22440]
45051         * lib/mkmf.rb (merge_libs): merge libraries according to
45052           dependency.
45054 Fri Jan  9 10:05:23 2004  Siena.  <siena@faculty.chiba-u.jp>
45056         * lib/mkmf.rb (libpathflag): use single quotes.  [ruby-dev:22440]
45058 Thu Jan  8 23:49:21 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
45060         * configure.in (RDOCTARGET): new macro.  if you want to install
45061           rdoc documentation, you need to run configure with
45062           --enable-install-doc.
45064 Thu Jan  8 21:17:43 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45066         * ext/openssl/ossl_pkey.c (ossl_pkey_to_der): removed; it returns
45067           public key only.
45069         * ext/openssl/ossl_pkey_dh.c (ossl_dh_to_der): new function for
45070           OpenSSL::PKey::DH#to_der.
45072         * ext/openssl/ossl_pkey_dsa.c (ossl_dsa_to_der): new function for
45073           OpenSSL::PKey::DSA#to_der.
45075         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_to_der): new function for
45076           OpenSSL::PKey::RSA#to_der.
45078 Thu Jan  8 18:25:29 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45080         * dir.c (glob_helper): should not recurse in exceptional status.
45082 Thu Jan  8 16:51:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45084         * test/wsdl/datetime/test_datetime.rb: fixed a stupid testcase which
45085           dumps "E" at month-end.
45087 Thu Jan  8 11:20:01 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
45089         * eval.c, object.c, process.c, re.c: don't use C++ style comments.
45091 Thu Jan  8 08:46:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45093         * ext/syck/rubyext.c (yaml_org_handler): lazy-load Date for
45094           static-ext.
45096 Thu Jan  8 07:06:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45098         * ext/extmk.rb: preserve order in Setup.  [ruby-dev:22503]
45100         * ext/extmk.rb: move dependent libraries just after depended
45101           libraries.
45103         * ext/digest/*/extconf.rb: depend on digest.
45105 Thu Jan  8 04:36:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45107         * lib/webrick/cgi.rb (WEBrick::CGI#initialize): should create
45108           @config[:Logger] if it was not given.
45110 Wed Jan  7 22:28:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45112         * dir.c (glob_helper): fix memory leak.
45114 Wed Jan  7 21:15:07 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45116         * sample/webrick/*: new files.
45118         * MANIFEST: add sample/webrick/*
45120 Wed Jan  7 20:51:51 2004  Minero Aoki  <aamine@loveruby.net>
45122         * test/net/test_httpheader.rb: new file.
45124         * MANIFEST: add test/net/test_httpheader.rb.
45126 Wed Jan  7 20:42:06 2004  Minero Aoki  <aamine@loveruby.net>
45128         * lib/net/http.rb (HTTPHeader#content_length): should return nil
45129           unless header exists. [ruby-dev:22519]
45131 Wed Jan  7 14:26:05 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45133         * ext/tk/lib/tk.rb (TkPanedWindow): use epath for embedded windows.
45135         * ext/tk/lib/tktext.rb: use epath for embedded windows.
45137         * ext/tk/lib/tkcanvas.rb: use epath for window items.
45139 Wed Jan  7 14:24:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45141         * lib/soap/{attachment.rb,mimemessage.rb}: added from soap4r/1.5.2.
45143 Wed Jan  7 13:00:18 2004  Dave Thomas  <dave@pragprog.com>
45145         * lib/rdoc/ri/ri_driver.rb: Fix problem where ri was
45146           being too eager to find matches of ambiguous method
45147           names (such as "ri Thread.join" would return both
45148           Thread.join and ThreadsWait.join)
45150 Wed Jan  7 12:35:41 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45152         * lib/debug.rb: revert command parse regexps.  [ruby-list:39014] by
45153           Shirai,Kaoru.
45155 Wed Jan  7 08:21:04 2004  Dave Thomas  <dave@pragprog.com>
45157         * lib/rdoc/parsers/parserfactory.rb: Check for shebang
45158           line in files that would otherwise be treated as
45159           plain text.
45161 Tue Jan  6 22:13:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
45163         * eval.c (rb_mod_modfunc): should break if m has no super class.
45164           [ruby-dev:22498]
45166 Tue Jan  6 21:51:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45168         * io.c (fptr_finalize): should save errno just after failure.
45169           [ruby-dev:22492]
45171 Tue Jan  6 20:51:10 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45173         * lib/logger.rb(Logger#msg2str): no special treatment for the object
45174           which responds to :to_str.
45176         * lib/logger.rb(LogDevice#initialize): remove type checking if the
45177           given object is a String.  Kernel.open handles it correctly.
45179         * test/logger/test_logger.rb: follow above change (ArgumentError ->
45180           TypeError.)
45182 Tue Jan  6 14:53:14 2004  Dave Thomas  <dave@pragprog.com>
45184         * bin/ri: split out the display side, making it pluggable. Added
45185           new ri_driver and ri_display files in lib/rdoc/ri.
45187 Tue Jan  6 11:29:43 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45189         * test/inlinetest.rb, test/{test_generator.rb,test_ipaddr.rb,
45190           test_pathname.rb,test_pp.rb,test_prettyprint.rb,test_set.rb,
45191           test_time.rb,test_tsort.rb: added.
45193 Tue Jan  6 09:38:27 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45195         * import soap4r/1.5.2;
45197         * lib/soap/{attachment.rb,baseData.rb,encodingstyle/soapHandler.rb}:
45198           introduce SOAPExternalReference class as a referenct to SOAPEnvelope
45199           external content.
45201         * lib/soap/{attachment.rb,mimemessage.rb}: great SwA (SOAP messages
45202           with Attachments) support code by Jamie Herre.
45204         * lib/soap/{element.rb,marshal.rb,parser.rb,processor.rb,
45205           streamHandler.rb,wsdlDriver.rb}: SwA support.
45207         * lib/soap/rpc/{cgistub.rb,driver.rb,element.rb,proxy.rb,router.rb,
45208           soaplet.rb}: SwA support and refactoring.
45210         * lib/soap/generator.rb, lib/soap/mapping/mapping.rb: follow
45211           SOAPReference#initialize signature change.
45213         * lib/soap/mapping/factory.rb: deleted unused methods.
45215         * lib/soap/mapping/rubytypeFactory.rb: do no ignore case while xsi:type
45216           string <-> Ruby class name matching.
45218         * lib/xsd/datatypes.rb: check the smallest positive non-zero
45219           single-precision float exactly instead of packing with "f".
45220           [ruby-talk:88822]
45222         * test/soap/test_basetype.rb, test/xsd/test_xsd.rb: use 1.402e-45, not
45223           1.4e-45.  1.4e-45 is smaller than 2 ** -149...
45225         * test/soap/test_basetype.rb, test/soap/marshal/test_marshal.rb,
45226           test/xsd/test_xsd.rb: use "(-1.0 / (1.0 / 0.0))" instead of "-0.0".
45228         * test/soap/test_streamhandler.rb: revert to the previous test that
45229           warns "basic_auth unsupported under net/http".
45231 Tue Jan  6 06:37:53 2004  Dave Thomas  <dave@pragprog.com>
45233         * bin/rdoc: Add --ri-system switch
45235         * lib/.document: Update with list of files that seem to have
45236           documentation
45238         * lib/test/unit.rb: Reorder comment to make it RDoc friendly.
45240         * Makefile.in: add install-nodoc target, and make it
45241           generate RDoc on default install.
45243         * lib/rdoc/ri/ri_options.rb (RI::Options::parse): Add
45244           --doc-dir option to ri.
45246 Tue Jan  6 00:04:40 2004  Dave Thomas  <dave@pragprog.com>
45248         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_or_yield_parameters):
45249           fix parsing if there are braces in a method parameter list
45251 Tue Jan  6 01:01:04 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
45253         * win32/dir.h, win32/win32.c: fix patch miss.
45255         * win32/Makefile.sub: fix file dependency.
45257 Mon Jan  5 20:32:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
45259         * lib/logger.rb: enhanced documentation.
45261 Mon Jan  5 18:58:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
45263         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
45264           [ruby-dev:22486]
45266         * pack.c (pack_unpack): unpack requires big endian offet (OFF16B
45267           and OFF32B).  The patch is from Minero Aoki in [ruby-dev:22489]
45269         * pack.c (OFF16B): add big-endian offset again.
45271 Mon Jan  5 03:00:53 2004  Minero Aoki  <aamine@loveruby.net>
45273         * test/ruby/test_pack.rb: new test test_unpack_N.
45275 Mon Jan  5 01:47:53 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
45277         * lib/mkmf.rb (create_makefile): remove duplicated object files
45278           from $objs on DOSISH platforms.
45280 Sat Jan  3 02:44:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
45282         * rubysig.h (TRAP_END): preserve errno before switching context.
45283           [ruby-core:02137]
45285 Sat Jan  3 01:18:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
45287         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
45288           [ruby-dev:22476]
45290 Fri Jan  2 14:54:11 2004  Dave Thomas  <dave@pragprog.com>
45292         * bin/ri: Add new --classes option, and arrange for
45293           help messages to be paged too.
45295         * bin/rdoc: Add statistics.
45297         * process.c: (MG) Added Process documentation
45299         * lib/rdoc/ri/ri_formatter.rb (RI::AttributeFormatter::wrap):
45300           Fix problem with labels not displaying in RI labeled
45301           lists using BS and ANSI modes.
45303 Fri Jan  2 01:50:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
45305         * io.c (argf_eof): ARGF.eof? should not have any side effect.
45306           [ruby-dev:22469]
45308 Thu Jan  1 09:03:20 2004  Dave Thomas  <dave@pragprog.com>
45310         * bin/ri (report_class_stuff): Fix problem with ambiguous nested
45311           classes not matching.
45313 Wed Dec 31 17:25:17 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45315         * io.c (argf_each_byte): should return self.  [ruby-dev:22465]
45317 Wed Dec 31 15:05:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
45319         * lib/pathname.rb: Corrected small coding error.
45321 Wed Dec 31 15:00:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
45323         * lib/pathname.rb: Completed documentation.
45325 Wed Dec 31 11:20:34 2003  Dave Thomas  <dave@pragprog.com>
45327         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods): Make
45328           file referenced in "// in sss.c" relative to current file.
45330 Wed Dec 31 11:17:37 2003  Dave Thomas  <dave@pragprog.com>
45332         * lib/rdoc/generators/html_generator.rb: Fix problem when
45333           a public method was aliased, but the alias is then
45334           made private, and hence doesn't appear in RDoc output.
45336 Wed Dec 31 01:33:05 2003  Dave Thomas  <dave@pragprog.com>
45338         * array.c, error.c, eval.c, io.c, prec.c, range.c, re.c,
45339           string.c, time.c: Add RDoc for Kernel functions, and tidy.
45341 Tue Dec 30 19:39:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45343         * io.c (rb_f_readline): should raise EOFError at the end of
45344           files.  [ruby-dev:22458]
45346         * io.c (argf_read): should concatenate input files when length
45347           argument is nil. [ruby-dev:22450]
45349         * io.c (argf_read): should update supplied string buffer (2nd
45350           argument) even when IO#read is called multiple times.
45352         * io.c: should initialize lineno by zero. [ruby-dev:22460]
45354 Tue Dec 30 12:30:30 2003  Dave Thomas  <dave@pragprog.com>
45356         * lib/rdoc/code_objects.rb (RDoc::Context::find_symbol): If a
45357           class and a method have the same name, finding Xxx.abc was trying
45358           to find 'abc' in method 'Xxx', not class 'Xxx'.
45360 Tue Dec 30 08:32:32 2003  Dave Thomas  <dave@pragprog.com>
45362         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method):
45363           Handle undoing nsting of yield parameters correctly for:
45365             def each_entry(&b) Dir.foreach(@path) {|f| yield P.new(f) } end
45367 Tue Dec 30 07:30:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
45369         * lib/pathname.rb: Added documentation.
45371 Mon Dec 29 20:08:17 2003  Minero Aoki  <aamine@loveruby.net>
45373         * lib/net/http.rb (GenericRequest#initialize): check if path
45374           begins with '/'.
45376         * lib/net/http.rb: def m( arg ) -> def m(arg)
45378 Mon Dec 29 12:51:02 2003  Dave Thomas  <dave@pragprog.com>
45380         * eval.c: Add RDoc for Kernel global functions.
45382 Mon Dec 29 11:00:16 2003  Dave Thomas  <dave@pragprog.com>
45384         * array.c: Tidy up RDoc loose ends.
45386 Mon Dec 29 05:05:51 2003  Dave Thomas  <dave@pragprog.com>
45388         * struct.c, random: Add RDoc comments
45390 Mon Dec 29 02:25:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
45392         * lib/optparse.rb: Improved documentation.
45394 Mon Dec 29 02:20:54 2003  Dave Thomas  <dave@pragprog.com>
45396         * eval.c: Add RDoc for class Proc, Method, UnboundMethod
45398 Mon Dec 29 02:20:26 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45400         * instruby.rb: fix install directory if destdir and compile_dir are
45401           not in the same drive.
45403         * ext/extmk.rb: ditto. [ruby-list:39009]
45405         * win32/Makefile.sub, win32/README.win32, win32/configure.bat,
45406           win32/setup.mak: new configure scheme. use ``configure --prefix=dir''
45407           instead of ``nmake DESTDIR=dir install''.
45409 Mon Dec 29 00:41:44 2003  Dave Thomas  <dave@pragprog.com>
45411         * math.c: Add RDoc comments
45413 Sun Dec 28 20:19:11 2003  Tanaka Akira  <akr@m17n.org>
45415         * ext/stringio/stringio.c (strio_sysread): StringIO.new.sysread didn't
45416           raise EOFError.
45418         * ext/zlib/zlib.c (gzreader_gets): don't increment lineno when
45419           gzfile_read_all returns "".
45421 Sun Dec 28 15:25:08 2003  Dave Thomas  <dave@pragprog.com>
45423         * class.c,object.c,parse.y,sprintf.c,variable.c: Document classes
45424           Object, Module, etc...
45426 Sun Dec 28 11:55:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45428         * test/csv/test_csv.rb: generate bom.csv and mac.csv files on the fly.
45429           [ruby-talk:88852]
45431         * test/csv/{bom.csv,mac.csv}: removed.
45433 Sun Dec 28 08:56:51 2003  Dave Thomas  <dave@pragprog.com>
45435         * eval.c: Thead[Group] RDoc (thanks to MG)
45437 Sun Dec 28 03:50:05 2003  Dave Thomas  <dave@pragprog.com>
45439         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_override_comment):
45440           Escape method names used in regexp
45442 Sun Dec 28 01:46:02 2003  Dave Thomas  <dave@wireless_3.local.thomases.com>
45444         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::display_flow_item):
45445           Add support for rules in 'ri' output.
45447 Sun Dec 28 01:35:35 2003  Dave Thomas  <dave@pragprog.com>
45449         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body):
45450           Sometimes the Ruby source aliases two otherwise
45451           unrelated methods (for example Kernel#object_id and
45452           Kernel#hash are both the same C function). Provide a
45453           facility to allow the methods to be documented
45454           separately.
45456 Sun Dec 28 01:05:31 2003  Dave Thomas  <dave@pragprog.com>
45458         * marshal.c, signal.c: RDoc collemts added by Elliott Hughes
45460 Sun Dec 28 00:46:25 2003  Dave Thomas  <dave@pragprog.com>
45462         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_class_comment):
45463           Some Ruby source uses lower-case class names for the
45464           Init_Xxx C function name.
45466 Sat Dec 27 23:41:46 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45468         * configure.in: fix "test: too many arguments" error.
45470 Sat Dec 27 15:32:40 2003  Dave Thomas  <dave@wireless_3.local.thomases.com>
45472         * time.c: Add RDoc comments for Time class.
45474 Sat Dec 27 15:07:26 2003  Dave Thomas  <dave@pragprog.com>
45476         * object.c: Add RDoc comments for Symbol class.
45478 Sat Dec 27 14:39:53 2003  Dave Thomas  <dave@pragprog.com>
45480         * numeric.c (Init_Numeric): Add RDoc comments.
45482 Sat Dec 27 00:44:00 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45484         * io.c (next_argv): warn always for stdin on inplace edit mode.
45486         * io.c (read_all): need to check string value.
45488         * io.c (argf_read): allow ARGF.read(nil).  [ruby-dev:22433]
45490 Fri Dec 26 23:02:09 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45492         * io.c (rb_f_backquote): need not to check nil result.
45493           [ruby-core:02078]
45495         * io.c (rb_io_getline): should return nil when read_all gives
45496           empty string, even when nil rs is specified. [ruby-core:02077]
45498 Fri Dec 26 18:33:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45500         * configure.in: check if getcontext and setcontext are available.
45502         * eval.c: use presence of getcontext/setcontext.
45504 Fri Dec 26 16:40:53 2003  Tanaka Akira  <akr@m17n.org>
45506         * lib/pathname.rb (PathnameTest#test_plus): add 2 assertions.
45508 Fri Dec 26 14:05:13 2003  Minero Aoki  <aamine@loveruby.net>
45510         * test/ruby/test_pack.rb: new test test_pack_N.
45512 Fri Dec 26 12:53:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45514         * pack.c (pack_pack): add sign check for 'i', and 'l'.
45515           [ruby-dev:22427]
45517         * bignum.c (rb_quad_pack): add range check for 'quad int'.
45519 Fri Dec 26 10:58:58 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45521         * MANIFEST: add vms/config.h and remove vms/config.h_in.
45523 Fri Dec 26 10:42:00 2003  AKIYOSHI, Masamichi  <masamichi.akiyoshi@hp.com>
45525         * io.c: [VMS] "rfm=stmlf" is specified for open() and fopen().
45527 Thu Dec 25 22:29:53 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45529         * string.c (rb_str_update): don't return any value.
45531 Thu Dec 25 15:30:17 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45533         * string.c (rb_str_update): call rb_str_modify().
45535 Thu Dec 25 05:08:09 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45537         * eval.c (search_required): search actual file name once when no
45538           extension specified.
45540 Thu Dec 25 04:00:44 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45542         * stable version 1.8.1 released.
45544 Thu Dec 25 00:17:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45546         * configure.in: check for nanosleep, -lrt if required.
45547           [ruby-core:02059]
45549         * eval.c (thread_timer): use select(2) if nanosleep(2) is not
45550           available.
45552         * eval.c: check __stub_getcontext for glibc on some platforms.
45553           [ruby-list:38984]
45555 Wed Dec 24 23:48:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45557         * test/soap/test_basetype.rb, test/soap/marshal/test_marshal.rb
45558           test/xsd/test_xsd.rb: use "(-1.0 / (1.0 / 0.0))" instead of "-0.0"
45559           to express -0.0.  [ruby-talk:88786]
45561 Wed Dec 24 23:29:30 2003  Tanaka Akira  <akr@m17n.org>
45563         * lib/tsort.rb (test_orphaned_break): removed.
45565 Wed Dec 24 20:53:06 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45567         * ext/tk/sample/tkmulticolumnlist.rb: new sample
45569         * ext/tk/sample/tkmultilistframe.rb: bug fix
45571 Wed Dec 24 20:37:37 2003  Eric Sunshine  <sunshine@sunshineco.com>
45573         * configure.in (LDSHARED): Fixed typographical error in assignment of
45574           LDSHARED for Rhapsody which caused linking of extension modules to
45575           fail.
45577 Wed Dec 24 17:51:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45579         * file.c (rb_thread_flock): enable thread support again.
45581 Wed Dec 24 16:46:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45583         * eval.c (catch_timer): do not call rb_thread_schedule() inside to
45584           avoid pthread_mutex_lock() deadlock.  interrupts to system calls
45585           are detected by TRAP_END via EINTR error.
45587         * eval.c (thread_timer): do not post signal unless it is
45588           absolutely necessary.
45590         * rubysig.h (TRAP_END): add CHECK_INTS to switch thread.
45592         * regex.c (re_compile_pattern): check if nextp is smaller than
45593           pend.  [ruby-dev:22372]
45595         * eval.c (umethod_bind): remove method overridden check.
45596           [ruby-dev:22366]
45598 Wed Dec 24 16:13:05 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45600         * ext/openssl/ossl_ssl.c (ossl_ssl_read): should check for error
45601           status by SSL_get_error().
45603         * ext/openssl/ossl_ssl.c (ossl_ssl_write): ditto.
45605 Wed Dec 24 14:23:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45607         * ext/stringio/stringio.c (strio_read): clear the buffer argument
45608           when returning nil.  [ruby-dev:22363]
45610         * test/ruby/ut_eof.rb (TestEOF::test_eof_0, TestEOF::test_eof_1):
45611           add buffer argument tests.
45613 Wed Dec 24 14:07:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45615         * lib/test/unit/assertions.rb: Modules are allowed to rescue.
45617         * lib/test/unit/autorunner.rb: show output_level in order.
45619         * lib/test/unit/collector/dir.rb: get rid of successive same
45620           directories in load path.
45622         * test/testunit/test_assertions.rb (test_assert_nothing_raised,
45623           test_assert_raise): test for modules.
45625 Wed Dec 24 13:43:34 2003  Shugo Maeda  <shugo@ruby-lang.org>
45627         * lib/net/imap.rb (authenticate): remove "\n" from base64 encoded
45628           strings.
45630 Wed Dec 24 11:26:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45632         * test/fileutils/test_fileutils.rb: should not create any
45633           files or directories in current directory.  [ruby-talk:88724]
45635 Wed Dec 24 10:29:53 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45637         * ext/stringio/stringio.c (strio_read): never return nil at
45638           unlimited read.  [ruby-dev:22334]
45640         * ext/stringio/stringio.c (strio_read): support second
45641           argument.  [ruby-dev:22350]
45643 Wed Dec 24 09:38:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45645         * parse.y (arg): should return 0 after error.  [ruby-dev:22360]
45647 Wed Dec 24 00:56:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45649         * io.c (read_all): do not return nil at the end of file.
45650           [ruby-dev:22334]
45652         * io.c (argf_read): do not depend on nil at eof behavior of
45653           IO#read().
45655         * eval.c (rb_thread_join): dup exception before re-raising it.
45657         * io.c (rb_io_eof): call clearerr() to prevent side effect.  this
45658           patch is supplied by Masahiro Sakai <sakai@tom.sfc.keio.ac.jp>.
45659           [ruby-dev:22234]
45661         * pack.c (OFF16): get offset for big endian machines.
45663         * pack.c (pack_pack): use OFF16 instead of OFF16B.
45664           [ruby-dev:22344]
45666         * pack.c (pack_unpack): ditto.
45668 Tue Dec 23 22:47:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45670         * io.c (rb_io_check_readable): set FMODE_RBUF always, even if
45671           NEED_IO_SEEK_BETWEEN_RW is not defined. [ruby-dev:22340]
45673         * io.c (rb_io_check_writable): clear FMODE_RBUF before writing
45674           something.
45676 Tue Dec 23 22:25:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
45678         * lib/optparse.rb: incomplete RDoc documentation added in place of
45679           existing RD comments.  Tabs converted to spaces.
45681 Tue Dec 23 19:44:47 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45683         * test/soap/test_streamhandler.rb (test_basic_auth): removed.
45684           soap4r + basic_auth is not officially supported in ruby/1.8.1 even
45685           though soap4r + basic_auth + http-access2 should run fine.
45687 Tue Dec 23 19:42:59 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45689         * io.c (rb_io_ungetc): raise an exception at unread stream to
45690           avoid unspecified behavior.  [ruby-dev:22330]
45692         * test/ruby/test_system.rb (test_syntax): glob relatively from
45693           __FILE__.
45695 Tue Dec 23 18:09:40 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45697         * pack.c (pack_pack): remove unnecessary negative value check.
45698           [ruby-dev:22329]
45700 Tue Dec 23 17:26:55 2003  KONISHI Hiromasa  <konishih@fd6.so-net.ne.jp>
45702         * bcc32/Makefile.sub (config.h): bcc has finite(). [ruby-list:38940]
45704 Tue Dec 23 16:08:16 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45706         * lib/rexml/encodings/US-ASCII.rb: typo.  [ruby-talk:88650]
45708         * test/ruby/test_system.rb: num of asserts depended on running dir.
45710         * test/xsd/test_noencoding.rb: rexml + without iconv/uconv cannot
45711           handle euc-jp.  install iconv, uconv or xmlscan.
45713 Tue Dec 23 14:13:51 2003  akira yamada  <akira@ruby-lang.org>
45715         * lib/uri/generic.rb (URI::Generic::check_userinfo,
45716           URI::Generic::check_user, URI::Generic::check_password): tests
45717           conflicts/depends with other components closely.
45719         * test/uri/test_generic.rb (TestGeneric::test_set_component):
45720           added tets.
45722 Tue Dec 23 11:08:34 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45724         * test/xsd/test_noencoding.rb: rescue Errno::EINVAL and do not test.
45725           "euc-jp" might not be in supported encoding name list.
45726           [ruby-talk:88650]
45728 Tue Dec 23 06:10:31 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45730         * lib/webrick/cgi.rb (CGI): add support for mod_ruby.
45732         * lib/webrick/cgi.rb (CGI::Socket): add check for existence of
45733           OpenSSL module in all HTTPS related methods.
45735         * lib/webrick/cgi.rb (CGI::Socket#cipher): should create similar
45736           value to OpenSSL::SSLSocket#cipher.
45738         * lib/webrick/httpresponse.rb (HTTPResponse#setup_header): should
45739           set "connection: close" if @keep_alive is false.
45741         * lib/webrick/https.rb (HTTPrequest#meta_vars): add supprt for
45742           SSL_PROTOCOL, SSL_CIPHER_USEKEYSIZE and SSL_CIPHER_ALGKEYSIZE.
45744 Mon Dec 22 23:00:05 2003  akira yamada  <akira@ruby-lang.org>
45746         * lib/uri/generic.rb (URI::Generic::check_opaque): fixed typo.
45748 Mon Dec 22 21:59:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45750         * ext/iconv/iconv.c (map_charset): always ensure code is a String.
45752 Mon Dec 22 21:15:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45754         * class.c (rb_mod_init_copy): always copy singleton class.
45755           [ruby-dev:22325]
45757 Mon Dec 22 20:44:36 2003  akira yamada  <akira@ruby-lang.org>
45759         * lib/uri/generic.rb (URI::Generic#route_from): accepts urls which
45760           has no host-part.
45762         * test/uri/test_generic.rb (TestGeneric::test_route): added a test.
45764 Mon Dec 22 20:38:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45766         * lib/cgi.rb: reduce eval.
45768         * lib/cgi.rb (CGI::QueryExtension::read_multipart): alias path to
45769           local_path.  [ruby-list:38883]
45771 Mon Dec 22 20:09:31 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45773         * test/soap/test_property.rb: remove duplicated test method.
45775 Mon Dec 22 18:22:04 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45777         * bcc32/Makefile.sub, win32/Makefile.sub (config.h): remove
45778           HAVE_ISINF definition to follow previous commits of missing.h
45779           and win32/win32.h.
45781 Mon Dec 22 17:23:42 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45783         * configure.in (ac_cv_func_setitimer): moved from defines.h
45785         * defines.h, rubysig.h, signal.c: removed macro handling which
45786           should be done in configure.
45788         * configure.in (intrinsics.h): check if present.
45790         * ruby.h: include intrinsics.h if available.
45792         * bignum.c, marshal.c: include ieeefp.h if available.
45794         * missing.h (isinf): define as a macro if finite() and isnan()
45795           are available.  [ruby-core:02032]
45797 Mon Dec 22 17:07:31 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45799         * configure.in (mingw): set isnan, finite and isinf to yes.
45801 Mon Dec 22 13:40:19 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45803         * lib/soap/property.rb: passing block by reference.
45805 Mon Dec 22 00:32:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45807         * eval.c (rb_with_disable_interrupt): use ENABLE_INTS instead of
45808           ALLOW_INTS which may switch context.  [ruby-dev:22319]
45810         * ext/syck/emitter.c (syck_emitter_write): str bigger than
45811           e->bufsize causes buffer overflow.  [ruby-dev:22307]
45813 Sun Dec 21 17:29:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45815         * class.c (rb_check_inheritable): new function.  [ruby-dev:22316]
45817         * intern.h: add prototype.
45819         * eval.c (superclass): use rb_check_inheritable().
45821         * object.c (rb_class_initialize): check argument validity.
45823 Sun Dec 21 16:25:10 2003  Tanaka Akira  <akr@m17n.org>
45825         * lib/pathname.rb (Pathname#+): re-implemented to resolve ".." in
45826           beginning of the argument.
45827           (Pathname#join): concatenate from the last argument.
45828           (Pathname#parent): just use Pathname#+.
45830 Sun Dec 21 00:12:37 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45832         * ext/tk/lib/tk.rb: add new methods (TkScrollbar#assign, assign_list)
45834         * ext/tk/sample/tkmultilistframe.rb: use TkScrollbar#assign method
45836 Sat Dec 20 21:59:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45838         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): refine regexp.
45840         * lib/webrick/cgi.rb (CGI#start): NPH scripts return status line
45841           instead of Status: header field.
45843         * lib/webrick/cgi.rb (CGI::Socket): refine some coditions.
45845 Sat Dec 20 16:07:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45847         * lib/optparse.rb (OptionParser::Completion::complete): wrong
45848           Regexp for word boundary.  pointed out by Gavin Sinclair.
45850         * lib/optparse.rb (OptionParser::make_switch): [no-] prefix was
45851           missing.
45853 Sat Dec 20 11:40:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45855         * lib/yaml.rb (YAML::YAML): adjust Marshal version.
45857 Sat Dec 20 03:56:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45859         * eval.c (rb_with_disable_interrupt): prohibit thread context
45860           switch during proc execution.  [ruby-dev:21899]
45862 Sat Dec 20 02:41:02 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45864         * lib/webrick/cgi.rb: add file. (yet another CGI library)
45866         * MANIFEST: add lib/webrick/cgi.rb.
45868 Sat Dec 20 02:18:31 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45870         * misc/ruby-mode.el (ruby-calculate-indent): proper indentation
45871           inside of parentheses.  [ruby-dev:22308]
45873 Fri Dec 19 21:24:22 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45875         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): should not set
45876           HTTP_CONTENT_TYPE and HTTP_CONTENT_LENGTH.
45878         * lib/webrick/https.rb (HTTPRequest#parse): should check presence
45879           of cert() method to detect SSLSocket.
45881 Fri Dec 19 22:56:46 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45883         * lib/soap/property.rb (SOAP::Property#load): new method for loading
45884           property value into existing property tree.
45886         * test/soap/test_property.rb: add test.
45888 Fri Dec 19 19:21:49 2003  akira yamada  <akira@ruby-lang.org>
45890         * lib/runit/cui/testrunner.rb (RUNIT::CUI::TestRunner::run):
45891           should use Test::Unit::UI::{PROGRESS_ONLY,VERBOSE}.
45893 Fri Dec 19 17:36:49 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45895         * ext/tk/sample/tkmultilistbox.rb: bug fix
45897         * ext/tk/sample/tkmultilistframe.rb: new sample script
45899 Fri Dec 19 03:44:27 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45901         * lib/webrick/httputils.rb (parse_form_data): should return an
45902           empty Hash if the body is empty.
45904 Thu Dec 18 21:47:35 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45906         * lib/mkmf.rb (create_makefile): should remove deffile if it's
45907           made by miniruby. based on nobu's patch.
45909 Thu Dec 18 21:44:21 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45911         * eval.c (stack_extend): ignore inline optimization on VC7.
45913         * win32/Makefile.sub (OS, RT): can override.
45915         * win32/Makefile.sub (LDFLAGS): ditto. shouldn't use pdb:none
45916           option. based on Tietew's patch [ruby-dev:22289]
45918 Thu Dec 18 16:38:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45920         * dir.c (fnmatch): unlike find_dirsep(), rb_path_next() never
45921           return NULL.
45923 Thu Dec 18 15:27:59 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45925         * lib/ipaddr.rb (IPSocket::getaddress): merge usa's patch.
45926           [ruby-dev:21678]
45928 Wed Dec 17 15:15:30 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45930         * lib/cgi.rb (CGI::QueryExtension::Value::[]): should work like
45931           String#[] if more than one arguments are specified.
45933         * lib/delegate.rb: avoid using common instance name as "@obj".
45935         * lib/cgi.rb (CGI::QueryExtension::Value): Value is no longer
45936           subclass of String, but DelegateClass(String).
45938         * ext/curses/extconf.rb: restore function check for init_color.
45939           [ruby-list:38905]
45941         * Makefile.in: need to specify $(MAINLIBS) for the miniruby
45942           generation rule.
45944         * configure.in: better FreeBSD -lc_r support.
45946 Wed Dec 17 00:16:14 2003  Minero Aoki  <aamine@loveruby.net>
45948         * ext/strscan/strscan.c: new method
45949           StringScanner#beginning_of_line? (alias #bol?)
45951         * ext/strscan/strscan.c: new method StringScanner#concat and #<<.
45953         * ext/strscan/strscan.c: StringScanner#new(str) does not duplicate
45954           nor freeze STR (allow destructive modification).
45956         * test/strscan/test_stringscanner.rb: test new methods above.
45958         * test/strscan/test_stringscanner.rb: test destructive string
45959           modification.
45961 Tue Dec 16 21:20:47 2003  Tanaka Akira  <akr@m17n.org>
45963         * lib/pp.rb: don't use local variable `pp'.
45965         * lib/prettyprint.rb: ditto.
45967 Tue Dec 16 13:20:43 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45969         * ext/tk/lib/tk.rb: condition bug of if statement on
45970           {pack,grid}_propagate methods
45972 Tue Dec 16 03:17:29 2003  why the lucky stiff  <why@ruby-lang.org>
45974         * lib/yaml/rubytypes.rb: comments in strings. [ruby-talk:88012]
45976         * test/yaml/test_yaml.rb: add test.
45978 Tue Dec 16 01:14:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45980         * eval.c (catch_timer): check rb_thread_crtical in main native
45981           thread.
45983         * eval.c (thread_timer): just sends signals periodically, to
45984           prevent main native thread from receiving them in critical
45985           section.  [ruby-core:01959]
45987 Mon Dec 15 13:32:22 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45989         * dir.c (check_dirname): check string safety and remove extraneous
45990           trailing directory separators.  [ruby-dev:22279]
45992         * file.c: renamed and externalized rb_path_next,
45993           rb_path_skip_prefix, rb_path_last_separator, rb_path_end.
45995         * intern.h: prototypes for rb_path_next, rb_path_skip_prefix,
45996           rb_path_last_separator, rb_path_end.
45998 Mon Dec 15 09:27:46 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46000         * ext/openssl/ossl_pkcs12.c (ossl_pkcs12_initialize): first argument
46001           of rb_protect should take an argument of VALUE.
46003 Sun Dec 14 18:46:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46005         * ext/socket/socket.c (Init_socket): IPv6 is not supported although
46006           AF_INET6 is defined on MinGW.
46008         * lib/ipaddr.rb (AF_INET6): workaround in the environment which does
46009           not support IPv6.
46011 Sat Dec 13 18:55:16 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46013         * ext/iconv/charset_alias.rb: preserve original order.
46015         * ext/iconv/extconf.rb: remove wrapper file at clean.
46017 Sat Dec 13 18:09:42 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46019         * eval.c (thread_timer): use timer by sub-thread and nanosleep.
46020           [ruby-talk:87519]
46022         * gc.c (Init_stack): no stack adjustment for THREAD_SAFE.
46024 Sat Dec 13 17:17:59 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46026         * eval.c (proc_alloc): cache the created object at first time.
46027           [ruby-talk:61288], [ruby-dev:22240]
46029 Sat Dec 13 09:01:23 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46031         * configure.in: check ucontext.h.
46033         * eval.c: use getcontext/setcontext() instead of setjmp/longjmp()
46034           on ia64 or with native thread enabled.  [ruby-core:01932]
46036 Sat Dec 13 03:09:14 2003  why the lucky stiff  <why@ruby-lang.org>
46038         * lib/yaml/rubytypes.rb: anonymous struct fix. [ruby-core:01946]
46040         * test/yaml/test_yaml.rb: add test.
46042 Fri Dec 12 22:36:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46044         * lib/csv.rb: add Cell#to_str and Cell#to_s for /.../ =~ aCell,
46045           "#{aCell}" and so on.
46047         * test/csv/test_csv.rb: add tests.
46049 Fri Dec 12 19:33:06 2003  Minero Aoki  <aamine@loveruby.net>
46051         * lib/fileutils.rb (mkdir): remove trailing `/' from pathes.
46053         * lib/fileutils.rb (rmdir): ditto. [ruby-dev:22238]
46055         * lib/fileutils.rb (rmdir_r): ditto.
46057         * lib/fileutils.rb (fu_copy_dir): check if it is a directory after
46058           mkdir(2).
46060 Fri Dec 12 06:06:09 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46062         * eval.c (proc_invoke): fix class name in warning message for
46063           define_method.  [ruby-dev:22235]
46065 Thu Dec 11 21:24:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46067         * ext/openssl/ossl_pkcs12.[ch]: new files. add OpenSSL::PKCS12.
46069         * ext/openssl/ossl.[ch]: ditto.
46071         * ext/openssl/MANIFEST: add ossl_pkcs12.[ch].
46073 Thu Dec 11 20:54:28 2003  Minero Aoki  <aamine@loveruby.net>
46075         * lib/fileutils.rb (mkdir_p): remove trailing `/' befere mkdir(2).
46076           mkdir("nonexistdir/") does not work on NetBSD/Alpha 1.6.1.
46078         * lib/fileutils.rb (fu_list): call to_str for all arguments.
46080 Thu Dec 11 20:07:01 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46082         * lib/ftools.rb (makedirs): sync with fileutils.
46084 Thu Dec 11 19:53:03 2003  Minero Aoki  <aamine@loveruby.net>
46086         * lib/fileutils.rb (mkdir_p): catch all SystemCallErrors.
46087           (mkdir("C:\") causes EACCESS on Windows 2000/NTFS)
46089 Thu Dec 11 19:08:02 2003  Minero Aoki  <aamine@loveruby.net>
46091         * lib/fileutils.rb (mkdir_p): check if it is a directory after
46092           mkdir(2) instead of before mkdir(2), to avoid race condition.
46093           [ruby-talk:87730]
46094           Refer: mkinstalldirs sh script, GNU mkdir(1) (coreutils 5.0)
46096 Thu Dec 11 18:49:30 2003  Minero Aoki  <aamine@loveruby.net>
46098         * lib/fileutils.rb: def m( arg ) -> def m(arg).
46100 Thu Dec 11 11:39:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46102         * configure.in (ieeefp.h), numeric.c: needed for finite() on
46103           Solaris.  [ruby-core:01921]
46105         * file.c (rb_stat_inspect): adjust format specifier.
46107         * parse.c (arg_prepend): nodetype() is for debug use.
46109         * ruby.h (ISASCII, etc): cast to int to get rid of warning.
46111         * ruby.h (alloca.h): include even in GCC.  [ruby-core:01925]
46113         * ext/bigdecimal/bigdecimal.c (GetVpValue): adjust format
46114           specifier.
46116         * ext/bigdecimal/bigdecimal.c (BigDecimal_prec, BigDecimal_coerce,
46117           BigDecimal_divmod): use rb_assoc_new() to suppress memory usage.
46119         * ext/bigdecimal/bigdecimal.c (BigDecimal_split): ditto.
46121         * ext/dl/sym.c (rb_dlsym_guardcall): guard itself should be
46122           volatile.
46124         * ext/iconv/iconv.c (iconv_convert): ensure actual parameter with
46125           format specifier.
46127         * ext/pty/pty.c (MasterDevice, SlaveDevice, deviceNo): do not
46128           define unless used.
46130         * ext/pty/pty.c (getDevice): get rid of warning.
46132         * ext/socket/socket.c (port_str, sock_s_getaddrinfo,
46133           sock_s_getnameinfo): FIX2INT() now returns long.
46135         * ext/socket/socket.c (init_inetsock_internal): uninitialized
46136           variable.
46138         * ext/syck/rubyext.c (syck_parser_assign_io): add prototype.
46140         * ext/syck/rubyext.c (rb_syck_mktime, yaml_org_handler): use
46141           ISDIGIT() instead of isdigit() to avoid warnings and for
46142           platforms which don't support non-ascii charater.
46144 Wed Dec 10 19:28:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46146         * ext/stringio/stringio.c (strio_read): set EOF flag at short read.
46147           [ruby-dev:22223], [ruby-dev:22224]
46149 Wed Dec 10 18:07:25 2003  Minero Aoki  <aamine@loveruby.net>
46151         * lib/erb.rb: new method ERB#filename(=). [ruby-dev:22208]
46153 Wed Dec 10 17:54:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46155         * ext/stringio/stringio.c (strio_read): do not set EOF flag when
46156           requested length is zero.  [ruby-dev:22214]
46158 Wed Dec 10 17:17:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46160         * io.c (read_all): should return given string even if data read is
46161           empty.  [ruby-dev:22207]
46163 Wed Dec 10 17:16:06 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46165         * ext/stringio/stringio.c (strio_read): adjust behavior at reading
46166           beyond EOF to IO.  [ruby-dev:22205]
46168         * test/ruby/ut_eof.rb (TestEOF::Seek): test behaviors at reading
46169           beyond EOF.
46171         * test/ruby/test_file.rb, test/stringio/test_stringio.rb: include
46172           TestEOF::Seek test case.
46174 Wed Dec 10 15:01:19 2003  Shugo Maeda  <shugo@ruby-lang.org>
46176         * test/monitor/test_monitor.rb (test_cond): use Queue#deq
46177           instead of sleep.
46179 Wed Dec 10 14:45:39 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46181         * ext/pty/pty.c (HAVE_SYS_IOCTL_H): need to include <sys/ioctl.h>
46182           for TIOCSCTTY on *BSD.  based on gotoyuzo's patch.
46183           (ruby-bugs:PR#1211)
46185         * ext/pty/pty.c (establishShell): should close descriptors if fork
46186           failed.
46188 Wed Dec 10 12:53:05 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46190         * win32/win32.h: define execv() using do_aspawn().
46192         * process.c (proc_exec_v): remove #ifdef's which stopped needing.
46194 Tue Dec  9 23:32:23 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46196         * ext/tk/lib/tk.rb, ext/tk/lib/tkcanvas.rb, ext/tk/lib/tkdialog.rb,
46197           ext/tk/lib/tkentry.rb, ext/tk/lib/tkscrollbox.rb, ext/tk/lib/tktext.rb,
46198           ext/tk/sample/tkalignbox.rb, ext/tk/sample/tkcombobox.rb,
46199           ext/tk/sample/tkmultilistbox.rb, ext/tk/sample/tkoptdb.rb, ext/tk/sample/tktextframe.rb,
46200           ext/tk/sample/demos-en/dialog1.rb, ext/tk/sample/demos-en/dialog2.rb,
46201           ext/tk/sample/demos-jp/dialog1.rb, ext/tk/sample/demos-jp/dialog2.rb:
46202           overrided instance methods, which are private methods on the super
46203           class, are changed to 'private'
46205 Tue Dec  9 19:53:02 2003  akira yamada  <akira@ruby-lang.org>
46207         * lib/uri/generic.rb (URI::Generic#route_from0): make case insensitive
46208           for host-part.
46210         * test/uri/test_generic.rb (test_route): added tests for the above
46211           change.
46213 Tue Dec  9 14:10:48 2003  Tanaka Akira  <akr@m17n.org>
46215         * io.c (rb_io_check_readable): don't call io_seek if EOF flag is set,
46216           to avoid clearing EOF flag.
46217           (rb_io_check_writable): ditto.
46219 Tue Dec  9 02:53:55 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46221         * ext/tk/sample/tkalignbox.rb: new sample script
46223 Tue Dec  9 00:45:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46225         * lib/test/unit/assertions.rb: renamed #assert_raises to #assert_raise
46226           and made the former call the latter. [ruby-core:01890]
46228         * test/testunit/test_assertions.rb: ditto.
46230 Tue Dec  9 00:07:35 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46232         * lib/soap/rpc/standaloneServer.rb: add 'shutdown' and 'status'
46233           methods as delegates to WEBrick.
46235         * test/soap/calc/{test_calc.rb,test_calc2.rb},
46236           test/soap/helloworld/test_helloworld.rb,
46237           test/wsdl/datetime/test_datetime.rb, test/wsdl/raa/test_raa.rb:
46238           follow the change.
46240 Mon Dec  8 22:48:03 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46242         * lib/test/unit/autorunner.rb: remove dependency to a particular
46243           runner.  [ruby-core:01901], [ruby-list:38869]
46245         * lib/test/unit/ui/testrunnerutilities.rb: moved output level
46246           constants from Console.
46248         * lib/test/unit/ui/console/testrunner.rb: ditto.
46250         * lib/test/unit/ui/{fox,gtk,gtk2,tk}/testrunner.rb (initialize):
46251           accept output_level.
46253 Mon Dec  8 15:03:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46255         * ext/syck/syck.c (syck_io_str_read): get rid of buffer overflow.
46257 Mon Dec  8 13:02:11 2003  Minero Aoki  <aamine@loveruby.net>
46259         * lib/uri/common.rb: new method URI.regexp. [ruby-dev:22121]
46261         * test/uri/test_common.rb: add test for URI.regexp.
46263 Mon Dec  8 12:44:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46265         * pack.c: define swap16 and swap32 only if they are not
46266           defined. OpenBSD defines these macros. [ruby-dev:22181]
46268 Sun Dec  7 20:54:17 2003  Tanaka Akira  <akr@m17n.org>
46270         * ext/iconv/iconv.c (map_charset): make case sensitive.
46271           ext/iconv/charset_alias.rb (charset_alias): don't ignore
46272           config.charset's information.  sort aliases.
46274 Sat Dec  6 22:58:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46276         * ext/openssl/ossl_ssl.c (ossl_start_ssl): new function to wrap
46277           SSL_connect and SSL_accept; if SSL_connect (or SSL_accept) returned
46278           but not finished the handshake process, we should retry it.
46280         * ext/openssl/ossl_ssl.c (ossl_ssl_connect): call ossl_start_ssl.
46282         * ext/openssl/ossl_ssl.c (ossl_ssl_accept): ditto.
46284         * ext/openssl/ossl_ssl.c (ossl_ssl_read): allow signal traps.
46286 Sat Dec  6 21:45:10 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46288         * io.c (flush_before_seek): flush before seek on any platform.
46290         * configure.in: ditto.
46292 Sat Dec  6 17:23:00 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46294         * lib/soap/soap.rb(SOAP::Env.getenv): allow upcase environment variable
46295           as well as downcase one.
46297         * lib/soap/netHttpClient.rb(SOAP::NetHttpClient#proxy=): check URI.
46299 Fri Dec  5 23:22:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46301         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_raises,
46302           Test::Unit::Assertions::assert_nothing_raised): use the last
46303           argument as message unless class object.
46305         * test/testunit/test_assertions.rb (test_assert_raises): test for
46306           multiple exception list.  [ruby-core:01891]
46308         * test/testunit/test_assertions.rb (test_assert_nothing_raised): test
46309           for non-exception classes.
46311 Fri Dec  5 22:23:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46313         * lib/soap/netHttpClient.rb: proxy support did not work.  fixed.
46315         * lib/soap/property.rb: add class methods for loading property from
46316           stream/file/propertyfile.  propertyfile is a file which is located at
46317           somedir in $:.
46319         * lib/soap/soap.rb, lib/soap/wsdlDriver.rb, lib/soap/rpc/driver.rb,
46320           lib/wsdl/importer.rb: load property from propertyfile 'soap/property'
46321           e.g. /usr/local/lib/ruby/site_ruby/1.8/soap/property.
46323         * test/soap/test_property.rb, test/soap/test_streamhandler.rb: new file.
46325 Fri Dec  5 17:26:23 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46327         * eval.c (rb_exec_end_proc): maintain tmp_end_procs.
46328           [ruby-dev:22154]
46330 Fri Dec  5 13:36:59 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46332         * eval.c (rb_exec_end_proc): should not clear end_procs and
46333           ephemeral_end_procs before execution. [ruby-dev:22144]
46335         * eval.c (rb_obj_extend): call Module#extended hook after
46336           extended_object.  [ruby-list:38866]
46338         * object.c (Init_Object): Module#extended defined.
46340 Fri Dec  5 13:17:30 2003  Tanaka Akira  <akr@m17n.org>
46342         * test/ruby/test_pipe.rb: use IO.pipe instead of IO.popen.
46344 Fri Dec  5 11:54:45 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46346         * ext/stringio/stringio.c (strio_read): follow IO#read.
46348         * test/ruby/ut_eof.rb, test/ruby/test_file.rb, test/ruby/test_pipe.rb,
46349           test/stringio/test_stringio.rb: add EOF test.
46351 Fri Dec  5 02:49:35 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46353         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_raises):
46354           allow multiple exception list.  [ruby-core:01884]
46356         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_nothing_raised):
46357           check whether arguments are subclass of Exception.
46359 Thu Dec  4 23:54:00 2003  Rick Ohnemus  <rick.ohnemus@systemware.com>
46361         * dln.c (aix_loaderror): should not use member named 'errno' which
46362           might be a macro (e.g. on AIX).
46364 Thu Dec  4 23:32:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46366         * io.c (read_all): do not depend on lseek position.
46367           [ruby-dev:22026]
46369 Thu Dec  4 22:37:26 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46371         * eval.c (rb_eval): preserve $! value when retry happens in the
46372           rescue clause.  [ruby-talk:86697]
46374 Thu Dec  4 21:50:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46376         * lib/drb/drb.rb (DRb::DRbMessage::send_request, send_reply):
46377           should rescue errors and re-raise DRbConnError on write too.
46378           [ruby-dev:22132]
46380 Thu Dec  4 16:41:17 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46382         * parse.y (exc_list): allow expanding list.  [ruby-dev:22134]
46384 Thu Dec  4 14:09:24 2003  Minero Aoki  <aamine@loveruby.net>
46386         * test/fileutils/test_fileutils.rb (test_cp): test if the error is
46387           kind of SystemCallError.  It is needless details that which errno
46388           is set on each systems.
46390 Thu Dec  4 13:24:13 2003  Shugo Maeda  <shugo@ruby-lang.org>
46392         * lib/monitor.rb: use Object#__send__ instead of Object#send.
46394 Thu Dec  4 13:17:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46396         * lib/soap/streamHandler.rb: support latest released version of
46397           http-access2.
46399 Thu Dec  4 13:04:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46401         * lib/soap/soap.rb: add SOAP::Env module for environment repository
46402           such as HTTP_PROXY.
46404         * lib/soap/property.rb: property implementation.
46406         * lib/soap/streamHandler.rb, lib/soap/wsdlDriver.rb,
46407           lib/soap/rpc/driver.rb: use soap/property.rb.
46409         * lib/wsdl/importer.rb, lib/soap/wsdlDriver.rb, lib/soap/rpc/driver.rb:
46410           use SOAP::Env.
46412         * lib/soap/netHttpClient.rb: add basic_auth, ssl_config, and cookie
46413           management interface, but ignored for now.
46415         * lib/xsd/charset.rb: add XSD::Charset.encoding= interface to set
46416           wiredump charset explicitly.  it was fixed to 'utf-8' when iconv or
46417           uconv module was found.
46419 Thu Dec  4 10:43:58 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46421         * ext/dl/sym.c (rb_dlsym_guardcall): __declspec(noinline) is VC7
46422           feature.
46424 Thu Dec  4 10:27:12 2003  Minero Aoki  <aamine@loveruby.net>
46426         * lib/net/http.rb: update hyperlink to the Japanese document.
46428 Thu Dec  4 09:12:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46430         * ext/openssl/ossl_asn1.c (asn1time_to_time): should check that
46431           the underlying value of ASN1_TIME isn't NULL. [ruby-core:01881]
46433 Thu Dec  4 08:29:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46435         * lib/webrick/server.rb (GenericServer#start): should rescue
46436           Exception to avoid unexpected aborting. [ruby-core:01853]
46438         * lib/webrick/server.rb (GenericServer#start_thread): should check
46439           that peeraddr isn't nil before printing.
46441         * lib/webrick/httpresponse.rb (HTTPResponse#start_thread): should
46442           rescue Exception to avoid unexpected aborting of thread.
46444 Thu Dec  4 03:48:59 2003  Tanaka Akira  <akr@m17n.org>
46446         * lib/pathname.rb (Pathname#link, Pathname#symlink): obsoleted.
46447           (Pathname#make_link, Pathname#make_symlink): new method.
46449 Thu Dec  4 01:45:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46451         * io.c (argf_read): should not terminate on empty string; wait
46452           until real EOF.  [ruby-dev:21969]
46454         * io.c (argf_read): should adjust length to read, when length is
46455           specified and read spans command line argument files.
46457 Wed Dec  3 19:38:36 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
46459         * lib/drb/drb.rb: correct fcntl parameter. [ruby-dev:22120]
46461 Wed Dec  3 13:49:07 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46463         * ext/tk/lib/tk.rb: 'format'==>'Kernel.format' (avoid override trouble)
46465         * ext/tk/lib/tkafter.rb: ditto.
46467         * ext/tk/lib/tkcanvas.rb: ditto.
46469         * ext/tk/lib/tkdialog.rb: ditto.
46471         * ext/tk/lib/tktext.rb: ditto.
46473 Wed Dec  3 13:28:13 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46475         * Makefile.in (lex.c): try gperf first, and copy from the source
46476           directory if failed.  [ruby-dev:22123]
46478         * ext/extmk.rb (MTIMES): let makefiles depend to mkmf.rb.
46480         * lib/mkmf.rb (configuration): DLDFLAGS was duplicated.
46482 Tue Dec  2 23:18:12 2003  Minero Aoki  <aamine@loveruby.net>
46484         * lib/net/http.rb: wrote the warning about HTTP_PROXY environment
46485           variable.
46487 Tue Dec  2 21:31:42 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46489         * bin/testrb: new test runner.  [ruby-core:01845]
46491         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner.run,
46492           Test::Unit::AutoRunner#process_args): take test list to run and
46493           options.
46495         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::RUNNERS,
46496           Test::Unit::AutoRunner#run): should not exit inside a library,
46497           just return the result instead.
46499         * lib/test/unit.rb: ditto.
46501         * test/runner.rb: exit with the test result.
46503 Tue Dec  2 20:18:48 2003  Eric Sunshine  <sunshine@sunshineco.com>
46505         * configure.in (AC_PROG_YACC): AC_DEFINE(OLD_YACC) if Yacc is found
46506           instead of Bison or byacc.
46508         * parse.y: If OLD_YACC is defined, ensure that YYMAXDEPTH is at least
46509           10000 (Bison's default) since some old versions of Yacc define it as
46510           low as 150 by default, which is too low for Ruby to parse some files,
46511           such as date/format.rb.  Among other issues, the parse problem causes
46512           "make test" to fail.
46514 Tue Dec  2 20:03:20 2003  Minero Aoki  <aamine@loveruby.net>
46516         * test/fileutils/test_fileutils.rb: check if Pathnames are usable
46517           for arguments.
46519 Tue Dec  2 04:22:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46521         * lib/test/unit/assertions.rb: fixed #assert_no_match message.
46523         * test/testunit/test_assertions.rb: ditto.
46525 Tue Dec  2 00:43:00 2003  why the lucky stiff  <why@ruby-lang.org>
46527         * ext/syck/syck.c: string buffering bug.  decrementing by full
46528           max_size now. [ruby-core:01834]
46530 Mon Dec  1 21:33:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46532         * numeric.c (num_sadded): prohibit singleton method definition for
46533           Numerics.  fill yet another gap between Fixnum and Bignum.
46535 Mon Dec  1 17:33:47 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46537         * pack.c (htov16): converts endian using swap16. htov32(), hton16,
46538           hton32 as well. [ruby-talk:85377]
46540         * pack.c (swap16): swap 2 bytes no matter how big short is on the
46541           platform.  swap32() is also prepared.
46543         * numeric.c (rb_num2int): returns long to preserve information.
46544           rb_fix2int(), rb_num2uint(), rb_fix2uint() as well.
46545           [ruby-talk:85377]
46547         * numeric.c (rb_num2uint): should not check for value range if the
46548           source value is negative.
46550 Mon Dec  1 17:14:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46552         * sample/optparse/opttest.rb: added.
46554 Mon Dec  1 16:10:52 2003  Dave Thomas  <dave@pragprog.com>
46556         * lib/rdoc/rdoc.rb: (etc) initial merge into main tree.
46558 Mon Dec  1 14:17:49 2003  Minero Aoki  <aamine@loveruby.net>
46560         * lib/fileutils.rb (fu_each_src_dest0): call #to_str to allow
46561           Pathname for arguments. [ruby-core:01795]
46563         * test/fileutils/test_fileutils.rb: does much strict test on
46564           "same" files detecting.
46566 Mon Dec  1 09:28:14 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46568         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46569           (XCFLAGS): re-export $(XCFLAGS).
46571         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46572           (ARCH_FLAG): export $(ARCH_FLAG) (perhaps empty value).
46574 Mon Dec  1 01:03:27 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46576         * lib/mkmf.rb (TRY_LINK, link_command): added support for DLDFLAGS
46577           and ARCH_FLAG.  [ruby-dev:22085]
46579 Sun Nov 30 20:18:07 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46581         * configure.in: keep ARCH_FLAG separate. export ARCH_FLAG.
46582           [ruby-core:01819]
46584         * Makefile.in: add ARCH_FLAG to CFLAGS.
46586         * Makefile.in: add @CPPFLAGS@ to CPPFLAGS.
46588         * lib/mkmf.rb (link_command, cc_command): use ARCH_FLAG.
46590         * lib/mkmf.rb (configuration): add ARCH_FLAG to DLDFLAGS.
46592         * Makefile.in: add ARCH_FLAG to DLDFLAGS.
46594         * configure.in: should put getcwd in AC_CHECK_FUNCS, not
46595           AC_REPLACE_FUNCS.  [ruby-core:01826]
46597 Sun Nov 30 18:22:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46599         * configure.in: do not override CCDLDFLAGS, LDFLAGS, XLDFLAGS,
46600           DLDFLAGS and LDSHARED.
46602         * configure.in: XCFLAGS for compiling ruby itself.  ARCH_FLAG is
46603           reflected in CFLAGS.
46605         * lib/mkmf.rb: ditto.  do not import XCFLAGS from config.status.
46607 Sun Nov 30 17:37:36 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46609         * ext/tk/lib/tk.rb: bug fix [ruby-talk:86746]
46611 Sun Nov 30 13:02:00 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46613         * lib/soap/encodingstyle/soapHandler.rb: refactoring - Simplifying
46614           Conditional Expressions.
46616         * lib/wsdl/soap/definitions.rb: refactoring - Move Method.
46618         * test/xsd/{test_noencoding.rb,noencoding.xml}: new files.  test for
46619           encoding unspecified XML file parsing.
46621         * test/wsdl/{test_fault.rb,map,datetime}: new files.  test of
46622           SOAPFault, dateTime and Apache's Map.
46624 Sun Nov 30 09:35:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46626         * string.c (rb_str_update): get rid of SEGV at just allocated String.
46627           [ruby-core:01812]
46629 Fri Nov 28 23:19:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46631         * gc.c (gc_mark): explicitly check mark recursion levels, instead
46632           of unreliable stack length.
46634 Fri Nov 28 22:49:56 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
46636         * lib/rinda/rinda.rb: fix TupleSpaceProxy#read, read_all.
46638 Fri Nov 28 21:44:40 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46640         * test/fileutils/test_fileutils.rb (test_ln_s): should be a file, not
46641           a directory for FreeBSD.
46643 Fri Nov 28 19:37:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46645         * hash.c (env_has_value, env_index): must match exactly.
46647         * test/ruby/test_env.rb (test_has_value, test_index): condition for
46648           aboves.
46650 Fri Nov 28 17:59:20 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46652         * test/ruby/test_env.rb: add tests for ENV.
46654 Fri Nov 28 17:47:46 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
46656         * lib/drb/drb.rb (DRbMessage#load): rescue Errno::* and raise
46657           DRbConnError.
46659 Fri Nov 28 15:41:15 2003  Tanaka Akira  <akr@m17n.org>
46661         * lib/pathname.rb (Pathname#realpath): obsolete the force_absolute
46662           argument.
46664 Fri Nov 28 14:41:52 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46666         * lib/soap/streamHandler.rb: drop unused http parameters.
46668         * lib/soap/encodingstyle/soapHandler.rb, lib/soap/mapping/factory.rb,
46669           lib/soap/mapping/mapping.rb, lib/soap/mapping/registry.rb,
46670           lib/wsdl/soap/complexType.rb: ApacheSOAP's map support was broken
46671           under WSDL dynanic client environment.  fixed.
46673         * test/wsdl/raa/*: add tests.
46675         * lib/xsd/datatypes.rb: dateTime precision bug fix (at least, I hope.)
46676           bug of soap4r.  XSDDateTimeImple.to_time passed a Float to
46677           Time.local/Time.gm as an usec, and NUM2LONG(rb_num2long for Float)
46678           causes rounding error.
46680         * test/soap/test_basetype.rb, test/xsd/test_xsd.rb: add tests.
46682 Fri Nov 28 04:15:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46684         * eval.c (method_arity): used wrong Proc object.  [ruby-talk:86504]
46686 Fri Nov 28 00:47:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46688         * eval.c (rb_f_exit), process.c (rb_f_exit_bang): treat true as
46689           success, false as failure.  [ruby-dev:22067]
46691         * eval.c (rb_f_abort, rb_thread_switch), process.c (rb_f_system): use
46692           ANSI macro instead of hard coded value.
46694         * eval.c (rb_f_exit), process.c (rb_f_exit_bang): use VALUEs not but
46695           TYPEs.
46697 Thu Nov 27 22:05:48 2003  Akinori MUSHA  <knu@iDaemons.org>
46699         * eval.c, gc.c: FreeBSD/ia64 currently does not have a way for a
46700           process to get the base address for the RSE backing store, so
46701           hardcode it for the moment.
46702           [submitted by: Marcel Moolenaar <marcel@FreeBSD.org>]
46704 Thu Nov 27 17:36:42 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46706         * ext/tk/lib/tkafter.rb: bug fix on TkTimer#cancel_on_exception=(mode).
46707           TkTimer#wait recieves the exception of the callback.
46708           The exception is kept on @return_value.
46710 Thu Nov 27 16:58:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46712         * win32/win32.c (rb_w32_stat): remove _fullpath() for NUL: device.
46714 Wed Nov 26 15:38:47 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46716         * test/fileutils/test_fileutils.rb (test_ln_s): should take the
46717           existing symbolic link for OpenBSD.
46719 Wed Nov 26 04:48:42 2003  why the lucky stiff  <why@ruby-lang.org>
46721         * ext/syck/token.c: removed YYTOKTMP references which
46722           were causing buffer overflows on large block scalars,
46723           comments, quoted scalars and plain scalars.
46725         * ext/syck/rubyext.c: dynamic changing of buffer size.
46727         * ext/syck/syck.h: default buffer size of 4k.
46729 Wed Nov 26 00:55:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46731         * lib/webrick/httpresponse.rb: add HTTPResponse#keep_alive=.
46733         * lib/webrick/httpserver.rb (HTTPServer#run): should pass the
46734           request's keep_alive flag to the response.
46736 Tue Nov 25 21:41:35 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46738         * defines.h (ENV_IGNORECASE): should define when DOSISH without
46739           human68k. [ruby-dev:22047]
46741         * hash.c (env_has_value, env_index): don't ignore case of value.
46742           [ruby-dev:22048]
46744 Tue Nov 25 21:39:37 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46746         * file.c (path_check_1): honor sticky bits always.
46747           [ruby-talk:86273]
46749 Tue Nov 25 20:02:14 2003  Minero Aoki  <aamine@loveruby.net>
46751         * test/fileutils/test_fileutils.rb: do test in more deep
46752           directory.
46754         * test/fileutils/test_nowrite.rb: ditto.
46756 Tue Nov 25 19:04:23 2003  Tanaka Akira  <akr@m17n.org>
46758         * lib/open-uri.rb (URI::Generic#find_proxy): ENV case sensitivity test
46759           refined.
46761 Tue Nov 25 18:13:30 2003  Minero Aoki  <aamine@loveruby.net>
46763         * test/fileutils/test_fileutils.rb: chdir Dir.tmpdir before each
46764           test. [ruby-dev:22045]
46766         * test/fileutils/test_nowrite.rb: ditto.
46768 Tue Nov 25 17:52:11 2003  Tanaka Akira  <akr@m17n.org>
46770         * lib/open-uri.rb (URI::Generic#find_proxy): use http_proxy under CGI
46771           if the environment variable is case sensitive.
46773 Tue Nov 25 16:41:33 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46775         * test/wsdl/multiplefault.wsdl, test/wsdl/test_multiplefault.rb:
46776           removed.  this test requires extra libraries in soap4r/1.5.*.
46778 Tue Nov 25 16:24:42 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46780         * lib/soap/**/*.rb, lib/wsdl/**/*.rb, lib/xsd/**/*.rb: changed license;
46781           GPL2 -> Ruby's.
46783         * lib/soap/rpc/driver.rb, lib/soap/wsdlDriver.rb,
46784           lib/soap/streamHandler.rb: add interface to streamhandler.
46786         * lib/soap/marshal.rb: raise error if parse fails.
46788         * lib/soap/netHttpClient.rb: add https support.  Patched by
46789           Oliver M. Bolzer.
46791         * lib/soap/netHttpClient.rb: dump HTTP response message body by itself.
46793         * lib/soap/rpc/driver.rb, lib/soap/rpc/proxy.rb,
46794           lib/soap/wsdlDriver.rb: add driver#mandatorycharset interface to foce
46795           using charset for parsing response from buggy server.
46797         * lib/soap/encodingstyle/soapHandler.rb: support Apache Axis's half
46798           typed multi-ref array.
46800         * lib/soap/mapping/factory.rb, lib/soap/mapping/registry.rb: map
46801           SOAPStruct which has multi-accessors which name are the same, to an
46802           array.
46804         * lib/soap/rpc/element.rb: fixed illegal parameter order.
46806         * lib/soap/rpc/element.rb: element name of response message could have
46807           the name other than 'return'.
46809         * lib/wsdl/operation.rb, lib/wsdl/operationBinding.rb,
46810           lib/wsdl/soap/classDefCreator.rb, lib/wsdl/soap/methodDefCreator.rb,
46811           lib/wsdl/soap/methodDefCreatorSupport.rb: WSDL/1.1 allows plural
46812           fault definition in a operation. [ruby-talk:84948]
46814         * test/wsdl/multiplefault.wsdl, test/wsdl/test_multiplefault.rb: add
46815           test for above fix.
46817         * lib/wsdl/soap/complexType.rb: support WSDL array definition with
46818           maxOccures="unbound".
46820         * lib/xsd/charset.rb: use cp932 under emx.  Patched by
46821           Siena. / SHINAGAWA, Norihide in [ruby-dev:21972]
46823         * lib/xsd/xmlparser/parser.rb: set @charset nil by default.  Nil means
46824           'follow encoding declaration in XML'.
46826         * sample/soap/digraph.rb, sample/wsdl/amazon/wsdlDriver.rb,
46827           sample/wsdl/googleSearch/sampleClient.rb,
46828           sample/wsdl/googleSearch/wsdlDriver.rb,
46829           test/wsdl/test_emptycomplextype.rb,
46830           test/wsdl/marshal/test_wsdlmarshal.rb,
46831           test/xsd/test_xmlschemaparser.rb: use File.open(...) { |f| f.read }
46832           instead of File.open(...).read. [ruby-dev:21964]
46834         * test/wsdl/emptycomplextype.wsdl, test/wsdl/test_emptycomplextype.rb:
46835           simplify the test case.
46837         * test/wsdl/axisArray/*: add tests for axis's array encoding.
46839 Tue Nov 25 16:15:29 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46841         * ruby.h: don't treat Cygwin as Windows.
46843 Tue Nov 25 15:18:28 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46845         * configure.in: change default value of --enable-pthread (default: no)
46847 Tue Nov 25 07:31:16 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46849         * parse.y (primary): allow newlines just before right argument
46850           parenthesis.  (ruby-bugs:PR#1221)
46852 Mon Nov 24 23:32:06 2003  Tanaka Akira  <akr@m17n.org>
46854         * lib/open-uri.rb (OpenURI.open_loop, URI::HTTP#proxy_open): use
46855           catch/throw for redirection instead of exception.
46856           (OpenURI.open_loop, OpenURI.redirectable?): restrict redirection.
46858 Mon Nov 24 19:59:48 2003  Tanaka Akira  <akr@m17n.org>
46860         * lib/open-uri.rb (URI::Generic#find_proxy): use CGI_HTTP_PROXY
46861           instead of HTTP_PROXY in the CGI environment.
46863 Mon Nov 24 19:32:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46865         * ext/etc/extconf.rb: check for pw_passwd in struct passwd and
46866           gr_passwd in struct group for DJGPP.
46868         * ext/etc/etc.c: ditto.
46870         * ext/Setup.dj: support for curses, etc, zlib.
46872 Mon Nov 24 17:00:00 2003  Tanaka Akira  <akr@m17n.org>
46874         * lib/open-uri.rb: validate option names.
46875           :content_length_proc and :progress_proc option implemented.
46877 Mon Nov 24 14:53:10 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46879         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46880           (XCFLAGS): output empty value instead of `-DRUBY_EXPORT'.
46882 Sat Nov 22 23:09:45 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46884         * configure.in: set enable_pthread to no on MinGW.
46886 Sat Nov 22 22:56:20 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46888         * configure.in: add --enable-pthread option (default: yes)
46890 Sat Nov 22 22:48:46 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46892         * ext/tk/lib/tk.rb: add Tk.grab_release and fix bug of TkComposite
46894         * ext/tk/lib/tkafter.rb: bug fix of TkAfter#start
46896         * ext/tk/sample/tkcombobox.rb: new sample script
46898         * ext/tcltklib/tcltklib.c: add native thread check
46900 Sat Nov 22 18:49:47 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46902         * ext/curses/curses.c (window_nodelay): nodelay() of NetBSD's
46903           libcruses returns no value, just like keypad().
46905 Sat Nov 22 17:36:36 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46907         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46908           (HAVE_GETCWD): output to config.h.
46910         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46911           (XCFLAGS): output to config.status.
46913 Sat Nov 22 13:10:10 2003  Minero Aoki  <aamine@loveruby.net>
46915         * lib/fileutils.rb (have_st_ino?): djgpp has valid st_ino.
46917 Sat Nov 22 11:28:48 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46919         * gc.c (Init_stack): stack region is far smaller than usual if
46920           pthread is used.
46922 Sat Nov 22 07:30:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46924         * lib/test/unit/util/backtracefilter.rb: fixed a bug that occurred
46925           when an exception had no backtrace.
46927         * test/testunit/util/test_backtracefilter.rb: ditto.
46929 Fri Nov 21 16:44:18 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46931         * ext/tk/lib/tkentry.rb: fix the encoding trouble of percent
46932           substitutions on validatecommand option of TkEntry widget
46934         * ext/tk/lib/tk.rb: fix bug on {pack|grid}_propagate() method
46936 Fri Nov 21 16:12:11 2003  Akinori MUSHA  <knu@iDaemons.org>
46938         * ruby.1: Fix markups and grammar.
46940 Fri Nov 21 14:49:42 2003  Minero Aoki  <aamine@loveruby.net>
46942         * ruby.1: wrote about ruby related environment variables.
46944 Fri Nov 21 12:28:03 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46946         * marshal.c (w_extended): singleton methods should not be checked
46947           when dumping via marshal_dump() or _dump(). [ruby-talk:85909]
46949 Fri Nov 21 01:40:00 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46951         * configure.in: check <pthread.h>
46953         * ruby.h: include pthread.h if existence.
46954           define is_ruby_native() macro when not HAVE_NATIVETHREAD
46956         * eval.c: undef is_ruby_native() function when not HAVE_NATIVETHREAD
46958 Fri Nov 21 00:43:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46960         * lib/test/unit/assertions.rb: use #__send__ instead of #send.
46962         * lib/test/unit/testcase.rb: ditto.
46964 Thu Nov 20 19:19:22 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46966         * configure.in: don't find the Cygwin's pthread library on MinGW.
46968 Thu Nov 20 19:15:50 2003  Minero Aoki  <aamine@loveruby.net>
46970         * lib/fileutils.rb (have_st_ino?): emx (OS/2 with EMX) does not
46971           have st_ino (always 0). [ruby-dev:21972]
46973         * lib/fileutils.rb (rename_cannot_overwrite_file?): emx does not
46974           allow overwriting files by rename(2).
46976         * test/fileutils/test_fileutils.rb: windows? ->
46977           have_drive_letter?, have_file_perm?
46979 Thu Nov 20 17:50:58 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46981         * ext/tk/sample/tkballoonhelp.rb: new sample script
46983         * ext/tk/sample/tkmultilistbox.rb: ditto
46985         * ext/tk/sample/tktextframe.rb: ditto
46987 Thu Nov 20 13:37:34 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46989         * ruby.h: define is_ruby_native_thread() for no native thread
46990           environment
46992         * eval.c: ditto
46994 Thu Nov 20 12:42:47 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46996         * configure.in: always check existence of the pthread library
46998         * ruby.h: define macros for ruby's native thread check
47000         * eval.c: add ruby's native thread check
47002         * gc.c: ditto
47004 Wed Nov 19 14:45:18 2003  Minero Aoki  <aamine@loveruby.net>
47006         * lib/net/http.rb (to_ary): print more friendly warning message.
47008 Wed Nov 19 14:32:08 2003  Minero Aoki  <aamine@loveruby.net>
47010         * lib/fileutils.rb (fu_same?): add djgpp and wince.
47012         * lib/fileutils.rb (cannot_overwrite_file?): add wince.
47014 Wed Nov 19 11:04:47 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47016         * lib/fileutils.rb (cannot_overwrite_file?, have_st_ino?): bccwin32
47017           is same as mswin32.
47019 Wed Nov 19 07:54:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47021         * lib/test/unit.rb: do not run tests if $! is set.
47023         * lib/test/unit/assertionfailederror.rb: extend StandardError instead
47024           Exception (irb catches the former but not the latter).
47026 Tue Nov 18 23:31:36 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47028         * missing/memmove.c (memmove): take void *, not char *.
47030         * missing.h (memmove): ditto.
47032         * missing.h (strchr, strrchr): return char *, not int.
47034 Tue Nov 18 22:20:10 2003  Minero Aoki  <aamine@loveruby.net>
47036         * lib/fileutils.rb (fu_same?): temporal fix for windows.
47038 Tue Nov 18 19:05:04 2003  Minero Aoki  <aamine@loveruby.net>
47040         * lib/fileutils.rb (fu_same?): check by inode instead of path
47041           name, to detect two hard links pointing to the same content.
47043         * test/fileutils.rb: did not create correctly looped symlinks.
47045 Tue Nov 18 18:23:05 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47047         * ext/stringio/stringio.c (strio_read): behave as IO at empty string.
47048           [ruby-dev:21939], [ruby-dev:21941]
47050         * ext/stringio/stringio.c (strio_getc, strio_getline): set EOF flag.
47052         * ext/stringio/stringio.c (strio_rewind, strio_seek, strio_ungetc):
47053           clear EOF flag.
47055         * test/stringio/test_stringio.rb: imported from [ruby-dev:21941].
47057 Tue Nov 18 14:06:35 2003  Minero Aoki  <aamine@loveruby.net>
47059         * lib/fileutils.rb (fu_each_src_dest): raise if src==dest.
47060           [ruby-talk:85344] [ruby-core:01699]
47062         * lib/fileutils.rb: use Object#is_a? instead of Class#=== to allow
47063           e.g. remote objects for receivers.
47065         * lib/fileutils.rb: FileTest -> File.
47067         * lib/fileutils.rb: put parentheses for arguments of File.xxxx?
47069         * test/fileutils/test_fileutils.rb (test_cp): test "cp a a".
47071         * test/fileutils/test_fileutils.rb (test_mv): test "mv a a".
47073         * test/fileutils/test_fileutils.rb (test_ln): test "ln a a".
47075         * test/fileutils/test_fileutils.rb (test_ln_s): test "ln_s a a".
47077         * test/fileutils/test_fileutils.rb (test_install): test "install a a".
47079         * test/fileutils/fileasserts.rb: new method assert_symlink.
47081         * test/fileutils/fileasserts.rb: assert_is_directory -> assert_directory.
47083 Mon Nov 17 19:38:49 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47085         * file.c (getcwdofdrv): avoid using getcwd() directly, use
47086           my_getcwd() instead.
47088         * merged NeXT, OpenStep, Rhapsody ports patch from Eric Sunshine
47089           <sunshine@sunshineco.com>.  [ruby-core:01596]
47091 Mon Nov 17 10:50:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47093         * lib/optparse.rb (OptionParser::Completion::complete): allow least
47094           common completion for three or more candidates.
47096 Mon Nov 17 09:41:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47098         * lib/test/unit/ui/tk/testrunner.rb,
47099           lib/test/unit/ui/gtk/testrunner.rb:
47100           run GUI main loop in sub thread.
47102         * lib/test/unit/ui/gtk2/testrunner.rb: imported from rough.
47104         * lib/test/unit/autorunner.rb (keyword_display): sort keywords.
47106 Sun Nov 16 18:10:57 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47108         * eval.c (rb_eval): iterator should return value from next inside
47109           begin/rescue/end.  (ruby-bugs:PR#1218)
47111 Sun Nov 16 13:26:07 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47113         * marshal.c (w_object): LINK check earlier than anything else,
47114           i.e. do not dump TYPE_IVAR for already dumped objects.
47115           (ruby-bugs:PR#1220)
47117         * eval.c (rb_eval): call "inherited" only when a new class is
47118           generated; not on reopening.
47120         * eval.c (eval): prepend error position in evaluating string to
47121           "mesg" attribute string only when it's available and is a
47122           string.
47124 Sun Nov 16 12:16:10 2003  Minero Aoki  <aamine@loveruby.net>
47126         * lib/net/protocol.rb: logging response body. [experimental]
47127           [ruby-list:38800]
47129 Sun Nov 16 10:49:38 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
47131         * lib/thread.rb (Thread.exclusive): wrap method definition in
47132           class Thread to enable rdoc to process.
47134 Sun Nov 16 09:45:23 2003  Minero Aoki  <aamine@loveruby.net>
47136         * lib/net/http.rb (set_debug_output): warn if method is called
47137           after #start.  [ruby-dev:38798]
47139 Sun Nov 16 04:41:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47141         * eval.c (eval): do not re-raise exception to avoid unnecessary
47142           exception copying, instead modify exception and internal
47143           information to adjust eval().
47145         * eval.c (backtrace): can return the current frame information
47146           only if lev < -1.
47148 Sat Nov 15 22:16:42 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47150         * /ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext):
47151           refine error message.
47153 Sat Nov 15 10:05:40 2003  Tanaka Akira  <akr@m17n.org>
47155         * lib/open-uri.rb (OpenURI.open_loop, OpenURI::HTTP#proxy_open):
47156           refactored to support options.
47157           (Buffer): maintain size by this class.
47159 Sat Nov 15 07:40:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47161         * eval.c (rb_method_node): new API to retrieve method body.
47163 Fri Nov 14 13:21:30 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47165         * ext/tcltklib/tcltklib.c: fix (en-bugged at 2003/11/07)
47167         * ext/tk/lib/tkdialog.rb: TkDialog.new accepts a parent widget
47168           argument [ruby-talk:85066]
47170 Thu Nov 13 20:53:35 2003  Tanaka Akira  <akr@m17n.org>
47172         * lib/open-uri.rb (Kernel[#.]open): hard coded URI schemes removed.
47173           [ruby-ext:02251]
47175 Thu Nov 13 19:17:00 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47177         * lib/test/unit/ui/tk/testrunner.rb: use grid and panedwindow
47178           (if available)
47180 Thu Nov 13 17:56:41 2003  Tanaka Akira  <akr@m17n.org>
47182         * lib/open-uri.rb (OpenURI.open_uri): use File::RDONLY.
47183           reported by Take_tk <ggb03124@nifty.ne.jp>.
47184           [ruby-ext:02245]
47186 Thu Nov 13 16:45:53 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47188         * ext/openssl/ossl_x509req.c (ossl_x509req_to_der): add function for
47189           X509::Request#to_der.
47191 Thu Nov 13 11:31:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47193         * lib/optparse.rb (OptionParser::Completion#complete): prior shorter
47194           name to containing longer name.
47196 Thu Nov 13 06:08:54 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47198         * ext/tk/lib/tk.rb: stop freezing some classes
47200         * ext/tk/lib/multi-tk.rb: ditto.
47202 Wed Nov 12 17:32:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47204         * lib/test/unit/assertions.rb (assert_throws, assert_nothing_thrown):
47205           uncaught throw in sub thread raises ThreadError.
47207         * lib/test/unit/ui/tk/testrunner.rb (setup_ui): "expand" is not
47208           necessary.
47210 Wed Nov 12 14:09:43 2003  Shugo Maeda  <shugo@ruby-lang.org>
47212         * test/monitor/test_monitor.rb: fix the timing problem by Queue.
47214 Wed Nov 12 12:59:44 2003  Shugo Maeda  <shugo@ruby-lang.org>
47216         * test/monitor/test_monitor.rb: added.
47218 Wed Nov 12 10:14:28 2003  Shugo Maeda  <shugo@ruby-lang.org>
47220         * lib/monitor.rb: refactored. Thanks, Gennady Bystritsky.
47222 Wed Nov 12 06:11:39 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47224         * ext/openssl/ossl.c (ossl_x509_sk2ary, ossl_x509crl_sk2ary):
47225           add functions to convert STACK into Array.
47227         * ext/openssl/ossl.h: add prototypes.
47229         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_set_certificates,
47230           ossl_pkcs7_get_certificates, ossl_pkcs7_get_crls,
47231           ossl_pkcs7_set_crls): add functions for PKCS7#certificates=
47232           PKCS7#certificates, PKCS7#crls= and PKCS7#crls.
47234 Wed Nov 12 00:47:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47236         * lib/test/unit/ui/testrunnermediator.rb: should require 'test/unit'.
47238 Tue Nov 11 23:54:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47240         * lib/test/unit/ui/gtk/testrunner.rb: added a rescue clause to handle
47241           the case when the requested font is not available.
47243 Tue Nov 11 22:44:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47245         * io.c (appendline): file may not end with newline.  a bug if
47246           READ_DATA_PENDING_PTR is defined. [ruby-talk:84925]
47248 Tue Nov 11 10:42:41 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47250         * ext/tk/lib/tk.rb: raise an exception when creating TkWindow
47251           object, because TkWindow class is an abstract class.
47253 Tue Nov 11 03:30:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47255         * lib/ext/openssl/ossl_conf.c (ossl_config_get_value): return nil
47256           if the specified value doesn't exist.
47258         * lib/ext/openssl/ossl_conf.c (ossl_config_get_section): return
47259           a empty hash if the specified section doesn't exist.
47261 Mon Nov 10 11:40:29 2003  Shugo Maeda  <shugo@ruby-lang.org>
47263         * lib/monitor.rb (wait): return true on signal/broadcastfalse and
47264           false on timeout. Thanks Gennady Bystritsky.
47266 Mon Nov 10 00:07:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47268         * parse.y (primary): primary_value may be 0 when syntax error.
47269           [ruby-talk:84893]
47271 Sun Nov  9 02:05:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47273         * lib/test/unit/assertions.rb: un-deprecated #assert_not_nil to
47274           maintain symmetry with #assert_nil. Also added better output for
47275           #assert_kind_of.
47277         * test/testunit/tc_assertions.rb: ditto.
47279 Sat Nov  8 18:50:20 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47281         * test/wsdl/raa/*: add new testcase for WSDL loading, parsing and
47282           reading.
47284         * test/soap/marshal/*: backport from soap4r/1.5.1.  all differences are
47285           for ruby/1.6.
47287         * lib/soap/*: backport from soap4r/1.5.1.  all differences are for
47288           ruby/1.6.
47290         * lib/wsdl/data.rb, lib/wsdl/xmlSchema/data.rb: move definition of
47291           ArrayTypeAttrName from ::WSDL::XMLSchema::* to ::WSDL::*.
47292           [ruby-talk:84813]
47294         * lib/wsdl/soap/definitions.rb: element name typo in custom exception
47295           struct definition which is needed for wsdlDriver; camelCase ->
47296           underscore_name.
47298 Sat Nov  8 13:49:50 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47300         * configure.in: improvement of pthread check
47302 Sat Nov  8 13:28:46 2003  Takaaki Tateishi  <ttate@ttsky.net>
47304         * ext/dl/sym.c: Add DL.win32_last_error and DL.last_error.
47305           Thanks, Kaoru Shirai.
47307 Sat Nov  8 06:19:38 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47309         * ext/tcltklib/tcltklib.c: To fix 'pthread-enabled Tcl/Tk' problem,
47310           TclTkIp#_eval calls Tcl_Eval() on the mainloop thread only
47311           (queueing a handler to the EventQueue).
47313         * ext/tcltklib/README.1st: edit the description of '--with-pthread-ext'
47315 Fri Nov  7 23:23:04 2003  Tanaka Akira  <akr@m17n.org>
47317         * lib/pathname.rb (Pathname#+): if self or the argument is `.', return
47318           another.
47319           (Pathname#parent): if self is `.', return `..'.
47320           (Pathname#children): if self is `.', don't prepend self for a
47321           pathname in a result.
47322           (Pathname#join): re-implemented using Pathname#+.
47323           (Pathname#find): if self is `.', remove `./' prefix of yielding
47324           pathname.
47326 Fri Nov  7 10:23:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47328         * ext/socket/socket.c (make_hostent): get rid of SEGV on aliases
47329           lookup failure.  (ruby-bugs:PR#1215)
47331 Fri Nov  7 04:08:05 2003  UENO Katsuhiro  <katsu@blue.sky.or.jp>
47333         * ext/zlib/zlib.c (Init_zlib): define Zlib::GzipReader#each_line as
47334           an alias of Zlib::GzipReader#each.
47336 Fri Nov  7 01:03:16 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47338         * eval.c (rb_load): save and restore rb_prohibit_interrupt.
47339           [ruby-dev:21857]
47341 Thu Nov  6 18:05:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47343         * io.c (rb_io_inspect): show the path also at a closed file.
47344           [ruby-dev:21851]
47346 Thu Nov  6 11:42:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47348         * ext/stringio/stringio.c (strio_set_string, strio_reopen): check
47349           tainted.
47351         * ext/stringio/stringio.c (strio_copy, strio_ungetc, strio_write,
47352           strio_putc): add infection.
47354         * ext/stringio/stringio.c (strio_path): just nil.  [ruby-dev:21846]
47356         * ruby.c (proc_options): reserve searched script path in the
47357           source file name table.  [ruby-list:38765]
47359         * lib/optparse.rb (OptionParser::Completion#complete): default not to
47360           ignore case on completion.  [ruby-talk:84726]
47362         * win32/win32.c (make_cmdvector): process backslashes even if a quote
47363           is not enclosed.
47365 Wed Nov  5 23:49:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47367         * sample/openssl/gen_csr.rb: there (at least) is a CA which does not
47368           accept DN in UTF8STRING format.  it's a sample.
47370 Wed Nov  5 22:55:16 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47372         * configure.in, eval.c, signal.c: : add '--with-pthread-ext'
47373           option to fix the pthread trouble on 'tcltklib'
47375         * ext/tcltklib/README.1st: add the description of '--with-pthread-ext'
47377         * ext/tk/lib/tktext.rb: add TkText#text_copy, text_cut, text_paste
47378           to support Tcl/Tk8.4's tk_textCopy, tk_textCut, tk_textPaste
47380         * ext/tk/lib/tk.rb: add TkMenu#set_focus support Tcl/Tk's
47381           tk_menuSetFocus
47383 Wed Nov  5 17:33:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47385         * eval.c (rb_load): allow interrupt during loaded program
47386           evaluation.  [ruby-dev:21834]
47388         * hash.c (rb_hash_fetch): always warn if default argument and a
47389           block are supplied at the same time. [ruby-dev:21842]
47391         * hash.c (env_fetch): ditto.
47393         * array.c (rb_ary_fetch): ditto.
47395 Wed Nov  5 19:08:47 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47397         * lib/optparse.rb (OptionParser::Switch::PlacedArgument::parse):
47398           do not remove next argument if empty value is placed.
47400         * test/optparse: added.
47402 Wed Nov  5 17:05:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47404         * lib/test/unit/ui/gtk/testrunner.rb: typo.
47406 Wed Nov  5 11:13:32 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47408         * string.c: add #include "version.h". this file still depends on it.
47410         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub,
47411           wince/Makefile.sub: add version.h dependency to string.c.
47413 Wed Nov  5 09:14:23 2003  Shugo Maeda  <shugo@ruby-lang.org>
47415         * lib/monitor.rb: revert to the previous revision.
47417 Wed Nov  5 08:39:51 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47419         * lib/webrick/https.rb (HTTPRequest#parse): set @client_cert_chain.
47421         * lib/webrick/https.rb (HTTPRequest#meta_vars): create
47422           SSL_CLIENT_CERT_CHAIN_n from @client_cert_chain.
47424         * ext/openssl/ossl_ssl.c (ossl_ssl_get_peer_cert_chain): return nil
47425           if no cert-chain was given.
47427 Tue Nov  4 23:44:48 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47429         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
47430           remove needless version.h dependency.
47432 Tue Nov  4 23:38:43 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47434         * class.c, hash.c, string.c: remove #include "version.h".
47436         * Makefile.in: remove needless version.h dependency.
47438 Tue Nov  4 06:54:52 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47440         * io.c (read_all): fptr->f may be NULL, if IO is closed in the
47441           signal handler.
47443         * io.c (io_read): ditto.
47445         * string.c (get_pat): remove 1.8.0 warning code.
47447         * string.c (rb_str_match): extend warning until 1.8.2.
47449         * string.c (rb_str_match2): ditto.
47451         * class.c (class_instance_method_list): remove 1.8.0 warnings.
47452           method_list now recurs.  [ruby-dev:21816]
47454         * class.c (rb_obj_singleton_methods): ditto.
47456         * array.c (rb_ary_select): remove select with block.
47457           [ruby-dev:21824]
47459         * hash.c (rb_hash_select): ditto.
47461         * hash.c (env_select): ditto.
47463         * re.c (match_select): ditto.
47465         * struct.c (rb_struct_select): ditto.
47467 Mon Nov  3 22:53:21 2003  Minero Aoki  <aamine@loveruby.net>
47469         * lib/racc/parser.rb: synchronize with Racc 1.4.4.
47471         * ext/racc/cparse/cparse.c: ditto.
47473         * ext/racc/cparse/cparse.c (parse_main): should abort when
47474           the length of LR state stack <=1, not ==0.
47476 Mon Nov  3 08:50:47 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47478         * process.c (check_uid_switch): remove duplicated error messages.
47480         * process.c (check_gid_switch): ditto.
47482 Sun Nov  2 02:28:33 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47484         * lib/webrick/ssl.rb: new option :SSLExtraChainCert.
47486 Sun Nov  2 01:02:04 2003  Akinori MUSHA  <knu@iDaemons.org>
47488         * string.c (rb_str_hash): Update the HASH_PERL alternative hash
47489           algorithm in sync with Perl 5.8.
47491         * st.c (strhash): Ditto.
47493 Sat Nov  1 18:21:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47495         * ext/openssl/ossl_ssl.c (ossl_ssl_peer_cert_chain): add new method
47496           SSLSocket#peer_cert_chain.
47498         * ext/openssl/ossl_x509req.c (GetX509ReqPtr): new function
47499           which returns underlying X509_REQ.
47501         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_issuer_cert,
47502           ossl_x509extfactory_set_subject_cert, ossl_x509extfactory_set_crl,
47503           ossl_x509extfactory_set_subject_req, ossl_x509extfactory_set_config):
47504           use underlying C struct without duplication not to leak momory.
47506 Sat Nov  1 01:49:03 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47508         * lib/soap/mapping/factory.rb: mark marshalled basetype objects when
47509           @allow_original_mapping is true.  multi-referencing basetype node is
47510           prohibited in SOAP/1.1 encoding but soap4r's original ruby object
47511           mapping requires basetype to be marked to detect self referencing
47512           loop.  e.g. o = 1; o.instance_eval { @iv = o }  soap4r's original
47513           mapping is only used through soap/marshal API.
47515         * test/soap/marshal/test_marshal.rb: add tests for self referencing
47516           immutable objects.
47518         * test/soap/calc/test_calc_cgi.rb: fix test name.
47520 Fri Oct 31 22:26:29 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
47522         * wince/string_wce.c (strrchr): should decrement pointer.
47524         * wince/Makefile.sub: correct a range of isdigit().
47526 Fri Oct 31 12:55:24 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47528         * configure.in, lib/mkmf.rb: add RPATHFLAG for NetBSD.
47529           [ruby-dev:21791]
47531         * bcc32/Makefile.sub, win32/Makefile.sub, win32/Makefile.sub: ditto.
47533 Fri Oct 31 01:38:14 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47535         * wince/Makefile.sub, win32/Makefile.sub (.y.c): allow white spaces
47536           at the beginning of line to remove by sed. (ruby-bugs-ja:PR#580)
47538 Fri Oct 31 01:02:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47540         * compar.c (cmp_equal): protect exceptions from <=> comparison
47541           again.  returns nil if any exception or error happened during
47542           comparison.
47544         * eval.c (search_required): should update *featurep when DLEXT2 is
47545           defined. (ruby-bugs-ja:PR#581)
47547 Thu Oct 30 23:41:04 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
47549         * lib/drb/drb.rb: add DRbArray
47551         * lib/drb/invokemethod.rb: fix Hash#each problem. [ruby-dev:21773]
47553         * lib/drb/unix.rb: add LoadError. [ruby-dev:21743]
47555 Thu Oct 30 23:19:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47557         * lib/soap/generator.rb: better XML pretty printing.
47559         * lib/soap/encodingstyle/soapHandler.rb: remove unnecessary namespace
47560           assignment in the element which has "encodingStyle" attribute, and
47561           add necessary namespace assignment for "arrayType" attribute.
47563         * test/soap/calc/test_calc_cgi.rb: take over $DEBUG to ruby process
47564           through CGI.
47566 Thu Oct 30 22:59:39 2003  why the lucky stiff  <why@ruby-lang.org>
47568         * ext/syck/yaml2byte.c: HASH const too long.  Thanks, matz.
47570 Thu Oct 30 19:13:53 2003  Akinori MUSHA  <knu@iDaemons.org>
47572         * ext/syck/MANIFEST: Add yamlbyte.h.
47574 Thu Oct 30 14:25:31 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47576         * io.c (READ_DATA_BUFFERED): new macro to detect whether stdio
47577           buffer filled.
47579         * io.c (rb_io_fptr_cleanup): move path deallocation to
47580           rb_io_fptr_finalize (finalizer called by GC).
47582 Thu Oct 30 13:23:39 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47584         * parse.y (logop): left may be NULL. [ruby-talk:84539]
47586         * eval.c (rb_eval): NODE_CASE nd_head may be NULL.
47588 Thu Oct 30 10:14:51 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47590         * lib/test/unit/autorunner.rb: make fox runner work.
47592 Thu Oct 30 09:32:26 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47594         * process.c (rb_f_system): fixed lack of security check before
47595           calling do_spawn() on win32. [ruby-talk:84555]
47597 Thu Oct 30 02:46:35 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47599         * eval.c (proc_invoke): single array value to normal Proc#call
47600           (i.e. not via lambda call), should be treated just like yield.
47601           [ruby-dev:21726]
47603 Thu Oct 30 02:25:48 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47605         * ext/openssl/lib/openssl/buffering.rb (Buffering#initialize):
47606           add new method to inherit @sync from @io.sync.
47608         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): no need to
47609           set sync flag explicitly.
47611         * ext/openssl/ossl_ssl.c (ossl_sslctx_initialize): call super.
47613         * ext/openssl/ossl_ssl.c (ossl_sslctx_setup): set extra chain
47614           certificates in @extra_chain_cert.
47616 Wed Oct 29 22:02:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47618         * test/drb/drbtest.rb: use rbconfig.rb to make the path of ruby
47619           interpreter to exec, instead of test/ruby/envutil.rb,
47621 Wed Oct 29 19:58:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47623         * ext/tcltklib/tcltklib.c (CONST84): define CONST84 when it is not
47624           defined and TCL_MAJOR_VERSION >= 8.
47626         * ext/tcltklib/tcltklib.c (VwaitVarProc, WaitVariableProc,
47627           rb_threadVwaitProc): use CONST84 instead of CONST.
47629         * ext/tcltklib/tcltklib.c (ip_rbTkWaitCommand,
47630           ip_rb_threadTkWaitCommand): use CONST84 always.
47632 Wed Oct 29 17:27:05 2003  Tanaka Akira  <akr@m17n.org>
47634         * re.c (rb_reg_s_union, Init_Regexp): new method `Regexp.union'.
47636         * lib/pathname.rb (realpath): examine Dir.pwd because it may have
47637           symlinks.
47639 Wed Oct 29 17:16:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47641         * eval.c (rb_longjmp): must not disturb original jump.
47642           [ruby-dev:21733]
47644 Wed Oct 29 15:28:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47646         * eval.c (Init_Proc): taint preallocated exception object
47647           sysstack_error. [ruby-talk:84534]
47649 Wed Oct 29 11:27:39 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47651         * parse.y (ret_args): node may be NULL. [ruby-talk:84530]
47653 Tue Oct 28 15:20:12 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47655         * ext/tcltklib/tcltklib.c (VwaitVarProc, ip_rbVwaitObjCmd,
47656           WaitVariableProc, WaitVisibilityProc, WaitWindowProc,
47657           ip_rbTkWaitObjCmd, ip_rbTkWaitCommand, rb_threadVwaitProc,
47658           rb_threadWaitVisibilityProc, rb_threadWaitWindowProc,
47659           ip_rb_threadVwaitObjCmd, ip_rb_threadTkWaitObjCmd): prototype;
47660           avoid VC++ warnings.
47662 Mon Oct 27 19:19:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47664         * eval.c (rb_longjmp): ignore reentering error while warning.
47665           [ruby-dev:21730]
47667 Mon Oct 27 00:23:50 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47669         * ext/tcltklib/tcltklib.c (ip_ruby): bug fix on Win : hang-up when
47670           calling 'exit' in the Tk callback procedure. [ruby-list:38656]
47672 Sat Oct 25 09:18:04 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47674         * eval.c (rb_method_missing): protect exception from within
47675           "inspect".  (ruby-bugs:PR#1204)
47677 Fri Oct 24 23:26:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47679         * hash.c (rb_hash_each): Hash#each should yield single value.
47680           [ruby-talk:84420]
47682         * hash.c (env_each): ditto for ENV.each.
47684 Thu Oct 23 20:25:32 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47686         * lib/webrick/server.rb (GenericServer#start): should rescue
47687           IOError from IO::accept. [ruby-dev:21692]
47689 Thu Oct 23 17:59:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47691         * eval.c (ruby_cleanup): initialize stack bottom for embedding.
47692           [ruby-dev:21686]
47694         * ext/dl/extconf.rb: move list of files to clean from DEPEND file,
47695           to get rid of macro redefinitions.
47697 Thu Oct 23 13:44:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47699         * parse.y: integrate operations for stack_type.  [ruby-dev:21681]
47701 Thu Oct 23 00:41:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47703         * test/soap/calc/*, test/soap/helloworld/*: set logging threshold
47704           to ERROR.
47706 Wed Oct 22 12:53:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47708         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
47709           ignore tests which raised LoadError.
47711         * test/drb/drbtest.rb, test/ruby/test_beginendblock.rb,
47712           test/ruby/test_system.rb: avoid requiring same file twice.
47714         * test/drb/test_drbssl.rb, test/drb/test_drbunix.rb: should not use
47715           ARGV unless invoked directly.  do not create test cases unless
47716           required libraries are available.
47718 Wed Oct 22 02:31:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47720         * eval.c (ruby_cleanup): should not ignore exit_value in END
47721           execution. [ruby-dev:21670]
47723 Tue Oct 21 23:16:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47725         * eval.c (ruby_cleanup): call finalizers and exit procs before
47726           terminating threads.
47728         * eval.c (ruby_cleanup): preserve ruby_errinfo before ruby_finalize_0().
47730 Tue Oct 21 15:57:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47732         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
47733           prepend the directory of target file to the load path.
47735 Tue Oct 21 15:08:53 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47737         * win32/win32.c (do_spawn, do_aspawn): should wait child process even
47738           if callded with P_OVERLAY.
47740         * win32/win32.c (do_spawn, do_aspawn): should return child's exit
47741           status to parent.
47743 Tue Oct 21 00:35:02 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47745         * test/soap/calc/*, test/soap/helloworld/*: catch the exception from
47746           test server thread and recover.
47748 Tue Oct 21 00:22:57 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
47750         * test/drb/*: import drb/runit.
47752 Mon Oct 20 23:55:47 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47754         * eval.c (rb_eval): set current node after arguments evaluation.
47755           [ruby-dev:21632]
47757         * eval.c (rb_yield_0): set current node and keep it at local jump.
47759 Mon Oct 20 22:01:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47761         * eval.c (rb_thread_cleanup): keep thread group for main thread.
47762           [ruby-dev:21644]
47764 Mon Oct 20 18:28:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47766         * eval.c (rb_catch): backout.
47768 Mon Oct 20 17:31:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47770         * eval.c (PUSH_FRAME): generate unique number to be TAG_JUMP()
47771           destination.
47773         * eval.c (localjump_destination): use unique number in ruby_frame
47774           for localjump destination.
47776 Mon Oct 20 11:31:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47778         * test/ruby/test_signal.rb (test_signal): restore old trap.
47780 Mon Oct 20 11:00:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47782         * gc.c (gc_sweep): loosen page free condition to avoid add_heap()
47783           race condition. [ruby-dev:21633]
47785         * gc.c (gc_sweep): do not update malloc_limit when malloc_increase
47786           is smaller than malloc_limit.
47788 Mon Oct 20 09:45:12 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47790         * lib/debug.rb (debug_command): remove debug print.
47792 Sun Oct 19 13:12:30 2003  Tanaka Akira  <akr@m17n.org>
47794         * lib/pathname.rb (foreachline, dir_foreach): add obsolete warning.
47796 Sun Oct 19 00:14:22 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47798         * test/soap/calc/*, test/soap/helloworkd/*: changed port# of test
47799           server. (17171)
47801 Sat Oct 18 23:01:32 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47803         * missing/acosh.c (DBL_MANT_DIG): typo fix(ifdef -> ifndef).
47805 Sat Oct 18 05:48:59 2003  why the lucky stiff  <why@ruby-lang.org>
47807         * ext/syck/rubyext.c: YAML::Syck::compile method.
47809         * ext/syck/syck.c: Buffer edge bug.
47811         * ext/syck/yaml2byte.c: YAML to bytecode converter.
47813         * ext/syck/yamlbyte.h: Ditto.
47815         * ext/syck/bytecode.c: Bytecode parser fixes to empty collections
47816           and empty strings.
47818         * ext/syck/token.c: Ditto.
47820 Fri Oct 17 23:07:38 2003  Akinori MUSHA  <knu@iDaemons.org>
47822         * ext/enumerator/enumerator.c, ext/enumerator/enumerator.txt:
47823           Provide Kernel#to_enum as an alias for Kernel#enum_for.  Maybe
47824           this is a better name.
47826 Fri Oct 17 23:00:30 2003  Akinori MUSHA  <knu@iDaemons.org>
47828         * lib/generator.rb: Add rdoc documentation.
47830 Fri Oct 17 22:16:42 2003  Akinori MUSHA  <knu@iDaemons.org>
47832         * lib/set.rb: Reword and fix Overview.
47834         * lib/set.rb: It is not necessary to require
47835           'test/unit/ui/console/testrunner'.
47837 Fri Oct 17 11:15:22 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47839         * test/ruby/test_range.rb: added.
47841         * MANIFEST: add test/ruby/test_range.rb.
47843 Fri Oct 17 03:21:23 2003  William Sobel  <will.sobel@barra.com>
47845         * ext/socket/socket.c (make_hostent): h_aliases may be NULL.
47846           (ruby-bugs:PR#1195)
47848         * ext/socket/socket.c (sock_s_gethostbyaddr): ditto.
47850 Fri Oct 17 00:12:41 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47852         * ext/tk/lib/tk.rb: (bug fix) instance variable @frame was used
47853           without initializing on TkComposite module.
47855 Thu Oct 16 23:51:04 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47857         * ext/tk/lib/tk.rb: If $DEBUG == true and some exception is caused
47858           in a callback operation, Ruby/Tk shows a (verbose) backtrace
47859           information on the callback process.
47861 Thu Oct 16 17:09:19 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47863         * lib/debug.rb (DEBUGGER__::Context::debug_command): do not call
47864           debug_silent_eval() when $1 is not set. (ruby-bugs:PR#1194)
47866 Thu Oct 16 16:54:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47868         * string.c (rb_str_upto): ("a"..."a").to_a should return [].
47869           [ruby-core:01634]
47871 Thu Oct 16 16:40:51 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47873         * ext/tk/lib/tk.rb:
47874           Add Tk::EncodedString and Tk::UTF8_String class to support
47875           characters using the \uXXXX escape to the UNICODE string.
47877         * ext/tk/sample/{demos-en,demos-jp}/unicodeout.rb
47878           new demo-scripts (samples of Tk::UTF8_String)
47880         * ext/tk/sample/{demos-en,demos-jp}/widget
47881           add entries for 'unicodeout.rb'
47883 Thu Oct 16 08:38:06 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47885         * test/digest/test_digest.rb (test_eq): show failed class.
47887         * test/ruby/test_iterator.rb (test_break, test_return_trace_func):
47888           test localjump destination.
47890 Wed Oct 15 20:22:31 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47892         * lib/soap/netHttpClient.rb: use URI::HTTP#request_uri instead of
47893           instance_eval('path_query').  [ruby-list:38575]
47895 Wed Oct 15 17:24:45 2003  URABE Shyouhei  <root@mput.dip.jp>
47897         * lib/cgi.rb (CGI::Cookie): tiny typo fix.
47899 Wed Oct 15 15:00:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47901         * eval.c (ruby_run): just return FAILURE instead of parse error
47902           count.  [ruby-list:38569]
47904 Wed Oct 15 13:17:02 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47906         * ext/digest/digest.c (rb_digest_base_alloc): need to initialize
47907           buffer. [ruby-dev:21622]
47909 Wed Oct 15 11:23:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47911         * marshal.c (w_object): dump extended modules as well.
47913         * marshal.c (r_object0): TYPE_USRMARSHAL should restore extended
47914           modules before invoking marshal_load.  these two fixes are done
47915           by Masatoshi Seki <m_seki@mva.biglobe.ne.jp>.
47917 Wed Oct 15 09:30:34 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47919         * ext/enumerator/enumerator.c (enumerator_each): avoid VC++ warning.
47921         * ext/syck/syck.h: include stdio.h for definition of FILE.
47923 Wed Oct 15 08:09:07 2003  why the lucky stiff  <why@ruby-lang.org>
47925         * ext/syck/bytecode.c: Checkin of YAML bytecode support.
47927         * ext/syck/gram.c: Ditto.
47929         * ext/syck/syck.c: Ditto.
47931         * ext/syck/token.c: Ditto.
47933         * ext/syck/handler.c: Ditto.
47935         * ext/syck/handler.c: Now using 'tag' rather than 'taguri' in type URIs.
47937         * ext/syck/rubyext.c: Ditto (on both counts).
47939 Wed Oct 15 05:05:53 2003  Akinori MUSHA  <knu@iDaemons.org>
47941         * lib/generator.rb: A new library which converts an internal
47942           iterator to an external iterator.
47944         * lib/abbrev.rb: A new library which creates an abbreviation table
47945           from a list.
47947 Wed Oct 15 04:31:51 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47949         * ext/tk/sample/demos-en/entry3.rb, ext/tk/sample/demos-jp/entry3.rb:
47950           new demo-scripts
47952         * ext/tk/sample/demos-en/widget, ext/tk/sample/demos-jp/widget:
47953           add entries for 'entry3.rb'
47955 Wed Oct 15 04:31:47 2003  Akinori MUSHA  <knu@iDaemons.org>
47957         * test/digest/test_digest.rb: Moved from ext/digest/test.rb.
47959 Wed Oct 15 03:53:20 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47961         * ext/tk/lib/tk.rb: fixed trouble on auto-load Tcl commands (enbug
47962           on the last commit).
47964 Wed Oct 15 00:25:00 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47966         * parse.y (yylex): argument parentheses preceded by spaces should
47967           be warned; not error.  [ruby-talk:84103]
47969 Wed Oct 15 00:20:15 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47971         * ext/tcltklib/tcltklib.c: replace Tcl/Tk's vwait and tkwait to
47972           switch on threads smoothly and avoid seg-fault.
47974         * ext/tcltklib/tcltklib.c: add TclTkIp._thread_vwait and
47975           _thread_tkwait for waiting on a thread. (Because Tcl/Tk's vwait
47976           and tkwait command wait on an eventloop.)
47978         * ext/tk/lib/multi-tk.rb: support TclTkIp._thread_vwait and
47979           _thread_tkwait.
47981         * ext/tk/lib/tk.rb: now, TkVariable#wait has 2 arguments.
47982           If 1st argument is true, waits on a thread. If false, waits on
47983           an eventloop. If 2nd argument is true, checks existence of
47984           rootwidgets. If false, doesn't. Default is wait(true, false).
47986         * ext/tk/lib/tk.rb: add TkVariable#tkwait(arg) which is equal to
47987           TkVariable#wait(arg, true). wait_visibility and wait_destroy
47988           have an argument for waiting on a thread or an eventloop.
47990         * ext/tk/lib/tk.rb: improve of accessing Tcl/Tk's special variables.
47992         * ext/tk/lib/tkafter.rb: support 'wait on a thread' and 'wait on
47993           an eventloop'.
47995 Wed Oct 15 00:10:24 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47997         * lib/soap/baseData.rb: Introduce SOAPType as the common ancestor of
47998           SOAPBasetype and SOAPCompoundtype.
48000         * lib/soap/generator.rb, lib/soap/element.rb, lib/soap/encodingstyle/*:
48001           Encoding methods signature change.  Pass SOAPGenerator as a parameter.
48003         * lib/soap/mapping/*, test/soap/marshal/test_marshal.rb: Refactoring
48004           for better marshalling/unmarshalling support.  Now I think SOAP
48005           marshaller supports all kind of object graph which is supported by
48006           Ruby's original marshaller.  Of course there could be bugs as always.
48007           Find it.  :-)
48009         * lib/soap/rpc/standaloneServer.rb: Set severity threshould to INFO.
48010           DEBUG is too noisy.
48012         * lib/xsd/datatypes.rb: DateTime#of is obsoleted.  Use DateTime#offset.
48014         * test/wsdl/emptycomplextype.wsdl, test/xsd/xmlschema.xml: Avoid
48015           useless warning.
48017 Tue Oct 14 19:09:35 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48019         * eval.c (ruby_finalize_0): return the given exit status unless
48020           SystemExit got raised.
48022 Tue Oct 14 11:53:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48024         * intern.h (ruby_stop): never return.
48026         * ruby.h (ruby_run): ditto.
48028 Tue Oct 14 04:43:55 2003  Tanaka Akira  <akr@m17n.org>
48030         * lib/pathname.rb (realpath): make ELOOP check bit more robust.
48031           (children): prepend self by default.
48032           (chroot): obsoleted.
48034 Tue Oct 14 02:29:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48036         * eval.c (rb_require_safe): segfault after loading .so.
48038 Tue Oct 14 02:05:23 2003  Akinori MUSHA  <knu@iDaemons.org>
48040         * ext/Setup*, ext/enumerator/*: Add ext/enumerator, a helper
48041           module for the Enumerable interface.
48043 Mon Oct 13 23:55:59 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48045         * test/ruby/envutil.rb: use Config::CONFIG["ruby_install_name"],
48046           not "ruby".
48048 Mon Oct 13 23:57:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48050         * eval.c (rb_feature_p): match by classified suffix.
48052         * eval.c (rb_require_safe): require library in the specified safe
48053           level.
48055         * variable.c (rb_autoload, rb_autoload_load): restore safe level
48056           when autoload was called.  [ruby-dev:21338]
48058         * intern.h: prototypes; rb_require_safe.
48060         * test/runner.rb: accept non-option arguments.
48062 Mon Oct 13 20:49:51 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48064         * string.c (str_new4): should not preserve FL_TAINT status in the
48065           internal shared string. [ruby-dev:21601]
48067         * string.c (rb_str_new4): ditto.
48069         * eval.c: use EXIT_SUCCESS and EXIT_FAILURE for exit values.
48071         * process.c: ditto. [ruby-list:38521]
48073 Mon Oct 13 19:51:02 2003  Koji Arai  <jca02266@nifty.ne.jp>
48075         * lib/debug.rb (debug_command): should enter emacs mode when
48076           assigned any value to the environment variable "EMACS".
48077           On Meadow, (getenv "EMACS") is "meadow".
48079 Sun Oct 12 14:45:03 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48081         * ext/win32ole/extconf.rb: check "windows.h", not "windows".
48082           [ruby-talk:84051]
48084 Sat Oct 11 20:41:03 2003  Corinna Vinschen  <corinna@vinschen.de>
48086         * file.c (eaccess): Use access(2) on Cygwin.
48088 Sat Oct 11 17:09:21 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48090         * lib/rexml/quickpath.rb (REXML::QuickPath::match):
48091           escape '[' to avoid warning.
48093 Sat Oct 11 16:08:41 2003  Tanaka Akira  <akr@m17n.org>
48095         * lib/pathname.rb (realpath): check existence of the file.
48097         * lib/pathname.rb (realpath): re-implemented.
48098           (realpath_root?, realpath_rec): removed
48100 Sat Oct 11 10:19:39 2003  Shugo Maeda  <shugo@ruby-lang.org>
48102         * lib/monitor.rb: handle exceptions correctly. Thanks, Gennady
48103           Bystritsky.
48105 Fri Oct 10 07:50:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48107         * eval.c (is_defined): inheritance line adjustment as like as
48108           rb_call_super().
48110 Fri Oct 10 01:19:00 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48112         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): add
48113           optional argument to specify the DirectoryString type
48114           (ASN1::UTF8STRING by default). RFC3280 deprecates PrintableString
48115           for DirectoryString, and strongly requires to use UTF8String for
48116           all certificates issued after December, 31 2003.
48118         * ext/openssl/lib/openssl/x509.rb (X509::Name::parse): ditto.
48120 Thu Oct  9 23:50:21 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48122         * eval.c (rb_thread_start_0): prevent thread from GC.
48123           [ruby-dev:21572]
48125 Thu Oct  9 19:11:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48127         * eval.c (rb_thread_start_0): non-volatile should be restored from
48128           volatile.
48130 Thu Oct  9 17:43:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48132         * eval.c (proc_save_safe_level, proc_get_safe_level,
48133           proc_set_safe_level): save/restore safe level 1..4.
48135 Thu Oct  9 16:33:23 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48137         * marshal.c (r_object0): remove unnecessary iv restoration for
48138           USRMARSHAL. [ruby-dev:21582]
48140         * marshal.c (w_object): dump generic instance variables from
48141           a string from '_dump'.
48143         * variable.c (rb_generic_ivar_table): return 0 if obj's FL_EXIVAR
48144           is not set.
48146         * time.c (time_dump): copy instance variables to dumped string, to
48147           be included in the marshaled data.
48149         * bignum.c (rb_big2ulong): add range check to ensure round trip.
48151 Thu Oct  9 15:45:27 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48153         * pack.c (uv_to_utf8): change message to "out of range", since
48154           negative values are not "too big". [ruby-dev:21567]
48156 Thu Oct  9 14:05:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48158         * eval.c (rb_set_end_proc, rb_exec_end_proc): restore safe level.
48159           [ruby-dev:21557]
48161 Thu Oct  9 10:51:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48163         * eval.c (rb_yield_0): no error if block is empty.
48165 Thu Oct  9 06:43:33 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48167         * eval.c (localjump_error): id should be ID.
48169         * eval.c (rb_eval): nd_rval is set in copy_node_scope().
48171         * eval.c (rb_yield_0): unused variable.
48173         * eval.c (rb_yield_0): nothing to do for empty node.
48175         * eval.c (call_end_proc, proc_invoke): adjust backtrace in END.
48176           [ruby-dev:21551]
48178         * eval.c (rb_thread_start_0): set the value by break as the result.
48179           [ruby-dev:21552]
48181         * eval.c (rb_thread_start_0, rb_thread_raise, rb_callcc): save
48182           variables across THREAD_SAVE_CONTEXT.
48184 Thu Oct  9 12:05:46 2003  Eric Sunshine  <sunshine@sunshineco.com>
48186         * configure.in: revived NextStep, OpenStep, and Rhapsody ports which
48187           had become unbuildable; enhanced --enable-fat-binary option so that
48188           it accepts a list of desired architectures (rather than assuming a
48189           fixed list), or defaults to a platform-appropriate list if user does
48190           not provide an explicit list; made the default list of architectures
48191           for MAB (fat binary) more comprehensive; now uses -fno-common even
48192           when building the interpreter (in addition to using it for
48193           extensions), thus allowing the interpreter to be embedded into a
48194           plugin module of an external project (in addition to allowing
48195           embedding directly into an application); added checks for
48196           <netinet/in_systm.h> (needed by `socket' extension) and getcwd(); now
48197           ensures that -I/usr/local/include is employed when extensions'
48198           extconf.rb scripts invoke have_header() since extension checks on
48199           NextStep and OpenStep will fail without it if the desired resource
48200           resides in the /usr/local tree; fixed formatting of --help message.
48202         * Makefile.in: $(LIBRUBY_A) rule now deletes the archive before
48203           invoking $(AR) since `ar' on Apple/NeXT can not "update" MAB archives
48204           (see configure's --enable-fat-binary option); added rule for new
48205           missing/getcwd.c.
48207         * defines.h: fixed endian handling during MAB build (see configure's
48208           --enable-fat-binary option) to ensure that all portions of the
48209           project see the correct WORDS_BIGENDIAN value (some extension modules
48210           were getting the wrong endian setting); added missing constants
48211           GETPGRP_VOID, WNOHANG, WUNTRACED, X_OK, and type pid_t for NextStep
48212           and OpenStep; removed unnecessary and problematic HAVE_SYS_WAIT_H
48213           define in NeXT section.
48215         * dir.c: do not allow NAMLEN() macro to trust dirent::d_namlen on
48216           NextStep since, on some installations, this value always resolves
48217           uselessly to zero.
48219         * dln.c: added error reporting to NextStep extension loader since the
48220           previous behavior of failing silently was not useful; now ensures
48221           that NSLINKMODULE_OPTION_BINDNOW compatibility constant is defined
48222           for OpenStep and Rhapsody; no longer includes <mach-o/dyld.h> twice
48223           on Rhapsody since this header lacks multiple-include protection,
48224           which resulted in "redefinition" compilation errors.
48226         * main.c: also create hard reference to objc_msgSend() on NeXT
48227           platforms (in addition to Apple platforms).
48229         * lib/mkmf.rb: now exports XCFLAGS from configure script to extension
48230           makefiles so that extensions can be built MAB (see configure's
48231           --enable-fat-binary option); also utilize XCFLAGS in cc_command()
48232           (but not cpp_command() because MAB flags are incompatible with
48233           direct invocation of `cpp').
48235         * ext/curses/extconf.rb: now additionally checks for presence of these
48236           curses functions which are not present on NextStep or Openstep:
48237           bkgd(), bkgdset(), color(), curs(), getbkgd(), init(), scrl(), set(),
48238           setscrreg(), wattroff(), wattron(), wattrset(), wbkgd(), wbkgdset(),
48239           wscrl(), wsetscrreg()
48241         * ext/curses/curses.c: added appropriate #ifdef's for additional set of
48242           curses functions now checked by extconf.rb; fixed curses_bkgd() and
48243           window_bkgd() to correctly return boolean result rather than numeric
48244           result; fixed window_getbkgd() to correctly signal an error by
48245           returning nil rather than -1.
48247         * ext/etc/etc.c: setup_passwd() and setup_group() now check for null
48248           pointers before invoking rb_tainted_str_new2() upon fields extracted
48249           from `struct passwd' and `struct group' since null pointers in some
48250           fields are common on NextStep/OpenStep (especially so for the
48251           `pw_comment' field) and rb_tainted_str_new2() throws an exception
48252           when it receives a null pointer.
48254         * ext/pty/pty.c: include "util.h" for strdup()/ruby_strdup() for
48255           platforms such as NextStep and OpenStep which lack strdup().
48257         * ext/socket/getaddrinfo.c: cast first argument of getservbyname(),
48258           gethostbyaddr(), and gethostbyname() from (const char*) to non-const
48259           (char*) for older platforms such as NextStep and OpenStep.
48261         * ext/socket/socket.c: include "util.h" for strdup()/ruby_strdup() for
48262           platforms such as NextStep and OpenStep which lack strdup(); include
48263           <netinet/in_systm.h> if present for NextStep and OpenStep; cast first
48264           argument of gethostbyaddr() and getservbyname() from (const char*) to
48265           non-const (char*) for older platforms.
48267         * ext/syslog/syslog.c: include "util.h" for strdup()/ruby_strdup() for
48268           platforms such as NextStep and OpenStep which lack strdup().
48270 Wed Oct  8 22:19:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48272         * lib/test/unit.rb: removed installation instructions.
48274         * lib/test/unit/ui/testrunnermediator.rb: moved the run flag to a more
48275           central location.
48277         * lib/test/unit.rb: ditto.
48279         * lib/test/unit.rb: extracted the running code in to AutoRunner.
48281         * lib/test/unit/autorunner.rb: added.
48283         * lib/test/unit/collector/objectspace.rb: extracted common test
48284           collection functionality in to a module.
48286         * lib/test/unit/collector.rb: ditto; added.
48288         * test/testunit/collector/test_objectspace.rb: ditto.
48290         * lib/test/unit/collector/dir.rb: added. Supports collecting tests out
48291           of a directory structure.
48293         * test/testunit/collector/test_dir.rb: added.
48295         * test/runner.rb: simplified to use the new capabilities.
48297 Tue Oct  7 15:23:09 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48299         * test/ruby/test_beginendblock.rb: add tests for nested BEGIN/END.
48301         * test/ruby/beginmainend.rb: add tests for nested BEGIN/END.
48303         * test/ruby/endblockwarn.rb: new file added to test of END-in-method
48304           warning.
48306 Tue Oct  7 12:23:47 2003  Tanaka Akira  <akr@m17n.org>
48308         * ext/fcntl/fcntl.c (Init_fcntl): define Fcntl::O_ACCMODE.
48310         * ext/socket/extconf.rb: useless assignment removed.
48312 Tue Oct  7 09:13:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48314         * test/ruby/test_beginendblock.rb (test_endinmethod): END{} is now
48315           allowed in eval.
48317 Tue Oct  7 04:15:25 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48319         * parse.y (stmt): should not expand mrhs if lhs is solely starred.
48321 Tue Oct  7 02:57:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48323         * parse.y (stmt): rhs of multiple assignment should not be
48324           expanded using "to_a". [ruby-dev:21527]
48326 Tue Oct  7 01:42:34 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48328         * ext/openssl/ossl_asn1.c (ossl_asn1_get_asn1type): use appropriate
48329           free function for ASN1_OBJECT.
48331         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_sn): add new function for
48332           ASN1::ObjectId#sn; it returns short name text representation of OID.
48334         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_ln): add new function for
48335           ASN1::ObjectId#ln; it returns long name text representation of OID.
48337         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_oid): add new function for
48338           ASN1::ObjectId#oid; it returns numerical representation of OID.
48340 Mon Oct  6 22:59:46 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48342         * lib/csv.rb (IOReader, BasicWriter): call binmode when a given IO
48343           respond_to?(:binmode).  record separator was wrong when you gave
48344           text mode IO to Reader.parse and Writer.generate.
48346         * test/csv/test_csv.rb: add tests for above change.
48348 Sun Oct  5 23:27:09 2003  Tanaka Akira  <akr@m17n.org>
48350         * ext/socket/extconf.rb: check recvmsg even if sendmsg is exists.
48352         * ext/socket/socket.c (thread_read_select): restored.
48354 Mon Oct  6 16:23:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48356         * marshal.c (w_object): wrong method name in the message.
48358 Mon Oct  6 16:02:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48360         * parse.y (stmt): END in method should cause warning.
48361           [ruby-dev:21519]
48363 Mon Oct  6 15:17:23 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48365         * test/ruby/test_iterator.rb (test_block_argument_without_paren):
48366           added. (follows sample/test.rb)
48368 Mon Oct  6 11:57:06 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48370         * test/ruby/test_beginendblock.rb, test/ruby/beginmainend.rb: added
48371           test for eval-ed BEGIN END order.
48373 Mon Oct  6 09:19:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48375         * marshal.c (w_object): should pass "weak" value to next level.
48376           [ruby-dev:21496]
48378         * eval.c (proc_alloc): should not use cached object if klass is
48379           different. [ruby-talk:83685]
48381 Sun Oct  5 23:27:09 2003  Tanaka Akira  <akr@m17n.org>
48383         * lib/pathname.rb: version information is added in document.
48385 Sun Oct  5 23:07:03 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48387         * eval.c (rb_f_END): block should be given.  [ruby-dev:21497]
48389 Sun Oct  5 22:51:23 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48391         * lib/ext/openssl/extconf.rb: add check for some engine functions
48392           unavailable in OpenSSL-0.9.6.
48394         * lib/ext/openssl/ossl_engine.c: ditto.
48396 Sun Oct  5 17:56:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48398         * eval.c (rb_eval): fix evaluation order.  [ruby-list:38431]
48400 Sun Oct  5 15:05:06 2003  akira yamada  <akira@ruby-lang.org>
48402         * test/uri/*: translated RUNIT to Test::Unit.
48404 Sun Oct  5 14:37:39 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48406         * lib/xsd/datatypes.rb: Rational -> Decimal string bug fix.
48408         * test/soap/marshal/test_marshal.rb: ditto.
48410         * test/soap/calc/test_calc_cgi.rb: add Config::CONFIG["EXEEXT"] to
48411           RUBYBIN.
48413 Sun Oct  5 13:47:22 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48415         * test/ruby/test_beginendblock.rb, test/ruby/beginmainend.rb: add tests
48416           about scope, order and allowed syntax.
48418 Sun Oct  5 11:54:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48420         * test/ruby/envutil.rb: added.  split "rubybin" from test_system.rb.
48422         * test/ruby/test_system.rb: use envutil.rb
48424         * test/ruby/test_beginendblock.rb: added.
48426         * test/ruby/beginmainend.rb: added.  used in test_beginendblock.rb.
48428 Sun Oct  5 11:23:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48430         * test/testunit/runit/test_testresult.rb: removed some unnecessary
48431           cruft.
48433 Sun Oct  5 11:14:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48435         * lib/rubyunit.rb: aliasing TestCase into the top level is
48436           problematic.
48438         * lib/runit/assert.rb: fixed a couple of bugs caused by recent
48439           refactoring in Test::Unit.
48441         * test/testunit/runit/*: added.
48443 Sun Oct  5 10:55:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48445         * lib/open-uri.rb (URI::Generic#find_proxy): no_proxy support did not
48446           work.  [ruby-dev:21484]
48448 Sun Oct  5 09:52:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48450         * lib/test/unit/assertions.rb: will use pp for output if available.
48451           Can be disabled by setting Assertions.use_pp = false.
48453         * test/testunit/test_assertions.rb: made a small change to exception
48454           formatting.
48456 Sun Oct  5 07:42:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48458         * lib/test/unit/assertions.rb: made small improvements to assertion
48459           messages. Deprecated Assertions#assert_not_nil; use #assert instead.
48461         * test/testunit/test_assertions.rb: ditto.
48463         * test/testunit/util/test_procwrapper.rb: use #assert instead of
48464           #assert_not_nil.
48466 Sun Oct  5 04:10:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48468         * lib/test/unit/assertions.rb: refactored message building.
48470 Sun Oct  5 03:40:22 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48472         * ext/openssl/ossl_asn1.h: global symbols should be declared
48473           as external.
48475 Sun Oct  5 03:03:20 2003  akira yamada  <akira@ruby-lang.org>
48477         * test/ruby/test_exception.rb (test_else): added.
48479 Sun Oct  5 02:12:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48481         * lib/test/unit/assertions.rb: changed assertion messages to rely more
48482           heavily on #inspect. Added backtrace filtering for exceptions in
48483           assertion messages.
48485         * test/testunit/test_assertions.rb: ditto.
48487 Sun Oct  5 02:12:00 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
48489         * lib/drb/acl.rb, lib/drb/ssl.rb: added.
48491         * lib/drb/drb.rb: exit from a thread using 'break'.
48493 Sat Oct  4 21:49:14 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48495         * gc.c (Init_stack): the type of space is changed to unsigned int
48496           from double.  [ruby-dev:21483]
48498 Sat Oct  4 17:52:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48500         * lib/soap/netHttpClient.rb: follow http-access2.  hosts which matches
48501           ENV['no_proxy'] or ENV['NO_PROXY'] are not proxyed.
48502           - [,:] separated. ("ruby-lang.org:rubyist.net")
48503           - no regexp. (give "ruby-lang.org", not "*.ruby-lang.org")
48504           - if you want specify host by IP address, give full address.
48505             ("192.168.1.1, 192.168.1.2")
48507         * lib/soap/rpc/cgistub.rb: return "Status: XXX MMM" line.
48509         * test/runner.rb: give testsuite name.
48511 Sat Oct  4 15:16:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48513         * marshal.c (w_object): instance variable dump do not cause error
48514           for objects that cannot be dumped, if they traversed from
48515           marshal_dump.  they are just ignored.
48517         * gc.c (Init_stack): cast "space" (doble value) into unsigned
48518           int.  should run on PowerPC.
48520         * eval.c (rb_eval): should not execute else part if any exception
48521           is caught. [ruby-dev:21482]
48523         * parse.y (f_args): should allow unparenthesized block argument.
48525         * parse.y (f_rest_arg): should allow unparenthesized rest
48526           argument.
48528 Sat Oct  4 14:59:51 2003  Tanaka Akira  <akr@m17n.org>
48530         * lib/pathname.rb (initialize): raise ArgumentError if argument has
48531           '\0' character.
48532           (relative_path_from): new method.
48533           (each_entry): new method for replacement of dir_foreach.
48534           (foreach, foreachline, dir_foreach, chdir): obsoleted.
48536 Sat Oct  4 12:58:48 2003  akira yamada  <akira@ruby-lang.org>
48538         * test/uri/* (6 files): added.
48540 Sat Oct  4 12:44:45 2003  akira yamada  <akira@ruby-lang.org>
48542         * lib/uri/ftp.rb, lib/uri/mailto.rb: renamed to #to_s from #to_str.
48544 Sat Oct  4 07:33:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48546         * lib/test/unit/testsuite.rb: changed #<< to return self, and added
48547           #delete.
48549         * test/testunit/test_testsuite.rb: ditto. Also slightly refactored
48550           #test_size.
48552         * lib/test/unit/collector/objectspace.rb: collector now preserves the
48553           hierarchy of suites.
48555         * test/testunit/collector/test_objectspace.rb: ditto.
48557 Sat Oct  4 04:48:49 2003  why the lucky stiff  <why@ruby-lang.org>
48559         * ext/syck/rubyext.c: default keys handled.
48561         * ext/syck/syck.h: lowered default buffer size to 16k for increased
48562           performance.
48564         * test/yaml: checkin of basic unit tests.
48566 Sat Oct  4 04:24:19 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48568         * ext/openssl/extconf.rb: add check for X509V3_set_nconf.
48570         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_config):
48571           cannot implement if X509V3_set_nconf doesn't exist.
48573 Sat Oct  4 02:12:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48575         * lib/xsd/datatypes.rb: dump sign by itself.  under the problematic
48576           platform, sprintf("%+.10g", -0.0) => +0.  sigh.
48578         * sample/wsdl/amazon/*: update schema ver2 to ver3.
48580 Sat Oct  4 01:33:46 2003  Tanaka Akira  <akr@m17n.org>
48582         * lib/pathname.rb (initialize): duplicate and freeze argument.
48583           (to_s): return duplicated string.
48584           (children): new method.
48585           (each_line): new alias to foreachline.
48587 Fri Oct  3 16:13:19 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48589         * ext/openssl/ossl_asn1.c: add DER encoder and decoder.
48591         * ext/openssl/ossl_asn1.h: add OpenSSL::ASN1 module.
48593         * ext/openssl/ossl.c (Init_openssl): call Init_ossl_asn1.
48595         * ext/openssl/extconf.rb: check if X509_ATTRIBUTE has field "single".
48597         * ext/openssl/ossl_x509attr.c (ossl_x509attr_set_value): accept
48598           DER encoded data argument.
48600         * ext/openssl/ossl_x509attr.c (ossl_x509attr_get_value): return
48601           DER encoded data in OpenSSL::ASN1 types.
48603 Fri Oct  3 13:02:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48605         * lib/test/unit.rb: refactored to use optparse.
48607         * lib/test/unit.rb: added support for selecting the output
48608           level from the command-line.
48610         * lib/test/unit.rb: added a command-line switch to stop processing
48611           the command-line, allowing arguments to be passed to tests.
48613         * lib/test/unit.rb: changed the method for specifying a runner or a
48614           filter from the command-line.
48616         * lib/test/unit/collector/objectspace.rb: fixed a bug causing all
48617           tests to be excluded when the filter was set to an empty array.
48619         * test/testunit/collector/test_objectspace.rb: ditto.
48621 Fri Oct  3 08:14:32 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48623         * lib/irb/ruby-lex.rb (RubyLex::identify_identifier): support
48624           'class ::Foo' syntax. [ruby-talk:83514]
48626 Fri Oct  3 08:01:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48628         * lib/test/unit/assertions.rb: added a default message for #assert,
48629           #assert_block, and #flunk.
48631         * test/testunit/test_assertions.rb: ditto.
48633         * lib/test/unit/failure.rb: failures now show a better trace of where
48634           they occurred.
48636         * test/testunit/test_failure.rb: ditto (added).
48638         * lib/test/unit/testcase.rb: ditto.
48640         * test/testunit/test_testcase.rb: ditto.
48642         * lib/test/unit/util/backtracefilter.rb: added.
48644         * test/testunit/util/test_backtracefilter.rb: added.
48646         * lib/test/unit/error.rb: changed to use BacktraceFilter and improved
48647           output.
48649         * test/testunit/test_error.rb: ditto.
48651 Thu Oct  2 20:33:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48653         * ext/iconv/iconv.c (iconv_failure_initialize): conform with
48654           orthodox initialization method.
48656         * ext/iconv/iconv.c (iconv_fail): initialize exception instance
48657           from the class, and do not share instance variables with the
48658           others.  [ruby-dev:21470]
48660 Thu Oct  2 18:20:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48662         * time.c (Init_Time): define initialize.  [ruby-dev:21469]
48664 Thu Oct  2 17:39:38 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48666         * ext/openssl/ossl_engine.c: add a new module OpenSSL::Engine.
48667           it supports OpenSSL hardware cryptographic engine interface.
48669         * ext/openssl/ossl_engine.h: ditto.
48671         * ext/openssl/MANIFEST: add ossl_engine.c and ossl_engine.h.
48673         * ext/openssl/extconf.rb: add check for openssl/engine.h.
48675         * ext/openssl/ossl.c: call Init_ossl_engine().
48677         * ext/openssl/ossl.h: include openssl/engine.h.
48679         * ext/openssl/ossl_pkey_{rsa,dsa,dh}.c: check if underlying
48680           EVP_PKEY referes engine.
48682 Thu Oct  2 17:22:37 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48684         * time.c (time_load): restore instance variables (if any) before
48685           loading from marshaled data.
48687 Thu Oct  2 14:19:15 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48689         * ext/iconv/iconv.c (iconv_fail): now yield erred substring, and
48690           set error object to $!.
48692         * ext/iconv/iconv.c (iconv_convert): error handler block should
48693           return appended part and the rest.  if rest is nil, the
48694           conversion stops.
48696 Thu Oct  2 12:00:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48698         * variable.c (rb_const_defined_0): look up constants in Object as
48699           well.  [ruby-dev:21458]
48701         * test/ruby/test_defined.rb (TestDefined::test_defined): test for
48702           constants.
48704 Thu Oct  2 11:17:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48706         * lib/test/unit/assertions.rb: should not capture an
48707           AssertionFailedError unless explicitly requested.
48709         * test/testunit/test_assertions.rb: ditto.
48711         * test/testunit/collector/test_objectspace.rb: fixed a test failure
48712           caused by methods being returned in different orders on different
48713           platforms by moving test sorting from TestSuite into the locations
48714           where suites are constructed. [ruby-talk:83156]
48716         * lib/test/unit/testcase.rb: ditto.
48718         * lib/test/unit/testsuite.rb: ditto.
48720         * lib/test/unit/collector/objectspace.rb: ditto.
48722 Thu Oct  2 03:25:01 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
48724         * eval.c (rb_thread_raise): prototype; avoid VC++ warning.
48726 Thu Oct  2 01:37:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48728         * time.c (time_mdump): new marshal dumper. _dump is still
48729           available for compatibility.
48731         * time.c (time_mload): new marshal loader.
48733         * marshal.c (w_object): preserve instance variables for objects
48734           with marshal_dump.
48736         * marshal.c (r_object0): restore instance variables before calling
48737           marshal_load.
48739         * error.c (rb_warn_m): always return nil.
48741 Thu Oct  2 01:32:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48743         * eval.c (rb_f_block_given_p): real required condition is
48744           ruby_frame->prev->iter == ITER_CUR.
48746         * eval.c (rb_block_given_p): ditto.
48748         * eval.c (block_pass): update ruby_frame->iter only when previous
48749           value is ITER_NOT.
48751 Thu Oct  2 01:02:35 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48753         * variable.c (rb_const_defined_at): should exclude constants from
48754           Object when TYPE(klass) == T_MODULE *and* exclude is on.
48755           [ruby-dev:21458]
48757         * variable.c (rb_const_get_0): do not lookup constants from Object
48758           when TYPE(klass) == T_MODULE *and* exclude is on.
48760 Thu Oct  2 00:21:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48762         * test/logger/test_logger.rb: unlinking file before close causes
48763           problem under win32 box.
48765         * lib/xsd/datatypes.rb(XSDFloat, XSDDouble): add +/- sign explicitly
48766           when stringified and embedded into XML instance.  Ruby's sprintf may
48767           format -0.0 as "0.0" (no minus sign) depending on underlying C
48768           sprintf implementation.
48770         * test/xsd/test_xsd.rb, test/soap/test_basetype.rb: follow above change.
48772         * test/soap/calc/*: give httpd config param "CGIInterpreter".
48773           "/usr/bin/env ruby" thing does not work under non-Unix boxes.
48775 Thu Oct  2 00:25:21 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48777         * signal.c (ruby_signal_name): adjust to the prototype.
48779         * process.c (pst_inspect): ditto.
48781         * ext/etc/etc.c (etc_getgrent, Init_etc): typo.
48783 Wed Oct  1 20:49:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48785         * gc.c (heaps): manage slots and limits together.  [ruby-dev:21453]
48787         * gc.c (add_heap): should not clear heaps slot even if realloc()
48788           failed.
48790 Wed Oct  1 20:36:49 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48792         * MANIFEST: add wince/mkconfig_wce.rb.
48794 Wed Oct  1 17:22:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48796         * ext/etc/etc.c: add new functions: setpwent, getpwent, endpwent,
48797           setgrent, getgrent, endgrent.
48799         * ext/socket/socket.c (sock_s_gethostbyname): do not reverse lookup.
48801 Wed Oct  1 17:01:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48803         * eval.c (rb_load): Object scope had priority over required file
48804           scope.  [ruby-dev:21415]
48806 Wed Oct  1 14:09:53 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
48808         * wince/mkconfig_wce.rb: sorry, forget to commit.
48810 Wed Oct  1 10:08:42 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
48812         * wince/setup.mak: add sigmarionIII SDK support.
48814         * wince/Makefile.sub: ditto.
48816         * wince/mkexports.rb: fix linker error in SH4.
48818         * wince/mkconfig_wce.rb: camouflage RUBY_PLATFORM for compiling ext.
48820 Wed Oct  1 08:02:52 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
48822         * wince/time_wce.c (time): add zero check.
48824 Tue Sep 30 16:11:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48826         * Makefile.in: copy lex.c from $(srcdir) if it's not the current
48827           directory.  [ruby-dev:21437]
48829 Tue Sep 30 11:29:23 2003  Tanaka Akira  <akr@m17n.org>
48831         * process.c (pst_inspect): describe stopped process "stopped".
48833 Tue Sep 30 09:31:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48835         * test/runner.rb: glob for directories.
48837 Tue Sep 30 09:11:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48839         * eval.c (rb_eval): while/until should not capture break unless
48840           they are destination of the break.
48842 Tue Sep 30 03:12:02 2003  Minero Aoki  <aamine@loveruby.net>
48844         * lib/net/http.rb (finish): revert to 1.93.
48846         * lib/net/pop.rb (finish): revert to 1.60.
48848         * lib/net/smtp.rb (finish): revert to 1.67.
48850         * lib/net/http.rb (do_start): ensure to close socket if failed to
48851           start session.
48853         * lib/net/pop.rb (do_start): ditto.
48855         * lib/net/smtp.rb (do_start): ditto.
48857         * lib/net/smtp.rb: SMTP#started? wrongly returned false always.
48859 Tue Sep 30 02:54:49 2003  Minero Aoki  <aamine@loveruby.net>
48861         * test/ruby/test_iterator.rb: new test
48862           test_break__nested_loop[123].
48864 Mon Sep 29 23:39:13 2003  Minero Aoki  <aamine@loveruby.net>
48866         * lib/net/http.rb (finish): does not raise IOError even if
48867           !started?, to allow closing socket which was opened before
48868           session started.
48870         * lib/net/pop.rb (finish): ditto.
48872         * lib/net/smtp.rb (finish): ditto.
48874 Mon Sep 29 19:06:51 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48876         * ext/win32ole/extconf.rb: add windows.h checking.
48877           (ruby-bugs:PR#1185)
48879 Mon Sep 29 16:18:30 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48881         * lib/logger.rb: check if the given logdevice object respond_to :write
48882           and :close, not is_a? IO.  duck duck.
48884         * test/logger/test_logger.rb: self IO.pipe reading/writing may be
48885           locked by the flood.  use tempfile.
48887         * lib/wsdl/xmlSchema/data.rb: wrong constant reference.
48889 Mon Sep 29 16:11:23 2003  Minero Aoki  <aamine@loveruby.net>
48891         * test/fileutils/test_fileutils.rb: clean up temporary symlink.
48892           Patched by NaHi.  [ruby-dev:21420]
48894 Mon Sep 29 11:16:55 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48896         * eval.c (rb_thread_atfork): wrong format specifier.
48897           [ruby-dev:21428]
48899         * process.c (pst_inspect): better description.
48901 Mon Sep 29 02:31:44 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48903         * lib/webrick/utils.rb (Utils::su): use setgid and setuid to
48904           set real and effective IDs. and setup group access list by
48905           initgroups.
48907 Sun Sep 28 11:14:19 2003  Koji Arai  <jca02266@nifty.ne.jp>
48909         * ext/digest/digest.c (Init_digest): `copy_object' was deprecated.
48910           `initialize_copy' should be defined.
48912         * ext/stringio/stringio.c (Init_stringio): ditto.
48914 Sat Sep 27 18:25:13 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48916         * lib/xsd/charset.rb: XSD::Charset.is_ces did return always true under
48917           $KCODE = "NONE" environment.  check added.
48919         * test/xsd/test_xsd.rb: add tests for above fix.
48921 Sat Sep 27 15:58:50 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48923         * lib/soap/rpc/cgistub.rb: make logging severity threshold higher.
48925         * lib/soap/rpc/standaloneServer.rb: defer WEBrick server start to give
48926           a chance to reset logging severity threshold.
48928         * test/soap/calc/test_*, test/soap/helloworld/test_helloworld.rb: run
48929           silent.
48931 Sat Sep 27 09:44:18 2003  Minero Aoki  <aamine@loveruby.net>
48933         * test/fileutils/test_fileutils.rb: clear all errors on Windows.
48934           [ruby-dev:21417]
48936         * test/fileutils/test_nowrite.rb: ditto.
48938 Sat Sep 27 04:57:07 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48940         * test/ruby/test_file.rb: new file.  only asserts unlink-before-close
48941           behaviour now.
48943         * test/soap/marshal/test_digraph.rb: should close before unlink.
48944           unlink-before-close pattern is not needed here.
48946 Sat Sep 27 03:32:37 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48948         * test/soap/*, test/wsdl/*, test/xsd/*: move TestCase classes into
48949           each module namespace.  TestMarshal in
48950           test/soap/marshal/test_marshal.rb crashed with
48951           test/ruby/test_marshal.rb.
48953 Sat Sep 27 01:30:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
48955         * ext/socket/socket.c (ruby_connect): on win32, type of the 4th
48956           argument of getsockopt is char *.
48958 Fri Sep 26 18:35:40 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48960         * lib/resolv-replace.rb: 1.8 compliance.  [ruby-talk:82946]
48962 Fri Sep 26 17:39:27 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48964         * test/ruby/test_marshal.rb: add test for ruby's objects.
48966 Fri Sep 26 09:52:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48968         * defines.h (flush_register_windows): use volatile only for gcc on
48969           Solaris.  [ruby-dev:21403]
48971         * lib/mkmf.rb (xsystem): use system directly to honor shell meta
48972           charaters.
48974 Fri Sep 26 00:10:13 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48976         * lib/README: updated.
48978 Thu Sep 25 17:48:10 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
48980         * ext/openssl/ossl.c (ossl_buf2str): fix type of 1st argument for
48981           rb_protect.
48983         * ext/openssl/ossl_hmac.c (ossl_hmac_digest): should return meaningful
48984           value.
48986 Thu Sep 25 09:00:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48988         * lib/ostruct.rb: Added OpenStruct#==.
48990         * test/ostruct/test_ostruct.rb: Added.
48992 Thu Sep 25 07:55:26 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48994         * ext/win32ole/win32ole.c, ext/openssl/ossl_pkey_dsa.c,
48995           ext/openssl/ossl_pkey_rsa.c, ext/bigdecimal/bigdecimal.h: must
48996           not use C++ or C99 style comment yet.  (ruby-bugs:PR#1184)
48998 Thu Sep 25 00:23:22 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49000         * MANIFEST: add SOAP4R.
49002 Thu Sep 25 00:13:15 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49004         * lib/soap/* (29 files): SOAP4R added.
49006         * lib/wsdl/* (42 files): WSDL4R added.
49008         * lib/xsd/* (12 files): XSD4R added.
49010         * test/soap/* (16 files): added.
49012         * test/wsdl/* (2 files): added.
49014         * test/xsd/* (3 files): added.
49016         * sample/soap/* (27 files): added.
49018         * sample/wsdl/* (13 files): added.
49020 Wed Sep 24 02:08:11 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49022         * lib/webrick/httpservlet/cgihandler.rb: conform to mswin32.
49023           [ruby-talk:82735], [ruby-talk:82748], [ruby-talk:82818]
49025 Tue Sep 23 23:10:16 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49027         * lib/logger.rb: add Logger#<<(msg) for writing msg without any
49028           formatting.
49030         * test/logger/test_logger.rb: ditto.
49032 Tue Sep 23 20:47:51 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49034         * error.c (rb_warn_m): should not warn if -W0 is specified.
49035           [ruby-talk:82675]
49037 Mon Sep 22 21:28:57 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49039         * MANIFEST: updated.
49041 Mon Sep 22 19:22:26 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49043         * configure.in (AC_CHECK_FUNCS): add setuid and setgid.
49045 Mon Sep 22 12:34:55 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49047         * util.c (ruby_strtod): skip preceding zeros before counting
49048           digits in the mantissa. (ruby-bugs:PR#1181)
49050 Sun Sep 21 04:12:36 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49052         * ext/openssl/ossl_ocsp.c (ossl_ocspreq_initialize): the argument
49053           should be a String.
49055         * ext/openssl/ossl_ocsp.c (ossl_ocspres_initialize): ditt.
49057         * ext/openssl/ossl_x509attr.c (ossl_x509attr_initialize): ditto.
49059         * ext/openssl/ossl_x509ext.c (ossl_x509ext_initialize): ditto.
49061         * ext/openssl/ossl_x509ext.c (ossl_x509ext_set_value): ditto.
49063 Sat Sep 20 11:49:05 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49065         * lib/logger.rb: typo fixed.
49067         * test/logger/test_logger.rb: new file.
49069 Fri Sep 19 11:39:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
49071         * test/testunit/*: Added.
49073         * lib/test/unit.rb: Documentation update.
49075         * lib/test/unit/ui/console/testrunner.rb (TestRunner#initialize):
49076           Ditto.
49078         * lib/test/unit.rb: Factored out an ObjectSpace collector.
49080         * lib/test/unit/collector/objectspace.rb: Ditto.
49082         * sample/testunit/*: Added.
49084 Fri Sep 19 01:00:48 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49086         * lib/webrick/log.rb (BasicLog#log): get rid of as ineffectual
49087           condition.
49089         * lib/webrick/log.rb (BasicLog#format): add "\n" to message.
49091 Thu Sep 18 22:43:20 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49093         * eval.c (proc_invoke): should push PROT_PCALL tag for orphans.
49095         * eval.c (proc_invoke): should update "result" for orphans.
49097 Thu Sep 18 20:33:03 2003  Tietew  <tietew-ml-ruby-list@tietew.net>
49099         * parse.y (str_xquote): do not prepend escapes in
49100           backqoute literals.  [ruby-list:38409]
49102 Thu Sep 18 20:30:17 2003  Tanaka Akira  <akr@m17n.org>
49104         * lib/pathname.rb: update document.
49106 Thu Sep 18 15:27:05 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49108         * lib/logger.rb: new file.  Logger, formerly called devel-logger or
49109           Devel::Logger.
49111         * sample/logger/*: new file.  samples of logger.rb.
49113 Wed Sep 17 23:41:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49115         * eval.c (localjump_destination): should not raise ThreadError
49116           exception for "break". [ruby-dev:21348]
49118         * eval.c (proc_invoke): use result instead of prot_tag->retval.
49119           retval is no longer propagated to the ancestors.
49121 Wed Sep 17 20:34:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49123         * parse.y (tokadd_string, parse_string, yylex): escaped terminator
49124           is now interpreted as is.  [ruby-talk:82206]
49126 Wed Sep 17 18:52:36 2003  Minero Aoki  <aamine@loveruby.net>
49128         * test/fileutils/fileassertions.rb: new file.
49130         * test/fileutils/test_fileutils.rb: new file.
49132         * test/fileutils/test_nowrite.rb: new file.
49134 Wed Sep 17 18:51:02 2003  Minero Aoki  <aamine@loveruby.net>
49136         * test/strscan/test_stringscanner.rb: require test/unit.
49138 Wed Sep 17 18:35:34 2003  Minero Aoki  <aamine@loveruby.net>
49140         * test/strscan/test_stringscanner.rb: new file.
49142 Wed Sep 17 18:03:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49144         * ext/openssl: all files are reviewed to simplify and avoid memory leak.
49146         * ext/openssl/extconf.rb: add check for assert.h.
49148         * ext/openssl/ossl.c (ossl_buf2str): new function to convert
49149           C buffer to String and free buffer.
49151         * ext/openssl/ossl.c (ossl_x509_ary2sk): new function to convert
49152           Array of OpenSSL::X509 to STACK_OF(X509) with exception safe.
49154         * ext/openssl/ossl.c (ossl_to_der, ossl_to_der_if_possible): new
49155           functions to convert object to DER string.
49157         * ext/openssl/ossl.h: ditto.
49159         * ext/openssl/ossl_bio.c (ossl_membio2str): new function to convert
49160           BIO to String object and free BIO.
49162         * ext/openssl/ossl_bio.h: ditto.
49164         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_to_der): add for "to_der".
49166         * ext/openssl/ossl_x509name.c (ossl_x509name_to_der): ditto.
49168         * ext/openssl/ossl_x509ext.c (ossl_x509ext_to_der): ditto.
49170         * ext/openssl/ossl_x509ext.c (create_ext_from_array): removed
49171           and reimplement in openssl/x509.rb.
49173         * ext/openssl/ossl_x509attr.c: reimplemented and disable some
49174           method temporarily. this class doesn't work fine without ASN.1
49175           data support;-) I'll rewrite in near future.
49177         * ext/openssl/lib/openssl/x509.c (X509::Attribute): get rid off
49178           unused code.
49180         * ext/openssl/lib/openssl/x509.c (X509::ExtensionFactory): refine all.
49182 Tue Sep 16 22:25:06 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49184         * test/csv/test_csv.rb: add negative tests of row_sep.
49186 Tue Sep 16 18:02:36 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49188         * regex.c (re_compile_pattern): should not translate character
49189           class range edge. [ruby-list:38393]
49191 Tue Sep 16 16:47:56 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49193         * MANIFEST: add test/csv/mac.csv.
49195         * win32/Makefile.sub, bcc32/Makefile.sub (test): add phony NUL target.
49197 Mon Sep 15 19:02:52 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49199         * lib/csv.rb: add extra pamameter to specify row(record) separater
49200           character.  To parse Mac's CR separated CSV, do like this.
49201             CSV.open("mac.csv", "r", ?,, ?\r) { |row| p row.to_a }
49202           The 3rd parameter in this example ?, is for column separater and the
49203           4th ?\r is for row separater.  Row separater is nil by default.  Nil
49204           separater means "\r\n" or "\n".
49206         * test/csv/test_csv.rb: add tests for above feature.
49208         * test/csv/mac.csv: added.  Sample CR separated CSV file.
49210 Fri Sep 12 22:41:48 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
49212         * ext/openssl/ossl.c: move ASN.1 stuff to ossl_asn1.[ch]
49214         * ext/openssl/ossl.c: move BIO stuff to ossl_bio.[ch]
49216         * ext/openssl/ossl_asn1.[ch]: new files
49218         * ext/openssl/ossl_bio.[ch]: new files
49220 Fri Sep 12 12:30:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49222         * intern.h (rb_disable_super, rb_enable_super): replace with dummy
49223           expressions instead of prototypes.  the functions remain yet for
49224           binary compatibility.  [ruby-talk:81758]
49226 Fri Sep 12 12:09:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49228         * bignum.c (rb_big_and): convert argument using 'to_int'.
49230         * bignum.c (rb_big_or): ditto.
49232         * bignum.c (rb_big_xor): ditto.
49234 Fri Sep 12 07:06:14 2003  David Black  <dblack@superlink.net>
49236         * lib/scanf.rb: Took out useless @matched_item variable; some small
49237           refactoring.
49239 Thu Sep 11 08:43:44 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49241         * eval.c (rb_f_require): allow "require" on $SAFE>0, if feature
49242           name is not tainted.
49244         * lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser::stream):
49245           Supports StringIO.
49247 Wed Sep 10 22:47:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49249         * ext/openssl/ossl.h: add a workaround for win32 platform.
49250           libeay32.dll doesn't export functions defined in conf_api.h.
49252         * ext/openssl/ossl_config.c (ossl_config_initialize): ditto.
49254         * ext/openssl/ossl_config.c (ossl_config_add_value): ditto.
49256         * ext/openssl/ossl_config.c (set_conf_section_i): should check
49257           if the argument is Array.
49259 Wed Sep 10 22:41:54 2003  Tietew  <tietew@tietew.net>
49261         * eval.c (win32_get_exception_list): avoid VC7 warning.
49262           [ruby-win32:577]
49264 Tue Sep  9 10:39:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49266         * eval.c (struct tag): dst should be VALUE.
49268 Tue Sep  9 10:39:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49270         * eval.c (localjump_destination): stop at the scope where the current
49271           block was created.  [ruby-dev:21353]
49273 Tue Sep  9 05:17:04 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49275         * ext/openssl/ossl_config.rb: avoid compile error in OpenSSL-0.9.6.
49277 Tue Sep  9 02:41:35 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
49279         * ext/openssl/ossl_config.c: Refine compatibility.
49281 Tue Sep  9 01:50:45 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49283         * lib/webrick/httpserver.rb (HTTPServer#access_log): add "\n" to
49284           the message.
49286         * lib/webrick/log.rb (BasicLog#log): add "\n" only if needed.
49288 Mon Sep  8 22:15:33 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
49290         * ext/tk/lib/multi-tk.rb: modify security check at creating
49291           a new interpreter
49293 Mon Sep  8 20:00:12 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49295         * lib/optparse.rb, lib/optparse/version.rb: search also all
49296           capital versions.
49298 Mon Sep  8 19:26:33 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49300         * ext/openssl/ossl.h: include openssl/conf.h and openssl/conf_api.h.
49302         * ext/openssl/ossl_config.c: refine all with backward compatibility.
49304         * ext/openssl/ossl_config.h: export GetConfigPtr() and DupConfigPtr().
49306         * ext/openssl/ossl_x509.c: added new constants under X509 module.
49307           DEFAULT_CERT_AREA, DEFAULT_CERT_DIR, DEFAULT_CERT_FILE,
49308           DEFAULT_CERT_DIR_ENV, DEFAULT_CERT_FILE_ENV and DEFAULT_PRIVATE_DIR.
49310         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_free): don't free
49311           the members of the struct. it's left to GC.
49313         * ext/openssl/ossl_x509ext.c (ossl_x509_set_config): add for config=.
49315         * ext/openssl/ossl_x509ext.c (Xossl_x509extfactory_initialize):
49316           add attr readers: issuer_certificate, subject_certificate,
49317           subject_request, crl and config.
49319 Mon Sep  8 18:26:41 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49321         * lib/webrick/accesslog.rb (AccessLog::setup_params): use req.port
49322           instead of config[:Port] or req.request_uri.port.
49324         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): ditto.
49326         * lib/webrick/httpservlet/filehandler.rb (FileHandler#dir_list): ditto.
49328         * lib/webrick/config.rb: :Listen option never be used.
49330         * lib/webrick/server.rb (GenericServer#initialize): don't use :Listen
49331           option and add warning message.
49333         * lib/webrick/log.rb (BasicLog#<<): shortcut of log(INFO, ...).
49335         * lib/webrick/httpserver.rb (HTTPServer#accesslog): use << for logging.
49337 Sun Sep  7 16:08:28 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
49339         * ext/tcltklib/tcltklib.c (lib_mainloop_core): fixed signal-trap bug
49341         * ext/tk/lib/*.rb: Ruby/Tk works at $SAFE == 4
49343 Sat Sep  6 02:26:34 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49345         * test/ruby/test_*.rb: assert_same, assert_match, and so on.
49347 Sat Sep  6 18:45:46 2003  Mauricio Fernandez  <batsman.geo@yahoo.com>
49349         * parse.y (assignable): call rb_compile_error(), not rb_bug().
49350           [ruby-core:01523]
49352 Sat Sep  6 17:40:41 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49354         * ext/openssl/ruby_missing.c: rid of unnecessary backward
49355           compatibility stuff. and remove DEFINE_ALLOC_WRAPPER from
49356           all sources.
49358         * ext/openssl/ossl_x509ext.c (X509::Extension.new): new method.
49360         * ext/openssl/ossl_x509ext.c (X509::Extension#oid=): new method.
49362         * ext/openssl/ossl_x509ext.c (X509::Extension#value=): new method.
49364         * ext/openssl/ossl_x509ext.c (X509::Extension#critical=): new method.
49366 Sat Sep  6 01:23:22 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
49368         * win32/win32.c (CreateChild): need to quote cmd if RUBYSHELL is set.
49370         * win32/win32.c (CreateChild): fix condition about whether to call
49371           shell or not.
49373 Sat Sep  6 00:36:20 2003  Nobuyoshi Nakada  <nobu.nokada@softhome.net>
49375         * Makefile.in (test): phony target.
49377         * lib/mkmf.rb (have_library, find_library): configure by library
49378           name.
49380         * lib/optparse.rb (OptionParser#order, #permute, #parse): allow an
49381           array as argument.
49383         * test/ruby/test_*.rb: moved invariants to left side in
49384           assert_equal, and use assert_nil, assert_raises and so on.
49386         * win32/win32.c (isInternalCmd): distinguish command.com and
49387           cmd.exe.
49389         * win32/win32.c (make_cmdvector): a character just after wildcard
49390           was ignored.  [ruby-core:01518]
49392 Fri Sep  5 20:27:08 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49394         * test/ruby/test_*.rb: replace 'assert(a == b)' with assert_equal(a, b)'
49396 Fri Sep  5 18:00:51 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49398         * ext/openssl/lib/openssl/x509.rb: new method X509::Name::parse.
49400         * ext/openssl/ossl_digest.c: add ossl_digest_new().
49402         * ext/openssl/ossl_digest.h: ditto.
49404         * ext/openssl/ossl_cipher.c: add ossl_cipher_new().
49406         * ext/openssl/ossl_cipher.h: ditto.
49408 Fri Sep  5 15:32:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49410         * misc/ruby-mode.el (ruby-font-lock-maybe-here-docs): should not
49411           search delimiter forward if found in backward.
49413 Fri Sep  5 13:32:48 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49415         * test/runner.rb: arguments should be keys.
49417 Fri Sep  5 12:09:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49419         * test/ruby/test_system.rb (test_system): check existence of ruby
49420           interpreter.
49422 Fri Sep  5 11:32:17 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49424         * lib/optparse.rb (--version): fix assignment/reference order.
49426         * lib/optparse.rb (OptionParser#help): new; OptionParser#to_s may
49427           be deprecated in future.
49429         * lib/optparse/version.rb (OptionParser#show_version): hide Object.
49431         * test/runner.rb: fix optparse usage.
49433         * test/runner.rb: glob all testsuits if no tests given.
49435 Fri Sep  5 10:42:58 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49437         * test/runner.rb: added.  gets testcases from command line and runs it.
49439         * test/ruby/test_gc.rb: remove useless part which was for dumping test
49440           result.
49442 Fri Sep  5 09:28:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49444         * test/ruby/test_gc.rb: added.  splitter.rb which I made to split
49445           sample/test.rb into test/ruby/test_* kindly removed GC test (the
49446           last section in the original test) to reduce things to be worried.
49448 Fri Sep  5 03:00:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49450         * test/ruby/test_iterator.rb (test_block_in_arg): add no block
49451           given tests.
49453         * test/ruby/test_iterator.rb (test_ljump): uncomment LocalJumpError
49454           test.
49456 Fri Sep  5 01:10:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49458         * test/ruby: tests for ruby itself.
49460         * test/ruby/test_*.rb: split sample/test.rb into 28 test/unit testcases.
49461           some tests could not be translates...  search '!!' mark to see it.
49463         * test/csv/test_csv.rb: should require 'csv', not '../lib/csv'.  test
49464           runner should set load path correctly.
49466 Fri Sep  5 01:03:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49468         * test/csv/test_csv.rb: close opened files for CSV::IOBuf explicitly.
49469           opened file cannot be removed under win32 box.
49471 Thu Sep  4 23:59:40 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49473         * parse.y (tokadd_string): newlines have no special meanings in
49474           %w/%W, otherwise they are ignored only when interpolation is
49475           enabled.  [ruby-dev:21325]
49477 Thu Sep  4 19:38:25 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49479         * ext/io/wait/.cvsignore: added.
49481         * ext/openssl/.cvsignore: added.
49483 Thu Sep  4 19:28:24 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49485         * sample/openssl: added.  Sample of standard distribution library
49486           should be locate in sample/{module_name}/*.
49488         * ext/openssl/sample/*: removed.  move to sample/openssl/*.
49490 Thu Sep  4 18:02:15 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49492         * test/csv/test_csv.rb: use remove_const to reduce warnings.  use
49493           Dir.tmpdir to locate working files.
49495 Thu Sep  4 17:41:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49497         * misc/ruby-mode.el (ruby-here-doc-beg-re): underscore also is
49498           valid delimiter.
49500         * misc/ruby-mode.el (ruby-here-doc-end-match): must quote
49501           arbitrary string to use as regexp.
49503         * misc/ruby-mode.el (ruby-font-lock-maybe-here-docs): must not
49504           call `ruby-here-doc-end-match' unless `ruby-here-doc-beg-re'
49505           matched.
49507 Thu Sep  4 15:40:07 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49509         * test/csv/test_csv.rb: run on test/unit original layer.
49511 Thu Sep  4 12:54:50 2003  why the lucky stiff  <why@ruby-lang.org>
49513         * ext/syck/token.c: headerless documents with root-level spacing now
49514           honored.
49516 Thu Sep  4 00:06:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49518         * eval.c (mark_frame_adj): need to adjust argv pointer if using
49519           system's alloca. [ruby-core:01503]
49521 Wed Sep  3 21:33:20 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49523         * test: add test directory.  Test::Unit aware testcases and needed
49524           files should be located in this directory.  dir/file name convention;
49525             test/{module_name}/test_{testcase_name}.rb
49526             test/{module_name}/{needed_files}
49527           someday, someone will write testrunner which searches test_*.rb and
49528           run testcases automatically.
49530         * test/csv/*: add testcase for lib/csv.rb.
49532 Wed Sep  3 01:37:09 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49534         * io.c (rb_f_gets): should call next_argv() before type check
49535           current_file. [ruby-list:38336]
49537 Tue Sep  2 20:37:15 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49539         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): warning
49540           for skipping server verification.
49542 Tue Sep  2 23:36:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49544         * eval.c (proc_invoke): should retrieve retval when pcall is true.
49546 Tue Sep  2 14:09:20 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49548         * ext/socket/extconf.rb: check s6_addr8 in in6_addr (Tru64 UNIX).
49549           the patch is submitted by nmu <nmu@users.sourceforge.jp>.
49551         * ext/socket/getaddrinfo.c (getaddrinfo): should use in6_addr8 on
49552           some platforms.
49554         * ext/socket/getnameinfo.c (getnameinfo): ditto.
49556 Tue Sep  2 14:02:19 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
49558         * ext/tcltklib/tcltklib.c (ip_invoke): fixed bug on passing a exception
49560         * ext/tk/lib/{tk.rb, tkcanvas.rb, tkfont.rb, tktext.rb}:
49561           bug fix and improvement of font control
49563 Tue Sep  2 09:51:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49565         * eval.c (rb_eval): should not handle exceptions within rescue
49566           argument.  [ruby-talk:80804]
49568 Tue Sep  2 00:44:37 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49570         * re.c (rb_memsearch): fix overrun.  [ruby-talk:80759]
49572 Tue Sep  2 00:41:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49574         * ext/iconv/iconv.c (map_charset): use lower case keys.
49576         * ext/iconv/iconv.c (iconv_fail): just yield error and return the
49577           result if a block is given.
49579         * ext/iconv/iconv.c (iconv_convert): yield error and append the
49580           result if a block is given.
49582         * ext/iconv/charset_alias.rb (charset_alias): optional third
49583           argument.
49585         * ext/iconv/charset_alias.rb (charset_alias): use CP932 instead of
49586           SHIFT_JIS on cygwin.
49588 Mon Sep  1 18:34:25 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49590         * eval.c (rb_eval): make tail recursion in ELSE clause of
49591           RESCUE a jump.
49593 Mon Sep  1 18:00:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49595         * parse.y (aref_args): forgot to call NEW_SPLAT(). reported by
49596           Dave Butcher.
49598         * eval.c (Init_Thread): protect thgroup_default.  suggested by Guy
49599           Decoux in [ruby-talk:80623]
49601 Mon Sep  1 16:59:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49603         * eval.c (rb_thread_switch): add RESTORE_EXIT; exit by another
49604           thread termination.
49606         * eval.c (rb_thread_start_0): should not error_print() within
49607           terminated thread, because $stderr used by it might be
49608           overriden now.  [ruby-dev:21280]
49610 Sun Aug 31 22:46:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49612         * eval.c (TAG_DST()): take no argument.
49614         * process.c (p_gid_sw_ensure): return VALUE.
49616 Sun Aug 31 22:27:10 2003  Hidetoshi NAGAI  <nagai@dumbo.ai.kyutech.ac.jp>
49618         * process.c (p_gid_sw_ensure): lack of function type
49620 Sun Aug 31 12:25:06 2003  Nobuyoshi Nakada  <nobu.nokada@softhome.net>
49622         * lib/optparse.rb: --version takes an optional argument; "all" or
49623           a list of package names.
49625 Sun Aug 31 10:17:02 2003  Tadayoshi Funaba  <tadf@dotrb.org>
49627         * lib/date/format.rb: yyyy/mm is not an acceptable format.
49629         * lib/time.rb: follow above.
49631 Sat Aug 30 14:25:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49633         * eval.c (rb_iter_break): should not call TAG_JUMP directly.
49635 Sat Aug 30 03:58:21 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49637         * eval.c (struct BLOCK): remove BLOCKTAG, use scope instead.
49639         * eval.c (POP_TAG): no longer propagate retval.  retval is now set
49640           directly by localjump_destination().
49642         * eval.c (localjump_destination): new function to cast
49643           return/break local jump.
49645         * eval.c (rb_yield_0): stop TAG_RETURN/TAG_BREAK escaping.
49647 Fri Aug 29 22:35:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49649         * bigdecimal.c *.html: The 2nd arg. for add,sub,mult, and div is 0,
49650           then result will be the same as +,-,*,/ respectively.
49652 Fri Aug 29 17:30:15 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
49654         * process.c: bug fix
49656         * process.c: add rb_secure(2) to methods of Process::{UID,GID,Sys}
49658         * process.c: deny handling IDs during evaluating the block given to
49659           the Process::{UID,GID}.switch method
49661         * ext/tcltklib/tcltklib.c: some methods have no effect if on slave-IP
49663         * ext/tcltklib/tcltklib.c: can create a interpreter without Tk
49665         * ext/tcltklib/tcltklib.c: bug fix on handling exceptions
49667         * ext/tcltklib/MANUAL.euc: modify
49669         * ext/tk/lib/tk.rb: freeze some core modules
49671         * ext/tk/lib/multi-tk.rb: more secure
49673         * ext/tk/lib/tk.rb: TkVariable.new(array) --> treat the array as the
49674           Tk's list
49676         * ext/tk/lib/tk.rb: improve accessibility of TkVariable object
49678         * ext/tk/lib/tk.rb, ext/tk/lib/tkfont.rb, ext/tk/lib/tkcanvas.rb,
49679           ext/tk/lib/tktext.rb: fix bug of font handling
49681         * ext/tk/lib/tkfont.rb: TkFont.new() accepts compound fonts
49683 Thu Aug 28 22:07:12 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49685         * variable.c (rb_autoload_load): call const_missing if autoloading
49686           constant is not defined to allow hook.
49688         * eval.c (rb_eval): use rb_const_get_from() instead of
49689           rb_const_get_at().
49691         * eval.c (is_defined): forgot to check NODE_COLON3.
49693 Thu Aug 28 17:30:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49695         * variable.c (rb_const_get_0): should check constants defined in
49696           included modules, if klass is Object. [ruby-talk:79302]
49698         * numeric.c (check_uint): check should be done using UINT_MAX, not
49699           INT_MAX. this fix is submitted by Lyle Johnson
49700           <lyle@knology.net> in [ruby-core:01486]
49702 Thu Aug 28 05:02:52 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49704         * parse.y (singleton): typo fixed (ruby-bugs-ja:PR#562)
49706 Thu Aug 28 02:37:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49708         * eval.c (rb_eval): *a = [1,2] now assigns [[1,2]] to a.
49709           consistent with *a = [1], which set [[1]] to a.
49711         * node.h: merge NODE_RESTARY to NODE_SPLAT.
49713         * parse.y: rules simplified a bit by removing NODE_RESTARY.
49715         * sample/test.rb: updated for new assignment behavior.
49717 Wed Aug 27 22:33:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49719         * error.c (rb_bug): should not use other methods; this function is
49720           not for ordinary use.  [ruby-dev:21259]
49722 Wed Aug 27 15:07:57 2003  Minero Aoki  <aamine@loveruby.net>
49724         * lib/net/smtp.rb (check_response): AUTH CRAM-MD5 returns 334
49725           response. [ruby-list:38279]
49727 Wed Aug 27 05:10:15 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
49729         * win32/win32.c (map_errno): support winsock error.
49731         * win32/win32.c (pipe_exec, CreateChild, poll_child_status, waitpid,
49732           kill, link, rb_w32_rename, unixtime_to_filetime, rb_w32_utime):
49733           pass errno to map_errno().
49735         * win32/win32.c (rb_w32_select, rb_w32_accept, rb_w32_bind,
49736           rb_w32_connect, rb_w32_getpeername, rb_w32_getsockname,
49737           rb_w32_getsockopt, rb_w32_ioctlsocket, rb_w32_listen, rb_w32_recv,
49738           rb_w32_recvfrom, rb_w32_send, rb_w32_sendto, rb_w32_setsockopt,
49739           rb_w32_shutdown, rb_w32_socket, rb_w32_gethostbyaddr,
49740           rb_w32_gethostbyname, rb_w32_gethostname, rb_w32_getprotobyname,
49741           rb_w32_getprotobynumber, rb_w32_getservbyname, rb_w32_getservbyport,
49742           rb_w32_fclose, rb_w32_close): use map_errno().
49744         * win32/win32.h: add winsock errors.
49746 Tue Aug 26 23:53:23 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49748         * lib/ostruct.rb (OpenStruct::method_missing): prohibit modifying
49749           frozen OpenStruct. [ruby-talk:80214]
49751 Tue Aug 26 20:03:50 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49753         * lib/mkmf.rb (create_tmpsrc): add the hook for source.
49754           [ruby-list:38122]
49756 Tue Aug 26 15:59:53 2003  why the lucky stiff  <why@ruby-lang.org>
49758         * implicit.c (syck_type_id_to_taguri): corrected detection of
49759           x-private types.
49761 Sun Aug 24 01:02:48 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49763         * file.c (file_expand_path): performance improvement.
49764           [ruby-talk:79748]
49766 Sat Aug 23 23:41:16 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49768         * file.c (rb_file_s_expand_path): avoid calling rb_scan_args() for
49769           apparent cases. [ruby-talk:79748]
49771 Sat Aug 23 18:56:53 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49773         * ext/nkf/nkf.c (rb_nkf_putchar): should use rb_str_resize() to just
49774           resize a string, rb_str_cat() disallows NULL.  [ruby-dev:21237]
49776 Sat Aug 23 16:48:41 2003  Keiju Ishitsuka  <keiju@ishitsuka.com>
49778         * lib/irb/ruby-lex.rb: bug fix for "foo" !~ /bar/. [ruby-talk:79942]
49780 Sat Aug 23 15:59:58 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49782         * eval.c (rb_eval, rb_iterate, block_pass): reduce PUSH/POP_TAG and
49783           EXEC_TAG() for retry.  [ruby-dev:21216]
49785 Sat Aug 23 02:32:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49787         * eval.c (rb_yield_splat): should check if "values" is array.
49789         * enum.c (each_with_index_i): typo.
49791 Fri Aug 22 17:07:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49793         * enum.c (inject_i): use rb_yield_values.
49795         * enum.c (each_with_index_i): ditto.
49797         * eval.c (rb_yield_splat): new function to call "yield *values".
49799         * string.c (rb_str_scan): use rb_yield_splat().
49801 Fri Aug 22 06:13:22 2003  why the lucky stiff  <why@ruby-lang.org>
49803         * ext/syck/rubyext.c: refactoring of the transfer method
49804           dispatch.  added yaml_org_handler for faster dispatch of
49805           transfers to base types.
49807         * lib/yaml/rubytypes.rb: removed handling of builtins from
49808           Ruby library.
49810         * ext/syck/token.c: quoted and block scalars are now implicit !str
49812         * ext/syck/implicit.c: empty string detected as !null.
49814 Fri Aug 22 01:00:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49816         * eval.c (block_pass): improve passing current block.
49818 Fri Aug 22 00:13:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49820         * ext/bigdecimal/bigdecimal.c: Int. overflow bug in multiplication
49821           fixed, and VpNmlz() speed up.
49823 Wed Aug 20 16:44:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49825         * ext/socket/socket.c (ruby_connect): many systems seem to have
49826           a problem in select() after EINPROGRESS.  [ruby-list:38080]
49828 Wed Aug 20 01:31:17 2003  why the lucky stiff  <why@ruby-lang.org>
49830         * ext/syck/syck.h: Parser definition problems on HP-UX.
49831           [ruby-talk:79389]
49833         * ext/syck/handler.c (syck_hdlr_get_anchor): Memory leak.
49835         * ext/syck/syck.s (syck_io_file_read): Bad arguments to fread.
49837         * ext/syck/rubyext.c: Tainting issues.
49839 Tue Aug 19 23:20:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49841         * ext/bigdecimal/bigdecimal.c .h .html: to_s("+") implemented.
49843         * ext/bigdecimal/lib/bigdecimal/math.rb: E implemented.
49845 Tue Aug 19 07:47:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49847         * lib/webrick/ssl.rb: new file; SSL/TLS enhancement for GenericServer.
49849         * lib/webrick/https.rb: SSLSocket handling is moved to webrick/ssl.rb.
49851         * lib/webrick/compat.rb (File::fnmatch): remove old migration code.
49853         * lib/webrick/httpserver.rb (HTTPServer#run): ditto.
49855         * lib/webrick/server.rb (GenericServer#listen): the body of this
49856           method is pull out as Utils::create_lisnteners.
49858         * lib/webrick/utils.rb (Utils::create_lisnteners): new method.
49860         * lib/webrick/server.rb (GenericServer#start): should rescue
49861           unknown errors. and refine comments.
49863         * ext/openssl/lib/openssl/ssl.rb (SSLServer#accept): should close
49864           socket if SSLSocket raises error.
49866 Tue Aug 19 11:19:33 2003  Shugo Maeda  <shugo@ruby-lang.org>
49868         * io.c (next_argv): should not call GetOpenFile() if rb_stdout is
49869           not a IO (T_FILE).
49871 Tue Aug 19 07:47:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49873         * ext/openssl/ossl_ssl.c: sync_close is moved to SSLSocket as
49874           a builtin.
49876         * ext/openssl/lib/openssl/buffering.rb (Buffering#close): ditto.
49878         * ext/openssl/lib/openssl/buffering.rb (Buffering#puts): should
49879           add a return to the tails of each line.
49881         * ext/openssl/lib/openssl/ssl.rb: new class OpenSSL::SSL::SSLServer.
49883         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): use sync_close.
49885         * ext/openssl/sample/echo_svr.rb: use SSLServer.
49887         * ext/openssl/sample/echo_cli.rb: add example of SSLSocket#sync_close.
49889 Tue Aug 19 01:24:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49891         * ext/curses/curses.c (_XOPEN_SOURCE_EXTENDED): Mac OS X standard
49892           headers are inconsistent at this macro.  [ruby-core:01432]
49894         * ext/curses/extconf.rb: check if _XOPEN_SOURCE_EXTENDED breaks.
49896         * ext/tcltklib/stubs.c: Status macro in X11/Xthreads.h bothers
49897           winspool.h
49899         * instruby.rb: make list at first instead of iterator.
49900           [ruby-talk:79347]
49902 Mon Aug 18 11:23:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49904         * dir.c (glob_helper): preserve raw order for **.
49906 Sun Aug 17 23:39:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49908         * ext/openssl/extconf.rb (HAVE_VA_ARGS_MACRO): need to compile.
49910 Sun Aug 17 17:10:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49912         * ext/openssl/lib/openssl/ssl.rb (SSLSocket#sync_close=): add a
49913           method to specify if the underlying IO will be closed in
49914           SSLSocket#close.
49916         * ext/openssl/lib/openssl/buffering.rb: add forwarders to
49917           setsockopt, getsockopt and fcntl.
49919         * ext/openssl/lib/net/protocols.rb: enable sync for SSLSocket.
49921 Sun Aug 17 11:32:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49923         * ext/extmk.rb (extmake): should not force to remake Makefile when
49924           installation and so on.
49926 Sat Aug 16 23:58:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49928         * marshal.c (w_symbol, w_object): get rid of warnings.
49930         * re.c (rb_memsearch): ditto.
49932         * time.c (time_dump): ditto.
49934         * ext/extmk.rb (extmake): not continue making when extconf.rb
49935           failed.
49937         * ext/openssl/extconf.rb: check __VA_ARGS__ macro more precisely.
49939         * ext/openssl/ossl.h: remove version.h dependency.
49941         * ext/openssl/ruby_missing.h: ditto.
49943         * lib/mkmf.rb (pkg_config): use --libs output except with
49944           only-L for other options.  [ruby-list:38099]
49946         * lib/mkmf.rb (create_makefile): separate rule for static
49947           library from shared object.
49949         * win32/Makefile.sub, bcc32/Makefile.sub, wince/Makefile.sub:
49950           define exec_prefix and libdir.
49952 Fri Aug 15 23:15:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49954         * ext/bigdecimal/bigdecimal.c .h: Bug in combination of limit & div
49955           method fixed.
49957         * ext/bigdecimal/lib/bigdecimal/math.rb: atan() & sqrt() added.
49959 Fri Aug 15 12:01:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49961         * configure.in (HUGE_ST_INO): check whether struct stat.st_ino
49962           is larger than long.  [ruby-dev:21194]
49963           http://www.geocities.co.jp/SiliconValley-PaloAlto/1409/ruby/beos.html
49965         * error.c (syserr_eqq): errno might exceed Fixnum limit.
49967         * error.c (Init_Exception): moved base initialization from
49968           init_syserr().
49970         * inits.c (rb_call_inits): postpone initializing errnos until
49971           Bignum is available.
49973 Fri Aug 15 12:01:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49975         * ext/curses/curses.c (_XOPEN_SOURCE_EXTENDED): needed to let
49976           keyname() and so on be declared.
49978         * ext/curses/curses.c (curses_resizeterm, window_resize):
49979           arguments conflicted with macros in term.h.
49981         * ext/curses/curses.c (Curses module methods): ensure
49982           initialized.  [ruby-dev:21191]
49984 Fri Aug 15 02:08:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49986         * gc.c (id2ref): recycle check should be done by klass == 0.
49987           [ruby-core:01408]
49989 Fri Aug 15 01:34:23 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
49991         * ext/openssl/ossl_pkey.c: move generate_cb here
49993         * ext/openssl/ossl_pkey_{dh|dsa|rsa}.c: adapt to this cb
49995         * ext/openssl/openssl_missing.[ch]: add (0.9.6x, x<j) missing BN funcs
49997         * ext/openssl/ossl_bn.c: use supplied funcs from openssl_missing.c
49999 Fri Aug 15 00:38:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
50001         * ext/bigdecimal/bigdecimal.c: Bug in div method fixed.
50003         * ext/bigdecimal/lib/bigdecimal/math.rb: Newly added.
50005         * ext/bigdecimal/sample/pi.rb: Changed so as to use math.rb.
50007 Thu Aug 14 21:19:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50009         * eval.c (Init_Thread): Continuation#[] added.  [ruby-talk:79028]
50011 Thu Aug 14 20:03:34 2003  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
50013         * ext/win32ole/win32ole.c (OLE_FREE): should not call
50014           ole_message_loop.
50016         * ext/win32ole/win32ole.c (ole_event_free): ditto.
50018         * ext/win32ole/win32ole.c (ole_initialize): stop calling
50019           OleUninitialize at exit.
50021 Thu Aug 14 11:27:37 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
50023         * gc.c (rb_data_object_alloc): check type of 1st argument.
50024           [ruby-dev:21192]
50026 Thu Aug 14 00:21:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50028         * parse.y (mlhs_node): should allow "::Foo" (colon3) as lhs.
50030         * parse.y (lhs): ditto.
50032         * parse.y (yylex): should return tCOLON3 right after kCLASS.
50033           [ruby-talk:78918]
50035         * error.c (exc_initialize): was converting argument to string too
50036           eagerly.  Only check was needed. [ruby-talk:78958]
50038 Wed Aug 13 23:31:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
50040         * ext/bigdecimal/bigdecimal.c .h .html: Ambiguity of
50041           BigDecimal::limit removed.
50043 Wed Aug 13 19:21:34 2003  Christian Neukirchen  <chneukirchen@yahoo.de>
50045         * lib/webrick/https.rb (HTTPServer#run): should set syncing-mode
50046           to SSLSocket. [ruby-talk:78919]
50048 Wed Aug 13 18:13:49 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50050         * eval.c (POP_BLOCK): turn on BLOCK_LEFT flag when leaving block.
50052         * eval.c (proc_invoke): unpack return/break destination when block
50053           is already left.
50055 Wed Aug 13 15:58:31 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
50057         * object.c (rb_class_s_alloc): add function prototype to avoid VC++
50058           warning.
50060 Wed Aug 13 13:50:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
50062         * ext/Win32API/Win32API.c (Win32API_initialize): should pass some
50063           class to first argument of Data_Wrap_Struct(). (ruby-bugs:PR#1109)
50065 Tue Aug 12 16:55:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
50067         * Makefile.in: static link libraries to LIBRUBY_SO with static linked
50068           ext.  [ruby-dev:21157]
50070         * ext/extmk.rb (extmake): sort extension library initialization order.
50072         * ext/extmk.rb (extmake): compact $extlibs.
50074 Tue Aug 12 02:48:56 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50076         * eval.c (THREAD_SAVE_CONTEXT): should explicitly turn off the
50077           flag before calling getcontext(2).
50079         * eval.c (struct thread): add member to save backing store on
50080           IA64. (ruby-bugs PR1086)
50082         * eval.c (thread_mark): mark IA64 backing store region.
50084         * eval.c (thread_free): free saved IA64 backing store.
50086         * eval.c (rb_thread_save_context): save IA64 backing store as well.
50088         * eval.c (rb_thread_restore_context): restore IA64 backing store.
50090         * eval.c (THREAD_ALLOC): initialize IA64 members.
50092 Mon Aug 11 22:31:50 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
50094         * lib/debug.rb(debug_command): inspection command should inspect
50095           resulting value even if it's nil.  [ruby-dev:21180] by OMAE, jun
50096           <jun66j5@ybb.ne.jp>.
50098         * lib/debug.rb(debug_command): incomplete regexp.
50100 Mon Aug 11 17:33:07 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50102         * eval.c (rb_call_super): do not use rb_block_given_p() for
50103           check. [ruby-talk:78656]
50105         * eval.c (BEGIN_CALLARGS): push ITER_NOT only when ITER_PRE.
50107 Sun Aug 10 10:43:05 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
50109         * ext/openssl/lib/openssl/buffering.rb: increase BLOCK_SIZE
50110           from 1k to 16k bytes. [ruby-talk:78603]
50112         * ext/openssl/ossl_ssl.c (ossl_sslctx_s_alloc): enable
50113           partial write to allow interruption in SSLSocket#write.
50115 Sun Aug 10 00:34:16 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
50117         * cygwin/GNUmakefile: remove unnecessary '--drive-name=$(CC)'
50118           for ccache.
50120 Sat Aug  9 10:36:21 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50122         * marshal.c (w_object): do not dump generic instance variable when
50123           marshal_dump is defined.
50125 Sat Aug  9 00:35:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
50127         * ext/bigdecimal.c: F style output(like 1234.56789) implemented
50128           to to_s method.
50129         * ext/bigdecimal_??.html: F style output(like 1234.56789)
50130           implemented to to_s method.
50132 Fri Aug  8 12:33:17 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
50134         * bcc32/Makefile.sub: rubyw.exe should be a Windows GUI program.
50135           add the -aa option to WLDFLAGS.
50137 Fri Aug  8 11:29:26 2003  Koji Arai  <jca02266@nifty.ne.jp>
50139         * marshal.c (w_object): should set `c_arg' at first.
50141 Fri Aug  8 03:22:28 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
50143         * lib/webrick/httputils.rb (FormData#list): should not take
50144           a side effect for the receiver.
50146 Thu Aug  7 14:40:37 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
50148         * cygwin/GNUmakefile: better --disbale-shared option support.
50150         * cygwin/GNUmakefile: add forwarding DLL target for cygwin.
50152 Thu Aug  7 14:21:05 2003  Corinna Vinschen  <vinschen@redhat.com>
50154         * configure.in: Fix Cygwin specific naming of libraries to
50155           be net distribution compliant. (ruby-bugs:PR#1077)
50156           cygwin-ruby18.dll -> cygruby18.dll
50158 Thu Aug  7 12:51:38 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50160         * eval.c (rb_f_at_exit): should not be called without a block.
50161           block_given check added.
50163 Thu Aug  7 06:46:06 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50165         * eval.c (rb_call0): forgot to pop ruby_class.
50167         * eval.c (rb_call0): update ruby_class as well as ruby_cref.
50168           (ruby-bugs-ja:PR#540)
50170 Thu Aug  7 04:52:50 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50172         * eval.c (rb_yield_0): remove ruby_frame->cbase and unify to
50173           ruby_cref.  [ruby-talk:78141]
50175 Thu Aug  7 04:19:15 2003  Akinori MUSHA  <knu@iDaemons.org>
50177         * gc.c: FreeBSD/ia64's mcontext_t is a bit different from that of
50178           Linux/ia64.  This makes gc.c compile but miniruby coredumps for
50179           the moment.
50181 Thu Aug  7 00:15:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
50183         * ext/bigdecimal.c: Comparison results adjusted to Float's.
50184         * ext/bigdecimal.c: Use rb_num_coerce_????(x,y) instead of own.
50186 Wed Aug  6 22:58:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
50188         * lib/test/unit/testcase.rb: Added equality checking.
50189         * lib/test/unit/testsuite.rb: Added equality checking.
50190         * lib/test/unit/assertions.rb: Fixed a warning.
50192 Wed Aug  6 17:28:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
50194         * ext/extmk.rb (extmake): pass LIBPATH to make ruby.  [ruby-dev:21137]
50196         * ext/extmk.rb (extmake): set library name as source file name in
50197           Init_ext().  [ruby-dev:21137]
50199         * lib/mkmf.rb (Logging::postpone): postpone logging messages after
50200           heading message as the result of the block.
50202         * lib/mkmf.rb (macro_defined?): append newline to src unless ended
50203           with it.
50205         * lib/mkmf.rb (have_library): treat nil function name as "main".
50206           (ruby-bugs:PR#1083)
50208         * lib/mkmf.rb (pkg_config): should append additional libraries to
50209           $libs but not $LIBS.  [ruby-dev:21137]
50211         * ext/io/wait/extconf.rb: check DOSISH macro instead of platform.
50213         * ext/digest/sha1/extconf.rb: have_library already appends library
50214           name.
50216 Wed Aug  6 17:23:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50218         * eval.c: initialize /* OK */ variables by Qnil to stop warnings.
50220 Wed Aug  6 04:58:32 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
50222         * ext/Setup*: add io/wait and openssl.
50224 Wed Aug  6 01:13:38 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50226         * eval.c (rb_f_autoload): use ruby_cbase instead of ruby_class.
50228         * eval.c (rb_f_autoload_p): ditto.
50230         * class.c (rb_mod_init_copy): no longer implements independent
50231           clone and dup methods.  override "initialize_copy" instead.
50232           [ruby-core:01352]
50234         * object.c (rb_class_s_alloc): define Class allocation function.
50235           this makes Classes to follow clone framework that uses
50236           initialize_copy.
50238         * object.c (rb_class_initialize): separate instantiation and
50239           initialization.
50241         * object.c (rb_obj_alloc): prohibit instantiation from
50242           uninitialized class.
50244         * object.c (rb_class_superclass): check uninitialized class.
50246         * array.c (rb_ary_fill): wrong index processing with block.  this
50247           fix was done by Koji Arai <JCA02266@nifty.ne.jp> [ruby-list:38029]
50249         * marshal.c (w_object): should preserve generic ivar for nil,
50250           true, false, symbols, and fixnums.
50252         * marshal.c (w_uclass): base_klass check should be done after
50253           rb_class_real().
50255 Wed Aug  6 01:18:50 2003  Minero Aoki  <aamine@loveruby.net>
50257         * lib/net/http.rb: update document.
50259         * lib/net/pop.rb: ditto.
50261         * lib/net/protocol.rb: ditto.
50263 Wed Aug  6 00:48:37 2003  Koji Arai  <jca02266@nifty.ne.jp>
50265         * marshal.c (w_object): should recommend marshal_dump rather than
50266           _dump_data.
50268 Tue Aug  5 17:58:57 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
50270         * lib/fileutils.rb (install): should preserve timestamp only.
50272 Tue Aug  5 17:31:59 2003  Ian Macdonald  <ian@caliban.org>
50274         * lib/shell/command-processor.rb (Shell::CommandProcessor::rmdir):
50275           simple typo.
50277 Tue Aug  5 15:47:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
50279         * eval.c (rb_load): should preserve current source file/line.
50281 Tue Aug  5 10:04:42 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50283         * string.c (str_new4): ptr may refer null_str.
50285 Mon Aug  4 17:25:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
50287         * stable version 1.8.0 released.
50289 For the changes before 1.8.0, see doc/ChangeLog-1.8.0
50291 Local variables:
50292 add-log-time-format: (lambda ()
50293   (let* ((time (current-time))
50294          (system-time-locale "C")
50295          (diff (+ (cadr time) 32400))
50296          (lo (% diff 65536))
50297          (hi (+ (car time) (/ diff 65536))))
50298   (format-time-string "%a %b %e %H:%M:%S %Y" (list hi lo) t)))
50299 indent-tabs-mode: t
50300 tab-width: 8
50301 end: