"SfR Fresh" - the SfR Freeware/Shareware Archive 
Member "ruby-1.8.7-p72/ChangeLog" of archive ruby-1.8.7-p72.tar.gz:
As a special service "SfR Fresh" has tried to format the requested source page into HTML format using source code syntax highlighting with prefixed line numbers.
Alternatively you can here view or download the uninterpreted source code file.
That can be also achieved for any archive member file by clicking within an archive contents listing on the first character of the file(path) respectively on the according byte size field.
1 Fri Aug 8 10:53:52 2008 Tanaka Akira <akr@fsij.org>
2
3 * lib/resolv.rb: randomize source port and transaction id.
4 CVE-2008-1447.
5
6 * lib/resolv-replace.rb (UDPSocket#bind): don't resolv host if host is
7 "".
8
9 Mon Aug 4 14:49:35 2008 URABE Shyouhei <shyouhei@ruby-lang.org>
10
11 * lib/net/smtp.rb (Net::SMTP::rcptto): fix a typo. a patch from
12 Masao Takaku <masao at nii.ac.jp>
13 fix [ruby-dev:35489].
14
15 Mon Aug 4 14:13:15 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
16
17 * regex.c (xmalloc, xrealloc, xfree): not to use ruby managed memory.
18
19 * regex.c (DOUBLE_STACK, re_compile_fastmap0, re_adjust_startpos),
20 (re_search, re_match_exec): check if failed to allocate memory.
21
22 Mon Aug 4 13:53:42 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
23
24 * bignum.c (rb_big2str0, bigsqr): made interruptible. [ruby-Bugs-20622]
25
26 Mon Aug 4 13:31:41 2008 NAKAMURA Usaku <usa@ruby-lang.org>
27
28 * numeric.c (check_uint, rb_num2uint, rb_fix2uint): fixed wrong check
29 about 64bit positive value.
30 Mon Aug 4 13:31:41 2008 NAKAMURA Usaku <usa@ruby-lang.org>
31
32 * numeric.c (check_uint, rb_num2uint, rb_fix2uint): strict check.
33 fixed [ruby-dev:33683]
34 Mon Aug 11 09:37:17 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
35
36 * ext/dl/dl.c (rb_str_to_ptr): should propagate taint to dlptr.
37
38 * ext/dl/dl.c (rb_ary_to_ptr): ditto.
39
40 * ext/dl/sym.c (rb_dlsym_call): should check taint of DLPtrData as
41 well.
42
43
44 Thu Jul 17 21:42:07 2008 URABE Shyouhei <shyouhei@ruby-lang.org>
45
46 * lib/net/smtp.rb (Net::SMTP::start): revert to avoid RFC2821
47 violation. [ruby-dev:35487]
48
49 Thu Jul 17 21:32:49 2008 Tanaka Akira <akr@fsij.org>
50
51 * string.c (rb_str_format_m): make tmp volatile to avoid possible GC
52 problem.
53
54 Thu Jul 17 21:30:55 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
55
56 * lib/optparse.rb (OptionParser#environment): requires shellwords.
57 [ruby-dev:35466]
58
59 Thu Jul 17 02:05:10 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
60
61 * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): requires
62 webrick/cookie. [ ruby-Bugs-21139 ]
63
64 Thu Jul 17 01:38:31 2008 Yusuke Endoh <mame@tsg.ne.jp>
65
66 * ext/zlib/zlib.c (rb_gzfile_set_mtime): fix typo. [ruby-core:17713]
67
68 Sun Jul 13 00:08:16 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
69
70 * lib/ipaddr.rb (IPAddr#initialize): get rid of ArgumentError in
71 IPAddr#to_range. a patch from okkez <okkez000 AT gmail.com> in
72 [ruby-dev:35091].
73
74 Sun Jul 13 00:04:38 2008 Tanaka Akira <akr@fsij.org>
75
76 * configure.in (erfc): erfc of glibc comes with Debian GNU/Linux Etch
77 on IA64 is broken. erfc(10000.0) aborts.
78 use missing/erf.c instead.
79 http://sources.redhat.com/ml/libc-hacker/2005-08/msg00008.html
80
81 Thu Jul 10 18:50:48 2008 Tanaka Akira <akr@fsij.org>
82
83 * common.mk (SPEC_GIT_BASE): update RubySpec GIT URL.
84
85 Thu Jul 10 18:46:28 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
86
87 * file.c (rb_file_s_extname): fix for file name with spaces.
88 [ruby-talk:307404]
89
90 Thu Jul 10 18:42:37 2008 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
91
92 * lib/erb.rb (PercentScanner#scan): fix %% line bug. [ruby-core:17491]
93
94 * test/erb/test_erb.rb (test_percent): ditto.
95
96 Thu Jul 10 18:40:22 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
97
98 * lib/net/ftp.rb (Net::FTP#sendport): use divmod. [ruby-core:17557]
99
100 Thu Jul 10 18:36:53 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
101
102 * ruby.c: Mac OS X needs origargc times of '\0' in
103 origargv. [ruby-dev:35308]
104
105 Thu Jul 10 13:53:08 2008 Tanaka Akira <akr@fsij.org>
106
107 * include/ruby/ruby.h (POSFIXABLE): use FIXNUM_MAX+1 instead of
108 FIXNUM_MAX to make it possible to convert to double accurately.
109 It assumes FLT_RADIX is 2.
110 fix RubyForge bug #14102.
111 backported from 1.9.
112
113 Mon Jul 7 16:21:38 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
114
115 * lib/net/smtp.rb (Net::SMTP::start): use 'localhost' instead of
116 'localhost.localdomain'. [ruby-dev:35333]
117
118 * lib/net/smtp.rb (Net::SMTP::SMTP.start): ditto.
119
120 Mon Jul 7 15:02:13 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
121
122 * eval.c (rb_longjmp): duplicate the thrown exception to set backtrace
123 if it was frozen. clear all raised flags.
124
125 * eval.c (stack_check): leave clearing flag to rb_longjmp.
126
127 * eval.c (rb_thread_set_raised, rb_thread_reset_raised): use generic
128 flags.
129
130 * eval.c (Init_Proc), gc.c (Init_GC): freeze preallocated special exceptions.
131
132 * gc.c (rb_memerror): use thread raised flag instead of static flag,
133 and raise nomem_error without backtrace if failed to make backtrace.
134 [ruby-dev:34724]
135
136 * gc.c (ruby_xmalloc): increase malloc_increase only if malloc
137 succeeds. failed malloc size can be huge. it may increase
138 malloc_limit too big which cause less GC and memory full.
139 (ruby_xrealloc): ditto.
140
141 Mon Jul 7 12:23:05 2008 Masaki Suketa <masaki.suketa@nifty.ne.jp>
142
143 * ext/win32ole/win32ole.c: avoid creating Ruby object during
144 GC. thanks to arton <artonx AT yahoo.co.jp>. [ruby-dev:35313]
145
146 * ext/win32ole/tests: add test_win32ole_event.rb, remove
147 testOLEEVENT.rb
148
149 * ext/win32ole/tests/testWIN32OLE.rb(test_convert_bignum):
150 fix test.
151
152 Mon Jul 7 12:23:05 2008 Masaki Suketa <masaki.suketa@nifty.ne.jp>
153
154 * gc.c: add rb_during_gc(). based on a patch from arton <artonx AT
155 yahoo.co.jp> at [ruby-dev:35313].
156
157 * intern.h: ditto.
158
159 Thu Jul 3 20:13:20 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
160
161 * marshal.c (w_object, marshal_dump, r_object0, marshal_load): search
162 public methods only. [ruby-core:17283]
163
164 * object.c (convert_type): ditto.
165
166 * lib/singleton.rb (Singleton#_dump): conversion method should be
167 public.
168
169 Wed Jul 2 19:06:43 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
170
171 * lib/cgi.rb (CGI::QueryExtension.read_multipart): blanks inside
172 double quotes are allowed. [ruby-list:45140]
173
174 Wed Jul 2 19:03:37 2008 Tanaka Akira <akr@fsij.org>
175
176 * numeric.c (num_coerce): call rb_Float(x) first. don't depend on
177 evaluation order of function arguments.
178
179 Wed Jul 2 18:57:19 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
180
181 * ext/syslog/syslog.c (syslog_write): syslog operations should be
182 protected from $SAFE level 4. a patch from Keita Yamaguchi
183 <keita.yamaguchi at gmail.com>.
184
185 * ext/syslog/syslog.c (mSyslog_close): ditto.
186
187 * ext/syslog/syslog.c (mSyslog_set_mask): ditto.
188
189 Wed Jul 2 18:26:20 2008 Tanaka Akira <akr@fsij.org>
190
191 * math.c (domain_check): fix preprocess condition.
192
193 Wed Jul 2 18:22:52 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
194
195 * lib/tmpdir.rb (@@systmpdir): prior LOCAL_APPDATA if possible, and
196 should be clean. based on a patch from arton <artonx AT
197 yahoo.co.jp> at [ruby-dev:35269]
198
199 Wed Jul 2 18:16:19 2008 Masaki Suketa <masaki.suketa@nifty.ne.jp>
200
201 * ext/win32ole/win32ole.c (date2time_str): fix the overflow in
202 some situation. [ruby-bugs-20793]
203
204 Tue Jul 1 15:11:14 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
205
206 * array.c (rb_ary_fill): check if beg is too big.
207
208 Mon Jun 30 20:35:32 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
209
210 * string.c (str_buf_cat): check for self concatenation.
211
212 Sun Jun 29 21:39:54 2008 Tanaka Akira <akr@fsij.org>
213
214 * eval.c (rb_obj_respond_to): use RTEST to test the result of
215 respond_to? method.
216
217 Sun Jun 29 21:20:17 2008 URABE Shyouhei <shyouhei@ruby-lang.org>
218
219 * array.c (rb_ary_fill): (compatibility) do not raise
220 ArgumentError on negative length. This behaviour shall change
221 in a future release.
222
223 Sun Jun 29 20:08:11 2008 Tanaka Akira <akr@fsij.org>
224
225 * time.c (time_timeval): fix rounding negative float.
226
227 Sun Jun 29 19:19:08 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
228
229 * test/inlinetest.rb (InlineTest.in_progname): workaround for frozen
230 $0. [ruby-dev:35261]
231
232 * lib/test/unit/ui/console/testrunner.rb (TestRunner#finished): ditto.
233
234 Sun Jun 29 19:19:08 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
235
236 * ruby.c (set_arg0, ruby_prog_init): freeze $0. a patch from Keita
237 Yamaguchi <keita.yamaguchi at gmail.com>.
238
239 Sun Jun 29 18:33:33 2008 Tanaka Akira <akr@fsij.org>
240
241 * process.c: include sys/resource.h if HAVE_SYS_RESOURCE_H is defined.
242 pointed by TOYOFUKU Chikanobu. [ruby-dev:35258]
243
244 Sun Jun 29 18:26:01 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
245
246 * variable.c (rb_f_trace_var): should not be allowed at safe level 4.
247 a patch from Keita Yamaguchi <keita.yamaguchi at gmail.com>.
248
249 * eval.c (rb_call0): wrong condition to check insecure method.
250 a patch from Keita Yamaguchi <keita.yamaguchi at gmail.com>.
251
252 Sun Jun 29 18:22:52 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
253
254 * array.c (rb_ary_fill): not depend on unspecified behavior at integer
255 overflow. reported by Vincenzo Iozzo <snagg AT openssl.it>.
256
257 Sun Jun 29 18:22:06 2008 Masaki Suketa <masaki.suketa@nifty.ne.jp>
258
259 * ext/win32ole/win32ole.c(ole_invoke): fix memory leak.
260 [ruby-bugs-20792]
261
262 Sun Jun 29 18:19:11 2008 Akinori MUSHA <knu@iDaemons.org>
263
264 * eval.c (PUSH_FRAME, PUSH_CLASS): Add volatile to avoid a
265 possible optimization bug on OS X/PPC. This at least makes
266 build with gcc -O1 and `make test' pass.
267
268 Sun Jun 29 17:24:43 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
269
270 * lib/rdoc/parsers/parse_rb.rb (RDoc#collect_first_comment): skip
271 magic comment.
272
273 Sun Jun 29 17:22:09 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
274
275 * ext/stringio/stringio.c (strio_each, strio_readlines): IO#each and
276 IO#readlines do not affect $_. [ruby-core:17277]
277
278 Sun Jun 29 17:19:59 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
279
280 * ext/stringio/stringio.c (strio_readline, strio_each)
281 (strio_readlines): set lastline. [ruby-core:17257]
282
283 Sun Jun 29 17:15:49 2008 NAKAMURA Usaku <usa@ruby-lang.org>
284
285 * ext/openssl/ossl.h: include winsock.h if USE_WINSOCK2 is not defined.
286 a patch from arton <artonx at yahoo.co.jp> in [ruby-dev:35078]
287
288 Sun Jun 29 17:09:48 2008 wanabe <s.wanabe@gmail.com>
289
290 * util.c (ruby_strtod): ruby_strtod don't allow a trailing
291 decimal point like "7.". [ruby-dev:34835] [ruby-dev:35009]
292
293 Sat Jun 28 19:23:40 2008 URABE Shyouhei <shyouhei@ruby-lang.org>
294
295 * class.c (clone_method): use rb_copy_node_scope.
296 fixed [ruby-list:45102]
297 fixed [ruby-core:17393]
298
299 Sat Jun 28 18:49:50 2008 URABE Shyouhei <shyouhei@ruby-lang.org>
300
301 * class.c: revert to r15855.
302
303 Fri Jun 20 18:25:18 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
304
305 * string.c (rb_str_buf_append): should infect.
306
307 Fri Jun 20 16:33:09 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
308
309 * array.c (rb_ary_store, rb_ary_splice): not depend on unspecified
310 behavior at integer overflow.
311
312 * string.c (str_buf_cat): ditto.
313
314 Wed Jun 18 22:24:46 2008 URABE Shyouhei <shyouhei@ruby-lang.org>
315
316 * array.c (ary_new, rb_ary_initialize, rb_ary_store,
317 rb_ary_aplice, rb_ary_times): integer overflows should be
318 checked. based on patches from Drew Yao <ayao at apple.com>
319 fixed CVE-2008-2726
320
321 * string.c (rb_str_buf_append): fixed unsafe use of alloca,
322 which led memory corruption. based on a patch from Drew Yao
323 <ayao at apple.com> fixed CVE-2008-2726
324
325 * sprintf.c (rb_str_format): backported from trunk.
326
327 * intern.h: ditto.
328
329 Tue Jun 17 15:09:46 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
330
331 * file.c (file_expand_path): no need to expand root path which has no
332 short file name. [ruby-dev:35095]
333
334 Sun Jun 15 19:27:40 2008 Akinori MUSHA <knu@iDaemons.org>
335
336 * configure.in: Fix $LOAD_PATH. Properly expand vendor_ruby
337 directories; submitted by Takahiro Kambe <taca at
338 back-street.net> in [ruby-dev:35099].
339
340 Mon Jun 9 17:56:30 2008 Akinori MUSHA <knu@iDaemons.org>
341
342 * lib/set.rb (Set#delete_if): Call to_a.
343 (SortedSet#delete_if, TC_SortedSet#test_sortedset): Use super to
344 yield elements in sorted order; [ruby-core:17144] by Arthur
345 Schreiber.
346 (SortedSet#each, SortedSet#each, TC_Set#test_each)
347 (TC_SortedSet#test_sortedset): Return self; [ruby-dev:35002] by
348 Arthur Schreiber.
349
350 Mon Jun 9 03:28:05 2008 Akinori MUSHA <knu@iDaemons.org>
351
352 * ext/zlib/zlib.c (rb_deflate_initialize, Init_zlib): Fix up
353 initialize_copy; [ruby-list:45016], [ruby-list:45018].
354
355 Mon Jun 9 03:26:03 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
356
357 * NEWS: Mention new constants.
358
359 Mon Jun 9 03:24:18 2008 Tanaka Akira <akr@fsij.org>
360
361 * hash.c (hash_i): make Hash#hash order insensitive.
362
363 Mon Jun 9 03:22:43 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
364
365 * configure.in (VENDOR_DIR): use LIBDIR instead of PREFIX as well as
366 SITE_DIR. a patch from Richard Brown <rbrown AT exherbo.org> in
367 [ruby-core:17129].
368
369 Mon Jun 9 03:21:20 2008 Tanaka Akira <akr@fsij.org>
370
371 * gc.c (os_obj_of): assure to not free the scanning heap.
372
373 Mon Jun 9 03:20:12 2008 NAKAMURA Usaku <usa@ruby-lang.org>
374
375 * io.c (rb_open_file, rb_io_s_sysopen): fmode should be unsigned int.
376 fixed [ruby-dev:34979]
377
378 Fri Jun 6 21:16:55 2008 NAKAMURA Usaku <usa@ruby-lang.org>
379
380 * win32/Makefile.sub (COMMON_HEADERS): include ws2tcpip.h.
381
382 * ext/socket/addrinfo.h (addrinfo, getaddrinfo, getnameinfo,
383 freehostent, freeaddrinfo): undef before define because these are
384 macros in some versions of Windows SDK.
385
386 * win32/setup.mak: maybe commit miss.
387
388 Fri Jun 6 19:34:22 2008 Akinori MUSHA <knu@iDaemons.org>
389
390 * mkconfig.rb: hide build path from rbconfig.rb.
391
392 * util.c (ruby_strtod, dtoa): initialize more variables for error
393 handling.
394
395 * io.c (rscheck), marshal.c (w_nbyte, w_bytes, w_unique),
396 (path2class, path2module): constified.
397
398 * pack.c (pack_unpack), process.c (rb_syswait): suppress warnings.
399
400 * suppress warnings on cygwin, mingw and mswin.
401
402 Fri Jun 6 19:23:53 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
403
404 * file.c (file_expand_path): fix for non-existent files and SFN of
405 symlinks. [ruby-talk:303736]
406
407 Fri Jun 6 18:25:43 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
408
409 * test/iconv: Tests fixed.
410
411 Fri Jun 6 17:04:56 2008 Akinori MUSHA <knu@iDaemons.org>
412
413 * win32/win32.h: include ws2tcpip.h. fixed [ruby-Bugs-20528]
414
415 * lib/time.rb (Time.xmlschema): don't use float. fix
416 http://rubyforge.org/tracker/index.php?func=detail&group_id=426&atid=1698&aid=20504
417
418 * object.c (rb_obj_alloc): RDoc updated. a patch from Gaston
419 Ramos <ramos.gaston at gmail.com> in [ruby-core:17073].
420
421 * lib/rdoc.rb: massive spelling correction patch from Evan Farrar
422 <evanfarrar at gmail.com> in [ruby-doc:1382] applied.
423
424 * ext/openssl/ossl_ssl_session.c (ossl_ssl_session_initialize):
425 Add a null check for ssl; submitted by akira yamada
426 in [ruby-dev:34950].
427
428 * ext/openssl/ossl_ssl.c (Init_ossl_ssl): Define OP_NO_TICKET if
429 SSL_OP_NO_TICKET is present; submitted by akira yamada
430 in [ruby-dev:34944].
431
432 * test/openssl/test_ssl.rb (OpenSSL#test_server_session): Add a
433 workaround for the case where OpenSSL is configured with
434 --enable-tlsext; submitted by akira yamada in [ruby-dev:34944].
435
436 Fri Jun 6 16:58:23 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
437
438 * ext/iconv/iconv.c (iconv_iconv): fix for length argument and now
439 allows range. [ruby-core:17092] [ruby-core:17115]
440
441 Wed Jun 4 17:22:30 2008 Akinori MUSHA <knu@iDaemons.org>
442
443 * NEWS: Fix typos and move misplaced entries.
444 NEWS: Somehow optflags and warnflags were not actually included
445 in this release.
446
447 Tue Jun 3 19:33:22 2008 Akinori MUSHA <knu@iDaemons.org>
448
449 * enumerator.c (enumerator_init_copy): Take care of
450 initialize_copy as well as initialize.
451
452 * test/ruby/test_enumerator.rb: Pull in the test suite for
453 enumerator from trunk.
454
455 Tue Jun 3 12:51:57 2008 Akinori MUSHA <knu@iDaemons.org>
456
457 * enumerator.c (enumerator_allocate, enumerator_ptr): Properly
458 detect if the object is initialized and raise error when
459 appropriate.
460 (enumerator_initialize): Fix a typo in rdoc. [ruby-core:17052]
461
462 Tue Jun 3 10:16:40 2008 Akinori MUSHA <knu@iDaemons.org>
463
464 * lib/erb.rb (ERB::Compiler::TrimScanner#scan_line): Fix a bug
465 where tokens are not yilelded one by one.
466 (ERB::Compiler::TrimScanner#explicit_trim_line): Fix without-
467 strscan problems. [ruby_core:17028].
468
469 * test/erb/test_erb.rb (TestERBCore#_test_01)
470 (TestERBCore#test_02_safe_04): The expected value should come
471 first for assert_equal().
472 (TestERBCoreWOStrScan): Add test class for without-strscan.
473
474 Mon Jun 2 19:47:16 2008 Akinori MUSHA <knu@iDaemons.org>
475
476 * lib/delegate.rb (DelegateClass, Delegator#respond_to?):
477 respond_to? must take optional second argument. This was a
478 latent bug exposed by a recent internal change of marshal.c to
479 call respond_to? with a second argument; submitted by Jeremy
480 Kemper <jeremy at bitsweat.net> in [ruby-core:17045].
481
482 Sat May 31 23:53:35 2008 Akinori MUSHA <knu@iDaemons.org>
483
484 * .: Release as Ruby 1.8.7.
485
486 Sat May 31 23:33:34 2008 Akinori MUSHA <knu@iDaemons.org>
487
488 * README, README.ja: Add a note about default C flags.
489
490 Sat May 31 22:11:15 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
491
492 * version.c (ruby_description, ruby_copyright): backported from
493 1.9. bug#19002, [ruby-dev:34883]
494
495 * error.c (report_bug): uses ruby_description.
496
497 Sat May 31 20:56:04 2008 Akinori MUSHA <knu@iDaemons.org>
498
499 * array.c (rb_ary_delete_if): should return enumerator if no block
500 is given. [ruby-dev:34901]
501
502 Sat May 31 18:28:17 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
503
504 * suppress warnings with -Wwrite-string.
505
506 Sat May 31 15:58:08 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
507
508 * Makefile.in, configure.in (warnflags): defaulted to -Wall
509 -Wno-parentheses with gcc. [ruby-dev:34810]
510
511 Fri May 30 05:28:18 2008 NAKAMURA Usaku <usa@ruby-lang.org>
512
513 * enum.c (count_i, count_iter_i, count_all_i): add prototypes for VC.
514
515 Fri May 30 04:32:07 2008 Akinori MUSHA <knu@iDaemons.org>
516
517 * enum.c (count_i, count_iter_i): Sync with trunk.
518 enum.c (enum_count, count_all_i, Init_Enumerable),
519 array.c (rb_ary_count): Sync with trunk. If no argument or
520 block is given, count the number of all elements.
521
522 Fri May 30 03:12:18 2008 Akinori MUSHA <knu@iDaemons.org>
523
524 * ext/openssl/ossl_bn.c (ossl_bn_s_rand, ossl_bn_s_pseudo_rand):
525 Int should be enough here.
526
527 Fri May 30 02:35:00 2008 Akinori MUSHA <knu@iDaemons.org>
528
529 * ext/openssl/ossl_bn.c (ossl_bn_s_rand, ossl_bn_s_pseudo_rand),
530 ext/openssl/ossl_pkey_dh.c (ossl_dh_s_generate)
531 (ossl_dh_initialize),
532 ext/openssl/ossl_pkey_dsa.c (ossl_dsa_s_generate),
533 ext/openssl/ossl_rand.c (ossl_rand_bytes)
534 (ossl_rand_pseudo_bytes, ossl_rand_egd_bytes),
535 ext/openssl/ossl_x509store.c (ossl_x509stctx_set_error): Do not
536 use FIX2INT() without checking the value type. Use NUM2INT()
537 instead; found by akr in [ruby-dev:34890].
538
539 Thu May 29 20:07:45 2008 Akinori MUSHA <knu@iDaemons.org>
540
541 * configure.in, win32/Makefile.sub, mkconfig.rb, instruby.rb,
542 ruby.c, lib/mkmf.rb, README.EXT, README.EXT.ja: Backport the
543 vendor_ruby directory support.
544
545 Thu May 29 17:52:31 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
546
547 * ext/zlib/extconf.rb: search zlib1, and regard mswin32 later than VC6
548 as WIN32. [ruby-core:16984]
549
550 Wed May 28 17:54:29 2008 Akinori MUSHA <knu@iDaemons.org>
551
552 * string.c (rb_str_start_with): Remove an unused variable.
553 (rb_str_upto_m): Fix a prototype.
554
555 Wed May 28 17:48:28 2008 Akinori MUSHA <knu@iDaemons.org>
556
557 * range.c (range_step): Fix brokenness when a non-integer numeric
558 value is specified as step. [rubyspec]
559 (range_step): Make use of String#step internally if a string (or
560 string-alike) range is given.
561
562 * string.c (rb_str_upto_m, Init_String): Add an optional second
563 argument to specify if the last value should be included.
564
565 Wed May 28 16:53:39 2008 Akinori MUSHA <knu@iDaemons.org>
566
567 * array.c (rb_ary_slice_bang): Call rb_ary_modify_check() at the
568 beginning. [rubyspec]
569
570 Wed May 28 16:12:44 2008 Akinori MUSHA <knu@iDaemons.org>
571
572 * lib/webrick/httpservlet/cgihandler.rb (WEBrick::HTTPServlet::CGIHandler#do_GET):
573 Set the HTTP status code to 302 if a Location header field is
574 present and the status code is not valid as a client
575 redirection. cf. RFC 3875 6.2.3, 6.2.4.
576
577 Wed May 28 15:18:16 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
578
579 * lib/singleton.rb (SingletonClassMethods): _load should be public.
580
581 Wed May 28 12:52:41 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
582
583 * marshal.c (w_object, marshal_dump, r_object0, marshal_load): search
584 private methods too. [ruby-dev:34671]
585
586 * object.c (convert_type): ditto.
587
588 Tue May 27 23:26:49 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
589
590 * error.c (rb_bug): description from rb_bug() should include
591 patchlevel. [ruby-dev:34826]
592
593 Tue May 27 20:19:22 2008 Akinori MUSHA <knu@iDaemons.org>
594
595 * array.c (rb_ary_slice_bang): Return an empty array instead of
596 nil when pos is valid and len is adjusted from a valid value to
597 zero; caught by RubySpec.
598
599 Tue May 27 19:45:20 2008 Akinori MUSHA <knu@iDaemons.org>
600
601 * numeric.c (flo_divmod): Revert the behavior change; do not
602 suppress an exception when div is NaN or Inf. [ruby-dev:34857]
603
604 Tue May 27 19:24:40 2008 Akinori MUSHA <knu@iDaemons.org>
605
606 * enum.c (enum_to_a): Pass arguments through to #each().
607 (enum_sort): Follow the enum_to_a signature change.
608 (enum_reverse_each): Add #reverse_each().
609
610 Tue May 27 18:54:02 2008 Akinori MUSHA <knu@iDaemons.org>
611
612 * ext/stringio/stringio.c (strio_each_char, Init_stringio): Add
613 StringIO#{each_char,chars}.
614
615 Tue May 27 17:59:34 2008 Akinori MUSHA <knu@iDaemons.org>
616
617 * ext/stringio/stringio.c (strio_each): Return an enumerator if no
618 block is given.
619 (strio_each_byte): Return an enumerator if no block is given,
620 and return self if one is given as the rdoc says.
621
622 * io.c (rb_io_each_byte): Fix rdoc. IO#each_byte returns self,
623 not nil.
624
625 Tue May 27 16:02:58 2008 Akinori MUSHA <knu@iDaemons.org>
626
627 * eval.c (rb_mod_module_exec, Init_eval): Add
628 Module#{module_exec,class_exec}.
629
630 Tue May 27 15:36:37 2008 Akinori MUSHA <knu@iDaemons.org>
631
632 * io.c (rb_io_each_char, argf_each_char, Init_IO):
633 Add {IO#,ARGF.}{each_char,chars}.
634
635 Tue May 27 13:46:52 2008 Akinori MUSHA <knu@iDaemons.org>
636
637 * ext/stringio/stringio.c (Init_stringio): Define
638 StringIO#{getbyte,readbyte}.
639
640 Tue May 27 13:38:51 2008 Akinori MUSHA <knu@iDaemons.org>
641
642 * io.c (Init_IO): Define {IO#,ARGF.}{getbyte,readbyte}.
643
644 Tue May 27 13:26:15 2008 Akinori MUSHA <knu@iDaemons.org>
645
646 * ext/stringio/stringio.c (Init_stringio): Define #bytes and
647 #lines.
648
649 Tue May 27 13:20:35 2008 Akinori MUSHA <knu@iDaemons.org>
650
651 * io.c: (rb_io_lines, rb_io_bytes, Init_IO): Define
652 IO#{lines,bytes} and ARGF.{lines,bytes}.
653
654 Tue May 27 12:13:17 2008 NAKAMURA Usaku <usa@ruby-lang.org>
655
656 * file.c (BUFCHECK): wrong condition. [ruby-core:16921]
657
658 * file.c (file_expand_buf): shouldn't use buflen for length of string.
659
660 Mon May 26 18:24:48 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
661
662 * file.c (BUFCHECK): no resize if enough room.
663
664 * file.c (file_expand_path): use BUFCHECK.
665
666 Mon May 26 16:46:19 2008 NAKAMURA Usaku <usa@ruby-lang.org>
667
668 * file.c (ntfs_tail): filename which starts with '.' is valid.
669
670 * file.c (file_expand_path): cygwin symlink support.
671
672 Mon May 26 12:16:43 2008 Akinori MUSHA <knu@iDaemons.org>
673
674 * .: Release as Ruby 1.8.7-preview4.
675
676 Mon May 26 12:12:26 2008 Akinori MUSHA <knu@iDaemons.org>
677
678 * marshal.c (dump_ensure, load_ensure): should return values.
679
680 * eval.c (yield_under, yield_under_i, yield_args_under_i)
681 (specific_eval, rb_obj_instance_exec, Init_eval): Implement
682 Object#instance_exec(), a 1.9 feature.
683
684 Mon May 26 11:53:21 2008 Akinori MUSHA <knu@iDaemons.org>
685
686 * eval.c (rb_yield_0, proc_invoke, proc_arity): allow passing a
687 block to a Proc. [ruby-dev:23533]; by nobu; backported from
688 1.9. This implementation in current shape is known to be
689 buggy/broken, especially with nested block invocation. Take
690 this as an experimental feature.
691
692 * parse.y (block_par, block_var): ditto.
693
694 Mon May 26 08:00:52 2008 Akinori MUSHA <knu@iDaemons.org>
695
696 * marshal.c (r_object0, Init_marshal): Fix the garbled s_call
697 definition; fixes [ruby-dev:34843].
698
699 Mon May 26 03:16:20 2008 Akinori MUSHA <knu@iDaemons.org>
700
701 * hash.c (rb_hash_default): Fix rdoc.
702 (rb_hash_each, env_each_value, env_each_pair): Return an
703 enumerator if no block is given.
704 (rb_hash_update): Update rdoc.
705 (envix): Conditionalize the definition itself.
706 (rb_f_getenv, env_fetch, env_keys, env_values, env_values_at)
707 (env_select, env_inspect, env_to_a, env_empty_p, env_has_key)
708 (env_has_value, env_index, env_indexes, env_to_hash, env_shift)
709 (env_update): Require secure level 4.
710 (env_each_value, env_each_i): Delay variable initialization.
711 (env_each_key, env_each_value, env_reject_bang)
712 (env_clear, env_replace): Omit duplicated secure level check.
713 (env_has_value): Do to_str conversion.
714
715 Sun May 25 19:48:12 2008 Akinori MUSHA <knu@iDaemons.org>
716
717 * hash.c (env_delete_if): Return an enumerator if no block is
718 given.
719 (env_each_key): Delay a variable initialization after
720 RETURN_ENUMERATOR().
721
722 Sun May 25 05:07:19 2008 Akinori MUSHA <knu@iDaemons.org>
723
724 * array.c (rb_ary_slice_bang): Be consistent with Array#slice()
725 and String#slice!(). Just return nil when a negative length or
726 out of boundary index is given instead of raising an exception
727 via internal functions.
728 (rb_ary_slice_bang): should not use rb_ary_subseq() which shares
729 internal pointer. splice modifies the receiver right after
730 subseq. [ruby-dev:34005]
731 (rb_ary_slice_bang): should adjust length before making
732 sub-array.
733
734 * enumerator.c (Init_Enumerator): Override
735 Enumerable::Enumerator#each_with_index with #with_index.
736
737 Sun May 25 03:13:09 2008 Akinori MUSHA <knu@iDaemons.org>
738
739 * eval.c (Init_Thread): Initialize recursive_key.
740
741 Sun May 25 02:45:49 2008 Akinori MUSHA <knu@iDaemons.org>
742
743 * error.c (syserr_eqq): Use en.
744
745 Sat May 24 22:32:49 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
746
747 * object.c (rb_cstr_to_dbl): should clear errno before calling
748 strtod(3). [ruby-dev:34834]
749
750 Sat May 24 22:27:44 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
751
752 * marshal.c (marshal_load): should initialize arg.data used for
753 reentrant check. [ruby-dev:34837]
754
755 Sat May 24 00:34:59 2008 Tanaka Akira <akr@fsij.org>
756
757 * lib/rational.rb (Rational#to_i): fix rdoc. Rational(-7,4).to_i
758 should be -1.
759
760 Fri May 23 20:22:44 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
761
762 * marshal.c (reentrant_check): check reentrance via callcc.
763 [ruby-dev:34802]
764
765 Fri May 23 16:46:28 2008 Akinori MUSHA <knu@iDaemons.org>
766
767 * enumerator.c (proc_call): Remove an unused static function.
768
769 Fri May 23 13:46:09 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
770
771 * configure.in (cflags): commit miss.
772
773 Fri May 23 09:52:21 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
774
775 * configure.in (MINIRUBY), common.mk (RUBYOPT): add purelib.rb.
776 [ruby-core:16642]
777
778 * ext/extmk.rb: load purelib.rb only when not cross compiling.
779
780 Fri May 23 08:47:02 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
781
782 * error.c (syserr_eqq): === should be able to handle delegated
783 objects as well.
784
785 Fri May 23 04:22:19 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
786
787 * ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: fix memory leak.
788
789 * ext/tk/lib/tk.rb: avoid trouble when finalize TclTkIp.
790
791 * ext/tk/lib/tk.rb, ext/tk/lib/tk/*: help to fix troubles when
792 use Ttk widgets on old Tk scripts.
793
794 * ext/tk/sample/*: update and add demo scripts. some of them are
795 introduction about new features of Tcl/Tk8.5.
796
797 Fri May 23 03:48:10 2008 Akinori MUSHA <knu@iDaemons.org>
798
799 * class.c (clone_method): Just use ruby_cref as cref.
800
801 Fri May 23 01:03:23 2008 Akinori MUSHA <knu@iDaemons.org>
802
803 * class.c (rb_singleton_class_clone): Pass Qnil, not 0.
804
805 Fri May 23 00:51:48 2008 Akinori MUSHA <knu@iDaemons.org>
806
807 * class.c (clone_method): Totally revamp the previous fix which
808 was incorrect.
809 (rb_mod_init_copy): Ditto.
810 (singleton_class_clone_int): Ditto.
811
812 Fri May 23 00:48:10 2008 Akinori MUSHA <knu@iDaemons.org>
813
814 * eval.c (rb_copy_node_scope), node.h: Rename from copy_node_scope
815 and export.
816
817 Thu May 22 21:24:15 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
818
819 * parse.y (top_local_setup): fixed memory leak bug based on a
820 patch from Roger Pack <rogerpack2005 at gmail.com> in
821 [ruby-core:16610].
822
823 Thu May 22 14:20:54 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
824
825 * array.c (flatten): check if reentered. [ruby-dev:34798]
826
827 Thu May 22 08:28:49 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
828
829 * array.c (flatten): free memo hash table before raising exception.
830 [ruby-dev:34789]
831
832 Thu May 22 06:30:10 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
833
834 * array.c (flatten): fix memory leak.
835
836 Thu May 22 05:45:30 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
837
838 * proc.c (proc_dup): should copy safe_level from src proc
839 properly. a patch from Keita Yamaguchi
840 <keita.yamaguchi at gmail.com>
841
842 Wed May 21 23:31:44 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
843
844 * eval.c (rb_get_method_body, rb_alias, rb_eval): should not cache
845 uninitialized value, since search_method doesn't set origin if the
846 method wasn't found.
847
848 * eval.c (search_method, remove_method, error_print, rb_alias)
849 (rb_eval, rb_rescue2, search_required, Init_eval, rb_thread_create),
850 gc.c (rb_source_filename, Init_stack), io.c (rb_io_getline),
851 parse.y (rb_id2name, rb_parser_free): suppress warnings.
852
853 Wed May 21 12:34:51 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
854
855 * hash.c (rb_hash_delete): rdoc fix based on a patch from Gaston Ramos
856 <ramos.gaston AT gmail.com>. [ruby-core:16825]
857
858 Tue May 20 13:15:46 2008 Akinori MUSHA <knu@iDaemons.org>
859
860 * file.c (lchmod_internal): Remove a compiler warning.
861
862 Mon May 19 18:22:35 2008 Akinori MUSHA <knu@iDaemons.org>
863
864 * ext/openssl/ossl_pkcs5.c (ossl_pkcs5_pbkdf2_hmac): Fix the type
865 of md; pointed out by Takahiro Kambe <taca at back-street.net>
866 in [ruby-dev:34748].
867
868 Mon May 19 14:20:13 2008 NAKAMURA Usaku <usa@ruby-lang.org>
869
870 * sprintf.c (rb_f_sprintf): fixed SEGV on win32 with "% 0e" % 1.0/0.0.
871
872 Mon May 19 13:29:58 2008 NAKAMURA Usaku <usa@ruby-lang.org>
873
874 * process.c (rb_f_system): set last_status when status == -1 because
875 there is no path to set it on win32. this patch is derived from
876 [ruby-core:16787], submitted by Luis Lavena <luislavena at gmail.com>
877
878 Mon May 19 13:01:05 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
879
880 * common.mk ({MSPEC,RUBYSPEC}_GIT_URL): moved from Makefine.in.
881
882 * {win32,bcc32}/Makefile.sub (update-rubyspec): added.
883
884 Mon May 19 11:53:45 2008 Akinori MUSHA <knu@iDaemons.org>
885
886 * ext/openssl/openssl_missing.c (HMAC_CTX_copy): adopted
887 prototype change in openssl bundled with newer OpenBSD.
888 a patch from Takahiro Kambe <taca at back-street.net> in
889 [ruby-dev:34691].
890
891 Mon May 19 06:36:37 2008 Akinori MUSHA <knu@iDaemons.org>
892
893 * .: Release as Ruby 1.8.7-preview3.
894
895 Sun May 18 22:26:51 2008 GOTOU Yuuzou <gotoyuzo@notwork.org>
896
897 * lib/webrick/httpservlet/filehandler.rb: should normalize path
898 name in path_info to prevent script disclosure vulnerability on
899 DOSISH filesystems. (fix: CVE-2008-1891)
900 Note: NTFS/FAT filesystem should not be published by the platforms
901 other than Windows. Pathname interpretation (including short
902 filename) is less than perfect.
903
904 * lib/webrick/httpservlet/abstract.rb
905 (WEBrick::HTTPServlet::AbstracServlet#redirect_to_directory_uri):
906 should escape the value of Location: header.
907
908 * lib/webrick/httpservlet/cgi_runner.rb: accept interpreter
909 command line arguments.
910
911 Sat May 17 23:53:57 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
912
913 * file.c (file_expand_path): fix for short file name on Cygwin.
914
915 Sat May 17 11:29:11 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
916
917 * file.c (rb_file_s_extname): first dot is not an extension name.
918
919 Sat May 17 10:18:44 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
920
921 * re.c (rb_reg_search): need to free allocated buffer in re_register.
922
923 Fri May 16 17:01:44 2008 NAKAMURA Usaku <usa@ruby-lang.org>
924
925 * win32/Makefile.sub (test-rubyspec): added.
926
927 Fri May 16 16:22:40 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
928
929 * ext/tk/tcltklib.c: sometimes freeze when receive Interrupt signal.
930
931 Fri May 16 14:54:56 2008 Tanaka Akira <akr@fsij.org>
932
933 * Makefile.in (update-rubyspec): move rubyspec to srcdir.
934 (test-rubyspec): ditto.
935
936 Fri May 16 14:25:22 2008 Tanaka Akira <akr@fsij.org>
937
938 * Makefile.in (test-rubyspec): use RUNRUBY. suggested by nobu.
939
940 Fri May 16 13:01:43 2008 Tanaka Akira <akr@fsij.org>
941
942 * Makefile.in (update-rubyspec): new target to download rubyspec.
943 (test-rubyspec): new target to run rubyspec. this doesn't work
944 before install.
945
946 Fri May 16 08:15:52 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
947
948 * ext/tk/lib/tk.rb: fix memory (object) leak bug.
949
950 * ext/tk/sample/demos-jp/aniwave.rb, ext/tk/sample/demos-en/aniwave.rb:
951 bug fix.
952
953 Thu May 15 17:00:22 2008 Akinori MUSHA <knu@iDaemons.org>
954
955 * string.c (Init_String): Define #bytesize as an alias for #size
956 for compatibility with 1.9.
957
958 Thu May 15 15:33:59 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
959
960 * file.c (file_expand_path): support for alternative data stream
961 and ignored trailing garbages of NTFS.
962
963 * file.c (rb_file_s_basename): ditto.
964
965 * file.c (rb_file_s_extname): ditto.
966
967 Wed May 14 19:24:59 2008 Akinori MUSHA <knu@iDaemons.org>
968
969 * array.c (rb_ary_count): Override Enumerable#count for better
970 performance.
971 (rb_ary_nitems): Undo the backport. Use #count {} instead.
972
973 * enumerator.c (enumerator_iter_i): Remove an unused function.
974 (enumerator_with_index, enumerator_each): Remove unused
975 variables.
976
977 Wed May 14 17:15:11 2008 NAKAMURA Usaku <usa@ruby-lang.org>
978
979 * ext/tk/tkutil/extronf.rb: check stdndup() because it's not standard
980 function of C.
981
982 * ext/tk/tkutil/tkutil.c (cbsubst_table_setup): use malloc() and
983 strncpy() instead of strndup() if not available.
984
985 Wed May 14 09:52:02 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
986
987 * ext/tk/tkutil/tkutil.c: improve handling callback-subst-keys.
988 Now, support longnam-keys (e.g. '%CTT' on tkdnd-2.0; however, still
989 not support tkdnd-2.0 on tkextlib), and symbols of parameters (e.g.
990 :widget=>'%W', :keycode=>'%k', '%x'=>:x, '%X'=>:root_x, and so on;
991 those are attributes of event object). It means that Ruby/Tk accepts
992 not only "widget.bind(ev, '%W', '%k', ...){|w, k, ...| ... }", but
993 also "widget.bind(ev, :widget, :keycode, ...){|w, k, ...| ... }".
994 It is potentially incompatible, when user passes symbols to the
995 arguments of the callback block (the block receives the symbols as
996 strings). I think that is very rare case (probably, used by Ruby/Tk
997 experts only). When causes such trouble, please give strings instead
998 of such symbol parameters (e.g. call Symbol#to_s method).
999
1000 * ext/tk/lib/tk/event.rb, ext/tk/lib/tk/validation.rb,
1001 ext/tk/lib/tkextlib/blt/treeview.rb,
1002 ext/tk/lib/tkextlib/winico/winico.rb: ditto.
1003
1004 * ext/tk/tkutil/tkutil.c: strings are available on subst_tables on
1005 TkUtil::CallbackSubst class (it is useful on Ruby 1.9).
1006
1007 * ext/tk/lib/tk/spinbox.rb, ext/tk/lib/tkextlib/iwidgets/hierarchy.rb,
1008 ext/tk/lib/tkextlib/iwidgets/spinner.rb,
1009 ext/tk/lib/tkextlib/iwidgets/entryfield.rb,
1010 ext/tk/lib/tkextlib/iwidgets/calendar.rb,
1011 ext/tk/lib/tkextlib/blt/dragdrop.rb,
1012 ext/tk/lib/tkextlib/tkDND/tkdnd.rb,
1013 ext/tk/lib/tkextlib/treectrl/tktreectrl.rb,
1014 ext/tk/lib/tkextlib/tktable/tktable.rb: disable code piece became
1015 unnecessary by reason of the changes of ext/tk/tkutil/tkutil.c.
1016
1017 Tue May 13 15:10:50 2008 Akinori MUSHA <knu@iDaemons.org>
1018
1019 * enumerator.c: Update rdoc.
1020 (enumerator_initialize): Discourage the use.
1021 (enum_each_slice, enum_each_cons, enumerator_each)
1022 (enumerator_with_index): Add a note about a call without a block.
1023
1024 * NEWS: Intentionally omit enum_slice and enum_cons, which are
1025 removed in 1.9.
1026
1027 Tue May 13 07:56:36 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1028
1029 * string.c (rb_str_cat): fixed buffer overrun reported by
1030 Christopher Thompson <cthompson at nexopia.com> in [ruby-core:16746]
1031
1032 Mon May 12 13:57:19 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1033
1034 * eval.c (is_defined): add NODE_OP_ASGN_{OR,AND}. "defined?(a||=1)"
1035 should not operate assignment. [ruby-dev:34645]
1036
1037 Mon May 12 12:59:23 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
1038
1039 * ext/tk/lib/tk/wm.rb: Wm#overrideredirect overwrites arguemnt to
1040 an invalid value.
1041
1042 * ext/tk/sample/ttk_wrapper.rb: support "if __FILE__ == $0" idiom.
1043
1044 Mon May 12 12:36:55 2008 NAKAMURA Usaku <usa@ruby-lang.org>
1045
1046 * win32/win32.c (rb_w32_select): backport from trunk.
1047 [ruby-talk:300743]
1048
1049 Mon May 12 12:33:21 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
1050
1051 * common.mk (RUBYLIB, RUBYOPT): clear.
1052
1053 Mon May 12 10:41:10 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
1054
1055 * lib/delegate.rb (SimpleDelegator::dup): removed needless argument.
1056 [ruby-list:44910]
1057
1058 * lib/delegate.rb (clone, dup): keep relationship with the target
1059 object.
1060
1061 Sun May 11 23:19:39 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
1062
1063 * enum.c (all_iter_i, any_iter_i): reduced duplicated code.
1064
1065 Sun May 11 17:57:36 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
1066
1067 * configure.in (MINIRUBY): should not include extension library path.
1068
1069 Sun May 11 10:36:10 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
1070
1071 * eval.c (method_name, method_owner): New methods; backported
1072 from 1.9. (UnboundMethod#name, UnboundMethod#owner)
1073
1074 Sun May 11 02:48:13 2008 <nagai@orca16.orcabay.ddo.jp>
1075
1076 * ext/tk/lib/tk/pack.rb, ext/tk/lib/tk/grid.rb: fail to do pack/grid
1077 without options.
1078
1079 * ext/tk/lib/tk.rb: add TkWindow#grid_anchor, grid_column, grid_row.
1080
1081 Sat May 10 18:19:16 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1082
1083 * string.c (rb_str_each_line): RDoc updated. [ruby-dev:34586]
1084
1085 Sat May 10 13:17:56 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
1086
1087 * ext/tk/lib/tk/pack.rb, ext/tk/lib/tk/grid.rb: increase supported
1088 parameter patterns of configure method.
1089
1090 Sat May 10 09:16:13 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1091
1092 * util.c (ruby_strtod): backported from 1.9. a patch from Satoshi
1093 Nakagawa <psychs at limechat.net> in [ruby-dev:34625].
1094 fixed: [ruby-dev:34623]
1095
1096 Fri May 9 23:33:25 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
1097
1098 * ext/tk/lib/tk/wm.rb: methods of Tk::Wm_for_General module cannot
1099 pass the given block to methods of Tk::Wm module.
1100
1101 * ext/tk/lib/tk/grid.rb: lack of module-method definitions.
1102
1103 * ext/tk/lib/tkextlib/tile.rb: lack of autoload definitions.
1104
1105 * ext/tk/lib/tkextlib/tile/tnotebook.rb: cannot use kanji (not UTF-8)
1106 characters for headings.
1107
1108 * ext/tk/tcltklib.c: maybe a little more stable about @encoding value
1109 of TclTkIp object.
1110
1111 Wed May 7 08:46:44 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1112
1113 * struct.c (rb_struct_s_def): to_str should be called only once.
1114 [ruby-core:16647]
1115
1116 Wed May 7 00:54:25 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1117
1118 * ext/zlib/zlib.c (gzreader_gets): may cause infinite loop.
1119 a patch from Kouya <kouyataifu4 at gmail.com> in
1120 [ruby-reference-manual:762].
1121
1122 Sun May 4 09:35:51 2008 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
1123
1124 * sample/erb/erb4html.rb (ERB4Html) : add example of ERB#set_eoutvar.
1125 ERB4Html is an auto-quote ERB.
1126
1127 Sat May 3 22:52:48 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
1128
1129 * ext/tk/lib/tkextlib/tile.rb, ext/tk/lib/tkextlib/tile/style.rb,
1130 ext/tk/sample/ttk_wrapper.rb: improve treating and control themes.
1131 add Tk::Tile.themes and Tk::Tile.set_theme(theme).
1132
1133 Fri May 2 14:52:33 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1134
1135 * misc/ruby-mode.el: move fontifying code from hook. a patch from
1136 Phil Hagelberg <phil at hagelb.org> in [ruby-core:16636].
1137
1138 Fri May 2 13:47:51 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1139
1140 * re.c (match_select): restore previous behavior of MatchData#select.
1141 RDoc updated as well, mentioning the plan to remove this method
1142 in the future. [ruby-dev:34556]
1143
1144 Fri May 2 13:04:04 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1145
1146 * ext/dbm/dbm.c (Init_dbm): defines DBM::VERSION even when
1147 DB_VERSION_STRING is not available. [ruby-dev:34569]
1148
1149 Thu May 1 23:57:06 2008 James Edward Gray II <jeg2@ruby-lang.org>
1150
1151 Merged 16257 from trunk.
1152
1153 * lib/net/telnet.rb: This patch from Brian Candler adds a FailEOF mode which
1154 can be activated to have net/telnet raise EOFError exceptions when the
1155 remote connection is closed. The default behavior remains unchanged though.
1156
1157 Thu May 1 23:43:21 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
1158
1159 * range.c (range_step): check if step can be converted to an integer.
1160 [ruby-dev:34558]
1161
1162 * range.c (range_step): allow float step bigger than zero but less
1163 than one. [ruby-dev:34557]
1164
1165 Wed Apr 30 20:22:40 2008 James Edward Gray II <jeg2@ruby-lang.org>
1166
1167 Merged 16241 from trunk.
1168
1169 * lib/net/telnet.rb: Fixing a bug where line endings would not be properly
1170 escaped when the two character ending was broken up into separate TCP
1171 packets. Issue reported and patched by Brian Candler.
1172
1173 Wed Apr 30 17:47:21 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
1174
1175 * re.c (rb_reg_search): use local variable. a patch from wanabe
1176 <s.wanabe AT gmail.com> in [ruby-dev:34537]. [ruby-dev:34492]
1177
1178 Sat Apr 26 19:40:34 2008 Guy Decoux <decoux@moulon.inra.fr>
1179
1180 * class.c (struct clone_method_data): Add cref.
1181 (clone_method): Properly handle NODE_BMETHOD and NODE_DMETHOD.
1182 (rb_singleton_class_clone, singleton_class_clone_int): Set a
1183 proper value to klass and propagate cref. [ruby-core:16238]
1184
1185 * eval.c (rb_block_dup, rb_method_dup), intern.h: Add duplicator
1186 methods for use from class.c#clone_method().
1187
1188 Fri Apr 25 15:46:37 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
1189
1190 * ext/tk/lib/tk.rb, ext/tk/lib/tk/scrollbar.rb, ext/tk/lib/tk/scale.rb:
1191 improve unknonw-option check when create a widget.
1192
1193 * ext/tk/lib/tkextlib/blt/unix_dnd.rb, ext/tk/lib/tkextlib/blt/ted.rb,
1194 ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: bug fix on 'cget'.
1195
1196 * ext/tk/lib/tk/menuspec.rb: option check will fail when
1197 TkConfigMethod.__IGNORE_UNKNOWN_CONFIGURE_OPTION__ is true.
1198
1199 * ext/tk/lib/tk/palette.rb: bug fix.
1200
1201 Fri Apr 25 12:37:54 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
1202
1203 * array.c (flatten): returns an instance of same class.
1204 [ruby-core:16554]
1205
1206 Thu Apr 24 23:47:50 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
1207
1208 * lib/net/pop.rb: backported from 1.9. bug#19003
1209
1210 * ext/openssl/lib/openssl/ssl.rb: set_params; backported from 1.9.
1211 bug#19552, [ruby-dev:34402]
1212
1213 * ext/openssl/ossl_ssl.c: ditto.
1214
1215 * test/openssl/test_ssl.rb: ditto.
1216
1217 Thu Apr 24 17:06:34 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1218
1219 * eval.c (THREAD_SAVE_CONTEXT): remove unnecessary
1220 FLUSH_REGISTER_WINDOWS before calling setjmp(). [ruby-core:16285]
1221
1222 Thu Apr 24 14:15:11 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
1223
1224 * dln.c (dln_find_1): prior files with extensions to files sans
1225 extensions. [ruby-core:16517]
1226
1227 Wed Apr 23 15:39:31 2008 Akinori MUSHA <knu@iDaemons.org>
1228
1229 * eval.c (bind_eval): Add Binding#eval, a shorthand method for
1230 eval(str, binding, ..); backported from 1.9.
1231
1232 Wed Apr 23 15:28:52 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
1233
1234 * test/gdbm/test_gdbm.rb (TestGDBM#test_s_open_no_create): failed
1235 notice moved from comment to assertion message. [ruby-dev:29127]
1236
1237 Wed Apr 23 14:00:05 2008 Akinori MUSHA <knu@iDaemons.org>
1238
1239 * lib/mkmf.rb (create_makefile): Add a missing dependency on the
1240 target directory for each .rb file. This will hopefully fix
1241 parallel make (-jN). Tested on FreeBSD.
1242
1243 Wed Apr 23 11:49:54 2008 Akinori MUSHA <knu@iDaemons.org>
1244
1245 * lib/set.rb (Set#each, SortedSet#each, TC_Set#test_each): Return
1246 an enumerator if no block is given.
1247
1248 Wed Apr 23 00:42:49 2008 Tanaka Akira <akr@fsij.org>
1249
1250 * eval.c (error_print): show full stack grace except SystemStackError.
1251 backport from 1.9. [ruby-dev:31014]
1252
1253 Wed Apr 23 00:18:45 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
1254
1255 * test/ruby/test_symbol.rb (TestSymbol#test_to_proc): Improve
1256 tests of Symbol#to_proc.
1257
1258 Tue Apr 22 22:43:05 2008 Akinori MUSHA <knu@iDaemons.org>
1259
1260 * eval.c (rb_proc_new, YIELD_FUNC_LAMBDA): Add a new nd_state
1261 YIELD_FUNC_LAMBDA which avoids automatic `avalue' conversion for
1262 arguments. This fixes a bug where [1,[2,3]].map(&:object_id)
1263 fails.
1264
1265 * intern.h, object.c: Hide rb_proc_new() from intern.h. It should
1266 not be considered an official API function yet.
1267
1268 Tue Apr 22 21:24:32 2008 Akinori MUSHA <knu@iDaemons.org>
1269
1270 * eval.c (rb_proc_new): Turn the BLOCK_LAMBDA flag on.
1271
1272 * object.c (sym_to_proc), test/ruby/test_symbol.rb: Add back
1273 Symbol#to_proc, now that it passes the tests.
1274
1275 Tue Apr 22 19:35:03 2008 Akinori MUSHA <knu@iDaemons.org>
1276
1277 * enumerator.c (enumerator_initialize): Remove an undocumented
1278 feature (passing a block to the constructor) that's broken.
1279 This is not what I intended.
1280
1281 Tue Apr 22 17:49:46 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1282
1283 * sprintf.c (rb_f_sprintf): should protect temporary string from
1284 GC. [ruby-dev:34480]
1285
1286 Tue Apr 22 17:12:05 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1287
1288 * regex.c (re_search): string might be NULL. [ruby-core:16478]
1289
1290 Tue Apr 22 16:44:00 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
1291
1292 * object.c (rb_obj_tap): Correct documentation; pointed out by
1293 okkez in [ruby-dev:34472].
1294
1295 Tue Apr 22 10:05:51 2008 NAKAMURA Usaku <usa@ruby-lang.org>
1296
1297 * file.c (eaccess): workaround for recent msvcrt's behavior.
1298 [ruby-core:16460]
1299
1300 Mon Apr 21 16:06:47 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1301
1302 * enumerator.c (enumerator_init): preserve the method name in ID.
1303
1304 * enumerator.c (enumerator_each): need not to call rb_to_id().
1305
1306 * enumerator.c (enumerator_with_index): ditto.
1307
1308 Mon Apr 21 17:19:52 2008 Akinori MUSHA <knu@iDaemons.org>
1309
1310 * eval.c (rb_f_method_name): New gloval function: __method__;
1311 backported from matzruby / 1.9.
1312
1313 * eval.c (rb_frame_this_func), intern.h: New internal function.
1314
1315 * intern.h (RETURN_ENUMERATOR): Use rb_frame_this_func() instead
1316 of rb_frame_last_func(), to accommodate the behavior to that of
1317 1.9.
1318
1319 Mon Apr 21 15:54:48 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1320
1321 * lib/tempfile.rb (Tempfile::_close): check @data before modifying
1322 it; backported from 1.9. [ruby-dev:34094]
1323
1324 * lib/tempfile.rb (Tempfile::close): clear @data and @tmpname.
1325
1326 Mon Apr 21 10:17:17 2008 NAKAMURA Usaku <usa@ruby-lang.org>
1327
1328 * time.c: should include <errno.h> to refer errno.
1329
1330 Mon Apr 21 10:02:43 2008 NAKAMURA Usaku <usa@ruby-lang.org>
1331
1332 * hash.c (recursive_hash): prototype.
1333
1334 Mon Apr 21 10:00:51 2008 NAKAMURA Usaku <usa@ruby-lang.org>
1335
1336 * time.c (rb_strftime): check errno to detect strftime(3)'s error.
1337 this is workaround for recent version of MSVCRT.
1338 [ruby-dev:34456]
1339
1340 Sun Apr 20 21:10:04 2008 Akinori MUSHA <knu@iDaemons.org>
1341
1342 * .: Release as Ruby 1.8.7-preview2.
1343
1344 Sun Apr 20 21:02:06 2008 Akinori MUSHA <knu@iDaemons.org>
1345
1346 * enumerator.c: Resolve the method every time an enumeration
1347 method is run, not once when the enumerator is initialized as it
1348 was before, so that method_missing() and method (re)definition
1349 afterwards are both in effect; pointed out in: [ruby-core:16441]
1350
1351 Sun Apr 20 17:59:25 2008 Akinori MUSHA <knu@iDaemons.org>
1352
1353 * object.c, NEWS, test/ruby/test_symbol.rb: Revert Symbol#to_proc
1354 since it does not pass the tests.
1355
1356 Sun Apr 20 14:29:35 2008 Technorama Ltd. <oss-ruby@technorama.net>
1357
1358 * ext/openssl/ossl_ssl.c: initialize session class.
1359
1360 Sat Apr 19 20:54:42 2008 akira yamada <akira@arika.org>
1361
1362 * lib/uri/ftp.rb, lib/uri/generic.rb, test/uri/test_common.rb,
1363 test/uri/test_ftp.rb, test/uri/test_generic.rb: backported from 1.9.
1364 [ruby-dev:31318]
1365
1366 Sat Apr 19 20:35:02 2008 Akinori MUSHA <knu@iDaemons.org>
1367
1368 * lib/yaml/baseemitter.rb, lib/yaml/encoding.rb: performance
1369 tuning around String#gsub.
1370
1371 * lib/yaml/tag.rb: Replace nodoc with stopdoc so Module methods get
1372 documented.
1373
1374 * lib/yaml/store.rb (YAML::load): modified to support empty
1375 database.
1376
1377 * lib/yaml/store.rb (YAML::Store::marshal_dump_supports_canonical_option?):
1378 add a method to support faster PStore.
1379
1380 Sat Apr 19 20:16:52 2008 Akinori MUSHA <knu@iDaemons.org>
1381
1382 * lib/yaml/types.rb: Likewise, pass self to YAML::quick_emit;
1383 merged from 1.9.
1384
1385 * lib/yaml.rb (quick_emit): use combination of object_id and hash to
1386 identify repeated object references, since GC will reuse memory of
1387 objects during output of YAML. [ruby-Bugs-8548] [ruby-Bugs-3698];
1388 merged from 1.9.
1389
1390 Sat Apr 19 20:05:39 2008 Akinori MUSHA <knu@iDaemons.org>
1391
1392 * array.c (rb_ary_equal, rb_ary_eql, rb_ary_hash, rb_ary_cmp):
1393 Make Array#eql?, #hash, #== and #<=> use rb_exec_recursive() and
1394 handle recursive data properly.
1395
1396 * hash.c (hash_equal, rb_hash_hash): Make Hash#eql?, #hash and #==
1397 use rb_exec_recursive() and handle recursive data properly.
1398
1399 Sat Apr 19 19:26:09 2008 Akinori MUSHA <knu@iDaemons.org>
1400
1401 * intern.h, eval.c (rb_exec_recursive): New internal function to
1402 help perform recursive operation; backported from 1.9.
1403
1404 Sat Apr 19 18:42:04 2008 Akinori MUSHA <knu@iDaemons.org>
1405
1406 * intern.h, hash.c (rb_hash_lookup): New internal function to
1407 check if a key exists in a hash, ignoring #default; backported
1408 from 1.9.
1409
1410 Fri Apr 18 18:56:57 2008 Akinori MUSHA <knu@iDaemons.org>
1411
1412 * ext/syck/rubyext.c (syck_genericresolver_node_import): should
1413 not set instance variable "@kind" before initializing it.
1414 [ruby-dev:32677]
1415
1416 * ext/syck/rubyext.c (syck_resolver_initialize,
1417 syck_resolver_detect_implicit, syck_emitter_emit): remove unused
1418 variables.
1419
1420 Fri Apr 18 18:54:57 2008 Akinori MUSHA <knu@iDaemons.org>
1421
1422 * ext/syck/rubyext.c: Node#value defined twice.
1423
1424 * lib/yaml/: several method redefinitions causing warnings.
1425
1426 Fri Apr 18 16:36:16 2008 Akinori MUSHA <knu@iDaemons.org>
1427
1428 * lib/rexml/node.rb (REXML::Node::indent): should initialize rv
1429 variable. a patch from Tadayoshi Funaba <tadf AT dotrb.org> in
1430 [ruby-dev:32783].
1431
1432 Fri Apr 18 16:01:37 2008 Akinori MUSHA <knu@iDaemons.org>
1433
1434 * lib/rexml: Merge fixes since 1.8.6 made solely on the ruby_1_8_6
1435 branch.
1436
1437 Wed Apr 16 06:11:49 2008 Akinori MUSHA <knu@iDaemons.org>
1438
1439 * test/ruby/test_settracefunc.rb (TestSetTraceFunc#test_event):
1440 Fix tests to reflect the following changes: r15833, r15759.
1441
1442 Wed Apr 16 05:03:48 2008 Akinori MUSHA <knu@iDaemons.org>
1443
1444 * .: Release as Ruby 1.8.7-preview1.
1445
1446 Wed Apr 16 02:09:14 2008 Kouhei Sutou <kou@cozmixng.org>
1447
1448 * lib/xmlrpc/client.rb: fix cookie handling. [ruby-dev:34403]
1449
1450 * test/xmlrpc/test_cookie.rb: add a test for the above fix.
1451
1452 Tue Apr 15 23:48:28 2008 Akinori MUSHA <knu@iDaemons.org>
1453
1454 * version.h: Branch off ruby_1_8_7 from ruby_1_8 in preparation
1455 for the forthcoming 1.8.7 release.
1456
1457 Tue Apr 15 23:40:39 2008 Akinori MUSHA <knu@iDaemons.org>
1458
1459 * ext/syck/rubyext.c (rb_syck_mktime): Avoid buffer overflow.
1460
1461 Tue Apr 15 20:32:03 2008 Tanaka Akira <akr@fsij.org>
1462
1463 * re.c (match_inspect): backported from 1.9.
1464
1465 Tue Apr 15 19:03:28 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
1466
1467 * eval.c (method_receiver, method_name, method_owner): New
1468 methods; backported from 1.9. bug#19007
1469
1470 Tue Apr 15 18:39:14 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
1471
1472 * lib/uri.rb, lib/uri/ldaps.rb: added LDAPS
1473 scheme; backported from 1.9. bug#19015, [ruby-dev:31896]
1474
1475 Tue Apr 15 17:45:43 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
1476
1477 * lib/net/smtp.rb: backported from 1.9. bug#19003
1478
1479 Tue Apr 15 17:06:12 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
1480
1481 * test/ruby/test_symbol.rb (TestSymbol#test_to_proc): add tests.
1482
1483 Tue Apr 15 16:58:55 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
1484
1485 * ext/tk/lib/tk/menuspec.rb: option check will fail when
1486 TkConfigMethod.__IGNORE_UNKNOWN_CONFIGURE_OPTION__ is true.
1487
1488 * ext/tk/lib/tk/palette.rb: bug fix.
1489
1490 Tue Apr 15 16:47:48 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
1491
1492 * signal.c, gc.c: New methods: GC.stress, GC.stress=;
1493 backported from 1.9. a patch from Tadashi Saito
1494 in [ruby-dev:34394] and bug#19000
1495
1496 Tue Apr 15 12:35:44 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
1497
1498 * rubyio.h (rb_io_t): renamed from OpenFile.
1499
1500 * ruby.h (struct RHash), file.c, gc.c, io.c, ext/dl/dl.c,
1501 ext/io/wait/wait.c, ext/pty/pty.c, ext/readline/readline.c,
1502 ext/socket/socket.c: ditto.
1503
1504 * win32/win32.h: removed workaround for OpenFile.
1505
1506 Tue Apr 15 00:15:29 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
1507
1508 * ext/tk/lib/tk/text.rb: typo. call a wrong method.
1509
1510 * ext/tk/lib/tk/itemconfig.rb: ditto.
1511
1512 * ext/tk/sample/ttk_wrapper.rb: bug fix.
1513
1514 * ext/tk/sample/tktextio.rb: add binding for 'Ctrl-u' at console mode.
1515
1516 * ext/tk/lib/tk.rb, ext/tk/lib/tk/itemfont.rb, ext/tk/lib/font.rb:
1517 support __IGNORE_UNKNOWN_CONFIGURE_OPTION__ about font options.
1518
1519 * ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb,
1520 ext/tk/lib/tkextlib/iwidgets/scrolledlistbox.rb,
1521 ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: bug fix.
1522
1523 * ext/tk/lib/tkextlib/tile/tpaned.rb: improve TPaned#add.
1524
1525 * ext/tk/lib/tk/timer.rb: add TkTimer#at_end(proc) to register the
1526 procedure which called at end of the timer.
1527
1528 Mon Apr 14 19:54:21 2008 Akinori MUSHA <knu@iDaemons.org>
1529
1530 * array.c (rb_ary_flatten, rb_ary_flatten_bang): Take an optional
1531 argument that determines the level of recursion to flatten;
1532 backported from 1.9.
1533
1534 * array.c (rb_ary_shuffle_bang, rb_ary_shuffle, rb_ary_choice,
1535 rb_ary_cycle, rb_ary_permutation, rb_ary_combination,
1536 rb_ary_product, rb_ary_take, rb_ary_take_while, rb_ary_drop,
1537 rb_ary_drop_while): New methods: Array#shuffle, #shuffle!,
1538 #choice, #cycle, #permutation, #combination, #product, #take,
1539 #take_while, #drop, #drop_while; backported from 1.9.
1540
1541 Mon Apr 14 19:52:35 2008 Akinori MUSHA <knu@iDaemons.org>
1542
1543 * ruby.h: New macro: RB_GC_GUARD().
1544
1545 Mon Apr 14 19:49:35 2008 Akinori MUSHA <knu@iDaemons.org>
1546
1547 * random.c (rb_genrand_int32, rb_genrand_real), intern.h: Export.
1548
1549 * string.c (rb_str_tmp_new), intern.h: New function.
1550
1551 Mon Apr 14 19:18:55 2008 NAKAMURA Usaku <usa@ruby-lang.org>
1552
1553 * enum.c (inject_i, inject_op_i): prototype.
1554
1555 Mon Apr 14 19:10:47 2008 Akinori MUSHA <knu@iDaemons.org>
1556
1557 * enum.c New methods: Enumerable#take, #take_while, #drop and
1558 #drop_while; backported from 1.9.
1559
1560 Mon Apr 14 18:50:15 2008 Akinori MUSHA <knu@iDaemons.org>
1561
1562 * enum.c: New methods: Enumerable#one?, #none?, #minmax, #min_by,
1563 #max_by, #minmax_by and #cycle; backported from 1.9.
1564
1565 * enum.c (enum_find_index): Add support for find_index(obj);
1566 [ruby-dev:34313]; backported from 1.9.
1567
1568 * enum.c (enum_inject): Add support for Enumerable#inject(:binop);
1569 backported from 1.9.
1570
1571 * enum.c: Alias Enumerable#reject to #inject; backported from 1.9.
1572
1573 Mon Apr 14 18:14:19 2008 Akinori MUSHA <knu@iDaemons.org>
1574
1575 * enum.c (enum_find, enum_reject): Return an enumerator if no
1576 block is given; backported from 1.9.
1577
1578 * io.c (rb_io_each_line, rb_io_each_byte, rb_io_s_foreach,
1579 argf_each_line, argf_each_byte): Ditto.
1580
1581 * string.c (str_gsub): Ditto.
1582
1583 Mon Apr 14 18:10:05 2008 NAKAMURA Usaku <usa@ruby-lang.org>
1584
1585 * enum.c (find_index_i, find_index_iter_i): add prototype for VC.
1586
1587 Mon Apr 14 17:55:30 2008 Akinori MUSHA <knu@iDaemons.org>
1588
1589 * array.c (rb_ary_collect_bang, rb_ary_select): Return an
1590 enumerator if no block is given; backported from 1.9.
1591
1592 * dir.c (dir_each, dir_foreach): Ditto.
1593
1594 * enum.c (enum_partition, enum_sort_by): Ditto.
1595
1596 * gc.c (os_each_obj): Ditto.
1597
1598 * hash.c (rb_hash_delete_if, rb_hash_reject_bang, rb_hash_select,
1599 rb_hash_each_value, rb_hash_each_key, rb_hash_each_pair,
1600 env_each_key, env_each_value, env_each, env_each_pair,
1601 env_reject_bang, env_delete_if, env_select): Ditto.
1602
1603 * numeric.c (num_step, int_upto, int_downto, int_dotimes): Ditto.
1604
1605 Mon Apr 14 16:42:53 2008 Akinori MUSHA <knu@iDaemons.org>
1606
1607 * ruby.h (rb_block_call_func): Fix prototype.
1608
1609 * enumerator.c (enumerator_iter_i, enumerator_each_i): Ditto.
1610
1611 Mon Apr 14 15:49:05 2008 Akinori MUSHA <knu@iDaemons.org>
1612
1613 * enum.c (enum_count, enum_find_index): New methods:
1614 Enumerable#count and #find_index; backported from 1.9.
1615
1616 Mon Apr 14 14:16:08 2008 NAKAMURA Usaku <usa@ruby-lang.org>
1617
1618 * enumerator.c (enumerator_mark, enumerator_iter_i, enumerator_each_i,
1619 enumerator_allocate): add prototype.
1620
1621 * enumerator.c (enumerator_each_i): declare unused two arguments.
1622
1623 Mon Apr 14 13:58:32 2008 Akinori MUSHA <knu@iDaemons.org>
1624
1625 * string.c (rb_str_each_char): New methods: String#chars and
1626 #each_char; backported from 1.9.
1627
1628 Mon Apr 14 13:42:20 2008 Akinori MUSHA <knu@iDaemons.org>
1629
1630 * string.c (rb_str_each_line, rb_str_each_byte): Reflect
1631 enumerator integration. #lines and #bytes are now aliases to
1632 #each_line and #each_byte, respectively.
1633
1634 Mon Apr 14 13:19:36 2008 Akinori MUSHA <knu@iDaemons.org>
1635
1636 * range.c (range_each, range_step): Return an enumerator if no
1637 block is given; backported from 1.9.
1638
1639 * struct.c (rb_struct_each, rb_struct_each_pair): Ditto.
1640
1641 Mon Apr 14 13:07:59 2008 Akinori MUSHA <knu@iDaemons.org>
1642
1643 * string.c (rb_str_partition, rb_str_rpartition,
1644 rb_str_start_with, rb_str_end_with): New methods:
1645 String#partition, #rpartition, #start_with? and #end_with?;
1646 backported from 1.9. These methods are $KCODE aware unlike
1647 #index, #rindex and #include?.
1648
1649 Sun Apr 13 15:55:52 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
1650
1651 * object.c (sym_to_proc): new method Symbol#to_proc; backported
1652 from 1.9. bug#19012
1653
1654 Fri Apr 11 19:14:30 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
1655
1656 * object.c (rb_obj_tap): new method Object#tap; backported from
1657 1.9. bug#19008
1658
1659 Fri Apr 11 18:58:09 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
1660
1661 * process.c: new method Process.exec; backported from 1.9. bug#19006
1662
1663 Fri Apr 11 12:43:56 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
1664
1665 * ext/tk/lib/tkextlib/tile.rb, ext/tk/lib/tkextlib/tile/style.rb,
1666 ext/tk/sample/tkextlib/tile/demo.rb: previous patch is not complete.
1667
1668 Fri Apr 11 10:22:54 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
1669
1670 * ext/tk/lib/tkextlib/tile.rb:
1671 __define_LoadImages_proc_for_compatibility__! do nothing when the
1672 Tcl command exists.
1673
1674 * ext/tk/lib/tkextlib/tile/style.rb:
1675 __define_wrapper_proc_for_compatibility__! do nothing when the Tcl
1676 command exists.
1677
1678 * ext/tk/sample/tkextlib/tile/demo.rb: don't create 'step' theme if
1679 it already exists.
1680
1681 Fri Apr 11 08:05:12 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1682
1683 * marshal.c (w_object): add volatile to avoid potential GC bug. a
1684 patch from Tomoyuki Chikanaga <chikanag at nippon-control-system.co.jp>
1685 in [ruby-dev:34311].
1686
1687 Thu Apr 10 20:29:13 2008 Akinori MUSHA <knu@iDaemons.org>
1688
1689 * misc/rdebug.el, misc/README: Remove rdebug.el as per request
1690 from the maintainer and mention the ruby-debug project at
1691 RubyForge in README; bug#19043.
1692
1693 Thu Apr 10 20:08:37 2008 Akinori MUSHA <knu@iDaemons.org>
1694
1695 * enum.c (enum_first, enum_group_by): New methods:
1696 Enumerable#first and #group_by; backported from 1.9.
1697
1698 Thu Apr 10 19:49:10 2008 Akinori MUSHA <knu@iDaemons.org>
1699
1700 * enumerator.c (rb_eStopIteration), eval.c (rb_f_loop), ruby.h:
1701 Add a new exception class StopIteration, which breaks Kernel#loop
1702 iteration when raised; backported from 1.9.
1703
1704 * enumerator.c (enumerator_next, enumerator_rewind): Implement
1705 #next and #rewind using the "generator" library.
1706
1707 * lib/generator.rb: Implement Enumerable::Enumerator#next and
1708 #rewind.
1709
1710 Thu Apr 10 19:29:48 2008 Akinori MUSHA <knu@iDaemons.org>
1711
1712 * array.c (rb_ary_first, rb_ary_last): Return a shared array when
1713 possible.
1714
1715 * array.c (rb_ary_pop, rb_ary_pop_m, rb_ary_shift, rb_ary_shift_m):
1716 Array#pop and Array#shift can take an optional argument
1717 specifying the number of elements to remove and return;
1718 backported from 1.9.
1719
1720 Thu Apr 10 14:00:44 2008 Tanaka Akira <akr@fsij.org>
1721
1722 * lib/resolv.rb (Resolv::DNS#each_address): backport from 1.9 for
1723 CNAME. [ruby-dev:34200]
1724
1725 Thu Apr 10 01:42:25 2008 NAKAMURA Usaku <usa@ruby-lang.org>
1726
1727 * enum.c (iterate_method): add prototype to avoid warning on VC++.
1728
1729 Wed Apr 9 23:12:41 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
1730
1731 * ext/tk/tcltklib.c: SEGV when tcltk-stubs is enabled.
1732
1733 * ext/tk/tcltklib.c: avoid error on a shared object.
1734
1735 * ext/tk/extconf.rb: support --with-tcltkversion
1736
1737 * ext/tk/README.tcltklib: add document about --with-tcltkversion
1738
1739 * ext/tk/sample/demos-jp/widget, ext/tk/sample/demos-en/widget,
1740 ext/tk/sample/demos-jp/style.rb, ext/tk/sample/demos-en/style.rb,
1741 ext/tk/sample/demos-jp/bind.rb, ext/tk/sample/demos-en/bind.rb:
1742 bug fix.
1743
1744 Wed Apr 9 21:54:45 2008 Akinori MUSHA <knu@iDaemons.org>
1745
1746 * array.c (rb_ary_pop): Do not reallocate too often; backported
1747 from 1.9.
1748
1749 Wed Apr 9 21:13:05 2008 Akinori MUSHA <knu@iDaemons.org>
1750
1751 * array.c (rb_ary_each, rb_ary_each_index, rb_ary_reverse_each,
1752 rb_ary_reject, rb_ary_reject_bang): Array#each, #each_index,
1753 #reverse_each, #reject, #reject! and #delete_if return an
1754 enumerator if no block is given; backported from 1.9.
1755
1756 Wed Apr 9 20:47:16 2008 Akinori MUSHA <knu@iDaemons.org>
1757
1758 * array.c (rb_ary_index, rb_ary_index): Array#index and #rindex
1759 can take a block instead of an argument; backported from 1.9.
1760
1761 Wed Apr 9 19:58:31 2008 Akinori MUSHA <knu@iDaemons.org>
1762
1763 * enumerator.c, inits.c (rb_call_inits), ruby.h, intern.h,
1764 ext/enumerator, common.mk (OBJS, enumerator.$(OBJEXT)): Make the
1765 enumerator module built-in.
1766
1767 * enumerator.c: New method: Enumerable::Enumerator#with_index.
1768
1769 * enum.c (enum_each_with_index): Enumerable#each_with_index now
1770 returns an enumerator instead of raising an exception if no
1771 block is given. Enumerable#enum_with_index, formerly defined in
1772 the enumerator module, is kept as an alias to each_with_index
1773 for backward compatibility.
1774
1775 Wed Apr 9 19:43:51 2008 Akinori MUSHA <knu@iDaemons.org>
1776
1777 * eval.c (rb_obj_method, rb_proc_call), intern.h: Export.
1778
1779 Tue Apr 8 11:11:28 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1780
1781 * eval.c (EXEC_TAG): remove unnecessary FLUSH_REGISTER_WINDOWS for
1782 better performance on SPARC. [ruby-core:16159]
1783
1784 Tue Apr 8 10:49:54 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1785
1786 * re.c (rb_reg_quote): should always copy the quoting string.
1787 [ruby-core:16235]
1788
1789 Mon Apr 7 21:35:08 2008 Akinori MUSHA <knu@iDaemons.org>
1790
1791 * array.c (rb_ary_nitems): Backport Array#nitems with a block;
1792 suggested by Bertram Scharpf <lists@bertram-scharpf.de> in
1793 [ruby-talk:134083].
1794
1795 Sun Apr 6 09:45:00 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
1796
1797 * dir.c (dir_tell): check if closed. [ruby-core:16223]
1798
1799 Sat Apr 5 10:05:00 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
1800
1801 * object.c (rb_check_to_integer): backported for range_step.
1802
1803 Fri Apr 4 05:57:11 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1804
1805 * lib/net/pop.rb (Net::POP3::do_finish): clear @n_mails and
1806 @n_bytes as well. [ruby-core:16144]
1807
1808 Fri Apr 4 02:17:06 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
1809
1810 * range.c (range_step): should not round step into integer if
1811 begin and end are numeric. [ruby-core:15990]
1812
1813 Tue Apr 1 14:43:38 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
1814
1815 * configure.in: get rid of empty expansion.
1816