1Mon May 5 00:42:35 2014 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 2 3 * ext/psych/yaml/config.h: ditto. 4 5 * ext/psych/yaml/scanner.c: ditto. 6 7 * ext/psych/yaml/yaml_private.h: ditto. 8 9Thu May 8 02:01:51 2014 Kenta Murata <mrkn@mrkn.jp> 10 11 * ext/bigdecimal/bigdecimal.c (BigDecimal_initialize): Insert GC guard. 12 13 * ext/bigdecimal/bigdecimal.c (BigDecimal_global_new): ditto. 14 15Thu May 8 01:51:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 16 17 * ext/openssl/ossl_pkey.c (ossl_pkey_verify): as EVP_VerifyFinal() 18 finalizes only a copy of the digest context, the context must be 19 cleaned up after initialization by EVP_MD_CTX_cleanup() or a 20 memory leak will occur. [ruby-core:62038] [Bug #9743] 21 22Wed Apr 30 16:39:43 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 23 24 * ext/readline/extconf.rb (rl_hook_func_t): check pointer type. 25 [ruby-dev:48089] [Bug #9702] 26 27Wed Apr 30 16:37:16 2014 NAKAMURA Usaku <usa@ruby-lang.org> 28 29 * win32/win32.c (rb_w32_accept, open_ifs_socket, socketpair_internal): 30 reset inherit flag of socket to avoid unintentional inheritance of 31 socket. note that the return value of SetHandleInformation() is not 32 verified intentionally because old Windows may return an error. 33 [Bug #9688] [ruby-core:61754] 34 35Wed Apr 30 16:33:57 2014 Eric Wong <e@80x24.org> 36 37 * time.c (time_mload): freeze and preserve marshal-loaded time zone 38 * test/ruby/test_time.rb: add test for GC on loaded object 39 [Bug #9652] 40 41Wed Apr 30 16:15:09 2014 Kohei Suzuki <eagletmt@gmail.com> 42 43 * vm_method.c (rb_method_entry_get_without_cache): me->klass is 0 44 for a method aliased in a module. [ruby-core:61636] [Bug #9663] 45 46Wed Apr 30 16:15:09 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 47 48 * vm_method.c (rb_method_entry_get_without_cache): get rid of 49 infinite recursion at aliases in a subclass and a superclass. 50 return actually defined class for other than singleton class. 51 [ruby-core:60431] [Bug #9475] 52 53Wed Apr 30 16:09:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 54 55 * vm_insnhelper.c (vm_callee_setup_arg): turn a macro into an 56 inline function. 57 58Wed Apr 30 15:04:25 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 59 60 * ext/readline/extconf.rb: fix typo, `$defs` not `$DEFS`. 61 [ruby-core:61756] [Bug #9578] 62 63Mon Mar 31 00:57:39 2014 James Edward Gray II <james@graysoftinc.com> 64 65 * lib/csv.rb: Fixed a broken regular expression that was causing 66 CSV to miss escaping some special meaning characters when used 67 in parsing. 68 Reported by David Unric 69 [ruby-core:54986] [Bug #8405] 70 71Mon Mar 31 00:48:12 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 72 73 * test/ruby/envutil.rb (assert_no_memory_leak): increase default value 74 of `limit` keyword argument. 75 assert_no_memory_leak occasionally fails with limit=1.5. 76 77Mon Mar 31 00:15:45 2014 Shota Fukumori <her@sorah.jp> 78 79 * vm_eval.c (eval_string_with_cref): Unify to use NIL_P. 80 81Mon Mar 31 00:15:45 2014 Shota Fukumori <her@sorah.jp> 82 83 * vm_eval.c (eval_string_with_cref): Use file path even if scope is 84 given. Related to [ruby-core:56099] [Bug #8662] and r42103. 85 86Mon Mar 31 00:02:04 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 87 88 * parse.y (yycompile): store file name as String to keep the encoding. 89 90 * parse.y (rb_parser_compile_string_path, rb_parser_compile_file_path): 91 new functions to pass file name as a String. 92 93 * parse.y (gettable_gen): return a copy of the original file name, not 94 a copy in filesystem encoding. 95 96 * vm_eval.c (eval_string_with_cref): use Qundef instead of "(eval)". 97 98Sun Mar 30 23:49:21 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 99 100 * ext/openssl/ossl.c (ossl_make_error): check NULL for unknown 101 error reasons with old OpenSSL, and insert a colon iff formatted 102 message is not empty. 103 104Thu Mar 20 21:13:18 2014 Eric Wong <e@80x24.org> 105 106 * variable.c (rb_const_set): delete existing entry on redefinition 107 [Bug #9645] 108 * test/ruby/test_const.rb (test_redefinition): test for leak 109 110Thu Mar 20 20:44:17 2014 Kazuki Tsujimoto <kazuki@callcc.net> 111 112 * test/fiddle/test_c_struct_entry.rb, 113 test/fiddle/test_c_union_entity.rb, 114 test/fiddle/test_cparser.rb, test/fiddle/test_func.rb, 115 test/fiddle/test_handle.rb, test/fiddle/test_import.rb, 116 test/fiddle/test_pointer.rb: don't run test if the system 117 don't support fiddle. 118 119Sun Mar 16 00:57:20 2014 Kazuki Tsujimoto <kazuki@callcc.net> 120 121 * ext/.document: remove refinement from documentable directories. 122 123Mon Mar 3 01:43:30 2014 Charlie Somerville <charliesome@ruby-lang.org> 124 125 * eval_error.c (warn_printf): use rb_vsprintf instead so ruby specific 126 extensions like PRIsVALUE can be used in format strings 127 * eval_error.c (error_print): use warn_print_str (alias for 128 rb_write_error_str) to print a string value instead of using 129 RSTRING_PTR and RSTRING_LEN manually 130 * eval.c (setup_exception): use PRIsVALUE instead of %s and RSTRING_PTR 131 132Mon Mar 3 01:32:14 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 133 134 * ext/readline/extconf.rb (rl_hook_func_t): define as Function for 135 very old readline versions. [ruby-core:61209] [Bug #9578] 136 137Mon Mar 3 01:32:14 2014 Tanaka Akira <akr@fsij.org> 138 139 * ext/readline/readline.c (Init_readline): Use rl_hook_func_t instead 140 of Function to support readline-6.3. (rl_hook_func_t is available 141 since readline-4.2.) 142 Reported by Dmitry Medvinsky. [ruby-core:61141] [Bug #9578] 143 144Mon Mar 3 01:25:28 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 145 146 * eval.c (setup_exception): preserve errinfo across calling #to_s 147 method on the exception. [ruby-core:61091] [Bug #9568] 148 149Mon Mar 3 01:00:00 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 150 151 * numeric.c (ruby_num_interval_step_size): check signs and get rid 152 of implementation dependent behavior of negative division. 153 [ruby-core:61106] [Bug #9570] 154 155Mon Mar 3 00:43:33 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 156 157 (merged partially from r42781) 158 * test/ruby/test_numeric.rb (assert_step): introduce assert_step. 159 160Mon Mar 3 00:24:38 2014 Zachary Scott <e@zzak.io> 161 162 * README.EXT.ja: [DOC] Fix typo "macro macro" @utenmiki [Fixes GH-551] 163 https://github.com/ruby/ruby/pull/551 164 165Sat Feb 22 22:11:58 2014 NAKAMURA Usaku <usa@ruby-lang.org> 166 167 * ext/io/console/console.c (console_dev): need read access for conout$ 168 because some functions need it. [Bug#9554] 169 170Sat Feb 22 14:01:42 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 171 172 * iseq.c (iseq_load): keep type_map to get rid of memory leak. 173 based on a patch by Eric Wong at [ruby-core:59699]. [Bug #9399] 174 175Sat Feb 22 13:56:38 2014 Charlie Somerville <charliesome@ruby-lang.org> 176 177 * compile.c (iseq_build_from_ary_body): Use :blockptr instead of :block 178 as hash key when loading serialized instruction sequences from arrays. 179 [Bug #9455] [ruby-core:60146] 180 181Sat Feb 22 13:04:54 2014 Shugo Maeda <shugo@ruby-lang.org> 182 183 * ext/socket/init.c (wait_connectable): break if the socket is 184 writable to avoid infinite loops on FreeBSD and other platforms 185 which conforms to SUSv3. This problem cannot be reproduced with 186 loopback interfaces, so it's hard to write test code. 187 rsock_connect() and wait_connectable() are overly complicated, so 188 they should be refactored, but I commit this fix as a workaround 189 for the release of Ruby 1.9.3 scheduled on Feb 24. 190 [ruby-core:60940] [Bug #9547] 191 192Sat Feb 22 12:55:24 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 193 194 (merged partially from r42927) 195 * lib/rubygems/core_ext/kernel_require.rb: Backport a fix for concurrent 196 requires. [ruby-core:58918] [Backport #9224] 197 see also https://github.com/rubygems/rubygems/pull/833 198 199Sat Feb 22 11:50:52 2014 Eric Wong <e@80x24.org> 200 201 * ext/socket/ancdata.c (bsock_sendmsg_internal): only retry on error 202 (bsock_recvmsg_internal): ditto 203 * test/socket/test_unix.rb: test above for infinite loop 204 205Sat Feb 22 11:44:50 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 206 207 * class.c (rb_mod_init_copy): do nothing if copying self. 208 [ruby-dev:47989] [Bug #9535] 209 210 * hash.c (rb_hash_initialize_copy): ditto. 211 212Thu Feb 20 02:14:18 2014 Zachary Scott <e@zzak.io> 213 214 * ext/openssl/lib/openssl/buffering.rb: Fix warning in copyright 215 216Thu Feb 20 02:14:18 2014 Zachary Scott <e@zzak.io> 217 218 * ext/openssl/lib/openssl/buffering.rb: [DOC] Fix HEREDOC comment for 219 OpenSSL::Buffering which breaks overview because of RDoc bug 220 221Thu Feb 20 02:04:09 2014 Eric Hodel <drbrain@segment7.net> 222 223 * ext/.document: Add syslog/lib to documentable items. [Bug #9228] 224 225Thu Feb 20 01:54:08 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 226 227 * vm_insnhelper.c (vm_search_super_method): when super called in a 228 bound UnboundMethod generated from a module, no superclass is 229 found since the current defined class is the module, then call 230 method_missing in that case. [ruby-core:59619] [Bug #9377] 231 232Thu Feb 20 01:33:06 2014 Eric Hodel <drbrain@segment7.net> 233 234 * lib/optparse.rb: The Integer acceptable now allows binary and 235 hexadecimal numbers per the documentation. [ruby-trunk - Bug #8865] 236 237 DecimalInteger, OctalInteger, DecimalNumeric now validate their input 238 before converting to a number. [ruby-trunk - Bug #8865] 239 240 * test/optparse/test_acceptable.rb: Tests for the above, tests for all 241 numeric acceptables for existing behavior. 242 243Thu Feb 20 01:23:36 2014 Aaron Pfeifer <aaron.pfeifer@gmail.com> 244 245 * thread.c (terminate_atfork_i): fix locking mutexes not unlocked in 246 forks when not tracked in thread. [ruby-core:55102] [Bug #8433] 247 248Tue Feb 18 23:48:03 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 249 250 * test/ruby/envutil.rb (assert_separately): require envutil in the 251 child process too. 252 253Tue Feb 18 22:38:01 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 254 255 * test/ruby/envutil.rb (Test::Unit::Assertions#assert_separately): 256 specify the encoding of source. 257 258Mon Feb 17 02:00:36 2014 Tanaka Akira <akr@fsij.org> 259 260 * lib/open-uri.rb: Make proxy disabling working again. 261 Fixed by Christophe Philemotte. [ruby-core:59650] [Bug #9385] 262 263Mon Feb 17 01:57:45 2014 Benoit Daloze <eregontp@gmail.com> 264 265 * range.c (Range#size): [DOC] improve description and add examples. 266 Patch by @skade. [Fixes GH-501] 267 268Mon Feb 17 01:51:49 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 269 270 * lib/webrick/htmlutils.rb (WEBrick::HTMLUtils#escape): replace HTML 271 meta chars even in non-ascii string. [Bug #8425] [ruby-core:55052] 272 273 * lib/webrick/httputils.rb (WEBrick::HTTPUtils#{_escape,_unescape}): 274 fix %-escape encodings. [Bug #8425] [ruby-core:55052] 275 276Mon Feb 17 01:51:49 2014 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 277 278 * test/webrick/test_htmlutils.rb: add test for WEBrick::HTMLUtils. 279 280Mon Feb 17 01:41:59 2014 Masaki Matsushita <glass.saga@gmail.com> 281 282 * array.c (rb_hash_rehash): use hash_alloc() instead of rb_hash_new(). 283 [Bug #9187] 284 285Mon Feb 17 01:41:59 2014 Masaki Matsushita <glass.saga@gmail.com> 286 287 * hash.c (rb_hash_rehash): make temporary st_table under the control 288 of GC. [Bug #9187] 289 290 * test/ruby/test_hash.rb: add a test for above. 291 292Mon Feb 17 01:41:59 2014 Masaki Matsushita <glass.saga@gmail.com> 293 294 * hash.c (rb_hash_rehash): fix to free new st_table when exception 295 is raised in do_hash(). [Bug #9187] 296 297Mon Feb 17 01:18:04 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 298 299 * eval.c (rb_mod_s_constants): return its own constants for other 300 than Module itself. [ruby-core:59763] [Bug #9413] 301 302Mon Feb 17 01:16:00 2014 Eric Wong <e@80x24.org> 303 304 * ext/json/generator/depend: add build dependencies for json extension 305 [Bug #9374] [ruby-core:59609] 306 * ext/json/parser/depend: ditto 307 308Mon Feb 17 01:12:57 2014 Yusuke Endoh <mame@tsg.ne.jp> 309 310 * ext/fiddle/closure.c: use sizeof(*pcl) for correct sizeof value. 311 [ruby-core:57599] [Bug #8978]. 312 313Mon Feb 17 01:12:57 2014 Aaron Patterson <aaron@tenderlovemaking.com> 314 315 * ext/fiddle/closure.c: use sizeof(*pcl) for correct sizeof value. 316 [ruby-core:57599] [Bug #8978]. Thanks mame! 317 318Mon Feb 17 01:09:52 2014 Eric Wong <e@80x24.org> 319 320 * benchmark/driver: avoid large alloc in driver process 321 [ruby-core:59869] [Bug #9430] 322 323Mon Feb 17 00:59:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 324 325 * thread_pthread.c (rb_thread_create_timer_thread): fix for platforms 326 where PTHREAD_STACK_MIN is a dynamic value and not a compile-time 327 constant. [ruby-dev:47911] [Bug #9436] 328 329Mon Feb 17 00:59:40 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 330 331 * thread_pthread.c (rb_thread_create_timer_thread): expand timer 332 thread stack size to get rid of segfault on FreeBSD/powerpc64. 333 based on the patch by Steve Wills at [ruby-core:59923]. 334 [ruby-core:56590] [Bug #8783] 335 336Mon Feb 17 00:45:44 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 337 338 * string.c (rb_str_modify_expand): enable capacity and disable 339 association with packed objects when setting capa, so that 340 pack("p") string fails to unpack properly after modified. 341 342Sun Feb 16 01:36:57 2014 Aaron Patterson <aaron@tenderlovemaking.com> 343 344 * ext/psych/yaml/emitter.c: merge libyaml 0.1.5 345 * ext/psych/yaml/loader.c: ditto 346 * ext/psych/yaml/parser.c: ditto 347 * ext/psych/yaml/reader.c: ditto 348 * ext/psych/yaml/scanner.c: ditto 349 * ext/psych/yaml/writer.c: ditto 350 * ext/psych/yaml/yaml_private.h: ditto 351 352Sun Feb 16 01:02:32 2014 Zachary Scott <e@zzak.io> 353 354 * lib/racc/rdoc/grammar.en.rdoc: [DOC] Correct grammar and typos 355 Patch by Giorgos Tsiftsis [Bug #9429] [ci skip] 356 357Sun Feb 16 01:00:45 2014 Zachary Scott <e@zzak.io> 358 359 * lib/open-uri.rb: [DOC] use lower case version of core classes, same 360 as commit r44878, based on patch by Jonathan Jackson [Bug #9483] 361 362Sun Feb 16 01:00:45 2014 Zachary Scott <e@zzak.io> 363 364 * ext/ripper/lib/ripper/lexer.rb: [DOC] use lower case version of core 365 classes when referring to return value, since we aren't directly 366 talking about the class. Patch by Jonathan Jackson [Bug #9483] 367 368Sun Feb 16 00:57:13 2014 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 369 370 * variable.c: [DOC] adding extra example in docs. 371 patched by Steve Klabnik. [Bug #9210] 372 373Sun Feb 16 00:54:50 2014 Tanaka Akira <akr@fsij.org> 374 375 * lib/resolv.rb (Resolv::DNS::Resource::TXT#data): Return concatenated 376 string. 377 Patch by Ryan Brunner. [ruby-core:58220] [Bug #9093] 378 379Sun Feb 16 00:50:59 2014 Zachary Scott <e@zzak.io> 380 381 * ext/openssl/ossl_pkey_dh.c: Fixed typo by Sandor Szuecs [Bug #9243] 382 383Sun Feb 16 00:47:36 2014 Zachary Scott <e@zzak.io> 384 385 * lib/xmlrpc/client.rb: [DOC] Remove note about SSL package on RAA 386 Since RAA has been deprecated, and the SSL package has been replaced 387 with net/https this statement is entirely false and should be 388 deleted. [Bug #9152] 389 390Sun Feb 16 00:44:51 2014 Zachary Scott <e@zzak.io> 391 392 * lib/net/smtp.rb: [DOC] Remove dead link to RAA by Giorgos Tsiftsis 393 Fixes the following bugs: [Bug #9152] [Bug #9268] [Bug #9394] 394 * lib/open-uri.rb: ditto 395 396Sun Feb 16 00:27:04 2014 Masaki Matsushita <glass.saga@gmail.com> 397 398 * hash.c (rb_hash_assoc): revert r42224. table->type->compare is 399 called only if hashes are matched. 400 401 * test/ruby/test_hash.rb: add a test to check using #== to compare. 402 403Sun Feb 16 00:27:04 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 404 405 * hash.c (rb_hash_initialize_copy): copy st_table type even if empty. 406 [ruby-core:56256] [Bug #8703] 407 408Sun Feb 16 00:27:04 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 409 410 * hash.c (rb_hash_initialize_copy): clear old table before copy new 411 table. 412 413Sun Feb 16 00:27:04 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 414 415 * hash.c (rb_hash_assoc): aggregate object can be initialized only 416 with link time constants. 417 418Sun Feb 16 00:27:04 2014 Masaki Matsushita <glass.saga@gmail.com> 419 420 * hash.c (rb_hash_assoc): performance improvement by replacing 421 compare function in RHASH(hash)->ntbl->type temporarily. 422 423Sun Feb 16 00:01:16 2014 Tanaka Akira <akr@fsij.org> 424 425 * lib/resolv.rb: Ignore name servers which cause EAFNOSUPPORT on 426 socket creation. 427 Reported by Bjoern Rennhak. [ruby-core:60442] [Bug #9477] 428 429Sat Feb 15 23:58:31 2014 Tanaka Akira <akr@fsij.org> 430 431 * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder): Raise 432 DecodeError if no data before the limit. 433 Reported by Will Bryant. [ruby-core:60557] [Bug #9498] 434 435Sat Feb 15 23:46:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 436 437 * parse.y (IDSET_ATTRSET_FOR_INTERN): fix off-by-one bug. 438 439 * parse.y (rb_enc_symname_type): junk ID succeeded by '=' is also 440 attrset ID. [ruby-core:60668] [Bug #8756] 441 442Sat Feb 15 23:42:04 2014 Richo Healy <richo@psych0tik.net> 443 444 * test/ruby/test_struct.rb: Add regression test for question marks and 445 bangs in struct members. [Closes GH-468] 446 447Sat Feb 15 23:26:31 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 448 449 * struct.c (new_struct): fix warning message, class name and encoding. 450 451Sat Feb 15 16:08:26 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 452 453 * struct.c (make_struct): avoid inadvertent symbol creation. 454 (rb_struct_aref): ditto. 455 (rb_struct_aset): ditto. 456 457Sat Feb 15 15:32:46 2014 Shugo Maeda <shugo@ruby-lang.org> 458 459 * vm_insnhelper.c (vm_call_method): should check ci->me->flag of 460 a refining method in case the method is private. 461 [ruby-core:60111] [Bug #9452] 462 463 * vm_method.c (make_method_entry_refined): set me->flag of a refined 464 method entry to NOEX_PUBLIC in case the original method is private 465 and it is refined as a public method. The original flag is stored 466 in me->def->body.orig_me, so it's OK to make a refined method 467 entry public. [ruby-core:60111] [Bug #9452] 468 469 * test/ruby/test_refinement.rb: related tests. 470 471Tue Feb 11 23:21:02 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 472 473 * test/ruby/test_struct.rb (test_struct_question_mark): add a testcase 474 for Struct attribute with question mark. the patch was originally 475 written by Eric Wong [ruby-core:59095] [Backport #9248] 476 477Tue Feb 11 23:21:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 478 479 * parse.y (rb_id_attrset, intern_str): allow junk attrset ID for 480 Struct. 481 482 * parse.y (rb_id_attrset): fix inconsistency with literals, allow 483 ID_ATTRSET and return it itself, but ID_JUNK cannot make ID_ATTRSET. 484 and raise a NameError instead of rb_bug() for invalid argument. 485 486Tue Feb 11 23:21:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 487 488 * parse.y (rb_enc_symname_type): allow ID_ATTRSET for ID_INSTANCE, 489 ID_GLOBAL, ID_CLASS, ID_JUNK too. [Bug #8756] 490 491Tue Feb 11 23:21:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 492 493 * parse.y (rb_id_attrset): allow other than ID_ATTRSET. 494 495 * parse.y (intern_str): ditto. try stem ID for ID_INSTANCE, 496 ID_GLOBAL, ID_CLASS, ID_JUNK too. [Bug #8756] 497 498Tue Feb 11 23:21:02 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 499 500 * parse.y (rb_id_attrset): check if the argument is valid type as an 501 attribute. 502 503Tue Feb 11 00:26:19 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 504 505 * file.c (GetLastError): already defined in windows.h on nowadays 506 cygwin, and caused the confliction with the system provided 507 definition on cygwin64. by @kou1okada [Fixes GH-433]. 508 509Mon Feb 10 01:15:10 2014 Kouhei Sutou <kou@cozmixng.org> 510 511 * ext/socket/raddrinfo.c (nogvl_getaddrinfo): Fix indent. 512 513Mon Feb 10 01:15:10 2014 Kouhei Sutou <kou@cozmixng.org> 514 515 * ext/socket/raddrinfo.c (nogvl_getaddrinfo): Add missing return 516 value assignment. 517 518Mon Feb 10 01:15:10 2014 NARUSE, Yui <naruse@ruby-lang.org> 519 520 * ext/socket/raddrinfo.c (nogvl_getaddrinfo): work around for Ubuntu 521 13.04's getaddrinfo issue with mdns4. [ruby-list:49420] 522 523Mon Feb 10 00:42:12 2014 Masaki Matsushita <glass.saga@gmail.com> 524 525 * ext/thread/thread.c (rb_szqueue_clear): notify SZQUEUE_WAITERS 526 on SizedQueue#clear. [ruby-core:59462] [Bug #9342] 527 528 * test/thread/test_queue.rb: add test. the patch is from 529 Justin Collins. 530 531Mon Feb 10 00:27:33 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 532 533 * parse.y (local_push_gen, local_pop_gen): save cmdarg_stack to 534 isolate command argument state from outer scope. 535 [ruby-core:59342] [Bug #9308] 536 537Mon Feb 10 00:02:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 538 539 * dir.c (glob_helper): don't skip current directories if FNM_DOTMATCH 540 is given. [ruby-core:53108] [Bug #8006] 541 542Wed Feb 5 23:39:36 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 543 544 * parse.y (intern_str): sigil only names are junk, at least one 545 identifier character is needed. [ruby-dev:47723] [Bug #8928] 546 547 * parse.y (rb_enc_symname_type): fix out of bound access. 548 549Wed Feb 5 22:54:52 2014 Kazuki Tsujimoto <kazuki@callcc.net> 550 551 * time.c (get_timeval, get_new_timeval): use rb_obj_class() 552 instead of CLASS_OF() because CLASS_OF() may return 553 a singleton class. 554 555Sun Feb 2 05:48:42 2014 Eric Wong <e@80x24.org> 556 557 * io.c (rb_io_syswrite): add RB_GC_GUARD 558 [Bug #9472][ruby-core:60407] 559 560Fri Jan 31 00:51:50 2014 Shugo Maeda <shugo@ruby-lang.org> 561 562 * configure.in: use $@ instead of $(.TARGET) because .TARGET is not 563 supported by GNU make. 564 565Fri Jan 31 00:49:41 2014 Yamashita Yuu <yamashita@geishatokyo.com> 566 567 * ext/openssl/ossl_ssl.c (Init_ossl_ssl): Declare a constant 568 `OP_MSIE_SSLV2_RSA_PADDING` only if the macro is defined. The 569 `SSL_OP_MSIE_SSLV2_RSA_PADDING` has been removed from latest 570 snapshot of OpenSSL 1.0.1. [Fixes GH-488] 571 572Thu Jan 23 21:08:16 2014 Shota Fukumori <her@sorah.jp> 573 574 * vm_insnhelper.c (check_match): Fix SEGV with VM_CHECKMATCH_TYPE_CASE 575 and class of `pattern` has `method_missing` 576 [Bug #8882] [ruby-core:58606] 577 578Mon Jan 20 01:02:18 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 579 580 * ext/bigdecimal/bigdecimal.c (CLASS_NAME): macro to wrap 581 depending on PRIsVALUE for 1.9. [Backport #9406] 582 583 * ext/bigdecimal/bigdecimal.c (DECIMAL_SIZE_OF_BITS): fallback 584 definition for 2.1 or older. [ruby-core:59750] [Backport #9406] 585 586Sun Jan 12 22:46:49 2014 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 587 588 patch inspired from r44260 on trunk. [ruby-core:58652] [Bug #9168] 589 590 * gc.c (run_finalizer): clear th->errinfo before invoke finalizer and 591 restore afterward. 592 593 * test/ruby/test_gc.rb (test_exception_in_finalizer): add test for 594 above. 595 596 * vm_trace.c (rb_threadptr_exec_event_hooks_orig): clear th->errinfo 597 before invoke hook. 598 599Sun Jan 12 16:07:52 2014 vo.x (Vit Ondruch) <vondruch@redhat.com> 600 601 * tool/rbinstall.rb (Gem::Specification#collect): make stable 602 Gem::Specification.files in default .gemspecs the different order of 603 "files" in .gemspec files makes them different therefore possibly 604 conflicting in multilib scenario. patch by vo.x (Vit Ondruch) at 605 [ruby-core:57544] [Bug #8623]. 606 607Sun Jan 12 16:01:54 2014 Tanaka Akira <akr@fsij.org> 608 609 * test/openssl/test_cipher.rb (test_aes_gcm_wrong_tag): Don't use 610 String#succ because it can make modified (wrong) auth_tag longer 611 than 16 bytes. The longer auth_tag makes that 612 EVP_CIPHER_CTX_ctrl (and internally aes_gcm_ctrl) fail. 613 [ruby-core:55143] [Bug #8439] reported by Vit Ondruch. 614 615Sun Jan 12 15:33:11 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 616 617 * util.c (ruby_qsort): fix potential stack overflow on a large 618 machine. based on the patch by Conrad Irwin <conrad.irwin AT 619 gmail.com> at [ruby-core:51816]. [Bug #7772] 620 621Sun Jan 12 15:17:00 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 622 623 * ext/tk/tkutil/tkutil.c: use rb_sprintf(), rb_id2str(), and 624 rb_intern_str() instead of rb_intern() and RSTRING_PTR() with 625 RB_GC_GUARD(), to prevent temporary objects from GC. 626 [ruby-core:39000] [Bug #5199] 627 628Tue Jan 7 01:16:34 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 629 630 * proc.c (mnew_from_me): keep iclass as-is, to make inheritance 631 chain consistent. [ruby-core:59358] [Bug #9315] 632 633 * proc.c (method_owner): return the original defined_class from 634 prepended iclass, instead. 635 636Tue Jan 7 01:16:34 2014 Nobuyoshi Nakada <nobu@ruby-lang.org> 637 638 * vm_insnhelper.c (vm_search_super_method): direct superclass of a 639 module is found when super called in a Method object generated a 640 method defined in a module, call method_missing in that case. 641 [ruby-core:59358] [Bug #9315] 642 643Fri Jan 3 22:25:23 2014 Aman Gupta <ruby@tmm1.net> 644 645 * test/net/imap/cacert.pem: generate new CA cert, since the last one 646 expired. [Bug #9341] [ruby-core:59459] 647 * test/net/imap/server.crt: new server cert signed with updated CA. 648 * test/net/imap/Makefile: add `make regen_certs` to automate this 649 process. 650 651Wed Dec 25 00:46:44 2013 Eric Hodel <drbrain@segment7.net> 652 653 * lib/net/smtp.rb (Net::SMTP#critical): Always return a 654 Net::SMTP::Response. Patch by Pawel Veselov. 655 [ruby-trunk - Bug #9125] 656 * test/net/smtp/test_smtp.rb: Test for the above. 657 658Wed Dec 25 00:18:19 2013 Tanaka Akira <akr@fsij.org> 659 660 * ext/socket/lib/socket.rb: Don't test $! in "ensure" clause because 661 it may be set before the body. 662 Reported by ko1 and mrkn. [ruby-core:59088] [Bug #9247] 663 664 * lib/cgi/core.rb: Ditto. 665 666 * lib/drb/ssl.rb: Ditto. 667 668Tue Dec 24 00:18:14 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 669 670 * lib/mkmf.rb (configuration): strip destdir part from prefix to get 671 rid of duplication. a patch by arton at [ruby-core:58859]. 672 [ruby-core:58856] [Bug #9213] 673 674Mon Dec 23 22:37:01 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 675 676 * proc.c (mnew_from_me): method by respond_to_missing? should be 677 owned by the original class. 678 679Sun Dec 22 22:56:06 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 680 681 * proc.c (mnew_from_me): achieve the original defined_class from 682 prepended iclass, to fix inherited owner. 683 684 * proc.c (method_owner): return the defined class, but not the 685 class which the method object is created from. 686 687Sun Dec 22 22:56:06 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 688 689 * proc.c (method_owner): return the class where alias is defined, not 690 the class original method is defined. 691 692 * vm_method.c (rb_method_entry_make, rb_alias): store the originally 693 defined class in me. [Bug #7993] [Bug #7842] [Bug #9236] 694 695 * vm_method.c (rb_method_entry_get_without_cache): cache included 696 module but not iclass. 697 698Sun Dec 22 00:07:09 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 699 700 * insns.def: Fix optimization bug of Float#/ [Bug #9238] 701 702Sat Dec 21 23:13:55 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 703 704 * eval_jump.c (rb_exec_end_proc): unlink and free procs data before 705 calling for each procs. [Bug #9110] 706 707Sat Dec 21 23:13:55 2013 Masaki Matsushita <glass.saga@gmail.com> 708 709 * eval_jump.c (rb_exec_end_proc): fix double free or corruption error 710 when reentering by callcc. [ruby-core:58329] [Bug #9110] 711 712 * test/ruby/test_beginendblock.rb: test for above. 713 714Sat Dec 21 22:55:03 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 715 716 * lib/resolv.rb (Resolv::Hosts#lazy_initialize): should not 717 consider encodings in hosts file. [ruby-core:59239] [Bug #9273] 718 719 * lib/resolv.rb (Resolv::Config.parse_resolv_conf): ditto. 720 721Sat Dec 21 22:51:51 2013 NAKAMURA Usaku <usa@ruby-lang.org> 722 723 * win32/Makefile.sub (fake.rb): fixed wrong RUBY_PLATFORM, to correctly 724 install win32.h. 725 [ruby-core:58801][Bug #9199] reported by arton. 726 727Sat Dec 21 16:16:56 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 728 729 * gc.c (finalize_deferred): flush all deferred finalizers while other 730 finalizers can get ready to run newly by lazy sweep. 731 [ruby-core:58833] [Bug #9205] 732 733Sat Dec 21 16:07:00 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 734 735 * ruby_atomic.h (ATOMIC_PTR_EXCHANGE): atomic exchange function for 736 a generic pointer. 737 738Sat Dec 21 15:50:13 2013 Masaki Matsushita <glass.saga@gmail.com> 739 740 * ruby_atomic.h: remove duplicate definisions between ATOMIC_XXX 741 and ATOMIC_SIZE_XXX. 742 743Sat Dec 21 15:50:13 2013 Masaki Matsushita <glass.saga@gmail.com> 744 745 * ruby_atomic.h: define ATOMIC_SIZE_CAS() with 746 __atomic_compare_exchange_n() and refactoring. 747 748Sat Dec 21 15:50:13 2013 Masaki Matsushita <glass.saga@gmail.com> 749 750 * ruby_atomic.h: use __atomic builtin functions supported by GCC. 751 __sync family are legacy functions now and it is recommended 752 that new code use the __atomic functions. 753 http://gcc.gnu.org/onlinedocs/gcc/_005f_005fatomic-Builtins.html 754 755 * configure.in: check existence of __atomic functions. 756 757Sat Dec 21 15:37:11 2013 Naohisa Goto <ngotogenome@gmail.com> 758 759 * ruby_atomic.h (ATOMIC_SIZE_CAS): fix compile error on Solaris 760 since r43460. 761 762Sat Dec 21 15:37:11 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 763 764 * ruby_atomic.h (ATOMIC_SIZE_CAS): new macro, compare and swap size_t. 765 766Sat Dec 21 15:37:11 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 767 768 * ruby_atomic.h (rb_w32_atomic_cas): call InterlockedCompareExchange 769 directly. 770 771 * ruby_atomic.h (ATOMIC_CAS): fix missing function call. 772 773Sat Dec 21 15:37:11 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 774 775 * ruby_atomic.h (ATOMIC_CAS): suppress C4022 and C4047 warnings in 776 VC6. only InterlockedCompareExchange is declared using PVOID. 777 778Sat Dec 21 14:54:37 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 779 780 * ext/bigdecimal/lib/bigdecimal/util.rb: [DOC] remove example of 781 Rational#to_d without argument. [Bug #8958] 782 783Sat Dec 21 14:54:37 2013 Zachary Scott <e@zzak.io> 784 785 * ext/bigdecimal/lib/bigdecimal/util.rb: [DOC] +precision+ is required 786 787Sat Dec 21 14:54:37 2013 Zachary Scott <e@zzak.io> 788 789 * ext/bigdecimal/lib/bigdecimal/util.rb: [DOC] Document the required 790 +precision+ argument for Rational#to_d [Bug #8958] 791 792Sat Dec 21 03:46:14 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 793 794 * ext/date/date_strptime.c (date__strptime_internal): unset 795 case-insensitive flag for [:alpha:], which already implies both 796 cases, to get rid of backtrack explosion. [ruby-core:58984] 797 [Bug #9221] 798 799Sat Dec 21 03:46:14 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 800 801 * ext/date/date_parse.c (parse_time): unset case-insensitive flag 802 for [:alpha:], which already implies both cases, to get rid of 803 backtrack explosion. [ruby-core:58876] [Bug #9221] 804 805Fri Dec 13 00:23:01 2013 NARUSE, Yui <naruse@ruby-lang.org> 806 807 * enumerator.c (enumerator_with_index): try to convert given offset to 808 integer. fix bug introduced in r39594. 809 810Mon Dec 2 23:31:00 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 811 812 * enumerator.c (enumerator_with_index): should not store local variable 813 address to memoise the arguments. it is invalidated after the return. 814 [ruby-core:58692] [Bug #9178] 815 816Mon Dec 2 23:16:50 2013 Eric Hodel <drbrain@segment7.net> 817 818 * enumerator.c (enumerator_with_index): Restore handling of a nil memo 819 from r39594. 820 821Mon Dec 2 22:53:05 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 822 823 * file.c (rb_readlink): fix buffer overflow on a long symlink. since 824 rb_str_modify_expand() expands from its length but not its capacity, 825 need to set the length properly for each expansion. 826 [ruby-core:58592] [Bug #9157] 827 828Fri Nov 29 00:31:46 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 829 830 * common.mk (Doxyfile): tool/file2lastrev.rb needs running with 831 BASERUBY since r43617. [ruby-dev:47823] [Bug #9169] 832 833Fri Nov 22 13:18:28 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 834 835 * util.c (ruby_strtod): BigMath requires more precision. 836 837Fri Nov 22 12:46:08 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 838 839 * util.c (ruby_strtod): ignore too long fraction part, which does not 840 affect the result. 841 842Wed Nov 20 15:20:00 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 843 844 * test/ruby/test_thread.rb (test_mutex_unlock_on_trap): extend waiting 845 time to invocation of signal handler from 0.01 sec to 0.2 sec. 846 RubyCI report error on mswin. reported by @unak 847 848Wed Nov 13 11:57:01 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 849 850 * lib/rubygems: Update to RubyGems 2.0.14. [ruby-core:58300] 851 [Backport #9104] 852 the patch is provided by drbrain (Eric Hodel). 853 854Tue Nov 12 23:41:43 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 855 856 * load.c (rb_feature_p): deal with default loadable suffixes. 857 858 * load.c (load_lock): initialize statically linked extensions. 859 860 * load.c (search_required, rb_require_safe): deal with statically 861 linked extensions. 862 863 * load.c (ruby_init_ext): defer initialization of statically linked 864 extensions until required actually. [Bug #8883] 865 866Tue Nov 12 23:41:43 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 867 868 * load.c (ruby_init_ext): share feature names between frame name and 869 provided features. 870 871Tue Nov 12 23:33:08 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 872 873 * tool/rbinstall.rb (Gem::Specification.load): obtain spec date from 874 VCS for the case using git, RUBY_RELEASE_DATE is the last resort. 875 probably fixes [Bug #9085]. 876 877Tue Nov 12 23:24:35 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 878 879 * configure.in (RUNRUBY): append -- only after runruby.rb, not 880 cross-compiling baseruby, so that $(RUN_OPT) can be command line 881 options. [ruby-dev:47703] [Bug #8893] 882 883Tue Nov 12 23:24:35 2013 Masaki Matsushita <glass.saga@gmail.com> 884 885 (partially merged from r42862) 886 * common.mk: use RUNRUBY instead of MINIRUBY because MINIRUBY can't 887 require extension libraries. The patch is from nobu 888 (Nobuyoshi Nakada). 889 890Mon Nov 11 23:54:51 2013 Tanaka Akira <akr@fsij.org> 891 892 * ext/socket/init.c (cloexec_accept): Fix a compile error on 893 Debian GNU/kFreeBSD. Consider HAVE_ACCEPT4 is defined 894 but SOCK_CLOEXEC is not defined. 895 896Mon Nov 11 22:14:37 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 897 898 * include/ruby/win32.h (rb_infinity_float): suppress overflow in 899 constant arithmetic warnings. [ruby-core:57981] [Bug #9044] 900 901Mon Nov 11 22:14:37 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 902 903 * win32/Makefile.sub (config.h): VC 2013 supports C99 mathematics 904 functions. [ruby-core:57981] [Bug #9044] 905 906Thu Oct 31 22:28:04 2013 Martin Bosslet <Martin.Bosslet@gmail.com> 907 908 * test/openssl/test_pkey_ec.rb: Skip tests for "Oakley" curves as 909 they are not suitable for ECDSA. 910 [ruby-core:54881] [Bug #8384] 911 912Thu Oct 31 22:28:04 2013 Martin Bosslet <Martin.Bosslet@gmail.com> 913 914 * ext/openssl/ossl_pkey_ec.c: Ensure compatibility to builds of 915 OpenSSL with OPENSSL_NO_EC2M defined, but OPENSSL_NO_EC not 916 defined. 917 * test/openssl/test_pkey_ec.rb: Iterate over built-in curves 918 (and assert their non-emptiness!) instead of hard-coding them, as 919 this may cause problems with respect to the different availability 920 of individual curves in individual OpenSSL builds. 921 [ruby-core:54881] [Bug #8384] 922 923 Thanks to Vit Ondruch for providing the patch! 924 925Sun Oct 27 01:04:28 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 926 927 * lib/rubygems: Update to RubyGems 2.0.13. [ruby-core:58031] 928 [Backport #9052] 929 the patch is provided by drbrain (Eric Hodel). 930 931Sat Oct 26 16:04:36 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 932 933 * gc.c (gc_prof_set_heap_info): fix compile error when 934 GC_PROFILE_MORE_DETAIL != 0. 935 the patch is provided by ko1 (Koichi Sasada). 936 937Thu Oct 24 23:27:12 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 938 939 * lib/rubygems: Update to RubyGems 2.0.12. [ruby-core:57818] 940 [Backport #9014] 941 the patch is provided by drbrain (Eric Hodel). 942 943Thu Oct 24 22:49:28 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 944 945 * parse.y: Remove +(binary) and -(binary) special cases 946 [Feature #9048] 947 948Thu Oct 24 22:36:56 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 949 950 * encoding.c (load_encoding): should preserve outer errinfo, so that 951 expected exception may not be lost. [ruby-core:57949] [Bug #9038] 952 953Fri Oct 18 02:10:00 2013 Shugo Maeda <shugo@ruby-lang.org> 954 955 * vm_insnhelper.c (vm_call_method): set ci->me to 0 when the 956 original method of a refined method is undef to avoid SEGV. 957 958 * vm_method.c (rb_method_entry_without_refinements): return 0 when 959 the original method of a refined method is undef to avoid SEGV. 960 961 * test/ruby/test_refinement.rb: related test. 962 963Fri Oct 18 02:05:45 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 964 965 * win32/file.c (rb_file_expand_path_internal): fix memory leaks at 966 a non-absolute home exception. 967 968Thu Oct 10 01:14:37 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 969 970 * compar.c (cmp_eq): fail if recursion. [ruby-core:57736] [Bug #9003] 971 972 * thread.c (rb_exec_recursive_paired_outer): new function which is 973 combinnation of paired and outer variants. 974 975Thu Oct 10 01:07:37 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 976 977 * lib/tempfile.rb (Tempfile#unlink): finalizer is no longer needed 978 after unlinking. patched by by normalperson (Eric Wong) at 979 [ruby-core:56521] [Bug #8768] 980 981Thu Oct 10 00:58:39 2013 Benoit Daloze <eregontp@gmail.com> 982 983 * test/ruby/test_array.rb (test_count): add a test case for #count 984 with an argument. See Bug #8654. 985 986Thu Oct 10 00:58:39 2013 Benoit Daloze <eregontp@gmail.com> 987 988 * array.c (rb_ary_count): check length to avoid SEGV 989 while iterating. Remove other pointer loop when arg is given. 990 991 * test/ruby/test_array.rb (test_count): add test for bug. 992 [ruby-core:56072] [Bug #8654] 993 994Thu Oct 10 00:58:39 2013 Masaki Matsushita <glass.saga@gmail.com> 995 996 * array.c (rb_ary_count): iterate items appropriately. 997 [Bug #8654] 998 999Thu Oct 10 00:44:28 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1000 1001 * process.c (rb_fork_internal): remove cloexec setting on pipes 1002 created by rb_cloexec_pipe. patch by normalperson (Eric Wong) at 1003 [ruby-core:56523]. [Bug #8769] 1004 1005Thu Oct 10 00:24:01 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 1006 1007 * cont.c: disable FIBER_USE_NATIVE on GNU/Hurd because it doesn't 1008 support a combination getcontext() and threads. Patch by 1009 Gabriele Giacone (1o5g4r8o@gmail.com). [Bug #8990][ruby-core:57685] 1010 1011Mon Oct 7 21:03:54 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1012 1013 * configure.in, win32/Makefile.sub (FIBER_USE_NATIVE): move conditions 1014 from cont.c 1015 1016Thu Oct 10 00:17:56 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 1017 1018 * test/dl/test_base.rb: {libc, libm} detection now handle GNU/Hurd 1019 correctly. Patch by Gabriele Giacone (1o5g4r8o@gmail.com). 1020 [Bug #8937][ruby-core:57311] 1021 * test/fiddle/helper.rb: ditto. 1022 1023Thu Oct 10 00:00:30 2013 Tanaka Akira <akr@fsij.org> 1024 1025 * lib/time.rb (Time.strptime): Time.strptime('0', '%s') returns local 1026 time Time object as Ruby 2.0 and before. 1027 1028Thu Oct 10 00:00:30 2013 Tanaka Akira <akr@fsij.org> 1029 1030 * lib/time.rb (Time.strptime): Use :offset. 1031 Patch by Felipe Contreras. [ruby-core:57694] 1032 1033Wed Oct 9 23:32:37 2013 Koichi Sasada <ko1@atdot.net> 1034 1035 * gc.c (rb_gc_disable): do rest_sweep() before disable GC. 1036 This fix may solve a failure of 1037 TestTracepointObj#test_tracks_objspace_events 1038 [test/-ext-/tracepoint/test_tracepoint.rb:43]. 1039 1040Sat Oct 5 02:14:56 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1041 1042 * io.c (rb_io_close_read): duplex IO should wait its child process 1043 even after close_read. 1044 1045Sat Oct 5 02:14:56 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1046 1047 * io.c (rb_io_close_read): keep fptr in write_io to be discarded, to 1048 fix freed pointer access when it is in use by other threads, and get 1049 rid of potential memory/fd leak. 1050 1051Sat Oct 5 01:59:50 2013 Shugo Maeda <shugo@ruby-lang.org> 1052 1053 * vm_method.c (rb_undef): raise a NameError if the original method 1054 of a refined method is not defined. 1055 1056 * vm_insnhelper.c (rb_method_entry_eq): added NULL check to avoid SEGV. 1057 1058 * test/ruby/test_refinement.rb: related test. 1059 1060Sat Oct 5 00:16:33 2013 NARUSE, Yui <naruse@ruby-lang.org> 1061 1062 * process.c (rb_daemon): daemon(3) is implemented with fork(2). 1063 Therefore it needs rb_thread_atfork(). (and revert r41903) 1064 1065Sat Oct 5 00:16:33 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1066 1067 * process.c (fork_daemon): kill the other threads all and abandon the 1068 kept mutexes. 1069 1070Sat Oct 5 00:16:33 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1071 1072 * process.c (fork_daemon): kill the other threads all and abandon the 1073 kept mutexes. 1074 1075Tue Oct 1 00:28:40 2013 SHIBATA Hiroshi <shibata.hiroshi@gmail.com> 1076 1077 * tool/make-snapshot: Fix order of priority for option parameter. 1078 1079Sat Sep 28 21:40:40 2013 Kenichi Kamiya <kachick1@gmail.com> 1080 1081 * random.c (rb_random_ulong_limited): coerce before check negative. 1082 [Fixes GH-379] 1083 1084Fri Sep 27 01:24:20 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 1085 1086 * lib/rubygems: Update to Rubygems 2.0.10. [ruby-core:57360] 1087 [Backport #8950] 1088 the patch is provided by drbrain (Eric Hodel). 1089 this update contains a security fix for CVE-2013-4363. 1090 1091Fri Sep 27 01:11:21 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1092 1093 * parse.y (lambda): adjust position to the beginning of the block. 1094 1095Fri Sep 27 01:02:59 2013 NARUSE, Yui <naruse@ruby-lang.org> 1096 1097 * lib/uri/generic.rb (URI::Generic.find_proxy): return nil if 1098 http_proxy environment variable is empty string. 1099 [ruby-core:57140] [Bug #8898] 1100 1101Fri Sep 27 00:58:57 2013 Zachary Scott <e@zzak.io> 1102 1103 * lib/gserver.rb: [DOC] correct gserver.rb license [Bug #8913] 1104 1105Sun Sep 15 23:15:32 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 1106 1107 * lib/rubygems: Update to Rubygems 2.0.9. [ruby-core:57183] 1108 [Backport #8908] 1109 the patch is provided by drbrain (Eric Hodel). 1110 1111Sun Sep 15 22:59:04 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1112 1113 * tool/rbinstall.rb (Gem::Specification#initialize): default date to 1114 RUBY_RELEASE_DATE. [ruby-core:57072] [Bug #8878] 1115 1116 * tool/rbinstall.rb (Gem::Specification#to_ruby): add date. 1117 1118Sun Sep 15 22:55:44 2013 Zachary Scott <e@zzak.io> 1119 1120 * hash.c (rb_hash_aset): [DOC] Document key dup patch by @kachick 1121 [Fixes GH-382] https://github.com/ruby/ruby/pull/382 1122 1123Sun Sep 15 22:03:01 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1124 1125 * vsnprintf.c (MAXEXP, MAXFRACT): calculate depending on constants in 1126 float.h. 1127 1128 * vsnprintf.c (BSD_vfprintf): limit length for cvt() to get rid of 1129 buffer overflow. [ruby-core:57023] [Bug #8864] 1130 1131 * vsnprintf.c (exponent): make expbuf size more precise. 1132 1133Sat Sep 14 00:01:20 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 1134 1135 * lib/rubygems: Update to RubyGems 2.0.8. [ruby-core:57155] 1136 [Backport #8900] 1137 the patch is provided by drbrain (Eric Hodel). 1138 this update contains a security fix for CVE-2013-4287. 1139 1140Fri Sep 13 23:20:29 2013 Kenichi Kamiya <kachick1@gmail.com> 1141 1142 * object.c (Init_Object): undef Module#prepend_features on Class, as 1143 well as Module#append_features. [Fixes GH-376] 1144 1145 * test_class.rb: Added test for above. And ensure type checking 1146 on similar methods as module_function. 1147 1148Fri Sep 13 23:16:12 2013 Zachary Scott <e@zzak.io> 1149 1150 * enumerator.c: [DOC] Remove reference to Enumerator::Lazy#cycle 1151 Patch by @kachick [Fixes GH-372] 1152 https://github.com/ruby/ruby/pull/372 1153 1154Fri Sep 13 22:40:28 2013 Koichi Sasada <ko1@atdot.net> 1155 1156 * vm_insnhelper.c (vm_search_super_method): use ci->argc instead of 1157 ci->orig_argc. ci->argc can be changed by splat arguments. 1158 [ruby-list:49575] 1159 This fix should be applied to Ruby 2.0.0 series. 1160 1161 * test/ruby/test_super.rb: add a test for above. 1162 1163Fri Sep 13 01:44:54 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 1164 1165 * thread.c (rb_mutex_unlock): Mutex#unlock no longer raise 1166 an exception even if uses on trap. [Bug #8891] 1167 1168Fri Sep 13 01:09:59 2013 Shota Fukumori <sorah@tubusu.net> 1169 1170 * vm_backtrace.c (vm_backtrace_to_ary): Ignore the second argument if 1171 it is nil. [Bug #8884] [ruby-core:57094] 1172 1173 * test/ruby/test_backtrace.rb (test_caller_with_nil_length): 1174 Test for above. 1175 1176Fri Sep 13 00:57:54 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1177 1178 * class.c (method_entry_i): should exclude refined methods from 1179 instance method list. [ruby-core:57080] [Bug #8881] 1180 1181Fri Sep 13 00:33:09 2013 Charlie Somerville <charliesome@ruby-lang.org> 1182 1183 * vm_eval.c (vm_call0): fix prototype, the id parameter should be of 1184 type ID, not VALUE 1185 1186 * vm_insnhelper.c (check_match): the rb_funcall family of functions 1187 does not care about refinements. We need to use 1188 rb_method_entry_with_refinements instead to call === with 1189 refinements. Thanks to Jon Conley for reporting this bug. 1190 [ruby-core:57051] [Bug #8872] 1191 1192 * test/ruby/test_refinement.rb: add test 1193 1194Fri Sep 13 00:18:55 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1195 1196 * enumerator.c (lazy_zip_func): fix non-single argument. fix 1197 out-of-bound access and pack multiple yielded values. 1198 [ruby-core:56383] [Bug #8735] 1199 1200Thu Sep 12 01:44:01 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1201 1202 * string.c (str_gsub): use BEG(0) for whole matched position not 1203 return value from rb_reg_search(), for \K matching. 1204 [ruby-dev:47694] [Bug #8856] 1205 1206Thu Sep 12 01:34:07 2013 Charlie Somerville <charliesome@ruby-lang.org> 1207 1208 * object.c (rb_class_inherited_p): allow iclasses to be tested for 1209 inheritance. [Bug #8686] [ruby-core:56174] 1210 1211 * test/ruby/test_method.rb: add test 1212 1213Thu Sep 12 01:18:44 2013 Michal Rokos <michal@rokos.cz> 1214 1215 * configure.in (sys/pstat.h): fix missing header check for 1216 missing/setproctitle.c on HP-UX. [ruby-core:56644] [Bug #8792] 1217 1218Thu Sep 12 01:02:56 2013 Benoit Daloze <eregontp@gmail.com> 1219 1220 * test/ruby/test_time.rb: use the in_timezone() helper 1221 and define it at the top with other helpers. 1222 1223Thu Sep 12 01:02:56 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1224 1225 * time.c (time_mload): ignore auxiliary data, offset and zone, if 1226 invalid. [ruby-core:56648] [Bug #8795] 1227 1228Thu Sep 12 00:22:22 2013 Kazuki Tsujimoto <kazuki@callcc.net> 1229 1230 * variable.c (classname): the name of class that has 1231 non class id should not be nil. This bug was introduced 1232 in r36577. 1233 1234 * test/thread/test_cv.rb: test for change. 1235 1236Thu Aug 29 21:51:33 2013 Eric Hodel <drbrain@segment7.net> 1237 1238 * ext/zlib/zlib.c (zstream_run): Fix handling of deflate streams that 1239 need a dictionary but are being decompressed by Zlib::Inflate.inflate 1240 (which has no option to set a dictionary). Now Zlib::NeedDict is 1241 raised instead of crashing. [ruby-trunk - Bug #8829] 1242 * test/zlib/test_zlib.rb (TestZlibInflate): Test for the above. 1243 1244Thu Aug 29 21:28:56 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1245 1246 * vm_insnhelper.c (vm_call_method): a method entry refers the based 1247 class/module, so should search superclass from the origin i-class 1248 where the entry belongs to, to get rid of infinite loop when zsuper 1249 in a prepended class/module. [ruby-core:54105] [Bug #8238] 1250 1251Fri Aug 23 01:16:00 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1252 1253 * ext/date/date_parse.c (rfc2822_cb): check if wday is given, since it 1254 can be omitted. 1255 1256Fri Aug 23 00:55:02 2013 Tanaka Akira <akr@fsij.org> 1257 1258 * gc.c (getrusage_time): Fallback clock_gettime to getrusage when 1259 clock_gettime fails. 1260 Reported by Eric Saxby. [ruby-core:56762] [Bug #8805] 1261 1262Sat Aug 17 00:42:12 2013 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 1263 1264 * parse.y: fix build error with bison-3.0. 1265 1266Sat Aug 17 00:39:20 2013 NAKAMURA Usaku <usa@ruby-lang.org> 1267 1268 * test/webrick/test_cgi.rb (TestWEBrickCGI#{start_cgi_server,test_cgi}): 1269 mswin is not only mswin32 but also mswin64. [Bug #8746] 1270 1271Sat Aug 17 00:36:24 2013 Charlie Somerville <charliesome@ruby-lang.org> 1272 1273 * test/openssl/test_ssl.rb: Fix test for CVE-2013-4073. 1274 Patch by Antonio Terceiro. [Bug #8750] [ruby-core:56437] 1275 1276Sat Aug 17 00:32:17 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 1277 1278 * lib/rubygems: update to RubyGems 2.0.7. the patch by drbrain. 1279 [ruby-core:56633] [Backport #8787] 1280 1281Sat Aug 10 23:59:47 2013 NAKAMURA Usaku <usa@ruby-lang.org> 1282 1283 * test/coverage/test_coverage.rb (TestCoverage#test_big_code): use `1' 1284 instead of `p' to get rid of a side effect. 1285 Kernel#p without any argument seems to do nothing, but flushes stdout. 1286 and, if stdout is redirected to file, fsync() will be called on 1287 Windows. so, when running test-all on Windows with redirection, such 1288 as CI environment, this test took a lot of time. 1289 1290Sun Aug 4 22:42:16 2013 NAKAMURA Usaku <usa@ruby-lang.org> 1291 1292 * win32/win32.c (wrename): use MoveFileExW instead of MoveFileW, 1293 because the latter fails on cross device file move of some 1294 environments. 1295 fix [ruby-core:53492] [Bug #8109] 1296 reported by mitchellh (Mitchell Hashimoto) 1297 1298Sat Aug 3 23:02:09 2013 Tanaka Akira <akr@fsij.org> 1299 1300 * ext/extmk.rb (extmake): Invoke Logging::log_close in a ensure 1301 clause. 1302 1303Sat Aug 3 23:02:09 2013 Tanaka Akira <akr@fsij.org> 1304 1305 * ext/extmk.rb (extmake): Use Logging.open to switch stdout and 1306 stderr. Delay Logging::log_close until the failure message is 1307 written. Write the failure message only if log file is opened. 1308 1309 * lib/mkmf.rb (Logging.log_opened?): New method. 1310 1311 [ruby-dev:47215] [Bug #8209] 1312 1313Sat Aug 3 22:46:19 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1314 1315 * lib/mkmf.rb (xsystem): expand environment variable in all macros not 1316 expanded with RbConfig. [Bug #8702] 1317 1318 * test/mkmf/test_framework.rb (create_framework): replace all $@ not 1319 only once. 1320 1321Sat Aug 3 22:40:57 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1322 1323 * lib/mkmf.rb (have_framework): allow header file to check. 1324 [ruby-core:55745] [Bug #8593] 1325 1326Sat Aug 3 22:24:44 2013 Shota Fukumori <her@sorah.jp> 1327 1328 * lib/uri/common.rb (URI.decode_www_form_component): 1329 Don't raise error when str includes multibyte characters. 1330 1331Sun Jul 28 22:00:10 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1332 1333 * rational.c (f_round_common): Rational is expected to be returned by 1334 Rational#*, but mathn.rb breaks that assumption. [ruby-core:56177] 1335 [Bug #8687] 1336 1337Sun Jul 28 21:50:34 2013 Masaki Matsushita <glass.saga@gmail.com> 1338 1339 * io.c (io_getpartial): use rb_str_locktmp_ensure(). 1340 [ruby-core:56121] [Bug #8669] 1341 1342 * io.c (rb_io_sysread): ditto. 1343 1344 * test/ruby/test_io.rb: add tests for above. 1345 1346Sun Jul 28 21:50:34 2013 Masaki Matsushita <glass.saga@gmail.com> 1347 1348 * string.c: add internal API rb_str_locktmp_ensure(). 1349 1350 * io.c (io_fread): use rb_str_locktmp_ensure(). 1351 [ruby-core:56121] [Bug #8669] 1352 1353 * test/ruby/test_io.rb: add a test for above. 1354 1355Sun Jul 28 21:44:57 2013 Eric Hodel <drbrain@segment7.net> 1356 1357 * ext/openssl/ossl_asn1.c (asn1time_to_time): Implement YYMMDDhhmmZ 1358 format for ASN.1 UTCTime. [ruby-trunk - Bug #8664] 1359 * test/openssl/test_asn1.rb: Test for the above. 1360 1361Fri Jul 26 00:38:58 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 1362 1363 * lib/rubygems: Update to RubyGems 2.0.6. [ruby-core:56160] 1364 [Backport #8682] 1365 1366Wed Jul 24 22:35:32 2013 NARUSE, Yui <naruse@ruby-lang.org> 1367 1368 * lib/uri/generic.rb (find_proxy): raise BadURIError if the URI is 1369 a relative URI. [Bug #8645] 1370 1371Wed Jul 24 01:13:02 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 1372 1373 * include/ruby/intern.h (rb_f_lambde): restore the declaration of 1374 rb_f_lambda() for backword compatibility. and mark it as deprecated. 1375 1376Tue Jul 23 01:36:43 2013 Zachary Scott <e@zzak.io> 1377 1378 * lib/rubygems/psych_additions.rb: Ignore Psych docs here 1379 1380Tue Jul 23 01:34:00 2013 Koichi Sasada <ko1@atdot.net> 1381 1382 * test/test_tracer.rb: catch up recent rubygems changes. 1383 1384Tue Jul 23 01:28:54 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 1385 1386 * lib/rubygems: Update to RubyGems 2.0.5. 1387 The patch provided by drbrain (Eric Hodel). [ruby-core:55896] 1388 [Backport #8617] 1389 1390 * test/rubygems: Tests for the above. 1391 1392Tue Jul 23 00:00:27 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1393 1394 * vm_eval.c (eval_string_with_cref): use the given file name unless 1395 eval even if scope is given. additional fix for [Bug #8436]. 1396 based on the patch by srawlins at [ruby-core:56099] [Bug #8662]. 1397 1398Sat Jul 20 23:49:33 2013 NAKAMURA Usaku <usa@ruby-lang.org> 1399 1400 * test/drb/drbtest.rb (Drb{Core,Ary}#teardown): retry Process.kill 1401 if it fails with Errno::EPERM on Windows (workaround). 1402 [ruby-dev:47245] [Bug #8251] 1403 1404Sat Jul 20 23:31:11 2013 Aman Gupta <tmm1@ruby-lang.org> 1405 1406 * iseq.c (iseq_location_setup): re-use existing string when iseq has 1407 the same path and absolute_path. [Bug #8149] 1408 1409Sun Jul 14 00:18:08 2013 Zachary Scott <e@zzak.io> 1410 1411 * sprintf.c: Fix typo patch by @hynkle [Fixes GH-357] 1412 https://github.com/ruby/ruby/pull/357 1413 1414Sun Jul 14 00:17:07 2013 Zachary Scott <zachary@zacharyscott.net> 1415 1416 * man/ri.1: Incorrect use of .Dd macro [Bug #8620] by Tristan Hill 1417 1418Sun Jul 14 00:15:26 2013 Zachary Scott <zachary@zacharyscott.net> 1419 1420 * lib/logger.rb: Use :call-seq: for method signature rdoc 1421 1422Sun Jul 14 00:13:01 2013 NAKAMURA Usaku <usa@ruby-lang.org> 1423 1424 * test/net/http/test_http.rb (TestNetHTTP_v1_2#test_get, 1425 TestNetHTTP_v1_2_chunked#test_get): shouldn't check 1426 HttpResponse#decode_content if Zlib is not available. 1427 ko1 complained via IRC. 1428 1429Sat Jul 13 23:50:00 2013 Tadayoshi Funaba <tadf@dotrb.org> 1430 1431 * ext/date/date_core.c: fixed coding error [ruby-core:55337]. 1432 reported by Riley Lynch. 1433 1434Sat Jul 13 23:50:00 2013 Tadayoshi Funaba <tadf@dotrb.org> 1435 1436 * ext/date/date_core.c: fixed a bug [ruby-core:55295]. reported 1437 by Riley Lynch. 1438 1439Sat Jul 13 23:41:25 2013 Tadayoshi Funaba <tadf@dotrb.org> 1440 1441 * ext/date/date_parse.c (date_zone_to_diff): [ruby-core:55831]. 1442 1443Sat Jul 13 23:34:13 2013 Akinori MUSHA <knu@iDaemons.org> 1444 1445 * object.c: Fix rdoc for Kernel#<=>. [Fix GH-352] 1446 1447Sat Jul 13 23:29:51 2013 Akinori MUSHA <knu@iDaemons.org> 1448 1449 * lib/fileutils.rb (FileUtils#mode_to_s): Define mode_to_s() also 1450 as singleton method, or FileUtils.chmod fails in verbose mode. 1451 1452Sat Jul 13 23:27:12 2013 Akinori MUSHA <knu@iDaemons.org> 1453 1454 * lib/fileutils.rb (FileUtils#chown, FileUtils#chown_R): If user 1455 and group are both nil, print ":". 1456 1457Sat Jul 13 23:16:49 2013 Tanaka Akira <akr@fsij.org> 1458 1459 * bignum.c (bigrsh_bang): Fix bignum digits overrun. 1460 1461Sat Jul 13 23:16:49 2013 Tanaka Akira <akr@fsij.org> 1462 1463 * bignum.c (biglsh_bang): Fix bignum digits under-run. 1464 1465Sat Jul 13 22:45:10 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1466 1467 * configure.in (RUBY_DTRACE_POSTPROCESS): dtrace version SUN D 1.11 1468 introduces a check in the dtrace compiler to ensure that probes 1469 actually exist. If there are no probes, then the -G step will 1470 fail. As this test is only being used to determine whether -G is 1471 necessary (for instance, on OSX it is not), adding a real probe to 1472 the conftest allows it to succeed on newer versions of dtrace. 1473 Patch by Eric Saxby <sax AT livinginthepast.org> at 1474 [ruby-core:55826]. [Fix GH-351], [Bug #8606]. 1475 1476Sat Jul 13 22:41:20 2013 Martin Bosslet <Martin.Bosslet@gmail.com> 1477 1478 * test/openssl/test_x509crl.rb: Remove unused variable. 1479 [ruby-core:53501] [Bug #8114] 1480 1481 Thanks, Vipul Amler, for pointing this out! 1482 1483Sun Jul 7 02:00:41 2013 Martin Bosslet <Martin.Bosslet@gmail.com> 1484 1485 * lib/openssl/ssl.rb: Fix SSL client connection crash for SAN marked 1486 critical. 1487 The patch for CVE-2013-4073 caused SSL crash when a SSL server returns 1488 the certificate that has critical SAN value. X509 extension could 1489 include 2 or 3 elements in it: 1490 1491 [id, criticality, octet_string] if critical, 1492 [id, octet_string] if not. 1493 1494 Making sure to pick the last element of X509 extension and use it as 1495 SAN value. 1496 [ruby-core:55685] [Bug #8575] 1497 1498 Thank you @nahi for providing the patch! 1499 1500Sun Jul 7 01:58:25 2013 Akinori MUSHA <knu@iDaemons.org> 1501 1502 * lib/fileutils.rb (FileUtils#symbolic_modes_to_i): Fix the wrong 1503 character class [+-=], which happened to match all desired 1504 characters but also match undesired characters. 1505 1506Sun Jul 7 01:54:44 2013 Akinori MUSHA <knu@iDaemons.org> 1507 1508 * lib/fileutils.rb (FileUtils#chown, FileUtils#chown_R): Fix the 1509 wrong output message when user is nil, which should be "chown 1510 :group file" instead of "chown group file". 1511 1512Fri Jul 5 00:55:05 2013 NARUSE, Yui <naruse@ruby-lang.org> 1513 1514 * regcomp.c (): Merge Onigmo 5.13.5 23b523076d6f1161. 1515 1516 * [bug] (thanks Akinori MUSHA and Ippei Obayashi) 1517 Fix a renumbering bug in condition regexp with a named 1518 capture. [Bug #8583] 1519 * [spec] (thanks Akinori MUSHA) 1520 Allow ENCLOSE_OPTION in look-behind. 1521 1522Wed Jul 3 23:31:26 2013 Shota Fukumori <sorah@cookpad.com> 1523 1524 * lib/mkmf.rb (try_config): Fix to not replace $LDFLAGS with $libs 1525 (1.9.3 behavior) [ruby-core:55752] [Bug #8595] 1526 1527Tue Jul 2 03:06:38 2013 Kenta Murata <mrkn@mrkn.jp> 1528 1529 * ext/bigdecimal/bigdecimal.c (BigMath_s_exp): Fix for the cases when 1530 the argument x is not a BigDecimal. 1531 This change is based on the patch made by Heesob Park and Garth Snyder. 1532 [Bug #6862] [ruby-core:47145] 1533 [Fix GH-332] https://github.com/ruby/ruby/pull/332 1534 1535Fri Jun 28 02:20:13 2013 Aman Gupta <ruby@tmm1.net> 1536 1537 * compile.c (iseq_add_mark_object): Use new rb_iseq_add_mark_object(). 1538 1539 * insns.def (setinlinecache): Ditto. 1540 1541 * iseq.c (rb_iseq_add_mark_object): New function to allocate 1542 iseq->mark_ary on demand. [Bug #8142] 1543 1544 * iseq.h (rb_iseq_add_mark_object): Ditto. 1545 1546 * iseq.c (prepare_iseq_build): Avoid allocating mark_ary until needed. 1547 1548 * iseq.c (rb_iseq_build_for_ruby2cext): Ditto. 1549 1550Thu Jun 27 20:10:56 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 1551 1552 * ext/openssl/lib/openssl/ssl.rb (verify_certificate_identity): fix 1553 hostname verification. Patched by nahi. 1554 1555 * test/openssl/test_ssl.rb (test_verify_certificate_identity): test for 1556 above. 1557 1558 1559Thu Jun 27 13:16:40 2013 Hiroshi Shirosaki <h.shirosaki@gmail.com> 1560 1561 * test/rubygems/test_gem_installer.rb (test_install_extension_flat): 1562 use ruby in build directory in case ruby is not installed. 1563 [ruby-core:53265] [Bug #8058] 1564 1565Wed Jun 26 23:05:34 2013 Hiroshi Shirosaki <h.shirosaki@gmail.com> 1566 1567 * test/ruby/test_io.rb (TestIO#test_write_32bit_boundary): skip if 1568 writing a file is slow. 1569 [ruby-core:55541] [Bug #8519] 1570 1571Wed Jun 26 22:42:36 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1572 1573 * lib/mkmf.rb: should use expanded values for header directories 1574 unless extmk. patch by vo.x (Vit Ondruch) at [ruby-core:55653] 1575 [Bug #8115], rhbz#921650. 1576 1577Wed Jun 26 02:25:52 2013 Akinori MUSHA <knu@iDaemons.org> 1578 1579 * lib/rubygems/ext/builder.rb (Gem::Ext::Builder.make): Pass 1580 DESTDIR via command line to override what's in MAKEFLAGS. This 1581 fixes an installation problem under a package building 1582 environment where DESTDIR is specified in the (parent) command 1583 line. [Fixes GH-327] 1584 1585Tue Jun 25 00:12:19 2013 Zachary Scott <zachary@zacharyscott.net> 1586 1587 * array.c: Return value in Array overview example found by @PragTob 1588 [Fix GH-336] https://github.com/ruby/ruby/pull/336 1589 1590Tue Jun 25 00:11:46 2013 Zachary Scott <zachary@zacharyscott.net> 1591 1592 * array.c (rb_ary_zip): typo by @PragTob [Fix GH-337] 1593 https://github.com/ruby/ruby/pull/337 1594 1595Tue Jun 25 00:10:54 2013 Zachary Scott <zachary@zacharyscott.net> 1596 1597 * win32/README.win32: grammar typo by @blankenshipz [Fix GH-334] 1598 https://github.com/ruby/ruby/pull/334 1599 1600Sun Jun 23 00:03:18 2013 Charlie Somerville <charliesome@ruby-lang.org> 1601 1602 * ext/etc/etc.c (etc_getpwnam): use PRIsVALUE in format string instead 1603 of %s and RSTRING_PTR 1604 1605 * ext/etc/etc.c (etc_getgrnam): ditto 1606 1607Sat Jun 22 00:54:41 2013 Eric Hodel <drbrain@segment7.net> 1608 1609 * lib/rubygems: Update to RubyGems 2.0.3 1610 1611 * test/rubygems: Tests for the above. 1612 1613 * NEWS: Added RubyGems 2.0.3 note. 1614 1615Wed Jun 19 04:20:31 2013 Charlie Somerville <charliesome@ruby-lang.org> 1616 1617 * vm_insnhelper.c (vm_call_method): ensure methods of type 1618 VM_METHOD_TYPE_ATTR_SET are called with 1 argument 1619 1620 * test/ruby/test_module.rb (class TestModule): add test 1621 1622 [ruby-core:55543] [Bug #8540] 1623 1624Wed Jun 19 03:54:04 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1625 1626 * defs/id.def (predefined): add "idProc". 1627 1628 * proc.c (mnew, mproc, mlambda): use predefined IDs. 1629 1630 * vm.c (Init_VM): ditto. 1631 1632Wed Jun 19 03:54:04 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1633 1634 * include/ruby/intern.h (rb_block_lambda): add declaration instead of 1635 deprecated rb_f_lambda. 1636 1637Wed Jun 19 03:24:07 2013 Kazuki Tsujimoto <kazuki@callcc.net> 1638 1639 * include/ruby/ruby.h, vm_eval.c (rb_funcall_with_block): 1640 new function to invoke a method with a block passed 1641 as an argument. 1642 1643 * string.c (sym_call): use the above function to avoid 1644 a block sharing. [ruby-dev:47438] [Bug #8531] 1645 1646 * vm_insnhelper.c (vm_yield_with_cfunc): don't set block 1647 in the frame. 1648 1649 * test/ruby/test_symbol.rb (TestSymbol#test_block_given_to_proc): 1650 run related tests. 1651 1652Wed Jun 19 03:06:57 2013 Kazuki Tsujimoto <kazuki@callcc.net> 1653 1654 * test/ruby/test_proc.rb (TestProc#test_block_given_method_to_proc): 1655 run test for r41359. 1656 1657Wed Jun 19 03:06:57 2013 Kazuki Tsujimoto <kazuki@callcc.net> 1658 1659 * include/ruby/intern.h, proc.c (rb_method_call_with_block): 1660 new function to invoke a Method object with a block passed 1661 as an argument. 1662 1663 * proc.c (bmcall): use the above function to avoid a block sharing. 1664 [ruby-core:54626] [Bug #8341] 1665 1666 * test/ruby/test_proc.rb (TestProc#test_block_persist_between_calls): 1667 run related tests. 1668 1669Tue Jun 18 02:49:20 2013 NARUSE, Yui <naruse@ruby-lang.org> 1670 1671 * test/ruby/envutil.rb (assert_separately): stop_auto_run of 1672 Test::Unit::Runner to prevent auto runner use ARGV. 1673 1674 * test/ruby/envutil.rb (assert_separately): add $: to separate process. 1675 1676 * test/ruby/envutil.rb (assert_separately): fail if stderr is not 1677 empty and ignore_stderr is false. 1678 1679Tue Jun 18 02:21:54 2013 NARUSE, Yui <naruse@ruby-lang.org> 1680 1681 * test/ruby/envutil.rb (EnvUtil.with_default_external): add for 1682 changing Encoding.default_external without warnings. 1683 1684 * test/ruby/envutil.rb (EnvUtil.with_default_internal): ditto. 1685 1686 * test/ruby/test_io_m17n.rb: use above with_default_external. 1687 1688Tue Jun 18 00:43:27 2013 Zachary Scott <zachary@zacharyscott.net> 1689 1690 * vm_backtrace.c: Update rdoc for Backtrace#label with @_ko1 1691 1692Tue Jun 18 00:34:57 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 1693 1694merge revision(s) 41347: [Backport #5048] [Backport #5465] [Backport #8319] 1695 1696 * ext/tk/extconf.rb: support s390x (Thanks to bkabrda) [Bug #5465] 1697 1698 * ext/tk/extconf.rb: apply [Bug #5048] 1699 1700 * ext/tk/lib/tk/canvas.rb,ext/tk/sample/demos-{en,jp}/{tree.rb,widget}: 1701 fix bug (Thanks to zzak) [ruby-trunk - Bug #8319] 1702 1703Sun Jun 16 01:56:54 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1704 1705 * array.c (FL_SET_EMBED): shared object is frozen even when get 1706 unshared. 1707 1708 * array.c (rb_ary_modify): ARY_SET_CAPA needs unshared array. 1709 1710Sun Jun 16 01:32:26 2013 TAKANO Mitsuhiro <tak@no32.tk> 1711 1712 * insns.def: fix condition. 1713 1714Sun Jun 16 01:22:35 2013 Eric Hodel <drbrain@segment7.net> 1715 1716 * ext/socket/extconf.rb: Enable RFC 3542 IPV6 socket options for OS X 1717 10.7+. [ruby-trunk - Bug #8517] 1718 1719Sun Jun 16 01:11:10 2013 Koichi Sasada <ko1@atdot.net> 1720 1721 * compile.c (rb_iseq_compile_node): fix location of a `trace' 1722 instruction (b_return event). 1723 [ruby-core:55305] [ruby-trunk - Bug #8489] 1724 (need a backport to 2.0.0?) 1725 1726 * test/ruby/test_settracefunc.rb: add a test. 1727 1728Sun Jun 16 00:30:56 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1729 1730 * vm_eval.c (eval_string_with_cref): propagate absolute path from the 1731 binding if it is given explicitly. patch by Gat (Dawid Janczak) at 1732 [ruby-core:55123]. [Bug #8436] 1733 1734Wed Jun 12 23:41:21 2013 NARUSE, Yui <naruse@ruby-lang.org> 1735 1736 * vm_insnhelper.c (vm_yield_setup_block_args): partially revert r41019. 1737 The code is not useless. 1738 1739Wed Jun 12 23:41:21 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1740 1741 * vm_insnhelper.c (vm_yield_setup_block_args): split single parameter 1742 if any keyword arguments exist, and then extract keyword arguments. 1743 [ruby-core:55203] [Bug #8463] 1744 1745Wed Jun 12 23:05:41 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1746 1747 * io.c (io_getc): fix 7bit coderange condition, check if ascii read 1748 data instead of read length. [ruby-core:55444] [Bug #8516] 1749 1750Sun Jun 9 02:27:07 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1751 1752 * lib/mkmf.rb (install_dirs, with_destdir): prefix with DESTDIR 1753 directories to install only unless bundled extension libraries. 1754 [ruby-core:53502] [Bug #8115] 1755 1756Sun Jun 9 02:17:16 2013 Charlie Somerville <charliesome@ruby-lang.org> 1757 1758 * class.c (include_modules_at): invalidate method cache if included 1759 module contains constants 1760 1761 * test/ruby/test_module.rb: add test 1762 1763Sun Jun 9 01:59:39 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 1764 1765merge revision 40783 (partially): [Backport #8413] 1766 1767 * win32/Makefile.sub: fix a typo in config.h. 1768 1769Sun Jun 9 01:38:55 2013 Charlie Somerville <charliesome@ruby-lang.org> 1770 1771 * intern.h: remove dangling rb_class_init_copy declaration 1772 [ruby-core:55120] [Bug #8434] 1773 1774Sun Jun 9 01:30:57 2013 Shugo Maeda <shugo@ruby-lang.org> 1775 1776 * lib/net/imap.rb (capability_response): should ignore trailing 1777 spaces. Thanks, Peter Kovacs. [ruby-core:55024] [Bug #8415] 1778 1779 * test/net/imap/test_imap_response_parser.rb: related test. 1780 1781Wed Jun 5 00:38:46 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1782 1783 * ext/zlib/zlib.c (gzfile_read, gzfile_read_all, gzfile_getc), 1784 (gzreader_gets): check EOF. [ruby-core:55220] [Bug #8467] 1785 1786Wed Jun 5 00:32:18 2013 Tanaka Akira <akr@fsij.org> 1787 1788 * test/ruby/test_require.rb: Remove temporally files in the tests. 1789 1790 * test/ruby/test_rubyoptions.rb: Ditto. 1791 1792 * test/logger/test_logger.rb: Ditto. 1793 1794 * test/psych/test_psych.rb: Ditto. 1795 1796 * test/readline/test_readline.rb: Ditto. 1797 1798 * test/syslog/test_syslog_logger.rb: Ditto. 1799 1800 * test/webrick/test_httpauth.rb: Ditto. 1801 1802 * test/zlib/test_zlib.rb: Ditto. 1803 1804Wed Jun 5 00:08:55 2013 Yusuke Endoh <mame@tsg.ne.jp> 1805 1806 * dir.c (bracket): fix copy-paste error. When the first and last 1807 characters of fnmatch range have different length, fnmatch may 1808 have wrongly matched a path that does not really match. 1809 Coverity Scan found this bug. 1810 1811Wed Jun 5 00:04:12 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1812 1813 * string.c (rb_str_quote_unprintable): check if argument is a string. 1814 1815Tue Jun 4 23:42:18 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1816 1817 * load.c (loaded_feature_path): fix invalid read by index underflow. 1818 the beginning of name is also a boundary as well as just after '/'. 1819 1820Tue Jun 4 23:32:12 2013 Charlie Somerville <charliesome@ruby-lang.org> 1821 1822 * variable.c (set_const_visibility): use rb_frame_this_func() instead 1823 of rb_frame_callee() for getting the name of the called method 1824 1825 * test/ruby/test_module.rb: add test for private_constant with no args 1826 1827Tue Jun 4 23:27:24 2013 Yusuke Endoh <mame@tsg.ne.jp> 1828 1829 * vm_insnhelper.c (vm_callee_setup_keyword_arg, 1830 vm_callee_setup_arg_complex): consider a hash argument for keyword 1831 only when the number of arguments is more than the expected 1832 mandatory parameters. [ruby-core:53199] [ruby-trunk - Bug #8040] 1833 1834 * test/ruby/test_keyword.rb: update a test for above. 1835 1836Tue Jun 4 00:46:05 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1837 1838 * win32/win32.c (setup_overlapped, finish_overlapped): extract from 1839 rb_w32_read() and rb_w32_write(). 1840 1841Tue Jun 4 00:02:45 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1842 1843 * vm_core.h (rb_vm_tag): move jmpbuf between tag and prev so ensure to 1844 be accessible. 1845 1846Tue Jun 4 00:02:45 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1847 1848 * eval_intern.h (TH_PUSH_TAG): ensure jmpbuf to be accessible before 1849 pushing tag to get rid of unaccessible tag by stack overflow. 1850 1851Mon Jun 3 23:22:58 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1852 1853 * compile.c (iseq_compile_each): forward anonymous and first keyword 1854 rest argument one. [ruby-core:55033] [Bug #8416]. 1855 1856Sun Jun 2 22:39:24 2013 Zachary Scott <zachary@zacharyscott.net> 1857 1858 * range.c: Fix rdoc on Range#bsearch [Bug #8242] [ruby-core:54143] 1859 1860Mon May 20 04:00:48 2013 Zachary Scott <zachary@zacharyscott.net> 1861 1862 * lib/yaml.rb: YAML documentation from #8344 [Bug #8355] 1863 1864Wed May 15 23:22:09 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 1865 1866 * include/ruby/intern.h: should include sys/time.h for struct timeval 1867 if it exists. [ruby-list:49363] 1868 1869Tue May 14 20:21:41 2013 Eric Hodel <drbrain@segment7.net> 1870 1871 * lib/rubygems/config_file.rb: Lazily load .gem/credentials to only 1872 check permissions when necessary. RubyGems bug #465 1873 * test/rubygems/test_gem_config_file.rb: Test for the above. 1874 1875 * test/rubygems/test_gem_commands_push_command.rb: Remove duplicated 1876 test. 1877 1878Tue May 14 20:11:00 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 1879 1880 * ext/dl/lib/dl/func.rb (DL::Function#call): check tainted when 1881 $SAFE > 0. 1882 * ext/fiddle/function.c (function_call): check tainted when $SAFE > 0. 1883 * test/fiddle/test_func.rb (module Fiddle): add test for above. 1884 1885 1886Sun May 12 22:42:25 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 1887 1888 * signal.c (rb_f_kill): fixes typo. s/HAS_KILLPG/HAVE_KILLPG/. 1889 1890Sun May 12 04:23:06 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1891 1892 * parse.y (parser_peek_variable_name): treat invalid global, class, 1893 and instance variable names as mere strings rather than errors. 1894 [ruby-core:54885] [Bug #8375] 1895 1896Sun May 12 04:23:06 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1897 1898 * parse.y (parser_yylex): fail if $, @, @@ are not followed by a valid 1899 name character. [ruby-core:54846] [Bug #8375]. 1900 1901Sun May 12 02:50:30 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1902 1903 * configure.in (RUBY_RM_RECURSIVE): this hack is needed by only 1904 autoconf 2.69 or earlier on darwin. 1905 1906Sun May 12 02:50:30 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1907 1908 * configure.in (rm, shvar_to_cpp, unexpand_shvar): local is not 1909 available on old shells. 1910 1911 * configure.in (shvar_to_cpp): escape quotes for old shells. 1912 [Bug #7959] [Bug #8071] 1913 1914Thu May 9 23:39:47 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1915 1916 * class.c (rb_mod_included_modules): should not include non-modules. 1917 [ruby-core:53158] [Bug #8025] 1918 1919Thu May 9 23:39:47 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1920 1921 * class.c (rb_mod_included_modules): should not include the original 1922 module itself. [ruby-core:53158] [Bug #8025] 1923 1924Wed May 8 23:07:19 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1925 1926 * insns.def (defined): use vm_search_superclass() like as normal super 1927 call. based on a patch <https://gist.github.com/wanabe/5520026> by 1928 wanabe. 1929 1930 * vm_insnhelper.c (vm_search_superclass): return error but not raise 1931 exceptions. 1932 1933 * vm_insnhelper.c (vm_search_super_method): check the result of 1934 vm_search_superclass and raise exceptions on error. 1935 1936Wed May 8 23:07:19 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1937 1938 * insns.def (defined): get method entry from the method top level 1939 frame, not block frame. [ruby-core:54769] [Bug #8367] 1940 1941Wed May 8 01:18:41 2013 Tanaka Akira <akr@fsij.org> 1942 1943 * internal.h (MUL_OVERFLOW_SIGNED_INTEGER_P): New macro. 1944 (MUL_OVERFLOW_FIXNUM_P): Ditto. 1945 (MUL_OVERFLOW_LONG_P): Ditto. 1946 1947 * array.c (rb_ary_product): Don't overflow on signed integer 1948 multiplication. 1949 1950 * numeric.c (fix_mul): Ditto. 1951 (int_pow): Ditto. 1952 1953 * rational.c (f_imul): Ditto. 1954 1955 * insns.def (opt_mult): Ditto. 1956 1957 * thread.c (sleep_timeval): Don't overflow on signed integer addition. 1958 1959 * bignum.c (rb_int2big): Don't overflow on signed integer negation. 1960 (rb_big2ulong): Ditto. 1961 (rb_big2long): Ditto. 1962 (rb_big2ull): Ditto. 1963 (rb_big2ll): Ditto. 1964 1965Tue May 7 20:13:12 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 1966 1967 * test/ruby/test_thread.rb (invoke_rec): extend timeout 10 -> 50 sec, 1968 to investigate test failure on rubyci. 1969 http://a.mrkn.jp/~mrkn/chkbuild/mountain_lion/ruby-2.0.0-m64-o0/log/20130507T052909Z.log.html.gz 1970 1971Sat May 4 23:48:56 2013 Zachary Scott <zachary@zacharyscott.net> 1972 1973 * doc/security.rdoc: Add note about reporting security vulns 1974 1975Sat May 4 23:44:54 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 1976 1977 * object.c (rb_obj_is_kind_of): skip prepending modules. 1978 [ruby-core:54742] [Bug #8357] 1979 1980 * object.c (rb_class_inherited_p): ditto. 1981 [ruby-core:54736] [Bug #8357] 1982 1983Thu May 2 23:39:45 2013 Tanaka Akira <akr@fsij.org> 1984 1985 * thread.c (double2timeval): convert the infinity to TIME_MAX to avoid 1986 SEGV by Thread.new {}.join(Float::INFINITY) on 1987 Debian GNU/Linux (amd64). 1988 1989Thu May 2 00:30:00 2013 Tanaka Akira <akr@fsij.org> 1990 1991 * thread_pthread.c (ruby_init_stack): Add STACK_GROW_DIR_DETECTION. 1992 This fixes a compilation failure while cross-compiling for Tensilica 1993 Xtensa Processor. 1994 1995Thu May 2 00:19:46 2013 Tanaka Akira <akr@fsij.org> 1996 1997 * dir.c (dir_set_pos): Fix a compilation error when seekdir() is not 1998 exist. 1999 2000Thu May 2 00:16:36 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2001 2002 * README.EXT: correct method name to be used. [Bug #7982] 2003 2004 * README.EXT.ja: add notes too. 2005 2006Thu May 2 00:16:36 2013 Zachary Scott <zachary@zacharyscott.net> 2007 2008 * README.EXT: Copy note from r40505 for rb_sprintf() [Bug #7982] 2009 2010Thu May 2 00:16:36 2013 Zachary Scott <zachary@zacharyscott.net> 2011 2012 * README.EXT: Update note from r40504, by Jeremy Evans [Bug #7982] 2013 2014Thu May 2 00:16:36 2013 Zachary Scott <zachary@zacharyscott.net> 2015 2016 * README.EXT: Add note to warn use of %i in Exceptions [Bug #7982] 2017 2018Wed May 1 23:35:18 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2019 2020 * io.c (rb_io_ext_int_to_encs, parse_mode_enc): bom-prefixed name is 2021 not a real encoding name, just a fallback. so the proper conversion 2022 should take place even if if the internal encoding is equal to the 2023 bom-prefixed name, unless actual encoding is equal to the internal 2024 encoding. [ruby-core:54563] [Bug #8323] 2025 2026 * io.c (io_set_encoding_by_bom): reset extenal encoding if no BOM 2027 found. [ruby-core:54569] 2028 2029Sat Apr 27 02:12:14 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2030 2031 * io.c (rb_fd_fix_cloexec): use rb_update_max_fd(). 2032 2033Sat Apr 27 02:12:14 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2034 2035 * io.c (rb_update_max_fd): use ATOMIC_CAS because this function 2036 is used from timer thread too. 2037 2038Sat Apr 27 01:57:43 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 2039 2040 * configure.in: use quadrigraphs. workaround for autoconf 2.64. 2041 a patch provided by Hessob Park. [ruby-core:53157] [Backport #8020] 2042 2043Sat Apr 27 00:39:28 2013 NARUSE, Yui <naruse@ruby-lang.org> 2044 2045 * string.c (rb_str_inspect): refix r40413, on Ruby 1.9 usual character 2046 escape uses hex/Unicode escapes, so fix to use Unicode escape on 2047 Unicode strings and hex on others. [ruby-core:54458] [Bug #8290] 2048 2049Sat Apr 27 00:39:28 2013 Akinori MUSHA <knu@iDaemons.org> 2050 2051 * test/ruby/test_module.rb 2052 (TestModule#test_const_get_invalid_name) 2053 (test_const_defined_invalid_name): Fix expected values. 2054 2055Sat Apr 27 00:39:28 2013 Akinori MUSHA <knu@iDaemons.org> 2056 2057 * string.c (rb_str_inspect): NUL should not be represented as "\0" 2058 when octal digits may follow. [ruby-core:54458] [Bug #8290] 2059 2060Fri Apr 26 23:48:58 2013 Tanaka Akira <akr@fsij.org> 2061 2062 * thread_pthread.c (ruby_init_stack): Add STACK_GROW_DIR_DETECTION. 2063 This fixes a compilation failure while cross-compiling for ARM. 2064 2065Fri Apr 26 23:32:09 2013 Kouhei Sutou <kou@cozmixng.org> 2066 2067 * lib/rss/atom.rb (RSS::Atom::Entry): Fix indent of document comment. 2068 2069Fri Apr 26 23:32:09 2013 Kouhei Sutou <kou@cozmixng.org> 2070 2071 * lib/rss/maker.rb (RSS::Maker): Fix indent of document comment. 2072 2073Fri Apr 26 23:32:09 2013 Zachary Scott <zachary@zacharyscott.net> 2074 2075 * lib/rss/atom.rb: Documentation for RSS::Atom based on a patch by 2076 Michael Denomy 2077 * lib/rss/maker.rb: Documentation for RSS::Maker also by @mdenomy 2078 2079Thu Apr 25 00:40:41 2013 Zachary Scott <zachary@zacharyscott.net> 2080 2081 * numeric.c: Fix wiki link on Float imprecision in overview, patched 2082 by Makoto Kishimoto [Bug #8304] [ruby-dev:47280] 2083 2084Thu Apr 25 00:39:16 2013 Zachary Scott <zachary@zacharyscott.net> 2085 2086 * string.c: Document String#setbyte return value by @gjmurakami-10gen 2087 [Fixes GH-294] 2088 2089Thu Apr 25 00:38:06 2013 Zachary Scott <zachary@zacharyscott.net> 2090 2091 * ext/socket/lib/socket.rb: Doc typos by @vipulnsward [Fixes GH-292] 2092 2093Tue Apr 23 23:06:43 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2094 2095 * vm_method.c (rb_mod_public_method): fix visibility on anonymous 2096 module. set visibility of singleton method, not method in base 2097 class. [ruby-core:54404] [Bug #8284] 2098 2099Tue Apr 23 22:33:16 2013 Shugo Maeda <shugo@ruby-lang.org> 2100 2101 * lib/net/imap.rb (getacl_response): parse the mailbox of an ACL 2102 response correctly. [ruby-core:54365] [Bug #8281] 2103 2104Sun Apr 21 00:14:36 2013 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 2105 2106 * test/ruby/test_require.rb (TestRequire#test_require_nonascii_path): 2107 RUBY_PLATFORM should escape as Regexp, 2108 because RUBY_PLATFORM may contain '.'. 2109 2110Sun Apr 21 00:14:36 2013 Hiroshi Shirosaki <h.shirosaki@gmail.com> 2111 2112 * test/ruby/test_require.rb (TestRequire#test_require_nonascii_path): 2113 fix load path for encoding to run the test as stand-alone. 2114 2115Sun Apr 21 00:14:36 2013 Hiroshi Shirosaki <h.shirosaki@gmail.com> 2116 2117 * load.c (features_index_add): use rb_str_subseq() to specify C string 2118 position properly to fix require non ascii path. 2119 [ruby-core:53733] [Bug #8165] 2120 2121 * test/ruby/test_require.rb (TestRequire#test_require_nonascii_path): 2122 a test for the above. 2123 2124Sun Apr 21 00:13:24 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2125 2126 * load.c (rb_feature_p), vm_core.h (rb_vm_struct): turn 2127 loaded_features_index into st_table. patches by tmm1 (Aman Gupta) 2128 in [ruby-core:53251] and [ruby-core:53274] [Bug #8048] 2129 2130Sun Apr 21 00:13:24 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2131 2132 * load.c (features_index_add_single, rb_feature_p): store single index 2133 as Fixnum to reduce the number of arrays for the indexes. based on 2134 the patch by tmm1 (Aman Gupta) in [ruby-core:53216] [Bug #8048]. 2135 2136Sat Apr 20 23:32:06 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2137 2138 * dir.c (glob_helper): should skip dot directories only for recursion, 2139 but should not if matching to the given pattern. [ruby-core:54387] 2140 [Bug #8283] 2141 2142Sat Apr 20 02:37:33 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2143 2144 * ext/curses/curses.c (Init_curses): fix implementation function, 2145 crmode should be same as cbreak. [ruby-core:54013] [Bug #8222] 2146 2147Sat Apr 20 02:09:46 2013 Martin Bosslet <Martin.Bosslet@gmail.com> 2148 2149 * ext/openssl/ossl_ssl.c: Correct shutdown behavior w.r.t GC. 2150 2151 * test/openssl/test_ssl.rb: Add tests to verify correct behavior. 2152 2153 [Bug #8240] Patch provided by Shugo Maeda. Thanks! 2154 2155Sat Apr 20 01:56:32 2013 Yuki Yugui Sonoda <yugui@google.com> 2156 2157 * thread_pthread.c (ruby_init_stack): Avoid using uninitialized value. 2158 stackaddr and size are not set if get_stack() fails. 2159 2160Sat Apr 20 01:47:31 2013 Yuki Yugui Sonoda <yugui@google.com> 2161 2162 * thread_pthread.c: Fixes wrong scopes of #if USE_SLEEPY_TIMER_THREAD 2163 .. #endif sections. This fixes a build error on NativeClient. 2164 2165Sat Apr 20 01:31:38 2013 NARUSE, Yui <naruse@ruby-lang.org> 2166 2167 * Merge Onigmo 5.13.4 f22cf2e566712cace60d17f84d63119d7c5764ee. 2168 [bug] fix problem with optimization of \z (Issue #16) [Bug #8210] 2169 2170Sat Apr 20 01:18:20 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2171 2172 * vm_insnhelper.c (vm_callee_setup_keyword_arg): non-symbol key is not 2173 a keyword argument, keep it as a positional argument. 2174 2175Sat Apr 20 01:14:08 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2176 2177 * thread.c (rb_mutex_synchronize_m): yield no block params. patch by 2178 splattael (Peter Suschlik) in [ruby-core:53773] [Bug #8097]. 2179 fix GH-266. 2180 2181Sat Apr 20 00:41:10 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2182 2183 * compile.c (iseq_compile_each): append keyword hash to argument array 2184 to splat if needed. [ruby-core:54094] [Bug #8236] 2185 2186Sat Apr 20 00:31:57 2013 Kouhei Sutou <kou@cozmixng.org> 2187 2188 * README.EXT.ja (Data_Wrap_Struct): Remove a description about 2189 orphan argument. Oh, I renamed the argument name without 2190 changing description at r36180... Sorry.... 2191 Patch by Makoto Kishimoto. Thanks!!! [ruby-dev:47269] [Bug #8292] 2192 * README.EXT.ja (Data_Make_Struct): Add a sample code that describes 2193 how it works. 2194 Patch by Makoto Kishimoto. Thanks!!! [ruby-dev:47269] [Bug #8292] 2195 2196Tue Apr 16 01:30:47 2013 Kenta Murata <mrkn@mrkn.jp> 2197 2198 * configure.in: set ac_cv_prog_cxx if CXX is supplied. 2199 2200Tue Apr 16 01:30:47 2013 Kenta Murata <mrkn@mrkn.jp> 2201 2202 * configure.in: Fix c++ compiler auto-selection not only for 2203 Darwin 11.x, but also the other versions of Darwin. 2204 2205Tue Apr 16 00:27:56 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2206 2207 * compile.c (iseq_compile_each): fix of defined? with empty 2208 expression. [ruby-core:53999] [Bug #8220] 2209 2210Mon Apr 15 00:25:00 2013 Tanaka Akira <akr@fsij.org> 2211 2212 * time.c (num_exact): use to_r method only if to_int method is 2213 available. 2214 [ruby-core:53764] [Bug #8173] reported by Hiro Asari. 2215 2216Mon Apr 15 00:22:09 2013 Shota Fukumori <her@sorah.jp> 2217 2218 * ext/objspace/objspace.c: Fix typo in doc. Patch by Sho Hashimoto. 2219 [Bug #8116] [ruby-dev:47177] 2220 2221Mon Apr 15 00:15:04 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2222 2223 * class.c (HAVE_METACLASS_P): should check FL_SINGLETON flag before get 2224 instance variable to get rid of wrong warning about __attached__. 2225 [ruby-core:53839] [Bug #8188] 2226 2227Mon Apr 15 00:13:13 2013 NAKAMURA Usaku <usa@ruby-lang.org> 2228 2229 * win32/file.c (code_page): use cp1252 instead of cp20127 as US-ASCII. 2230 fix [ruby-core:53079] [Bug #7996] 2231 reported and patched by mmeltner (Michael Meltner). 2232 2233Mon Apr 15 00:07:31 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2234 2235 * include/ruby/io.h: undef POSIX compliant names on AIX, which are no 2236 longer needed. patch suggested by edelsohn (David Edelsohn) in 2237 [ruby-core:53815]. [Bug #8174] 2238 2239Mon Apr 15 00:07:31 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2240 2241 * include/ruby/io.h: rename SVR3,4 member names as POSIX compliant, 2242 to get rid of conflict on AIX. [ruby-core:53765] [Bug #8174] 2243 2244Sun Apr 14 23:49:48 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2245 2246 * lib/mkmf.rb (configuration): not include all CFLAGS in CXXFLAGS, to 2247 use different set than C for C++. [ruby-core:45273] [Bug #6504] 2248 2249Sun Apr 14 23:43:06 2013 NARUSE, Yui <naruse@ruby-lang.org> 2250 2251 * ext/fiddle/closure.c (initialize): check mprotect's return value. 2252 If mprotect is failed because of PaX or something, its function call 2253 will cause SEGV. 2254 http://c5664.rubyci.org/~chkbuild/ruby-trunk/log/20130401T210301Z.diff.html.gz 2255 2256Sun Apr 14 23:19:55 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2257 2258 * lib/mkmf.rb (MAIN_DOES_NOTHING): ensure symbols for tests to be 2259 preserved. [ruby-core:53745] [Bug #8169] 2260 2261Sun Apr 14 23:19:55 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2262 2263 * lib/mkmf.rb (MAIN_DOES_NOTHING): force to refer symbols for tests 2264 to be preserved. [ruby-core:53745] [Bug #8169] 2265 2266Sun Apr 14 03:00:51 2013 Naohisa Goto <ngotogenome@gmail.com> 2267 2268 * configure.in (AC_CHECK_HEADERS): atomic.h for Solaris atomic_ops. 2269 2270 * ruby_atomic.h: Skip using Solaris10 atomic_ops on Solaris 9 or 2271 earlier if atomic.h is not available. [ruby-dev:47229] [Bug #8228] 2272 2273Sun Apr 14 02:32:45 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2274 2275 * time.c (GetTimeval): check if already initialized instance. 2276 2277 * time.c (GetNewTimeval): check if newly created instance. 2278 2279 * time.c (time_init_0, time_init_1, time_init_copy, time_mload): must 2280 be newly created instance. [ruby-core:53436] [Bug #8099] 2281 2282Sun Apr 14 02:13:25 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 2283 2284 * vm_eval.c (check_funcall_respond_to): preserve passed_block, which 2285 is modified in vm_call0_body() via vm_call0(), and caused a bug of 2286 rb_check_funcall() by false negative result of rb_block_given_p(). 2287 re-fix [ruby-core:53650] [Bug #8153]. 2288 [ruby-core:53653] [Bug #8154] 2289 2290Fri Apr 12 04:16:30 2013 Naohisa Goto <ngotogenome@gmail.com> 2291 2292 * marshal.c (marshal_dump, marshal_load): workaround for segv on 2293 Intel Solaris compiled with Oracle SolarisStudio 12.3. 2294 Partly revert r38174. [ruby-core:52042] [Bug #7805] 2295 2296Fri Apr 12 04:12:42 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2297 2298 * string.c (rb_str_conv_enc_opts): convert with one converter, instead 2299 of re-creating converters for each buffer expansion. 2300 2301Fri Apr 12 03:48:25 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2302 2303 * lib/mkmf.rb (find_library): fix to format message. 2304 [ruby-core:53568] [Bug #8130] 2305 2306Fri Apr 12 03:44:45 2013 Narihiro Nakamura <authornari@gmail.com> 2307 2308 * proc.c (bm_free): need to clean up the mark flag of a free and 2309 unlinked method entry. [Bug #8100] [ruby-core:53439] 2310 2311Fri Apr 12 02:27:42 2013 NARUSE, Yui <naruse@ruby-lang.org> 2312 2313 * addr2line.c: use more generic type: 2314 * u_char -> unsigned char 2315 * u_short -> unsigned short 2316 * u_int -> unsigned int 2317 * u_long -> unsigned long 2318 * quad_t -> int64_t 2319 * u_quad_t -> uint64_t 2320 2321 * addr2line.c (imax): inline is defined by configure. 2322 2323Fri Apr 12 02:27:42 2013 Naohisa Goto <ngotogenome@gmail.com> 2324 2325 * addr2line.c: quad_t and u_quad_t is not available on Solaris. 2326 __inline is not available with old compilers on Solaris. 2327 [ruby-dev:47229] [Bug #8227] 2328 2329Fri Apr 12 02:27:42 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2330 2331 * addr2line.c (putce): suppress unused return value warning. 2332 2333Fri Apr 12 02:27:42 2013 NARUSE, Yui <naruse@ruby-lang.org> 2334 2335 * addr2line.c (kprintf): added from FreeBSD libstand's printf. 2336 this is consided as async signal safe function. 2337 2338 * addr2line.c (rb_dump_backtrace_with_lines): use kfprintf. 2339 [Bug #8144] [ruby-core:53632] 2340 2341Fri Apr 12 02:27:42 2013 NARUSE, Yui <naruse@ruby-lang.org> 2342 2343 * addr2line.c (rb_dump_backtrace_with_lines): output line at once. 2344 2345Fri Apr 12 02:10:09 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2346 2347 * vm_method.c (rb_export_method): directly override the flag of method 2348 defined in prepending class too, not adding zsuper entry. 2349 [ruby-core:53106] [Bug #8005] 2350 2351Fri Apr 12 01:57:52 2013 Eric Hodel <drbrain@segment7.net> 2352 2353 * lib/fileutils.rb: Revert r34669 which altered the way 2354 metaprogramming in FileUtils occurred. [ruby-trunk - Bug #7958] 2355 2356 * test/fileutils/visibility_tests.rb: Refactored tests of FileUtils 2357 options modules to expose bug found in #7958 2358 * test/fileutils/test_dryrun.rb: ditto. 2359 * test/fileutils/test_nowrite.rb: ditto. 2360 * test/fileutils/test_verbose.rb: ditto. 2361 2362Fri Apr 12 01:28:46 2013 Luis Lavena <luislavena@gmail.com> 2363 2364 * win32/file.c (get_user_from_path): add internal function that retrieves 2365 username from supplied path (refactored). 2366 * win32/file.c (rb_file_expand_path_internal): refactor expansion of user 2367 home to use get_user_from_path and cover dir_string corner cases. 2368 [ruby-core:53168] [Bug #8034] 2369 2370Fri Apr 12 01:28:46 2013 Luis Lavena <luislavena@gmail.com> 2371 2372 * win32/file.c (rb_file_expand_path_internal): Expand home directory when 2373 used as second parameter (dir_string). [ruby-core:53168] [Bug #8034] 2374 * test/ruby/test_file_exhaustive.rb: add test to verify. 2375 2376Mon Apr 8 00:10:59 2013 Narihiro Nakamura <authornari@gmail.com> 2377 2378 * gc.c: Fix unlimited memory growth with large values of 2379 RUBY_FREE_MIN. patched by tmm1(Aman Gupta). 2380 [Bug #8095] [ruby-core:53405] 2381 2382Sun Apr 7 22:27:12 2013 Narihiro Nakamura <authornari@gmail.com> 2383 2384 * gc.c: Avoid unnecessary heap growth. patched by tmm1(Aman Gupta). 2385 [Bug #8093] [ruby-core:53393] 2386 2387Sun Apr 7 03:01:49 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2388 2389 * parse.y (simple_re_meta): escape all closing characters, not only 2390 round parenthesis. [ruby-core:53578] [Bug #8133] 2391 2392Sun Apr 7 02:54:40 2013 Narihiro Nakamura <authornari@gmail.com> 2393 2394 * gc.c: Improve accuracy of objspace_live_num() and 2395 allocated/freed counters. patched by tmm1(Aman Gupta). 2396 [Bug #8092] [ruby-core:53392] 2397 2398Fri Apr 5 00:54:08 2013 NARUSE, Yui <naruse@ruby-lang.org> 2399 2400 * ext/openssl/ossl_bn.c (ossl_bn_initialize): fix can't create from bn. 2401 2402Thu Apr 4 02:27:12 2013 Tanaka Akira <akr@fsij.org> 2403 2404 * lib/resolv-replace.rb (TCPSocket#initialize): resolve the 3rd 2405 argument only if non-nil value is given. 2406 [ruby-dev:47150] [ruby-trunk - Bug #8054] reported and analyzed by 2407 mrkn. 2408 2409Thu Apr 4 02:24:59 2013 NARUSE, Yui <naruse@ruby-lang.org> 2410 2411 * Merge Onigmo d4bad41e16e3eccd97ccce6f1f96712e557c4518. 2412 fix lookbehind assertion fails with /m mode enabled. [Bug #8023] 2413 fix \Z matches where it shouldn't. [Bug #8001] 2414 2415Thu Apr 4 02:11:30 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2416 2417 * marshal.c (w_extended): check for prepended object. 2418 [ruby-core:53206] [Bug #8043] 2419 2420Wed Mar 27 03:02:30 2013 NARUSE, Yui <naruse@ruby-lang.org> 2421 2422 * vm_exec.c: Correct predefined macro name. This typo is introduced by 2423 r36534 and should be backported to ruby_2_0_0. 2424 2425Wed Mar 27 02:58:44 2013 NARUSE, Yui <naruse@ruby-lang.org> 2426 2427 * Merge Onigmo 0fe387da2fee089254f6b04990541c731a26757f 2428 v5.13.3 [Bug#7972] [Bug#7974] 2429 2430Wed Mar 27 02:53:53 2013 Kouhei Sutou <kou@cozmixng.org> 2431 2432 * lib/rexml/document.rb: move entity_expansion_text_limit accessor to ... 2433 * lib/rexml/rexml.rb: ... here to make rexml/text independent from 2434 REXML::Document. It causes circular require. 2435 * lib/rexml/document.rb (REXML::Document.entity_expansion_text_limit): 2436 deprecated. 2437 * lib/rexml/document.rb (REXML::Document.entity_expansion_text_limit=): 2438 deprecated. 2439 * lib/rexml/text.rb: add missing require "rexml/rexml" for 2440 REXML.entity_expansion_text_limit. 2441 Reported by Robert Ulejczyk. Thanks!!! [ruby-core:52895] [Bug #7961] 2442 2443Wed Mar 27 02:50:45 2013 Shugo Maeda <shugo@ruby-lang.org> 2444 2445 * object.c (Init_Object): remove Module#used, which has been 2446 introduced in Ruby 2.0 by mistake. [Bug #7916] [ruby-core:52719] 2447 2448Mon Mar 25 02:02:15 2013 Tadayoshi Funaba <tadf@dotrb.org> 2449 2450 * complex.c: edited rdoc. 2451 * rational.c: ditto. 2452 2453Mon Mar 25 02:02:15 2013 Tadayoshi Funaba <tadf@dotrb.org> 2454 2455 * complex.c: described syntax of string form. 2456 * rational.c: ditto. 2457 2458Mon Mar 25 01:26:26 2013 Zachary Scott <zachary@zacharyscott.net> 2459 2460 * lib/webrick/httpproxy.rb: Fix typos in HTTPProxyServer [Bug #8013] 2461 Patch by Nobuhiro IMAI [ruby-core:53127] 2462 2463Mon Mar 25 01:09:48 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2464 2465 * compile.c (iseq_compile_each): pass keyword arguments to zsuper, 2466 with current values. [ruby-core:53114] [Bug #8008] 2467 2468Mon Mar 25 01:05:15 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2469 2470 * ext/objspace/objspace.c (count_nodes): count also newly added nodes, 2471 and fix key for unknown node. patch by tmm1 (Aman Gupta) in 2472 [ruby-core:53130] [Bug #8014] 2473 2474Mon Mar 25 01:00:03 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2475 2476 * class.c (rb_prepend_module): check redefinition of built-in optimized 2477 methods. [ruby-dev:47124] [Bug #7983] 2478 2479 * vm.c (rb_vm_check_redefinition_by_prepend): ditto. 2480 2481Mon Mar 25 00:51:57 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2482 2483 * Makefile.in (miniruby, ruby): move MAINLIBC because linker arguments 2484 must appear after object files with newer versions of gcc. patch by 2485 tmm1 (Aman Gupta) in [ruby-core:53121] [Bug #8009] 2486 2487Mon Mar 25 00:47:04 2013 Koichi Sasada <ko1@atdot.net> 2488 2489 * iseq.c (iseq_data_to_ary): fix condition. 2490 r34303 introduces a bug to avoid all line information from 2491 a result of ISeq#to_a. This is a regression problem from 2.0.0p0. 2492 2493 * test/ruby/test_iseq.rb: add a test of lines after ISeq#to_a. 2494 2495Mon Mar 25 00:41:23 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2496 2497 * tool/mkconfig.rb: reconstruct comma separated list values. a 2498 command line to Windows batch file is split not only by spaces 2499 and equal signs but also by commas and semicolons. 2500 2501Wed Mar 20 23:21:14 2013 Hiroshi Shirosaki <h.shirosaki@gmail.com> 2502 2503 * test/rubygems/test_gem_installer.rb (test_install_extension_flat): 2504 use ruby in build directory in case ruby is not installed. 2505 [ruby-core:53265] [Bug #8058] 2506 2507Wed Mar 20 23:17:33 2013 NAKAMURA Usaku <usa@ruby-lang.org> 2508 2509 * test/win32ole/test_err_in_callback.rb (TestErrInCallBack#setup): 2510 allow using different root for source and build directories. 2511 this may fixes a minor problem of r39834. 2512 2513Wed Mar 20 23:17:33 2013 NAKAMURA Usaku <usa@ruby-lang.org> 2514 2515 * test/win32ole/test_err_in_callback.rb (TestErrInCallBack#setup): use 2516 relative path to get rid of "too long commandline" error. 2517 2518Wed Mar 20 23:17:33 2013 NAKAMURA Usaku <usa@ruby-lang.org> 2519 2520 * test/win32ole/test_err_in_callback.rb 2521 (TestErrInCallBack#test_err_in_callback): shouldn't create a file in 2522 the top of build directory. 2523 2524Wed Mar 20 23:08:40 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2525 2526 * include/ruby/missing.h: removed __linux__. it's unnecessary. 2527 2528Wed Mar 20 23:03:27 2013 Tanaka Akira <akr@fsij.org> 2529 2530 * configure.in: move OS specific header/function knowledge before 2531 automatic header tests. 2532 2533Wed Mar 20 23:01:42 2013 Tanaka Akira <akr@fsij.org> 2534 2535 * configure.in: move header files check to the beginning of 2536 "header and library section". 2537 test rlim_t with sys/types.h and sys/time.h for MirOS BSD. 2538 sys/types.h and sys/time.h is gurded by #ifdef and the above move 2539 is required for this change. 2540 2541Wed Mar 20 22:57:27 2013 Tanaka Akira <akr@fsij.org> 2542 2543 * configure.in: move the test for -march=i486 just after 2544 RUBY_UNIVERSAL_ARCH/RUBY_DEFAULT_ARCH. 2545 2546Wed Mar 20 22:56:07 2013 Tanaka Akira <akr@fsij.org> 2547 2548 * configure.in: change CFLAGS temporally to test 2549 ARCH_FLAG="-march=i486". 2550 2551Wed Mar 20 22:54:33 2013 Tanaka Akira <akr@fsij.org> 2552 2553 * configure.in: don't define ARCH_FLAG="-march=i486" if it causes 2554 compilation problem. 2555 2556Wed Mar 20 22:36:41 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2557 2558 * thread.c: disabled _FORTIFY_SOURCE for avoid to hit glibc bug. 2559 [Bug #8080] [ruby-core:53349] 2560 * test/ruby/test_io.rb (TestIO#test_io_select_with_many_files): 2561 test for the above. 2562 2563Wed Mar 20 22:34:52 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2564 2565 * include/ruby/missing.h (__syscall): moved to... 2566 * io.c: here. because __syscall() is only used from io.c. 2567 2568 * include/ruby/missing.h: move "#include <sys/type.h>" to .... 2569 * include/ruby/intern.h: here. because it was introduced for 2570 fixing NFDBITS issue. [ruby-core:05179]. 2571 2572Wed Mar 20 22:33:26 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2573 2574 * include/ruby/missing.h (struct timespec): include <sys/time.h> 2575 2576Wed Mar 20 22:33:26 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2577 2578 * configure.in: check struct timeval exist or not. 2579 * include/ruby/missing.h (struct timeval): check HAVE_STRUCT_TIMEVAL 2580 properly. and don't include sys/time.h if struct timeval exist. 2581 2582 * file.c: include sys/time.h explicitly. 2583 * random.c: ditto. 2584 * thread_pthread.c: ditto. 2585 * time.c: ditto. 2586 * ext/date/date_strftime.c: ditto. 2587 2588Mon Mar 18 00:12:28 2013 Eric Hodel <drbrain@segment7.net> 2589 2590 * lib/rubygems/commands/setup_command.rb: Don't delete non-rubygems 2591 files when installing RubyGems. 2592 * test/rubygems/test_gem_commands_setup_command.rb: Test for the 2593 above. 2594 2595 * lib/rubygems/ext/ext_conf_builder.rb: Use full path to siteconf.rb 2596 in case the extconf.rb changes directories (like memcached does). 2597 2598 * lib/rubygems/package.rb: Remove double slash from path. 2599 * test/rubygems/test_gem_package.rb: Test for the above. 2600 * test/rubygems/test_gem_package_old.rb: ditto. 2601 2602 * lib/rubygems/source.rb: Revert automatic HTTPS upgrade 2603 * lib/rubygems/spec_fetcher.rb: ditto. 2604 * test/rubygems/test_gem_remote_fetcher.rb: ditto. 2605 * test/rubygems/test_gem_source.rb: ditto. 2606 * test/rubygems/test_gem_spec_fetcher.rb: ditto. 2607 2608Mon Mar 18 00:11:33 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2609 2610 * lib/rubygems/ext/ext_conf_builder.rb (Gem::Ext::ExtConfBuilder.build): 2611 it is impossible to predict which file will be installed to where, 2612 by the arguments, so use intermediate destination directory always. 2613 [Bug #7698] 2614 2615Mon Mar 18 00:11:33 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2616 2617 * lib/rubygems/ext/ext_conf_builder.rb (Gem::Ext::ExtConfBuilder.build): 2618 it is impossible to predict which file will be installed to where, 2619 by the arguments, so use intermediate destination directory always. 2620 [Bug #7698] 2621 2622Mon Mar 18 00:05:50 2013 Eric Hodel <drbrain@segment7.net> 2623 2624 * lib/rubygems/commands/setup_command.rb: Install .pem files. 2625 * test/rubygems/test_gem_commands_setup_command.rb: Test for the 2626 above. 2627 2628 * lib/rubygems/spec_fetcher.rb: Test HTTPS upgrade with URI::HTTPS, 2629 not URI::HTTP. Fixes bug in automatic HTTPS upgrade. 2630 * test/rubygems/test_gem_spec_fetcher.rb: Test for the above. 2631 2632 * lib/rubygems.rb: Version 2.0.2 2633 2634 * lib/rubygems/test_utilities.rb: Ensure scheme and uri class match. 2635 2636Mon Mar 18 00:03:27 2013 Eric Hodel <drbrain@segment7.net> 2637 2638 * test/rubygems/test_require.rb: Fix tests when 'a.rb' exists. 2639 [ruby-trunk - Bug #7749] 2640 2641Mon Mar 18 00:02:27 2013 Eric Hodel <drbrain@segment7.net> 2642 2643 * lib/rubygems.rb: Allow specification of directory permissions. 2644 [ruby-trunk - Bug #7713] 2645 * test/rubygems/test_gem.rb: Test for the above. 2646 2647Mon Mar 18 00:00:32 2013 Eric Hodel <drbrain@segment7.net> 2648 2649 * test/rubygems/test_gem_spec_fetcher.rb: Removed unused variable. 2650 2651Mon Mar 18 00:00:32 2013 Eric Hodel <drbrain@segment7.net> 2652 2653 * lib/rubygems/commands/query_command.rb: Only fetch remote specs when 2654 showing details. [ruby-trunk - Bug #8019] RubyGems bug #487 2655 * lib/rubygems/remote_fetcher.rb: ditto. 2656 * lib/rubygems/security/policy.rb: ditto. 2657 * test/rubygems/test_gem_commands_query_command.rb: Test for the 2658 above. 2659 2660 * lib/rubygems/security.rb: Make OpenSSL optional for RubyGems. 2661 * lib/rubygems/commands/cert_command.rb: ditto. 2662 2663 * lib/rubygems/config_file.rb: Display file with YAML error, not 2664 ~/.gemrc 2665 2666 * lib/rubygems/remote_fetcher.rb: Only create gem subdirectories when 2667 installing gems. 2668 * lib/rubygems/dependency_resolver.rb: ditto. 2669 * lib/rubygems/test_utilities.rb: ditto. 2670 * test/rubygems/test_gem_commands_fetch_command.rb: Test for the 2671 above. 2672 2673 * lib/rubygems/spec_fetcher.rb: Only try to upgrade 2674 http://rubygems.org to HTTPS 2675 * test/rubygems/test_gem_spec_fetcher.rb: Test for the above. 2676 2677 * lib/rubygems.rb: Update win_platform? check for JRuby compatibility. 2678 2679 * test/rubygems/test_gem_installer.rb: Update for Ruby 1.9.2 2680 compatibility 2681 2682Sun Mar 17 23:53:19 2013 Eric Hodel <drbrain@segment7.net> 2683 2684 * lib/rubygems.rb: Bump version to 2.0.1 for upcoming bugfix release 2685 2686 * lib/rubygems/ext/ext_conf_builder.rb: Restore ruby 1.8 compatibility 2687 for [Bug #7698] 2688 * test/rubygems/test_gem_installer.rb: Ditto. 2689 2690 * lib/rubygems/package.rb: Restore ruby 1.8 compatibility. 2691 2692 * test/rubygems/test_gem_dependency_installer.rb: Fix warnings 2693 2694Sun Mar 17 23:36:05 2013 Eric Hodel <drbrain@segment7.net> 2695 2696 * lib/rubygems/available_set.rb: Undent for style 2697 2698 * lib/rubygems/dependency_installer.rb: Pick latest prerelease gem to 2699 install. Fixes RubyGems bug #468. 2700 * test/rubygems/test_gem_dependency_installer.rb: Test for the above. 2701 2702 * lib/rubygems/dependency_installer.rb: Don't display "Done installing 2703 documentation" if documentation will not be installed. 2704 * lib/rubygems/rdoc.rb: ditto 2705 2706 * lib/rubygems/dependency_list.rb: Use Array#concat for Ruby 1.x 2707 performance. 2708 2709 * lib/rubygems/installer.rb: Use formatted program name when comparing 2710 executables. RubyGems pull request #471 2711 * test/rubygems/test_gem_installer.rb: Test for the above. 2712 2713 * lib/rubygems/package.rb: Use more explicit feature check to work 2714 around JRuby bug #552 2715 2716 * lib/rubygems/ssl_certs/GeoTrust_Global_CA.pem: Added GeoTrust root 2717 certificate. 2718 2719 * test/rubygems/test_gem_source_list.rb: Use "example" instead of real 2720 hostname 2721 2722Sun Mar 17 23:28:44 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2723 2724 * lib/rubygems/ext/ext_conf_builder.rb (Gem::Ext::ExtConfBuilder.build): 2725 clear DESTDIR so RUBYARCHDIR and RUBYLIBDIR are not be overrdden. 2726 [Bug #7698] 2727 2728Sun Mar 17 23:26:31 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2729 2730 * lib/rubygems/ext/ext_conf_builder.rb (Gem::Ext::ExtConfBuilder.build): 2731 fix for unusal cases again. install to a temporary directory once 2732 and move instaled files to the destination directory, if it is same 2733 as the current directory. [Bug #7698] 2734 2735Sun Mar 17 23:22:22 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2736 2737 * lib/rubygems/ext/ext_conf_builder.rb 2738 (Gem::Ext::ExtConfBuilder.hack_for_obsolete_style_gems): remove 2739 circular dependencies in install-so too. [ruby-core:52882] 2740 [Bug #7698] 2741 2742Sun Mar 17 23:19:34 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2743 2744 * lib/rubygems/ext/ext_conf_builder.rb (Gem::Ext::ExtConfBuilder.build): 2745 revert use of temporary directory for build, to work some buggy 2746 extconf.rb which cannot build outside the source directory. 2747 [ruby-core:53056] [Bug #7698] 2748 2749Sun Mar 17 23:11:35 2013 Eric Hodel <drbrain@segment7.net> 2750 2751 * lib/rubygems/ext/builder.rb: Fix incompatibilities when installing 2752 extensions. Patch by Nobu. 2753 [ruby-trunk - Bug #7698] [ruby-trunk - Bug #7971] 2754 * lib/rubygems/ext/ext_conf_builder.rb: ditto. 2755 * lib/rubygems/installer.rb: ditto. 2756 * test/rubygems/test_gem_ext_ext_conf_builder.rb: Test for the above. 2757 * test/rubygems/test_gem_installer.rb: ditto. 2758 2759 * lib/rubygems/commands/sources_command.rb: Prefer HTTPS over HTTP. 2760 * lib/rubygems/defaults.rb: ditto 2761 * lib/rubygems/dependency_resolver.rb: Ditto. 2762 * lib/rubygems/source.rb: ditto. 2763 * lib/rubygems/spec_fetcher.rb: ditto. 2764 * lib/rubygems/specification.rb: ditto. 2765 * lib/rubygems/test_utilities.rb: ditto. 2766 * test/rubygems/test_gem.rb: Test for the above. 2767 * test/rubygems/test_gem_commands_sources_command.rb: ditto. 2768 * test/rubygems/test_gem_dependency_resolver_api_set.rb: ditto. 2769 * test/rubygems/test_gem_remote_fetcher.rb: ditto. 2770 * test/rubygems/test_gem_source.rb: ditto. 2771 * test/rubygems/test_gem_spec_fetcher.rb: ditto. 2772 2773Tue Mar 12 00:56:19 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2774 2775 * test/thread/test_queue.rb (TestQueue#test_thr_kill): reduce 2776 iterations from 2000 to 250. When running on uniprocessor 2777 systems, every th.kill needs TIME_QUANTUM_USEC time (i.e. 2778 100msec on posix systems). Because, "r.read 1" is 3 steps 2779 operations that 1) release GVL 2) read 3) acquire gvl and 2780 (1) invoke context switch to main thread. and then, main 2781 thread's th.kill resume (1), but not (2). Thus read interrupt 2782 need TIME_QUANTUM_USEC. Then maximum iteration is 30sec/100msec 2783 = 300. 2784 2785Tue Mar 12 00:53:34 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2786 2787 * process.c (setup_communication_pipe): remove unused function. 2788 it was unintentionally added r39683. 2789 2790Tue Mar 12 00:53:34 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2791 2792 * thread_pthread.c (ARRAY_SIZE): new. 2793 * thread_pthread.c (gvl_acquire_common): use low priority 2794 notification for avoiding timer thread interval confusion. 2795 If we use timer_thread_pipe[1], every gvl_yield() request 2796 one more gvl_yield(). It lead to thread starvation. 2797 [Bug #7999] [ruby-core:53095] 2798 * thread_pthread.c (rb_reserved_fd_p): adds timer_thread_pipe_low 2799 to reserved fds. 2800 2801Tue Mar 12 00:53:34 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2802 2803 * thread_pthread.c (rb_thread_wakeup_timer_thread_fd): add fd 2804 argument and remove hardcoded dependency of timer_thread_pipe[1]. 2805 * thread_pthread.c (consume_communication_pipe): add fd argument. 2806 * thread_pthread.c (close_communication_pipe): ditto. 2807 2808 * thread_pthread.c (timer_thread_sleep): adjust the above changes. 2809 2810 * thread_pthread.c (setup_communication_pipe_internal): factor 2811 out pipe initialize logic. 2812 2813Tue Mar 12 00:53:34 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2814 2815 * thread_pthread.c (rb_thread_create_timer_thread): factor out 2816 creating communication pipe logic into separate function. 2817 * thread_pthread.c (setup_communication_pipe): new helper function. 2818 * thread_pthread.c (set_nonblock): moves a definition before 2819 setup_communication_pipe. 2820 2821Tue Mar 12 00:53:34 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2822 2823 * thread_pthread.c (consume_communication_pipe): retry when 2824 read returned CCP_READ_BUFF_SIZE. 2825 2826Tue Mar 12 00:53:34 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2827 2828 * thread_pthread.c (set_nonblock): new helper function for set 2829 O_NONBLOCK. 2830 * thread_pthread.c (rb_thread_create_timer_thread): set O_NONBLOCK 2831 to timer_thread_pipe[0] too. 2832 2833Tue Mar 12 00:51:23 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2834 2835 * thread_pthread.c (timer_thread_sleep): use poll() instead of 2836 select(). select doesn't work if timer_thread_pipe[0] is 2837 greater than FD_SETSIZE. 2838 * thread_pthread.c (USE_SLEEPY_TIMER_THREAD): add a dependency 2839 against poll. 2840 2841Tue Mar 12 00:51:23 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2842 2843 * thread_pthread.c (USE_SLEEPY_TIMER_THREAD): use more accurate 2844 ifdef condtions. 2845 2846Mon Mar 11 01:16:12 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2847 2848 * configure.in (unexpand_shvar): get rid of non-portable shell 2849 behavior on OpenBSD, so no extra quotes. [Bug #7959] 2850 2851Mon Mar 11 01:12:50 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2852 2853 * parse.y (IS_LABEL_POSSIBLE): allow labels for keyword arguments just 2854 after method definition without a parenthesis. [ruby-core:52820] 2855 [Bug #7942] 2856 2857Mon Mar 11 01:09:23 2013 Zachary Scott <zachary@zacharyscott.net> 2858 2859 * error.c: clarify reason for sleep in SignalException example 2860 2861Mon Mar 11 01:09:23 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2862 2863 * error.c: clarify a document of SignalException. Process.kill() 2864 doesn't have any guarantee when signal will be delivered. 2865 [Bug #7951] [ruby-core:52864] 2866 2867Mon Mar 11 01:04:54 2013 NARUSE, Yui <naruse@ruby-lang.org> 2868 2869 * string.c (str_byte_substr): don't set coderange if it's not known. 2870 [Bug #7954] [ruby-dev:47108] 2871 2872Mon Mar 11 00:58:30 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2873 2874 * common.mk (realclean-local): miniprelude.c is made by srcs, so it 2875 should not removed by distclean but by realclean. [Bug #6807] 2876 2877Mon Mar 11 00:54:30 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2878 2879 * enc/depend (ARFLAGS): VisualC++ linker does not allow spaces between 2880 output option and the output file name. [Bug #7950] 2881 2882 * enc/depend (RANLIB): set default command to do nothing, or make the 2883 entire line a label on Windows. 2884 2885Mon Mar 11 00:50:21 2013 Zachary Scott <zachary@zacharyscott.net> 2886 2887 * thread.c: Document Thread::new, clean up ::fork and mention calling 2888 super if subclassing Thread 2889 2890Mon Mar 11 00:47:47 2013 Akinori MUSHA <knu@iDaemons.org> 2891 2892 * configure.in (unexpand_shvar): Use the numeric comparison 2893 operator instead of '==' which is a ksh extention. [Bug #7941] 2894 2895Sun Mar 10 00:01:07 2013 Tadayoshi Funaba <tadf@dotrb.org> 2896 2897 * ext/date/date_core.c: [ruby-core:52303] 2898 2899Sat Mar 9 23:55:42 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2900 2901 * random.c (rb_random_ulong_limited): limit is inclusive, but generic 2902 rand method should return a number less than it, so increase for the 2903 difference. [ruby-core:52779] [Bug #7935] 2904 2905Sat Mar 9 23:51:58 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2906 2907 * random.c (rb_random_ulong_limited): fix error message for negative 2908 value. [ruby-dev:47061] [Bug #7903] 2909 2910Sat Mar 9 23:41:11 2013 Zachary Scott <zachary@zacharyscott.net> 2911 2912 * thread.c: Document ThreadGroup::Default 2913 2914Sat Mar 9 23:31:46 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2915 2916 * vm_insnhelper.c (vm_call_method): block level control frame does not 2917 have method entry, so obtain the method entry from method top-level 2918 control frame to be compared with refined method entry. 2919 [ruby-core:52750] [Bug #7925] 2920 2921Sat Mar 9 23:15:06 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 2922 2923 * signal.c (sigsegv): suppress unused result warning. Because 2924 write(2) is marked __warn_unused_result__ on Linux glibc. 2925 2926Sat Mar 9 23:08:43 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2927 2928 * compile.c (iseq_set_arguments): no keyword check if any keyword rest 2929 argument exists, even unnamed. [ruby-core:52744] [Bug #7922] 2930 2931Sat Mar 9 22:50:28 2013 Zachary Scott <zachary@zacharyscott.net> 2932 2933 * array.c: Document #<=> return values and formatting 2934 * bignum.c: ditto 2935 * file.c: ditto 2936 * object.c: ditto 2937 * numeric.c: ditto 2938 * rational.c: ditto 2939 * string.c: ditto 2940 * time.c: ditto 2941 2942Sat Mar 9 22:45:01 2013 Zachary Scott <zachary@zacharyscott.net> 2943 2944 * array.c (rb_ary_diff, rb_ary_and, rb_ary_or): Document return order 2945 [RubySpec #7803] 2946 2947Sat Mar 9 22:38:26 2013 Zachary Scott <zachary@zacharyscott.net> 2948 2949 * object.c (rb_obj_comp): Documenting Object#<=> return values 2950 Patch by Stefan Rusterholz 2951 2952Sat Mar 9 22:35:22 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2953 2954 * dir.c (file_s_fnmatch, fnmatch_brace): encoding-incompatible pattern 2955 and string do not match, instead of exception. [ruby-dev:47069] 2956 [Bug #7911] 2957 2958Sat Mar 9 22:18:43 2013 NARUSE, Yui <naruse@ruby-lang.org> 2959 2960 * test/test_rbconfig.rb (TestRbConfig): fix r39372. 2961 It must see RbConfig::CONFIG instead of CONFIG. 2962 2963Sat Mar 9 22:18:43 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2964 2965 * test/test_rbconfig.rb (TestRbConfig): skip user defined values by 2966 configuration options. [Bug #7902] 2967 2968Sat Mar 9 22:07:53 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 2969 2970 * lib/rexml/document.rb (REXML::Document.entity_expansion_text_limit): 2971 fix a typo in comment in r39384. 2972 2973Sat Mar 9 21:52:19 2013 Zachary Scott <zachary@zacharyscott.net> 2974 2975 * numeric.c: Examples and formatting for Numeric and Float 2976 Based on a patch by Zach Morek and Oren K of newhaven.rb 2977 [Github documenting-ruby/ruby#5] 2978 2979Sat Mar 9 21:46:41 2013 Eric Hodel <drbrain@segment7.net> 2980 2981 * doc/globals.rdoc: Document what setting $DEBUG does. 2982 2983 * doc/globals.rdoc: Added pointer to $-d for full documentation. 2984 2985Sat Mar 9 21:45:38 2013 Eric Hodel <drbrain@segment7.net> 2986 2987 * doc/globals.rdoc: Document what setting $VERBOSE does. [Bug #7899] 2988 2989 * doc/globals.rdoc: Added pointer to $-w and $-v for full 2990 documentation. 2991 2992Sat Mar 9 21:29:45 2013 Naohisa Goto <ngotogenome@gmail.com> 2993 2994 * signal.c (ruby_abort): fix typo in r39354 [Bug #5014] 2995 2996Sat Mar 9 21:29:45 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 2997 2998 * signal.c (check_stack_overflow): extract duplicated code and get rid 2999 of declaration-after-statement. [Bug #5014] 3000 3001Sat Mar 9 21:29:45 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 3002 3003 * signal.c (sigsegv): avoid to use async signal unsafe functions 3004 when nested sigsegv is happen. 3005 [Bug #5014] [ruby-dev:44082] 3006 3007Sat Mar 9 21:25:45 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 3008 3009 * file.c (rb_group_member): added an error check. SUS says, 3010 getgroups(small_value) may return EINVAL. 3011 3012Sat Mar 9 21:23:36 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 3013 3014 * process.c (RB_MAX_GROUPS): moved to 3015 * internal.h (RB_MAX_GROUPS): here. 3016 3017 * file.c (rb_group_member): use RB_MAX_GROUPS instead of 3018 RUBY_GROUP_MAX. They are the same. 3019 3020Sat Mar 9 21:15:39 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 3021 3022 * file.c (access_internal): removed. 3023 * file.c (rb_file_readable_real): use access() instead of 3024 access_internal(). 3025 * file.c (rb_file_writable_real): ditto. 3026 * file.c (rb_file_executable_real): ditto. 3027 3028Wed Mar 6 22:13:38 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 3029 3030merge revision(s) 39297: [Backport #8032] 3031 3032 * tool/mkconfig.rb: clear exec_prefix which may differ from prefix, 3033 before expanding rubyarchdir to remove prefix. 3034 3035Tue Mar 5 01:20:39 2013 NARUSE, Yui <naruse@ruby-lang.org> 3036 3037 * tool/merger.rb: add interaction when only ChangeLog is modified. 3038 3039Tue Mar 5 01:03:16 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 3040 3041 * file.c (rb_group_member): get rid of NGROUPS dependency. 3042 [Bug #7886] [ruby-core:52537] 3043 3044Tue Mar 5 00:16:56 2013 Eric Hodel <drbrain@segment7.net> 3045 3046 * ext/openssl/ossl.c (class OpenSSL): Use only inner parenthesis in 3047 create_extension examples. 3048 3049Tue Mar 5 00:16:56 2013 Eric Hodel <drbrain@segment7.net> 3050 3051 * ext/openssl/ossl.c (class OpenSSL): Fixed ExtensionFactory example. 3052 Patch by Richard Bradley. [ruby-trunk - Bug #7551] 3053 3054Mon Mar 4 23:53:18 2013 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 3055 3056 (merge r39291) 3057 * configure.in (opt-dir): remove debug print. 3058 3059Mon Mar 4 23:42:34 2013 Zachary Scott <zachary@zacharyscott.net> 3060 3061 * ext/psych/lib/psych/y.rb: Document Kernel#y by Adam Stankiewicz 3062 [Github tenderlove/psych#127] 3063 3064Mon Mar 4 23:37:14 2013 NARUSE, Yui <naruse@ruby-lang.org> 3065 3066 * tool/mkconfig.rb: remove prefix from rubyarchdir. 3067 r39267 expands variables, it changes expansion timing, 3068 breaks RbConfig::CONFIG["includedir"] and building 3069 extension libraries with installed ruby. 3070 3071Sun Mar 3 02:45:13 2013 Kazuki Tsujimoto <kazuki@callcc.net> 3072 3073 * vm.c (ENV_IN_HEAP_P): fix off-by-one error. 3074 3075Sun Mar 3 02:39:01 2013 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 3076 3077 * test/ruby/test_thread.rb: fixed typo 3078 patched by Hiroki Matsue via https://github.com/ruby/ruby/pull/248 3079 3080Sun Mar 3 02:22:56 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3081 3082 * class.c (include_modules_at): detect cyclic prepend with original 3083 method table. [ruby-core:52205] [Bug #7841] 3084 3085Sun Mar 3 02:16:24 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3086 3087 * vm_method.c: call method_removed hook on called class, not on 3088 prepending iclass. [ruby-core:52207] [Bug #7843] 3089 3090Sun Mar 3 01:57:50 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3091 3092 * configure.in (warnflags): disable -Werror by default unless 3093 development. [ruby-core:52131] [Bug #7830] 3094 3095Wed Feb 27 00:20:43 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 3096 3097 * test/ruby/test_process.rb (test_setsid): Added a workaround for 3098 MacOS X. Patch by nagachika. [Bug #7826] [ruby-core:52126] 3099 3100Sun Feb 24 15:16:00 2013 Eric Hodel <drbrain@segment7.net> 3101 3102 * lib/net/http.rb: Removed duplicate Accept-Encoding in Net::HTTP#get. 3103 [ruby-trunk - Bug #7924] 3104 * test/net/http/test_http.rb: Test for the above. 3105 3106Wed Feb 20 14:23:00 2013 Zachary Scott <zachary@zacharyscott.net> 3107 3108 * thread.c: Grammar for #backtrace_locations and ::handle_interrupt 3109 3110Fri Feb 22 11:10:00 2013 Zachary Scott <zachary@zacharyscott.net> 3111 3112 * enum.c (Enumerable#chunk: Improved examples, grammar, and formatting 3113 Patch by Dan Bernier and Rich Bruchal of newhaven.rb 3114 [Backport #7926] 3115 3116Fri Feb 22 02:33:00 2013 Zachary Scott <zachary@zacharyscott.net> 3117 3118 * lib/abbrev.rb: Add words parameter to Abbrev::abbrev 3119 Patch by Devin Weaver [Backport #7927] 3120 3121Wed Feb 20 13:37:00 2013 Zachary Scott <zachary@zacharyscott.net> 3122 3123 * ext/pty/pty.c: Documentation for the PTY module [Backport #7928] 3124 3125Wed Feb 20 12:18:00 2013 Zachary Scott <zachary@zacharyscott.net> 3126 3127 * object.c: Document Data class by Matthew Mongeau [Backport #7929] 3128 3129Wed Feb 20 11:50:00 2013 Zachary Scott <zachary@zacharyscott.net> 3130 3131 * lib/mutex_m.rb: Add rdoc for Mutex_m module [Backport #7930] 3132 3133Tue Feb 19 12:30:00 2013 Zachary Scott <zachary@zacharyscott.net> 3134 3135 * object.c: rdoc formatting for Kernel#Array() [Backport #7931] 3136 * array.c: Add rdoc for Array() method to Creating Arrays section 3137 3138Sat Feb 23 16:51:00 2013 Zachary Scott <zachary@zacharyscott.net> 3139 3140 * thread.c: Documentation for Thread#backtrace_locations 3141 [Backport #7932] 3142 3143Sat Feb 23 16:05:00 2013 Zachary Scott <zachary@zacharyscott.net> 3144 3145 * vm.c: Typo in ObjectSpace::WeakMap overview [Backport #7933] 3146 3147Sat Feb 23 16:00:00 2013 Zachary Scott <zachary@zacharyscott.net> 3148 3149 * thread.c: Improved rdoc for ::handle_interrupt, ::pending_interrupt? 3150 and #pending_interrupt? [Backport #7934] 3151 3152Sat Feb 23 14:19:51 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3153 3154 * include/ruby/ruby.h (HAVE_RB_SCAN_ARGS_OPTIONAL_HASH): for 3155 rb_scan_args() optional hash feature. [Bug #7861] 3156 3157Sat Feb 23 13:03:22 2013 Akinori MUSHA <knu@iDaemons.org> 3158 3159 * lib/ipaddr.rb (IPAddr#in6_addr): Fix a typo with the closing 3160 parenthesis. 3161 3162Sat Feb 23 13:03:22 2013 Akinori MUSHA <knu@iDaemons.org> 3163 3164 * lib/ipaddr.rb (IPAddr#in6_addr): Fix the parser so that it can 3165 recognize IPv6 addresses with only one edge 16-bit piece 3166 compressed, like [::2:3:4:5:6:7:8] or [1:2:3:4:5:6:7::]. 3167 [Bug #7477] 3168 3169Sat Feb 23 13:00:49 2013 Akinori MUSHA <knu@iDaemons.org> 3170 3171 * configure.in (LIBRUBY_DLDFLAGS): Fix a bug where --with-opt-dir 3172 options given were not reflected to LIBRUBY_DLDFLAGS on many 3173 platforms including Linux and other GNU-based systems, NetBSD, 3174 AIX and BeOS. 3175 3176Sat Feb 23 13:00:07 2013 Akinori MUSHA <knu@iDaemons.org> 3177 3178 * configure.in: Fix a bug introduced in r38342 that the cflagspat 3179 substitution is messed up by the way CFLAGS and optflags are 3180 modified, which affected FreeBSD and NetBSD/amd64 when 3181 configured to use libexecinfo. This bug resulted in CFLAGS and 3182 CXXFLAGS in RbConfig::CONFIG having warnflags expanded in them, 3183 forcing third-party C/C++ extensions to follow what warnflags 3184 demands, like ANSI/ISO-C90 conformance. ref [Bug #7101] 3185 3186Sat Feb 23 12:58:32 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3187 3188 * lib/mkmf.rb: remove extra topdir in VPATH, which was in 3189 win32/Makefile.sub for some reason and moved from there. 3190 [ruby-dev:46998] [Bug #7864] 3191 3192Tue Feb 23 12:07:00 2013 Kenta MURATA <mrkn@mrkn.jp> 3193 3194 * backport r39321 from trunk. [ruby-core:51777] [Bug #7761] 3195 3196 * ext/bigdecimal/bigdecimal.gemspec: bump to 1.2.0. 3197 [ruby-core:51777] [Bug #7761] 3198 3199Sat Feb 23 08:57:46 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3200 3201 * backport r39410 from trunk 3202 3203 * doc/NEWS-*: Update NEWS from their respective branches 3204 3205Sat Feb 23 08:14:43 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3206 3207 * backport r39400-r39407 from trunk. 3208 3209 * NEWS: many additions 3210 3211 * object.c: Add doc for Module.prepended 3212 3213Sat Feb 23 06:07:04 2013 Eric Hodel <drbrain@segment7.net> 3214 3215 * lib/rubygems/installer.rb (build_extensions): Create extension 3216 install destination before building extension. Patch by Kenta Murata. 3217 [ruby-trunk - Bug #7897] 3218 * test/rubygems/test_gem_installer.rb: Test for the above. 3219 3220Sat Feb 23 04:34:44 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3221 3222 * NEWS: pending_interrupt? is both instance and singleton method 3223 3224Sat Feb 23 02:49:10 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3225 3226 * NEWS: Add Thread#pending_interrupt? and Thread.handle_interrupt 3227 3228Fri Feb 22 19:22:05 2013 Aaron Patterson <aaron@tenderlovemaking.com> 3229 3230 * lib/rexml/document.rb (REXML::Document.entity_expansion_text_limit): 3231 new attribute to read/write entity expansion text limit. the default 3232 limit is 10Kb. 3233 3234 * lib/rexml/text.rb (REXML::Text.unnormalize): check above attribute. 3235 3236Thu Feb 21 05:03:38 2013 Eric Hodel <drbrain@segment7.net> 3237 3238 * lib/rubygems/commands/update_command.rb: Create the installer after 3239 options are processed. [ruby-trunk - Bug #7779] 3240 * test/rubygems/test_gem_commands_update_command.rb: Test for the 3241 above. 3242 3243Thu Feb 21 04:54:14 2013 Eric Hodel <drbrain@segment7.net> 3244 3245 * lib/rubygems/installer.rb: Use gsub instead of gsub! to avoid 3246 altering @bin_dir. Fixes tests on windows. [ruby-trunk - Bug #7885] 3247 3248Thu Feb 21 03:16:37 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3249 3250 * NEWS: Floats are frozen too 3251 3252Thu Feb 21 03:10:53 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3253 3254 * NEWS: Add that Fixnums and Bignums are frozen 3255 3256Wed Feb 20 17:02:12 2013 Koichi Sasada <ko1@atdot.net> 3257 3258 * vm_eval.c (vm_call0_body): check interrupts after method dispatch 3259 from C methods. [Bug #7878] 3260 3261Wed Feb 20 08:05:25 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3262 3263 * compar.c (rb_invcmp): compare by inversed comparison, with preventing 3264 from infinite recursion. [ruby-core:52305] [Bug #7870] 3265 3266 * string.c (rb_str_cmp_m), time.c (time_cmp): get rid of infinite 3267 recursion. 3268 3269Tue Feb 19 15:49:58 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3270 3271 * configure.in (unexpand_shvar): regularize a shell variable by 3272 unexpanding shell variables in it. 3273 3274 * configure.in (shvar_to_cpp): do not substitute exec_prefix itself 3275 with RUBY_EXEC_PREFIX, which cause recursive definition. 3276 [ruby-core:52296] [Bug #7860] 3277 3278 * configure.in: unexpand arch sitearch and exec_prefix values, so 3279 directly specified bindir, libdir, rubyprefix, etc can be properly 3280 substituted. [ruby-core:52296] [Bug #7860] 3281 3282Tue Feb 19 14:08:46 2013 Eric Hodel <drbrain@segment7.net> 3283 3284 * backport r39307 from trunk. [Bug #7880] 3285 3286 * lib/rubygems/installer.rb: Fixed placement of executables with 3287 --user-install. [ruby-trunk - Bug #7779] 3288 3289 * test/rubygems/test_gem_installer.rb: Test for above. 3290 3291Tue Feb 19 13:57:26 2013 Eric Hodel <drbrain@segment7.net> 3292 3293 * backport r39247 from trunk. [Bug #7853] 3294 3295 * lib/rdoc.rb: Update to release version of 4.0.0 3296 3297 * lib/rubygems.rb: Update to release version of 2.0.0 3298 3299Tue Feb 19 12:25:27 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3300 3301 * win32/Makefile.sub (config.status): site and vendor directories 3302 should use sitearch, not arch. [ruby-dev:46964] [Bug #7823] 3303 3304Tue Feb 19 07:51:01 2013 Koichi Sasada <ko1@atdot.net> 3305 3306 * backport r39275 from trunk. [ruby-dev:46994] [Bug #7774] 3307 3308 * proc.c (rb_binding_new_with_cfp): create binding object even if 3309 the frame is IFUNC. But return a ruby-level binding to keep 3310 compatibility. 3311 This patch fix degradation introduced from r39067. 3312 [Bug #7774] [ruby-dev:46960] 3313 3314 * test/ruby/test_settracefunc.rb: add a test. 3315 3316Sat Feb 16 20:43:43 2013 Koichi Sasada <ko1@atdot.net> 3317 3318 * backport r39276 from trunk. [ruby-dev:46997] [Bug #7825] 3319 3320 * vm.c (rb_thread_mark): mark a working Proc of bmethod 3321 (a method defined by define_method) even if the method was removed. 3322 We could not trace working Proc object which represents the body 3323 of bmethod if the method was removed (alias/undef/overridden). 3324 Simply, it was mark miss. 3325 This patch by Kazuki Tsujimoto. [Bug #7825] 3326 3327 NOTE: We can brush up this marking because we do not need to mark 3328 `me' on each living control frame. We need to mark `me's 3329 only if `me' was free'ed. This is future work after Ruby 2.0.0. 3330 3331 * test/ruby/test_method.rb: add a test. 3332 3333Fri Feb 15 00:49:32 2013 Eric Hodel <drbrain@segment7.net> 3334 3335 * lib/net/http.rb: Removed OpenSSL dependency from Net::HTTP. 3336 3337 * test/net/http/test_http.rb: Remove Zlib dependency from tests. 3338 * test/net/http/test_http_request.rb: ditto. 3339 3340Fri Feb 15 00:49:32 2013 Eric Hodel <drbrain@segment7.net> 3341 3342 * lib/net/http: Do not handle Content-Encoding when the user sets 3343 Accept-Encoding. This allows users to handle Content-Encoding for 3344 themselves. This restores backwards-compatibility with Ruby 1.x. 3345 [ruby-trunk - Bug #7831] 3346 * lib/net/http/generic_request.rb: ditto. 3347 * lib/net/http/response.rb: ditto 3348 * test/net/http/test_http.rb: Test for the above. 3349 * test/net/http/test_http_request.rb: ditto. 3350 * test/net/http/test_httpresponse.rb: ditto. 3351 3352Thu Feb 14 13:17:10 2013 Zachary Scott <zachary@zacharyscott.net> 3353 3354 * Backport r39168 Warning about TracePoint events to 2.0.0 3355 [ruby-core:52073] [Bug #7815] 3356 3357 * vm_trace.c: note about TracePoint events set 3358 3359Thu Feb 14 07:04:13 2013 Eric Hodel <drbrain@segment7.net> 3360 3361 * Backport r39213 from trunk [ruby-trunk - Bug #7383] 3362 3363 * lib/rubygems.rb: Return BINARY strings from Gem.gzip and Gem.gunzip. 3364 Fixes intermittent test failures. RubyGems issue #450 by Jeremey 3365 Kemper. 3366 * test/rubygems/test_gem.rb: Test for the above. 3367 3368Thu Feb 14 07:01:12 2013 Eric Hodel <drbrain@segment7.net> 3369 3370 * Backport part of r39166 from trunk [ruby-trunk - Bug #7809] 3371 3372 * lib/rubygems/package.rb: Include checksums.yaml.gz signatures for 3373 verification. 3374 * test/rubygems/test_gem_package.rb: Test for the above. 3375 3376Wed Feb 13 15:34:21 2013 NARUSE, Yui <naruse@ruby-lang.org> 3377 3378 * ext/json: merge JSON 1.7.7. 3379 This includes security fix. [CVE-2013-0269] 3380 https://github.com/flori/json/commit/d0a62f3ced7560daba2ad546d83f0479a5ae2cf2 3381 https://groups.google.com/d/topic/rubyonrails-security/4_YvCpLzL58/discussion 3382 3383Sat Feb 9 21:13:35 2013 Kazuki Tsujimoto <kazuki@callcc.net> 3384 3385 * backport r39167 from trunk. [ruby-core:52059] [Bug #7812] 3386 3387 * BSDL: update copyright notice for 2013. 3388 3389Fri Feb 8 19:56:54 2013 NAKAMURA Usaku <usa@ruby-lang.org> 3390 3391 * array.c (rb_ary_dup): reverted r39004. see [Bug #7768], and 3392 release manager finally decided to revert it. 3393 3394Fri Feb 8 16:09:45 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3395 3396 * eval.c (rb_ensure): preserve errinfo across ensure proc before 3397 JUMP_TAG(). [ruby-core:52022] [Bug #7802] 3398 3399Fri Feb 8 16:08:28 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3400 3401 * test/ruby/envutil.rb (assert_separately): check also terminating 3402 signal not only if core dumped. 3403 3404Fri Feb 8 13:12:04 2013 Eric Hodel <drbrain@segment7.net> 3405 3406 * lib/rdoc/generator/darkfish.rb: Set encoding on output template to 3407 user-specified encoding. 3408 * test/rdoc/test_rdoc_generator_darkfish.rb: Test for above. 3409 3410 * lib/rdoc.rb: Bump version 3411 3412Fri Feb 8 11:53:33 2013 Eric Hodel <drbrain@segment7.net> 3413 3414 * lib/rubygems/security/policy.rb: Raise proper exceptions when 3415 verifying unsigned gems (instead of crashing). 3416 * test/rubygems/test_gem_security_policy.rb: Tests for the above. 3417 3418Fri Feb 8 10:44:44 2013 Eric Hodel <drbrain@segment7.net> 3419 3420 * test/rubygems/test_gem_dependency_installer.rb: Improve coverage of 3421 --install-dir feature of gem install. 3422 3423Fri Feb 8 10:11:09 2013 Eric Hodel <drbrain@segment7.net> 3424 3425 * lib/rubygems/config_file.rb: Add missing require for 3426 user_interaction.rb 3427 3428 * lib/rubygems/dependency_installer.rb: Minor refactor for clarity. 3429 3430Fri Feb 8 09:35:17 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3431 3432 * lib/mkmf.rb (MakeMakefile#configuration): set all ruby names. 3433 hdrdir now needs RUBY_VERSION_NAME. 3434 3435Fri Feb 8 08:58:26 2013 Eric Hodel <drbrain@segment7.net> 3436 3437 * lib/rubygems/package/old.rb: Fix loading old format gems on ruby 3438 1.8. This commit is only so trunk and rubygems master have the same 3439 code. 3440 3441Fri Feb 8 08:53:27 2013 Aaron Patterson <aaron@tenderlovemaking.com> 3442 3443 * ext/psych/lib/psych/visitors/yaml_tree.rb: fixing string quotation 3444 when dumping Ruby strings. Thanks Ingy 3445 3446 * test/psych/test_psych.rb: appropriate tests. 3447 3448 * test/psych/test_yaml.rb: ditto 3449 3450Fri Feb 8 08:50:42 2013 Aaron Patterson <aaron@tenderlovemaking.com> 3451 3452 * ext/psych/lib/psych/visitors/yaml_tree.rb: change output reference 3453 ids to be sequential numbers. 3454 3455Fri Feb 8 07:47:56 2013 Eric Hodel <drbrain@segment7.net> 3456 3457 * lib/rubygems/package/old.rb: Disallow installation of old-format 3458 gems when a security policy is active. 3459 * test/rubygems/test_gem_package_old.rb: Test for above. 3460 3461Fri Feb 8 07:34:00 2013 Zachary Scott <zachary@zacharyscott.net> 3462 3463 * lib/net/http.rb (HTTP.post_form): Fix module scope in documentation 3464 Patch by David Albert [Bug #7794] [ruby-core:51955] 3465 3466Fri Feb 8 07:33:00 2013 Zachary Scott <zachary@zacharyscott.net> 3467 3468 * compar.c (cmp_equal): Document ignored exception and return false 3469 By Makoto Kishimoto [Bug #7790] [ruby-dev:46925] [ruby-dev:46910] 3470 3471Fri Feb 8 07:17:00 2013 Eric Hodel <drbrain@segment7.net> 3472 3473 * lib/rubygems/dependency_installer.rb: Only install local gems if 3474 they end in '.gem'. Fixes github rubygems issue #407. 3475 * test/rubygems/test_gem_dependency_installer.rb: Test for the above. 3476 3477Fri Feb 8 00:02:48 2013 Tanaka Akira <akr@fsij.org> 3478 3479 * process.c (obj2gid): use getgrnam_r() only if getgrnam_r() and 3480 _SC_GETGR_R_SIZE_MAX is available. 3481 MirOS BSD (MirBSD 10 GENERIC#1382 i386) have getgrnam_r() but 3482 no _SC_GETGR_R_SIZE_MAX. 3483 (obj2uid): use getpwnam_r() only if getpwnam_r() and 3484 _SC_GETPW_R_SIZE_MAX is available. 3485 This is consistency for obj2gid. 3486 MirOS BSD have neither getpwnam_r() nor _SC_GETPW_R_SIZE_MAX. 3487 3488Thu Feb 7 22:01:18 2013 Tanaka Akira <akr@fsij.org> 3489 3490 * configure.in: define linker for shared library on MirOS BSD. 3491 3492Thu Feb 7 21:09:23 2013 NAKAMURA Usaku <usa@ruby-lang.org> 3493 3494 * test/rubygems/test_gem_config_file.rb 3495 (TestGemConfigFile#test_check_credentials_permissions): skip on 3496 Windows. see [Bug #7784] [ruby-core:51864] and r39070. 3497 3498Thu Feb 7 20:52:40 2013 NAKAMURA Usaku <usa@ruby-lang.org> 3499 3500 * win32/Makefile.sub (config.status): added variables which were 3501 missing at r39130. 3502 3503Thu Feb 7 15:33:17 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3504 3505 * lib/mkmf.rb (MakeMakefile#merge_libs): insert following reversal 3506 ordered elements just after the duplicated element, not overwriting 3507 successive elements. [ruby-core:50314] [Bug #7467] 3508 3509Thu Feb 7 14:56:15 2013 Eric Hodel <drbrain@segment7.net> 3510 3511 * lib/rubygems/package.rb: Ensure digests are generated for signing. 3512 * test/rubygems/test_gem_package.rb: Test for the above. 3513 3514 * lib/rubygems/security/policy.rb: Ensure digests are present when 3515 verifying a gem and match the number of signatures bidirectionally. 3516 * test/rubygems/test_gem_security_policy.rb: Test for the above. 3517 3518 * lib/rubygems.rb: Documentation improvements (by zzak) 3519 3520Thu Feb 7 05:52:00 2013 Zachary Scott <zachary@zacharyscott.net> 3521 3522 * doc/pty/README: Remove static documentation file 3523 * ext/pty/pty.c: Add License to PTY module overview 3524 3525Thu Feb 7 02:31:10 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3526 3527 * vm_insnhelper.c: attr_writer should return its argument [Bug #7773] 3528 3529 * test/ruby/test_basicinstructions.rb: Test for above 3530 3531Thu Feb 7 01:35:00 2013 Zachary Scott <zachary@zacharyscott.net> 3532 3533 * doc/security.rdoc: Link to japanese version of CVE page patch by 3534 nagachika 3535 3536Wed Feb 6 23:30:00 2013 Zachary Scott <zachary@zacharyscott.net> 3537 3538 * doc/pty/README.expect: Removed static documentation file 3539 * ext/pty/lib/expect.rb: Documentation for IO#expect 3540 3541Wed Feb 6 22:25:00 2013 Charlie Somerville <charlie@charliesomerville.com> 3542 3543 * hash.c (env_reject_bang): hide keys array from ObjectSpace 3544 * hash.c (env_select_bang): ditto 3545 3546Wed Feb 6 17:33:01 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3547 3548 * configure.in (multiarch): add option to move architecture dependent 3549 directories. [Feature #6111] 3550 3551 * template/ruby.pc.in: add arch dependent paths. 3552 3553 * configure.in (rubyarchhdrdir, sitearchhdrdir, vendorarchhdrdir): add 3554 options to customize architecture dependent header directories. 3555 3556 * configure.in (rubyarchprefix, sitearchdir, vendorarchdir): add 3557 options to customize architecture dependent library directories. 3558 3559 * template/ruby.pc.in, tool/mkconfig.rb, tool/rbinstall.rb: use 3560 configured values. 3561 3562 * tool/mkconfig.rb: expand rubyarchdir to extract prefix. 3563 3564 * configure.in (RUBY_VERSION_NAME), template/ruby.pc.in: add 3565 substitution and define. 3566 3567 * configure.in, version.c: parametric architecture name for paths. 3568 3569 * configure.in (shvar_to_cpp): convert sh variable references 3570 by replacing with string literal forms in cpp. 3571 3572Wed Feb 6 17:05:26 2013 Eric Hodel <drbrain@segment7.net> 3573 3574 * lib/rdoc: Import RDoc 4.0.0.rc.2 3575 3576Mon Feb 4 02:22:49 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 3577 3578 * test/ruby/test_process.rb (test_setsid): ensure to call 3579 Process.wait(). Reported by George Koehler. Thanks. 3580 3581Mon Feb 4 02:18:00 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 3582 3583 * test/ruby/test_process.rb (test_setsid): skip when platform is 3584 OpenBSD. Contributed from George Koehler. 3585 [Bug #7789] [ruby-core:51889] 3586 3587Wed Feb 6 13:35:20 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3588 3589 * proc.c (rb_method_entry_location, rb_{mod,obj}_method_location): new 3590 functions to obtain source location of method definition. 3591 3592 * vm_method.c (rb_obj_respond_to): show the location of old style 3593 respond_to? method. 3594 3595Wed Feb 6 13:03:00 2013 Zachary Scott <zachary@zacharyscott.net> 3596 3597 * doc/security.rdoc: Add link to CVEs on ruby-lang.org/en/security 3598 3599Wed Feb 6 12:49:00 2013 Zachary Scott <zachary@zacharyscott.net> 3600 3601 * NEWS: Add note about removal of CSV::load and CSV::dump from r39077 3602 3603Wed Feb 6 05:57:00 2013 Zachary Scott <zachary@zacharyscott.net> 3604 3605 * lib/racc/parser.rb: Hide copyright notice from Racc doc 3606 3607Wed Feb 6 05:50:00 2013 Zachary Scott <zachary@zacharyscott.net> 3608 3609 * doc/rubygems/*: Removed outdated documentation files 3610 * lib/rubygems/LICENSE.txt: Include license file 3611 * lib/rubygems.rb: Move Gem module documentation so rdoc can parse it 3612 and link to LICENSE.txt 3613 * lib/rubygems/*: Hide useless documentation from Gem module rdoc 3614 3615Wed Feb 6 03:45:19 2013 Zachary Scott <zachary@zacharyscott.net> 3616 3617 * doc/security.rdoc: Remove documentation for unsafe CSV.load which 3618 was deleted in r39077 3619 3620Wed Feb 6 03:27:19 2013 James Edward Gray II <james@graysoftinc.com> 3621 3622 * lib/csv.rb: Remove the dangerous serialization feature. 3623 3624Wed Feb 6 00:56:00 2013 Zachary Scott <zachary@zacharyscott.net> 3625 3626 * lib/irb.rb: Remove example from restrictions, it works [Github #246] 3627 Based on patch by Ryunosuke SATO 3628 3629Wed Feb 6 00:46:53 2013 Kazuki Tsujimoto <kazuki@callcc.net> 3630 3631 * vm.c (rb_vm_stack_to_heap): call rb_vm_get_binding_creatable_next_cfp 3632 instead of rb_vm_get_ruby_level_next_cfp to prevent a segfault by 3633 calling Kernel#callcc. See r39067 for more details. 3634 [ruby-dev:46908] [ruby-trunk - Bug #7774] 3635 3636 * test/ruby/test_settracefunc.rb: add a test. 3637 3638Tue Feb 5 18:48:00 2013 Charlie Somerville <charlie@charliesomerville.com> 3639 3640 * doc/security.rdoc: add regex, eval and drb sections 3641 3642Tue Feb 5 17:24:02 2013 Eric Hodel <drbrain@segment7.net> 3643 3644 * lib/rdoc/servlet.rb: Fixed root search paths, filesystem paths 3645 instead of HTTP paths were returned. 3646 * test/rdoc/test_rdoc_servlet.rb: Test for above. 3647 3648Tue Feb 5 16:37:00 2013 Eric Hodel <drbrain@segment7.net> 3649 3650 * lib/rubygems/config_file.rb: Ignore permissions check on windows. 3651 Windows writes 0600 file as 0644 permissions making the check 3652 useless. 3653 3654Tue Feb 5 16:25:25 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3655 3656 * vm_method.c (rb_obj_respond_to): drop optional include_all flag if 3657 respond_to? method is defined in old style. [Bug #7722] 3658 3659Tue Feb 05 15:04:34 2013 Koichi Sasada <ko1@atdot.net> 3660 3661 * proc.c (rb_binding_new_with_cfp): permit to create binding object 3662 of IFUNC frame. 3663 When `rb_binding_new_with_cfp()' is called, VM finds out the first 3664 normal (has iseq) frame and create a binding object of this frame 3665 and create Env objects. `ep's of related frames are updated 3666 (`ep's point Env object managed spaces). 3667 However, `ep' of skipped IFUNC frame was not updated and 3668 old invalid `ep' was remained. It causes serious problems. 3669 To solve this issue, permit IFUNC to create binding. 3670 (Maybe there is no problem on it) 3671 [ruby-dev:46908] [ruby-trunk - Bug #7774] 3672 3673 * test/ruby/test_settracefunc.rb: add a test. 3674 3675 * vm.c (rb_vm_get_binding_creatable_next_cfp), vm_core.h: added. 3676 3677 * vm_trace.c: fix to use `rb_vm_get_binding_creatable_next_cfp()'. 3678 3679Tue Feb 5 14:43:15 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3680 3681 * lib/matrix.rb: Fix error message, patch by pypypy [Bug #7777] 3682 3683Tue Feb 5 14:36:04 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3684 3685 * numeric.c (fix_pow): Handle special cases when base is 0, -1 or +1 3686 [Bug #5713] [Bug #5715] 3687 3688 * rational.c (nurat_expt): ditto 3689 3690Tue Feb 5 13:27:53 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3691 3692 * ext/io/console/console.c (rawmode_opt): use default values by `stty 3693 raw`. 3694 3695Tue Feb 5 12:50:47 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3696 3697 * range.c: Use div instead of / for bsearch 3698 3699 * test/ruby/test_range.rb: Test showing bug when requiring mathn 3700 3701Tue Feb 5 12:48:38 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3702 3703 * enumerator.c: Use to_enum for Enumerable methods returning 3704 Enumerators. 3705 This makes Lazy#cycle no longer needed, so it was removed. 3706 Make Enumerator#chunk and slice_before return lazy Enumerators. 3707 [Bug #7715] 3708 3709 * internal.h: Remove ref to rb_enum_cycle_size; no longer needed 3710 3711 * enum.c: Make enum_cycle_size static. 3712 3713 * test/ruby/test_lazy_enumerator.rb: Test for above 3714 3715Tue Feb 5 12:48:10 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3716 3717 * enumerator.c: Finalize and document Lazy.new. [Bug #7248] 3718 Add Lazy#to_enum and simplify Lazy#size. 3719 3720 * test/ruby/test_lazy_enumerator.rb: tests for above 3721 3722Tue Feb 5 11:35:35 2013 Eric Hodel <drbrain@segment7.net> 3723 3724 * lib/rubygems/commands/push_command.rb: Fixed credential download for 3725 `gem push --host` 3726 * lib/rubygems/gemcutter_utilities.rb: ditto. 3727 * test/rubygems/test_gem_commands_push_command.rb: Test for the above. 3728 * test/rubygems/test_gem_gemcutter_utilities.rb: ditto. 3729 3730 * lib/rubygems/config_file.rb: Abort if the `gem push` credentials 3731 file has insecure permissions. 3732 * test/rubygems/test_gem_config_file.rb: Test for the above. 3733 3734 * lib/rubygems/ext/builder.rb: Do not look for Gemfile, Isolate, etc. 3735 while building gem extensions. 3736 3737 * lib/rubygems/package.rb: Unset spec and files list if a gem's 3738 signatures cannot be verified. 3739 * test/rubygems/test_gem_package.rb: Test for the above. 3740 3741 * lib/rubygems/specification.rb: Reduce use of eval. 3742 * lib/rubygems/test_case.rb: ditto. 3743 3744 * test/rubygems/test_gem_specification.rb: Test setting 3745 specification_version for legacy gems. Dup Gem.ruby before 3746 untainting in case it's frozen. 3747 3748 * lib/rubygems.rb: Reduce use of eval. Only read files when looking 3749 for Gemfile, Isolate, etc. 3750 * test/rubygems/test_gem.rb: Test for the above. 3751 3752Tue Feb 5 10:15:00 2013 Zachary Scott <zachary@zacharyscott.net> 3753 3754 * doc/security.rdoc: Wrap security guide at 80 columns 3755 3756Tue Feb 5 10:15:00 2013 Zachary Scott <zachary@zacharyscott.net> 3757 3758 * doc/security.rdoc: Grammatical error on security guide 3759 Patch by Josh Bassett [Github fixes #245] 3760 3761Tue Feb 5 10:00:00 2013 Zachary Scott <zachary@zacharyscott.net> 3762 3763 * lib/racc/parser.rb: Update #do_parse and #yyparse from upstream 3764 See [Github tenderlove/racc@7d954b5] 3765 3766Tue Feb 5 09:55:00 2013 Zachary Scott <zachary@zacharyscott.net> 3767 3768 * lib/racc: Merge Racc documentation downstream, add grammar ref file 3769 3770Tue Feb 5 08:03:00 2013 Zachary Scott <zachary@zacharyscott.net> 3771 3772 * lib/irb.rb, lib/irb/ext/save-history.rb: Add documentation on how to 3773 enabled irb history [ruby-core:51347] [Bug #7679] 3774 3775Tue Feb 5 07:35:00 2013 Zachary Scott <zachary@zacharyscott.net> 3776 3777 * lib/irb.rb, lib/irb/context.rb: Add documentation on how to enable 3778 auto-indentation and autocompletion using irbrc and irb_context 3779 [ruby-core:51209] [Bug #7642] and [ruby-core:51348] [Bug #7680] 3780 3781Tue Feb 5 05:20:00 2013 Zachary Scott <zachary@zacharyscott.net> 3782 3783 * doc/standard_library.rdoc: Document list of libraries and extensions 3784 and their purpose or short description 3785 * lib/README: Remove lib/README in favor of doc/standard_library.rdoc 3786 3787Tue Feb 5 04:40:00 2013 Zachary Scott <zachary@zacharyscott.net> 3788 3789 * ext/json/lib/json.rb: Move module overview definition for rdoc 3790 3791Tue Feb 5 03:00:00 2013 Zachary Scott <zachary@zacharyscott.net> 3792 3793 * lib/tracer.rb: Move class overview definition and reformat 3794 3795Mon Feb 4 15:10:10 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3796 3797 * ext/io/console/console.c (rawmode_opt): initialize options for the 3798 case all options are not given. 3799 3800Mon Feb 4 12:44:13 2013 Koichi Sasada <ko1@atdot.net> 3801 3802 * vm_dump.c (control_frame_dump): capitalize prefix of `ep' 3803 if `ep' points an env object. 3804 3805Mon Feb 4 04:20:00 2013 Zachary Scott <zachary@zacharyscott.net> 3806 3807 * lib/English.rb: Add English module for RDoc to parse, then 3808 remove_const to avoid confusion. Include full list of aliases and 3809 their associated global variable. 3810 3811Mon Feb 4 02:40:00 2013 Zachary Scott <zachary@zacharyscott.net> 3812 3813 * lib/yaml.rb (YAML::EngineManager): Documentation for #yamler and 3814 #yamler= for using the removed Syck gem as the YAML::ENGINE 3815 3816Sun Feb 3 16:54:27 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3817 3818 * ext/io/console/io-console.gemspec: bump. [Bug #7762] 3819 3820 * test/io/console/test_io_console.rb (test_stringio_getch): use more 3821 descriptive assertions. 3822 3823 * ext/io/console/console.c (rawmode_opt): min is minimum characters, 3824 not tenths. 3825 3826Sun Feb 3 16:13:00 2013 Charlie Somerville <charlie@charliesomerville.com> 3827 3828 * doc/security.rdoc: add first cut at a Ruby security document 3829 3830Sun Feb 3 10:25:00 2013 Zachary Scott <zachary@zacharyscott.net> 3831 3832 * random.c: Document range argument for Kernel#rand. 3833 [ruby-core:51794] [Bug #7770] 3834 3835Sun Feb 3 10:00:00 2013 Zachary Scott <zachary@zacharyscott.net> 3836 3837 * numeric.c: Document Float constants [ruby-core:51484] [Bug #7709] 3838 3839Sun Feb 3 09:38:44 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3840 3841 * lib/profiler.rb (PROFILE_CALL_PROC, PROFILE_RETURN_PROC): add b_call 3842 and b_return to profile block calls. 3843 3844 * lib/profiler.rb (PROFILE_CALL_PROC, PROFILE_RETURN_PROC): split 3845 PROFILE_PROC for call and return events. 3846 3847Sat Feb 2 14:32:00 2013 Zachary Scott <zachary@zacharyscott.net> 3848 3849 * lib/minitest/mock.rb, lib/minitest/hell.rb: nodoc top-level module 3850 3851Sat Feb 2 14:05:00 2013 Zachary Scott <zachary@zacharyscott.net> 3852 3853 * lib/debug.rb: Documentation for DEBUGGER__ class methods based on 3854 patch by Vincent Batts [ruby-core:51253] 3855 3856Sat Feb 2 13:37:00 2013 Zachary Scott <zachary@zacharyscott.net> 3857 3858 * lib/net/smtp.rb: Fix rdoc title for Net::SMTP 3859 3860Sat Feb 2 13:32:00 2013 Zachary Scott <zachary@zacharyscott.net> 3861 3862 * lib/net/pop.rb: Fix rdoc title for Net::POP3 3863 3864Sat Feb 2 13:00:11 2013 Yusuke Endoh <mame@tsg.ne.jp> 3865 3866 * lib/gserver.rb (GServer#start): fix a timing issue. patch from 3867 Charles Nutter. [Bug #7081] 3868 3869Sat Feb 2 12:36:54 2013 Yusuke Endoh <mame@tsg.ne.jp> 3870 3871 * lib/fileutils.rb (copy_entry, wrap_traverse): preserve attributes of 3872 directories on FileUtils.cp_r. The fix was proposed by Jan 3873 Wedekind. [Bug #7246] 3874 3875 * test/fileutils/test_fileutils.rb: add a test for above. 3876 3877Sat Feb 2 12:30:00 2013 Zachary Scott <zachary@zacharyscott.net> 3878 3879 * lib/uri/ftp.rb (URI::FTP.new2): nodoc method from r39013 [Bug #7301] 3880 3881Sat Feb 2 12:15:36 2013 Yusuke Endoh <mame@tsg.ne.jp> 3882 3883 * lib/uri/ftp.rb (URI::FTP.new2): remove the rdoc because it is not 3884 well tested yet. [Bug #7301] 3885 3886Sat Feb 2 12:07:41 2013 Yusuke Endoh <mame@tsg.ne.jp> 3887 3888 * ChangeLog: Forgot to add a reference to the ChangeLog of the 3889 previous commit. 3890 3891Sat Feb 2 12:05:18 2013 Yusuke Endoh <mame@tsg.ne.jp> 3892 3893 * lib/fileutils.rb: chmod/chmod_R with a string mode (e.g., "+x") 3894 caused error in verbose mode. [Bug #7373] 3895 3896 * test/fileutils/test_fileutils.rb: add a test for above. 3897 3898Sat Feb 2 11:44:42 2013 Yusuke Endoh <mame@tsg.ne.jp> 3899 3900 * lib/English.rb: Remove some confusing words from rdoc. [Bug #7406] 3901 3902Sat Feb 2 10:17:12 2013 Kazuki Tsujimoto <kazuki@callcc.net> 3903 3904 * NEWS: add keyword arguments. 3905 3906Sat Feb 2 07:45:44 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3907 3908 * proc.c (proc_curry): Fix arity check [Bug #5747] 3909 3910 * test/ruby/test_proc.rb: Test for above 3911 3912Sat Feb 2 07:44:15 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 3913 3914 * proc.c: Add {*}_min_max_arity and refactor. 3915 [Bug #7765] 3916 3917 * test/ruby/test_proc.rb: Fix wrong test 3918 3919Fri Feb 2 00:46:00 2013 Charlie Somerville <charlie@charliesomerville.com> 3920 3921 * marshal.c: add security considerations to marshal overview, refer to 3922 overview from Marshal.load documentation [#7759] 3923 3924Fri Feb 1 23:04:00 2013 Charlie Somerville <charlie@charliesomerville.com> 3925 3926 * array.c (rb_ary_dup): make returned array the same class as the original 3927 array [Bug #7768] [ruby-core:51792] 3928 * test/ruby/test_array.rb (class TestArray): add test 3929 3930Fri Feb 1 16:35:34 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3931 3932 * marshal.c (r_object0): prohibit setting instance variables of 3933 existing class/module. 3934 3935Fri Feb 1 14:34:29 2013 Shugo Maeda <shugo@ruby-lang.org> 3936 3937 * ext/readline/extconf.rb, ext/readline/readline.c: check 3938 RL_PROMPT_START_IGNORE and RL_PROMPT_END_IGNORE directly in 3939 readline.c. Patch by Zachary Scott. [Bug #7397] [ruby-core:49561] 3940 3941Thu Jan 31 21:55:00 2013 Charlie Somerville <charlie@charliesomerville.com> 3942 3943 * marshal.c (marshal_load): Add documentation warning against using 3944 Marshal.load on untrusted data [Bug #7759] [ruby-core:51765] 3945 3946Thu Jan 31 16:33:27 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3947 3948 * parse.y (local_push_gen): no assigned but unused variable warnings 3949 in eval as well as -e. [Feature #7730] [ruby-core:51580] 3950 3951Wed Jan 30 12:30:08 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 3952 3953 * test/ruby/test_signal.rb (test_trap_puts): Fix typo. "sync" 3954 should be "STDOUT.sync". 3955 3956Thu Jan 31 15:39:00 2013 Zachary Scott <zachary@zacharyscott.net> 3957 3958 * string.c (rb_str_aset_m): Documentation for String#[]= fix 3959 Raises an IndexError if Regexp match is out of range. 3960 Github fixes #243 Patch by Dmtiriy Budnik 3961 3962Thu Jan 31 13:54:44 2013 Shugo Maeda <shugo@ruby-lang.org> 3963 3964 * ext/socket/raddrinfo.c (rsock_unix_sockaddr_len): return 3965 sizeof(sa_family_t) if path is empty. see "Autobind Feature" in 3966 unix(7) for details. 3967 3968 * ext/socket/lib/socket.rb (unix_socket_abstract_name?): treat an 3969 empty path as an abstract name. 3970 3971 * test/socket/test_unix.rb: related test. 3972 3973Wed Jan 30 20:58:50 2013 Tanaka Akira <akr@fsij.org> 3974 3975 * ext/socket/basicsocket.c (bsock_getsockname): ignore truncated 3976 part of socket address. 3977 (bsock_getpeername): ditto. 3978 (bsock_local_address): ditto. 3979 (bsock_remote_address): ditto. 3980 3981 * ext/socket/unixsocket.c (unix_path): ditto. 3982 (unix_addr): ditto. 3983 (unix_peeraddr): ditto. 3984 3985 * ext/socket/init.c (cloexec_accept): ditto. 3986 3987Wed Jan 30 17:08:20 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 3988 3989 * include/ruby/win32.h (fstat): revert r37337, which uses _fstati64() 3990 instead of fstati64() on mingw32. [Bug #7276] 3991 3992Wed Jan 30 15:26:37 2013 Shugo Maeda <shugo@ruby-lang.org> 3993 3994 * ext/socket/unixsocket.c (rsock_init_unixsock): use rb_inspect() 3995 because rb_sys_fail_str() fails if its argument contains NUL. 3996 3997 * test/socket/test_unix.rb: related test. 3998 3999Wed Jan 30 15:21:30 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4000 4001 * vm_dump.c (rb_vm_bugreport): show the most important message, Crash 4002 Report log information, first. 4003 4004Wed Jan 30 15:00:05 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4005 4006 * array.c (rb_ary_bsearch): Raise TypeError on bad return from block 4007 4008 * range.c (range_bsearch): ditto 4009 4010 * test/ruby/test_array.rb (class): Test for above 4011 4012 * test/ruby/test_range.rb (class): ditto 4013 4014Wed Jan 30 14:46:28 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4015 4016 * range.c: Restrict bsearch to integers [#7728] 4017 4018 * test/ruby/test_range.rb: Test for above 4019 4020Wed Jan 30 14:10:52 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4021 4022 * array.c (rb_ary_bsearch): Return enumerator if no block [#7725] 4023 4024 * range.c (range_bsearch): ditto 4025 4026 * test/ruby/test_array.rb: Test for above 4027 4028 * test/ruby/test_range.rb: ditto 4029 4030Wed Jan 30 13:53:43 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4031 4032 * lib/matrix.rb: Take conjugate for inner product 4033 [rubyspec:5a01ad5719f2] [ruby-dev:46101] 4034 4035Wed Jan 30 13:22:05 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4036 4037 * parse.y (local_push_gen): warn assigned but unused variables also in 4038 toplevel, except for -e option. [Feature #7730] [ruby-core:51580] 4039 4040Wed Jan 30 13:17:53 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4041 4042 * cont.c (cont_restore_thread): svar should be separate per fibers. 4043 [ruby-core:51331] [Bug #7678] 4044 4045Wed Jan 30 07:15:04 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4046 4047 * re.c (reg_operand): Simplify and reuse error handling [Bug #7539] 4048 4049 * test/ruby/test_regexp.rb: Test for above 4050 4051Wed Jan 30 07:00:16 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4052 4053 * object.c: Improve error for failed implicit conversions [Bug #7539] 4054 4055 * error.c: Adapt rdoc 4056 4057 * test/ruby/test_object.rb: Test for above 4058 4059Tue Jan 29 21:40:12 2013 Tanaka Akira <akr@fsij.org> 4060 4061 * lib/net/http/generic_request.rb (encode_multipart_form_data): remove 4062 tempfile explicitly. 4063 4064Tue Jan 29 19:27:18 2013 Benoit Daloze <eregontp@gmail.com> 4065 4066 * array.c: Improve documentation about 4067 comparison by hash for concerned methods. [ruby-core:51266] 4068 4069Tue Jan 29 17:03:28 2013 Koichi Sasada <ko1@atdot.net> 4070 4071 * vm_backtrace.c: fix issue of rb_debug_inspector_open(). 4072 The order of making binding should be stack (frame) top to bottom. 4073 [Bug #7635] 4074 And also fix issue of collecting klass. Collecting klass is same 4075 as TracePoint#defined_class. 4076 (previous version, it returns T_ICLASS (internal objects). 4077 4078 * test/-ext-/debug/test_debug.rb: add a test. 4079 4080 * ext/-test-/debug/extconf.rb, init.c, inspector.c: ditto. 4081 4082 * vm_backtrace.c: remove magic number and add enum CALLER_BINDING_*. 4083 4084 * vm_backtrace.c, include/ruby/debug.h: add new C api (experimental) 4085 rb_debug_inspector_frame_self_get(). 4086 4087 * vm.c, vm_core.h, vm_trace.c: move decl. of 4088 rb_vm_control_frame_id_and_class() and constify first parameter. 4089 4090Tue Jan 29 16:50:58 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4091 4092 * vm_trace.c (rb_tracepoint_enable, rb_tracepoint_disable): check safe 4093 level as well as set_trace_func. 4094 4095 * vm_trace.c (set_trace_func, thread_{add,set}_trace_func_m): check 4096 safe level as well as 1.8. 4097 4098Tue Jan 29 16:49:19 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4099 4100 * proc.c (rb_mod_method_arity): return original arity of the method if 4101 aliased because of visibility change, like as Method#arity. 4102 4103Tue Jan 29 12:05:18 2013 Tanaka Akira <akr@fsij.org> 4104 4105 * test/ruby/test_marshal.rb: remove temporally files early. 4106 4107 * test/ruby/test_process.rb: ditto. 4108 4109 * test/psych/test_exception.rb: ditto. 4110 4111Tue Jan 29 09:26:20 2013 Shugo Maeda <shugo@ruby-lang.org> 4112 4113 * ext/socket/socket.c (sock_s_pack_sockaddr_un): calculate the 4114 correct address length of an abstract socket. 4115 4116 * test/socket/test_unix.rb: related test. 4117 4118Mon Jan 28 18:02:16 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4119 4120 * vm_backtrace.c (rb_debug_inspector_frame_{class,binding,iseq}_get): 4121 use long as index as well as RARRAY_LEN(). 4122 4123Mon Jan 28 17:51:38 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4124 4125 * test/ruby/envutil.rb (assert_separately): imply no core dump. 4126 4127Mon Jan 28 12:32:31 2013 Tanaka Akira <akr@fsij.org> 4128 4129 * ext/fcntl/fcntl.c: update document. use "file descriptor" instead 4130 of "file handle" because it is not used other Ruby documents and 4131 it is confusing with Windows file handle. 4132 correct F_DUPFD behavior. 4133 4134Sat Jan 26 22:39:12 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4135 4136 * marshal.c (w_object): dump instance variables of the result of 4137 marshal_dump not the original object. [ruby-core:51163] [Bug #7627] 4138 4139 * complex.c (nucomp_marshal_dump): need to copy instance variables. 4140 4141 * rational.c (nurat_marshal_dump): ditto. 4142 4143Sat Jan 26 13:35:56 2013 Eric Hodel <drbrain@segment7.net> 4144 4145 * ext/fcntl/fcntl.c: Document Fcntl constants 4146 4147Sat Jan 26 12:54:40 2013 Eric Hodel <drbrain@segment7.net> 4148 4149 * hash.c (rb_env_size): Restored documentation for ENV.size 4150 4151 * lib/drb/drb.rb: Documented DRb::DRb#run. 4152 4153 * lib/erb.rb (class ERB): Improved documentation of ERb. 4154 4155 * transcode.c: Documented Encoding::Converter constants. 4156 4157Sat Jan 26 10:09:57 2013 Eric Hodel <drbrain@segment7.net> 4158 4159 * lib/webrick/accesslog.rb: Improved WEBrick documentation. 4160 * lib/webrick/cgi.rb: ditto. 4161 * lib/webrick/config.rb: ditto. 4162 * lib/webrick/cookie.rb: ditto. 4163 * lib/webrick/httpauth/authenticator.rb: ditto. 4164 * lib/webrick/httpauth/basicauth.rb: ditto. 4165 * lib/webrick/httpauth/digestauth.rb: ditto. 4166 * lib/webrick/httpproxy.rb: ditto. 4167 * lib/webrick/httprequest.rb: ditto. 4168 * lib/webrick/httpresponse.rb: ditto. 4169 * lib/webrick/https.rb: ditto. 4170 * lib/webrick/httpserver.rb: ditto. 4171 * lib/webrick/httpservlet/cgihandler.rb: ditto. 4172 * lib/webrick/httpservlet/filehandler.rb: ditto. 4173 * lib/webrick/httpservlet/prochandler.rb: ditto. 4174 * lib/webrick/httputils.rb: ditto. 4175 * lib/webrick/httpversion.rb: ditto. 4176 * lib/webrick/log.rb: ditto. 4177 * lib/webrick/server.rb: ditto. 4178 * lib/webrick/ssl.rb: ditto. 4179 * lib/webrick/utils.rb: ditto. 4180 * lib/webrick/version.rb: ditto. 4181 4182Sat Jan 26 08:29:33 2013 Shugo Maeda <shugo@ruby-lang.org> 4183 4184 * ext/socket/raddrinfo (rsock_unix_sockaddr_len): renamed from 4185 rsock_unixpath_len, because it returns not the length of the path, 4186 but the length of a socket address for the path. 4187 4188Sat Jan 26 01:12:23 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 4189 4190 * test/ruby/test_io.rb (test_ioctl_linux): skip if a platform is 4191 not x86 because linux ioctl request number depend on cpu arch. 4192 At least, alpha, mips, sparc and ppc have a different number. 4193 [Bug #7718] [ruby-core:51544] 4194 4195Fri Jan 25 19:14:24 2013 Masaki Suketa <masaki.suketa@nifty.ne.jp> 4196 4197 * ext/win32ole/win32ole.c: use TlsAlloc instead of __declspec(thread) 4198 to avoid SEGV if win32ole.so loaded with LoadLibrary in Windows 4199 XP or earlier. 4200 4201Fri Jan 25 16:47:31 2013 Shugo Maeda <shugo@ruby-lang.org> 4202 4203 * ext/socket/raddrinfo.c (rsock_unixpath_len, init_unix_addrinfo), 4204 ext/socket/unixsocket.c (unixsock_connect_internal, 4205 rsock_init_unixsock): calculate the correct address length of 4206 an abstract socket. Without this fix, sizeof(struct sockaddr_un) 4207 is specified as the length of an abstract socket for bind(2) or 4208 connect(2), so the address of the socket is filled with extra NUL 4209 characters. See unix(7) for details. 4210 4211 * ext/socket/lib/socket.rb (unix_server_socket): don't access the 4212 file system if the platform is Linux and path starts with NUL, 4213 which means that the socket is an abstract socket. 4214 4215 * test/socket/test_unix.rb: related test. 4216 4217Fri Jan 25 13:02:27 2013 Eric Hodel <drbrain@segment7.net> 4218 4219 * lib/drb/drb.rb: Updated documentation based on patch from Vincent 4220 Batts. [ruby-trunk - Bug #7714] 4221 * lib/drb/ssl.rb: ditto. 4222 4223Fri Jan 25 12:23:29 2013 Eric Hodel <drbrain@segment7.net> 4224 4225 * lib/drb/drb.rb: Improved documentation by adding or hiding methods. 4226 * lib/drb/eq.rb: ditto. 4227 * lib/drb/extserv.rb: ditto. 4228 * lib/drb/gw.rb: ditto. 4229 * lib/drb/invokemethod.rb: ditto. 4230 * lib/drb/observer.rb: ditto. 4231 * lib/drb/ssl.rb: ditto. 4232 * lib/drb/timeridconv.rb: ditto. 4233 * lib/drb/unix.rb: ditto. 4234 4235 * sample/drb/gw_cu.rb: Fixed bug in DRb gateway sample. 4236 4237Fri Jan 25 12:01:56 2013 Koichi Sasada <ko1@atdot.net> 4238 4239 * vm_core.h: modify a comment about rb_iseq_t::local_size. 4240 A patch by davidbalbert (David Albert) [Bug #6750] 4241 4242Fri Jan 25 10:36:31 2013 Eric Hodel <drbrain@segment7.net> 4243 4244 * lib/mkmf.rb: Documented MakeMakefile constants. Hide implementation 4245 details from RDoc 4246 4247Fri Jan 25 10:04:07 2013 Eric Hodel <drbrain@segment7.net> 4248 4249 * lib/rubygems/compatibility.rb: Hide compatibility shims from RDoc 4250 4251 * lib/rubygems/config_file.rb: Hide RbConfig use from RDoc 4252 4253 * lib/rubygems/test_case.rb: Added note to use realpath when 1.8 4254 support is dropped. 4255 4256Fri Jan 25 09:14:43 2013 Eric Hodel <drbrain@segment7.net> 4257 4258 * lib/rdoc/generator/darkfish.rb: Fixed debug message. RDoc bug #174 4259 by Thomas Leitner. 4260 4261 * lib/rdoc/store.rb: Fixed deletion of ri attribute data when a class 4262 was loaded then saved. RDoc bug #171 by Thomas Leitner. 4263 * test/rdoc/test_rdoc_store.rb: Test for above. 4264 4265Thu Jan 24 19:55:25 2013 Shota Fukumori <her@sorah.jp> 4266 4267 * NEWS (yaml): Write about bundled libyaml. 4268 4269Thu Jan 24 16:54:34 2013 Eric Hodel <drbrain@segment7.net> 4270 4271 * doc/syntax/calling_methods.rdoc: Added a Method Lookup section. 4272 * doc/syntax/refinements.rdoc (Method Lookup): Clarified that 4273 refinement methods are looked up in classes, not instances. 4274 4275Thu Jan 24 16:49:17 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4276 4277 * enum.c (enum_zip): Fix error message 4278 4279 * array.c (take_items): Same, for Array#zip 4280 4281Thu Jan 24 16:47:26 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4282 4283 * enumerator.c (lazy_zip): raise error for bad arguments 4284 [Bug #7706] 4285 4286Thu Jan 24 16:05:08 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4287 4288 * enumerator.c: Optimize Lazy#zip when passed only arrays 4289 [Bug #7706] 4290 4291Thu Jan 24 15:21:17 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4292 4293 * enumerator.c: Fix state handling for Lazy#zip,{drop_take}{_while} 4294 [bug #7696] [bug #7691] 4295 4296Thu Jan 24 11:43:47 2013 Narihiro Nakamura <authornari@gmail.com> 4297 4298 * eval.c (f_current_dirname): Add documentation about "__dir__ 4299 returns always an absolute path". [Bug #7729] 4300 4301Thu Jan 24 10:28:30 2013 Eric Hodel <drbrain@segment7.net> 4302 4303 * NEWS (RDoc): Added mention of page support and markdown support. 4304 4305Thu Jan 24 09:40:13 2013 Eric Hodel <drbrain@segment7.net> 4306 4307 * doc/syntax/refinements.rdoc: Added refinements document based on 4308 the specification from the wiki. 4309 * doc/syntax.rdoc: Added link to refinements document. 4310 4311Wed Jan 23 16:29:09 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4312 4313 * win32/win32.c (rb_w32_spawn, rb_w32_aspawn_flags): fix missing 4314 initialization. pointed out by phasis68 (Heesob Park) at 4315 [ruby-core:51579]. [Bug #7721] 4316 4317Wed Jan 23 16:18:04 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4318 4319 * lib/mkmf.rb (MakeMakefile#try_constant): fix for large unsigned. 4320 4321 * lib/mkmf.rb (MakeMakefile#try_constant): fix for larger constants. 4322 4323 * test/mkmf/test_constant.rb: tests for try_constant. 4324 TODO: define check_constant and use it. 4325 4326Wed Jan 23 13:35:37 2013 Koichi Sasada <ko1@atdot.net> 4327 4328 * thread_pthread.c (ruby_init_stack): ignore `STACK_END_ADDRESS' 4329 if Ruby interpreter is running on co-routine. 4330 [Feature #2294] 4331 https://bugs.ruby-lang.org/issues/2294#note-18 4332 4333Wed Jan 23 12:28:22 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4334 4335 * win32/win32.c (rb_w32_spawn, rb_w32_aspawn_flags): check the results 4336 of acp_to_wstr() which can return NULL. [ruby-core:51557] [Bug #7721] 4337 4338Wed Jan 23 10:40:49 2013 Eric Hodel <drbrain@segment7.net> 4339 4340 * doc/syntax/assignment.rdoc (Implicit Array Assignment): Clarify 4341 that "left-hand side" means "of the assignment". Suggested by Jorge 4342 Dias. 4343 * doc/syntax/assignment.rdoc (Multiple Assignment): ditto. 4344 4345Wed Jan 23 10:34:47 2013 Eric Hodel <drbrain@segment7.net> 4346 4347 * doc/syntax/assignment.rdoc (Local Variables and Methods): Fixed 4348 example showing caching of a method's results into a local variable. 4349 Added not about using an explicit receiver to call a method that 4350 matches a local variable. Suggested by markov_twain on twitter. 4351 4352Wed Jan 23 10:20:08 2013 Eric Hodel <drbrain@segment7.net> 4353 4354 * lib/README: Fixed typo. Patch by Pradeep Sahoo. 4355 Fixes #240 on github 4356 4357Wed Jan 23 09:53:39 2013 Eric Hodel <drbrain@segment7.net> 4358 4359 * lib/rdoc/servlet.rb: Fixed display of site and home documentation. 4360 Fixes rdoc issue #170 by Thomas Leitner. 4361 * test/rdoc/test_rdoc_servlet.rb: Test for above. 4362 4363 * lib/rdoc/code_object.rb: Split #initialize_visibility from 4364 #initialize for reuse when loading a stored object. 4365 Fixes rdoc issue #171 by Thomas Leitner. 4366 4367 * lib/rdoc/any_method.rb: Initialize visibility for #display? For 4368 rdoc issue #171 4369 * lib/rdoc/attr.rb: ditto. 4370 * lib/rdoc/class_module.rb: ditto. 4371 * lib/rdoc/top_level.rb: ditto. 4372 * test/rdoc/test_rdoc_any_method.rb: Test for above. 4373 * test/rdoc/test_rdoc_attr.rb: ditto. 4374 * test/rdoc/test_rdoc_class_module.rb: ditto. 4375 * test/rdoc/test_rdoc_constant.rb: ditto. 4376 * test/rdoc/test_rdoc_top_level.rb: ditto. 4377 4378Wed Jan 23 06:43:26 2013 Eric Hodel <drbrain@segment7.net> 4379 4380 * lib/rubygems/test_case.rb: Use Dir.tmpdir for rubygems tests instead 4381 of ./tmp/test. Fixes [ruby-trunk - Bug #7717] 4382 4383Tue Jan 22 22:58:03 2013 Akinori MUSHA <knu@iDaemons.org> 4384 4385 * misc/ruby-electric.el (ruby-electric-curlies): Fix the bug where 4386 an open curly inserted in a string is always replaced with a 4387 hash sign. 4388 4389Mon Jan 21 15:41:33 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4390 4391 * tool/mkconfig.rb: BASERUBY is transient at core build. 4392 4393Mon Jan 21 13:51:21 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4394 4395 * lib/mkmf.rb ($extmk): traverse parent directories for the case 4396 srcdir is a symlink. 4397 4398Sun Jan 20 23:55:37 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4399 4400 * marshal.c (w_object, r_object0): separate respond_to checks and 4401 calling, and get back to the old behavior for 2.0. [Bug #7564] 4402 4403Sun Jan 20 22:24:28 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4404 4405 * tool/vpath.rb (VPath#def_options): hack for msys make, which 4406 converts a command line argument to non-msys command seems like a 4407 path list automagically. [Bug #7710] [ruby-core:51489] 4408 4409Sat Jan 19 11:35:00 2013 Zachary Scott <zachary@zacharyscott.net> 4410 4411 * struct.c (Struct.new): Document Struct.new with block 4412 Patch by Hiroyuki Iwatsuki [Bug #7674] 4413 4414Sat Jan 19 09:52:46 2013 Eric Hodel <drbrain@segment7.net> 4415 4416 * doc/syntax/miscellaneous.rdoc: Added section on defined? 4417 4418Sat Jan 19 09:27:31 2013 Eric Hodel <drbrain@segment7.net> 4419 4420 * doc/syntax/assignment.rdoc (Local Variables and Methods): Made it 4421 more clear that local variables are created by the parser, not 4422 execution. Thanks to John Hawthorn. 4423 4424Sat Jan 19 09:15:58 2013 Eric Hodel <drbrain@segment7.net> 4425 4426 * doc/syntax/assignment.rdoc: Improved links 4427 * doc/syntax/methods.rdoc: ditto. 4428 4429 * doc/syntax.rdoc: Added link to assignment document 4430 4431Sat Jan 19 08:47:33 2013 Eric Hodel <drbrain@segment7.net> 4432 4433 * doc/syntax/assignment.rdoc: Added a syntax document on assignment. 4434 4435Fri Jan 18 14:11:01 2013 Eric Hodel <drbrain@segment7.net> 4436 4437 * doc/syntax/methods.rdoc: Added Array Decomposition. 4438 4439Fri Jan 18 12:54:21 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4440 4441 * tool/rbinstall.rb (gem): Gem.ensure_gem_subdirectories makes 4442 subdirectories group-writable, so make them with $dir_mode. 4443 4444Fri Jan 18 11:24:33 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4445 4446 * ext/win32ole/win32ole.c (ole_initialize): uninitialize OLE at thread 4447 ends. [Bug #2618] [ruby-core:27634] 4448 4449 * ext/win32ole/win32ole.c (ole_initialize): initialize OLE for each 4450 threads. [Bug #2618] [ruby-core:27634] 4451 4452Thu Jan 17 22:10:35 2013 Kouhei Sutou <kou@cozmixng.org> 4453 4454 * lib/rubygems/ext/builder.rb (Gem::Ext::Builder.make): Remove 4455 .time dependency from *.rb install target. It causes needless 4456 *.rb install. [Bug #7698] [ruby-core:51437] 4457 Reported by Tadashi Saito. Thanks!!! 4458 * test/rubygems/test_gem_installer.rb 4459 (TestGemInstaller#test_install_extension_and_script): Add a test 4460 for the above change. 4461 4462Thu Jan 17 21:08:20 2013 Kouhei Sutou <kou@cozmixng.org> 4463 4464 * eval.c: Fix a typo in ruby_finalize() documentation. 4465 4466Thu Jan 17 20:28:18 2013 Benoit Daloze <eregontp@gmail.com> 4467 4468 * object.c: Typo in Kernel#hash documentation. 4469 Patch by zed_0xff [Github Fixes #237] 4470 4471Thu Jan 17 10:48:56 2013 Aaron Patterson <aaron@tenderlovemaking.com> 4472 4473 * ext/psych/lib/psych/scalar_scanner.rb: use constants rather than 4474 calculating Inf and NaN. 4475 4476Thu Jan 17 10:21:05 2013 Eric Hodel <drbrain@segment7.net> 4477 4478 * doc/syntax/miscellaneous.rdoc: Added Ending an Expression and 4479 indentation. 4480 4481Thu Jan 17 09:30:21 2013 Eric Hodel <drbrain@segment7.net> 4482 4483 * lib/rubygems/installer.rb: Untaint string when checking output 4484 for $SAFE=1 4485 4486 * lib/rubygems/specification.rb: Keep previously loaded specs as 4487 active. This prevents double loading when refreshing the gem list. 4488 * test/rubygems/test_gem.rb: Test for above 4489 4490 * lib/rubygems.rb: Bump version to 2.0.0.rc.2 4491 4492Thu Jan 17 09:08:37 2013 Eric Hodel <drbrain@segment7.net> 4493 4494 * doc/syntax/control_expressions.rdoc: Added ? : ternary if 4495 4496Thu Jan 17 08:36:04 2013 Eric Hodel <drbrain@segment7.net> 4497 4498 * doc/syntax/miscellaneous.rdoc: Added documentation for alias, undef, 4499 BEGIN, END. 4500 * doc/syntax/modules_and_classes.rdoc (Constants): Fixed unwrapped 4501 paragraph with trailing whitespace. 4502 * doc/syntax/modules_and_classes.rdoc (Scope): Added section pointing 4503 to alias and undef documentation. 4504 * doc/syntax.rdoc: Added link to miscellaneous section. 4505 4506Thu Jan 17 07:50:26 2013 Eric Hodel <drbrain@segment7.net> 4507 4508 * doc/syntax/control_expressions.rdoc (Flip-Flop): Added a section on 4509 the flip-flop. 4510 4511Thu Jan 17 06:59:51 2013 Eric Hodel <drbrain@segment7.net> 4512 4513 * doc/syntax/control_expressions.rdoc (if Expressions): Fixed markup 4514 error. Fixes #235 on github by FlyingFoX. 4515 4516Thu Jan 17 06:53:58 2013 Eric Hodel <drbrain@segment7.net> 4517 4518 * doc/syntax/literals.rdoc (Strings): Fixed typo. Fixes #236 on 4519 github by Doug Yun. 4520 4521Wed Jan 16 18:45:46 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4522 4523 * ext/win32ole/lib/win32ole.rb: use TracePoint to hook all thread 4524 creation not only by Thread.new and to get rid of interference with 4525 svar scope. [Bug #7681] [ruby-core:51365] 4526 4527Wed Jan 16 09:35:53 2013 Eric Hodel <drbrain@segment7.net> 4528 4529 * .document: Removed extra space 4530 * lib/irb/lc/.document: Hide help-message 4531 * lib/minitest/.document: Hide README.txt 4532 * lib/rake/lib/.document: Hide project.rake 4533 * lib/rdoc/generator/template/json_index/.document: Hide JavaScript 4534 files 4535 * lib/rubygems/ssl_certs/.document: Hide PEM files. 4536 4537Wed Jan 16 03:54:28 2013 Eric Hodel <drbrain@segment7.net> 4538 4539 * doc/syntax/control_expressions.rdoc: Omit optional "then" for if and 4540 unless expressions. Improved description of "a if a = 0.zero?" 4541 NameError. Note that "do" for for loop is optional. 4542 4543Wed Jan 16 03:28:47 2013 Eric Hodel <drbrain@segment7.net> 4544 4545 * doc/syntax/calling_methods.rdoc: Link to defining methods. 4546 * doc/syntax/methods.rdoc: Link to calling methods, fixed typo. 4547 4548Wed Jan 16 03:15:00 2013 Eric Hodel <drbrain@segment7.net> 4549 4550 * doc/syntax/methods.rdoc: Fixed link 4551 * doc/syntax/modules_and_classes.rdoc: Fixed link 4552 * doc/syntax.rdoc: Updated with links to the recently added pages 4553 4554Wed Jan 16 03:05:50 2013 Eric Hodel <drbrain@segment7.net> 4555 4556 * doc/syntax/control_expressions.rdoc (redo Statement): Added note 4557 about retry. 4558 * doc/syntax/exceptions.rdoc: Added retry statement 4559 4560Tue Jan 15 23:12:34 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4561 4562 * tool/vpath.rb (VPath#list): default separator to PATH_SEPARATOR from 4563 configure.in for make, not same name constant of File for use in ruby. 4564 4565Tue Jan 15 22:30:04 2013 Keiju Ishitsuka <keiju@ishitsuka.com> 4566 4567 * lib/irb/ext/save-history.rb: identify rightly a status of a 4568 history file that already exists [Bug #7694]. Thanks Nobuhiro IMAI 4569 for this patch. 4570 4571Tue Jan 15 15:55:28 2013 Eric Hodel <drbrain@segment7.net> 4572 4573 * doc/syntax/control_expressions.rdoc: Added description of control 4574 expressions in ruby. 4575 4576Tue Jan 15 13:33:00 2013 Eric Hodel <drbrain@segment7.net> 4577 4578 * doc/syntax/methods.rdoc (Method Names): Added method names including 4579 operator methods. 4580 * doc/syntax/methods.rdoc (Return Values): Added note that assignment 4581 methods ignore return values. 4582 * doc/syntax/precedence.rdoc: Added document describing precedence. 4583 4584Tue Jan 15 11:49:31 2013 Eric Hodel <drbrain@segment7.net> 4585 4586 * doc/syntax/methods.rdoc (Block Argument): Added section on block 4587 argument. Thanks to Andy Lindeman. 4588 4589Tue Jan 15 10:54:59 2013 Eric Hodel <drbrain@segment7.net> 4590 4591 * doc/syntax/calling_methods.rdoc (Arguments): Added improved 4592 introduction to arguments including passing style and lazy 4593 evaluation. Thanks to Matt Aimonetti. 4594 * doc/syntax/calling_methods.rdoc (Positional Arguments): Added 4595 description for sending a message to a method with *arguments 4596 * doc/syntax/calling_methods.rdoc (Default Positional Arguments): 4597 Added description. Thanks to Andy Lindeman. 4598 * doc/syntax/calling_methods.rdoc (Block Local Arguments): 4599 Added description of block locals. Thanks to Justin Collins. 4600 * doc/syntax/calling_methods.rdoc (Hash to Keyword Arguments): Added 4601 section describing ** operator. Thanks to Justin Collins. 4602 4603Tue Jan 15 10:40:18 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4604 4605 * test_lazy_enumerator: Test that map & flat_map also require a block 4606 4607Tue Jan 15 09:22:47 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 4608 4609 * thread_pthread.c (gvl_init): Reset gvl.wait_yield explicitly when 4610 fork()ing. Patch by Apollon Oikonomopoulos. Thanks! 4611 [Bug #7693][ruby-core:51424] 4612 4613Tue Jan 15 09:27:56 2013 Eric Hodel <drbrain@segment7.net> 4614 4615 * doc/syntax/calling_methods.rdoc (Receiver): Added :: as pointed out 4616 by Tony Arcieri 4617 * doc/syntax/calling_methods.rdoc (Block Argument): Fixed { } block 4618 examples as pointed out by David Copeland. 4619 4620Tue Jan 15 09:10:29 2013 Eric Hodel <drbrain@segment7.net> 4621 4622 * doc/syntax/methods.rdoc (Array/Hash Argument): Moved above Keyword 4623 Arguments 4624 * doc/syntax/methods.rdoc (Keyword Arguments): Described ** for 4625 gathering arbitrary keyword arguments. 4626 4627Tue Jan 15 08:56:37 2013 Eric Hodel <drbrain@segment7.net> 4628 4629 * doc/syntax/calling_methods.rdoc: Added document describing method 4630 calls. 4631 4632Tue Jan 15 07:39:21 2013 Eric Hodel <drbrain@segment7.net> 4633 4634 * lib/rdoc/top_level.rb: Fixed extension trimming for page names in 4635 RDoc HTML output. [ruby-trunk - Bug #7673] 4636 * test/rdoc/test_rdoc_top_level.rb: Test for above. 4637 4638Mon Jan 14 23:06:41 2013 Keiju Ishitsuka <keiju@ishitsuka.com> 4639 4640 * lib/irb/ext/save-history.rb: outputs its history to 4641 owner-only-readable file and change the permission of a file that 4642 already exists [Bug #7694]. Thanks Nobuhiro IMAI for bug reports. 4643 4644Mon Jan 14 17:12:48 2013 Shugo Maeda <shugo@ruby-lang.org> 4645 4646 * enumerator.c (lazy_flat_map_func): flat_map should call each only 4647 when the value of a block returns a forcable object. 4648 [ruby-core:51401] [Bug #7690] 4649 4650 * enumerator.c (lazy_flat_map): add documentation. 4651 4652 * test/ruby/test_lazy_enumerator.rb: related test. 4653 4654Mon Jan 14 16:42:28 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4655 4656 * enumerator.c: Require block for Lazy#{take|drop}_while [Bug #7692] 4657 4658Mon Jan 14 14:41:00 2013 Kenta Murata <mrkn@mrkn.jp> 4659 4660 * ext/bigdecimal/bigdecimal.c (BigDecimal_to_s): use CRuby style. 4661 4662Mon Jan 14 14:39:00 2013 Kenta Murata <mrkn@mrkn.jp> 4663 4664 * ext/bigdecimal/bigdecimal.c: use `RB_TYPE_P(x, t)` instead of 4665 `TYPE(x) == t`. 4666 4667Mon Jan 14 10:18:56 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4668 4669 * enumerator.c: Fix size for Enumerator::Lazy#flat_map 4670 4671Mon Jan 14 07:12:52 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4672 4673 * lib/matrix/lup_decomposition: Fix bugs with LUP Decomposition of 4674 rectangular matrices. [rubyspec:ba849801a85] 4675 4676Mon Jan 14 06:46:53 2013 NARUSE, Yui <naruse@ruby-lang.org> 4677 4678 * regparse.c (add_ctype_to_cc): don't check dup warn on adding 4679 negative ctype to cclass. [Bug #7471] [ruby-core:50344] 4680 4681Mon Jan 14 06:06:03 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4682 4683 * lib/matrix/eigenvalue_decomposition: Backport bugfix of Jama 1.0.3 4684 [rubyspec:df87040be371] 4685 4686Sun Jan 13 16:45:00 2013 Zachary Scott <zachary@zacharyscott.net> 4687 4688 * ext/psych/yaml/scanner.c: Fix typos, patch by James Dabbs 4689 [Github tenderlove/psych#118] 4690 4691Sun Jan 13 15:00:00 2013 Kenta Murata <mrkn@mrkn.jp> 4692 4693 * ext/bigdecimal/bigdecimal.c (BigDecimal_sub): 4694 need to specify precision for converting Rational and Float. 4695 [ruby-dev:46544] [Bug #7404] 4696 4697 * ext/bigdecimal/bigdecimal.c (BigDecimal_mult): ditto. 4698 4699 * ext/bigdecimal/bigdecimal.c (BigDecimal_divide): ditto. 4700 4701 * ext/bigdecimal/bigdecimal.c (BigDecimal_DoDivmod): ditto. 4702 4703 * ext/bigdecimal/bigdecimal.c (BigDecimal_divremain): ditto. 4704 4705 * test/bigdecimal/test_bigdecimal.rb: add tests for the above fixes. 4706 4707Sun Jan 13 14:48:55 2013 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 4708 4709 * lib/matrix/eigenvalue_decomposition: Fix eigensystem with complex 4710 eigenvectors. Patch by pypypy567. 4711 [Bug #7208] [ruby-dev:46251] [rubyspec:242f8e55bd] 4712 4713 * lib/matrix/lup_decomposition.rb: Fix error for rectangular matrices 4714 [bug#7620] [ruby-core:51118] [rubyspec:41f833ee2] 4715 4716Sun Jan 13 14:06:00 2013 Zachary Scott <zachary@zacharyscott.net> 4717 4718 * lib/irb.rb, lib/prime.rb: Typos in overview 4719 Patch by Ershad K [Github Fixes #234] 4720 4721Sun Jan 13 13:40:00 2013 Zachary Scott <zachary@zacharyscott.net> 4722 4723 * lib/open3.rb : Typo in Open3 overview. Patch by zed_0xff 4724 [Github Fixes #233] 4725 4726Sat Jan 12 17:42:00 2013 Kenta Murata <mrkn@cookpad.com> 4727 4728 * numeric.c (do_coerce): fix for the exceptions which the coerce 4729 method raises. The optimization done by r38756 is preserved. 4730 [Bug #7645] [ruby-core:51213] 4731 4732Sat Jan 12 16:12:46 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4733 4734 * win32/setup.mak (-runtime-): see msvcrt from link header on mswin 4735 instead of running testing executable file, for cross compiling. 4736 4737Sat Jan 12 08:58:47 2013 Aaron Patterson <aaron@tenderlovemaking.com> 4738 4739 * ext/psych/lib/psych/visitors/to_ruby.rb: merge key values that 4740 contain something besides a hash should be left in tact. 4741 4742 * test/psych/test_merge_keys.rb: test for change 4743 4744Sat Jan 12 07:52:47 2013 Masaki Suketa <masaki.suketa@nifty.ne.jp> 4745 4746 * ext/win32ole/win32ole.c (ole_set_byref): support VT_UI8|VT_BYREF, 4747 VT_I8|VT_BYREF in cygwin and mingw. 4748 4749 * ext/win32ole/win32ole.c (ole_variant2val): ditto. 4750 4751 * test/win32ole/test_win32ole_variant.rb (test_s_new_with_i8_byref): 4752 ditto. 4753 4754 * test/win32ole/test_win32ole_variant.rb (test_s_new_with_ui8_byref): 4755 ditto. 4756 4757Sat Jan 12 02:45:00 2013 Zachary Scott <zachary@zacharyscott.net> 4758 4759 * man/ruby.1 (options): include --*-encoding from r38784 4760 4761Fri Jan 11 23:34:48 2013 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 4762 4763 * ruby.c (usage): sort --*-encoding in help. (same order of -E) 4764 4765Fri Jan 11 16:56:29 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4766 4767 * tool/mkconfig.rb: use configured libdir value to fix 4768 --enable-load-relative on systems where libdir is not default value, 4769 overridden in config.site files. [ruby-core:47267] [Bug #6903] 4770 4771Fri Jan 11 11:59:32 2013 NARUSE, Yui <naruse@ruby-lang.org> 4772 4773 * string.c (dispose_string): use rb_str_free for freeing string in 4774 parse.y. by Sokolov Yura <funny.falcon@gmail.com> 4775 https://github.com/ruby/ruby/pull/87 fix GH-87 4776 4777Fri Jan 11 09:56:22 2013 Shugo Maeda <shugo@ruby-lang.org> 4778 4779 * insns.def (defineclass): private constants should not be accessed 4780 by scoped module definitions. The bug was introduced in r38495. 4781 4782 * test/ruby/test_module.rb: related test. 4783 4784Fri Jan 11 02:11:59 2013 Shugo Maeda <shugo@ruby-lang.org> 4785 4786 * lib/rbconfig/obsolete.rb (respond_to_missing?): use send because 4787 RbConfig.respond_to_missing? is now private. 4788 4789Thu Jan 10 22:00:58 2013 Koichi Sasada <ko1@atdot.net> 4790 4791 * vm_core.h (VM_DEBUG_BP_CHECK): set 0 as default. 4792 This flag specifies checking BP consistency on each frame popping. 4793 Now, we don't have any trouble on it, so I remove it. 4794 If you feel any bugs about VM execution, then set it to 1. 4795 4796Thu Jan 10 21:03:05 2013 TAKANO `takano32' Mitsuhiro <tak@no32.tk> 4797 4798 * cont.c: define FIBER_USE_NATIVE as 0 in ia64. 4799 4800Thu Jan 10 19:39:05 2013 TAKANO `takano32' Mitsuhiro <tak@no32.tk> 4801 4802 * thread.c: fix RB_GC_SAVE_MACHINE_REGISTER_STACK define for ia64. 4803 4804Thu Jan 10 17:45:39 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4805 4806 * Makefile.in, win32/Makefile.sub ($(MKFILES)): continue if Makefile 4807 unchanged. 4808 4809Thu Jan 10 16:31:20 2013 Shugo Maeda <shugo@ruby-lang.org> 4810 4811 * vm_insnhelper.c (vm_search_super_method): raise a TypeError 4812 instead of a NotImplementedError if self is not an instance of the 4813 current class. [ruby-dev:39772] [Bug #2402] 4814 4815Thu Jan 10 16:47:18 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4816 4817 * ext/tk/extconf.rb (find_tcltk_header): use have_header instead of 4818 try_cpp, which is incredibly slow with VC. 4819 4820Thu Jan 10 15:55:28 2013 Shugo Maeda <shugo@ruby-lang.org> 4821 4822 * numeric.c (do_coerce): remove an unused variable. 4823 4824Thu Jan 10 15:35:55 2013 Shugo Maeda <shugo@ruby-lang.org> 4825 4826 * tool/gen_dummy_probes.rb: remove comments in probes.d to fix the 4827 compilation error introduced by r38755. 4828 4829Thu Jan 10 11:15:04 2013 Kenta Murata <mrkn@cookpad.com> 4830 4831 * numeric.c (do_coerce): speed optimization by using rb_check_funcall 4832 instead of rb_rescue + rb_funcall. 4833 This fix is based on the patch by Benoit Daloze. 4834 [Bug #7645] [ruby-core:51213] 4835 4836Thu Jan 10 11:15:04 2013 Aaron Patterson <aaron@tenderlovemaking.com> 4837 4838 * probes.d: updating probes to be more symmetrical, adding 4839 documentation. 4840 4841 * load.c: ditto 4842 4843Thu Jan 10 04:23:07 2013 Aaron Patterson <aaron@tenderlovemaking.com> 4844 4845 * ext/psych/lib/psych/scalar_scanner.rb: strip trailing dots from 4846 floats so that Float() will not raise an exception. 4847 4848 * test/psych/test_numeric.rb: test to ensure "1." can be loaded 4849 4850 * test/psych/test_string.rb: make sure "1." can round trip 4851 4852Thu Jan 10 03:38:40 2013 Aaron Patterson <aaron@tenderlovemaking.com> 4853 4854 * ext/psych/lib/psych/visitors/yaml_tree.rb: ascii only binary strings 4855 will be dumped as unicode. Thanks Paul Kunysch! 4856 4857 * test/psych/test_string.rb: appropriate test 4858 4859Thu Jan 10 03:29:55 2013 Koichi Sasada <ko1@atdot.net> 4860 4861 * compile.c (compile_array_): modify wrong optimization. 4862 A script "[print(1)]; print(2)" should output "12". 4863 However, the compiler had eliminated "[print(1)]" expression 4864 because it is void expression (unused array). 4865 Of course, side-effect should be remained. 4866 This issue is reported by Masaya Tarui. 4867 4868 * bootstraptest/test_literal.rb: add a test. 4869 4870Wed Jan 9 22:07:42 2013 Masaki Matsushita <glass.saga@gmail.com> 4871 4872 * load.c (load_lock): if thread shield is destroyed and there is no 4873 waiting thread, insert new thread shield into load_table. 4874 [Bug #7530] [ruby-core:50645] 4875 4876Wed Jan 9 21:43:32 2013 Masaki Matsushita <glass.saga@gmail.com> 4877 4878 * load.c (load_lock): revert r38744. it should acquire new thread 4879 shield. 4880 4881Wed Jan 9 15:40:18 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4882 4883 * vm.c (th_init, ruby_thread_init): initialize root_svar with Qnil, 4884 since lep_svar_place() expects uninitialized svar to be nil, not 0. 4885 4886Wed Jan 9 13:20:23 2013 Masaki Matsushita <glass.saga@gmail.com> 4887 4888 * test/ruby/test_require.rb: improve test for r38744. 4889 fix to use Tempfile instead of temporary file in current directory. 4890 the patch is from nobu (Nobuyoshi Nakada). 4891 4892Wed Jan 9 09:53:23 2013 Masaki Matsushita <glass.saga@gmail.com> 4893 4894 * load.c (load_lock): fix not to delete thread shield twice. 4895 it may break the shield locked by another thread. 4896 [Bug #7530] [ruby-core:50645] 4897 4898 * test/ruby/test_require.rb: a test for above. 4899 4900Wed Jan 9 02:13:22 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4901 4902 * include/ruby/ruby.h (RBasic): to be aligned on a VALUE size 4903 boundary. [Bug #7647] 4904 4905Tue Jan 8 14:41:41 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4906 4907 * vm_core.h (rb_iseq_t): move flip_cnt from struct iseq_compile_data, 4908 because it has same life span as enclosing iseq. [Bug #7671] 4909 [ruby-core:51296] 4910 4911Mon Jan 7 23:43:00 2013 Kenta Murata <mrkn@mrkn.jp> 4912 4913 * ext/bigdecimal/bigdecimal.c (rmpd_power_by_big_decimal): 4914 add RB_GC_GUARD to prevent the intermediate object is GCed too early. 4915 This patch was made by Yusuke Endoh. [Bug #7044] [ruby-core:47632] 4916 4917 * test/bigdecimal/test_bigdecimal.rb: add a reproduction test for 4918 the issue [Bug #7044] 4919 4920Mon Jan 7 21:40:36 2013 Shugo Maeda <shugo@ruby-lang.org> 4921 4922 * vm_method.c (Init_eval_method): main.public and main.private 4923 should be private. 4924 4925 * proc.c (Init_Proc): main.define_method should be private. 4926 4927 * test/ruby/test_module.rb: related test. 4928 4929Mon Jan 7 20:48:47 2013 Shugo Maeda <shugo@ruby-lang.org> 4930 4931 * eval.c (Init_eval): main.include should be private. 4932 [ruby-core:51293] [Bug #7670] 4933 4934 * test/ruby/test_module.rb (test_top_include_is_private): a new test 4935 for the above change. 4936 4937Mon Jan 7 20:29:50 2013 Shugo Maeda <shugo@ruby-lang.org> 4938 4939 * NEWS: remove description about `require "refinement"'. 4940 4941Mon Jan 7 20:15:49 2013 Shugo Maeda <shugo@ruby-lang.org> 4942 4943 * eval.c (Init_eval): enable Refinements by default. 4944 [ruby-core:51286] [Bug #7667] 4945 4946 * eval.c (rb_mod_refine, top_using): show a warning when 4947 Module#refine or main.using is called at the first time. 4948 4949 * ext/refinement/*: removed the extension library "refinement". 4950 4951 * test/ruby/test_refinement.rb: fix for the above changes. 4952 4953Mon Jan 7 17:34:22 2013 Koichi Sasada <ko1@atdot.net> 4954 4955 * include/ruby/ruby.h (RUBY_EVENT_SPECIFIED_LINE): make it special. 4956 This flag is not contained by RUBY_EVENT_TRACEPOINT_ALL. 4957 This event is experimental one. It is possible to remove/rename 4958 flag name after 2.0.1. 4959 4960 * vm_trace.c (get_event_id): return :line if SPECIFIED_LINE was 4961 occurred. `:specified_line' never been returned. 4962 4963Mon Jan 7 15:42:10 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4964 4965 * parse.y (f_kwrest): allow bare kwrest_mark as valid syntax. its 4966 semantics is still undefined. [Bug #7662] [ruby-core:51269] 4967 4968Mon Jan 7 15:31:58 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4969 4970 * parse.y (f_kwrest): reject duplicated kwrest argument name. 4971 4972Mon Jan 7 15:24:10 2013 Koichi Sasada <ko1@atdot.net> 4973 4974 * vm_trace.c (rb_threadptr_exec_event_hooks_orig): pop tag before 4975 JUMP_TAG() if frame is `finish' frame. 4976 Without this patch, there is an inconsistency between control 4977 frame stack and tags stack. 4978 [Bug #7668] 4979 4980 * test/ruby/test_settracefunc.rb: add a test for above. 4981 4982Mon Jan 7 15:21:48 2013 NAKAMURA Usaku <usa@ruby-lang.org> 4983 4984 * Makefile.in, common.mk (fake, yes-fake, no-make): these dependencies 4985 are not platform dependent. 4986 4987 * win32/Makefile.sub ($(arch)-fake.rb): workaround. 4988 4989Mon Jan 7 12:09:24 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 4990 4991 * vm_insnhelper.c (vm_callee_setup_arg_complex, vm_yield_setup_block_args): 4992 set keyrest hash after making rest array, so that the last element 4993 will not be overwritten. [ruby-core:51278] [Bug #7665] 4994 4995Mon Jan 7 09:37:24 2013 Koichi Sasada <ko1@atdot.net> 4996 4997 * NEWS: add a NEWS entry about RubyVM. 4998 4999Sun Jan 6 19:06:57 2013 Yuki Yugui Sonoda <yugui@yugui.jp> 5000 5001 * win32/Makefile.sub: Fix build with VC. 5002 Patch by Charlie Savage. Fixes [ruby-core:51261] 5003 5004Sun Jan 6 18:43:48 2013 Yuki Yugui Sonoda <yugui@yugui.jp> 5005 5006 * bootstraptest/test_io.rb: add a test for [ruby-dev:46834]. 5007 5008 * io.c (rb_cloexec_fcntl_dupfd) Use an emulation with dup(2) when 5009 fcntl(2) and/or F_DUPFD is unavailable. 5010 Suggested by akr. 5011 5012 * configure.in (HAVE_FCNTL): NativeClient does not provide fcntl(2). 5013 5014Sun Jan 6 11:11:26 2013 Eric Hodel <drbrain@segment7.net> 5015 5016 * doc/syntax/modules_and_classes.rdoc: Fixed typo. 5017 5018Sun Jan 6 05:35:18 2013 Eric Hodel <drbrain@segment7.net> 5019 5020 * doc/syntax/modules_and_classes.rdoc: Added singleton classes 5021 documentation. 5022 5023Sun Jan 6 02:22:00 2013 Zachary Scott <zachary@zacharyscott.net> 5024 5025 * lib/webrick/httpservlet/abstract.rb (WEBrick::HTTPServlet): Typo in 5026 example. Patch by shlensky [Fixes #232 on github] 5027 5028Sat Jan 5 21:15:10 2013 NARUSE, Yui <naruse@ruby-lang.org> 5029 5030 * lib/net/http/generic_request.rb: 5031 Amazon ECA API and GTE/1.3 disallow requests whose host has port 5032 number if its port number equals to default port number of the 5033 scheme. [Bug #7650] 5034 5035Sat Jan 5 13:58:59 2013 Eric Hodel <drbrain@segment7.net> 5036 5037 * doc/syntax/modules_and_classes.rdoc: Improved description of methods 5038 on a module or class as suggested by Tobias Buhlmann 5039 5040Sat Jan 5 13:38:07 2013 Masaki Matsushita <glass.saga@gmail.com> 5041 5042 * string.c (rb_str_enumerate_lines): fix invalid byte sequence error 5043 when a separator is passed. The patch is from yoshidam (Yoshida 5044 Masato). 5045 [Bug #7646] [ruby-dev:46827] 5046 5047 * test/ruby/test_string.rb: a test for above. 5048 5049Sat Jan 5 12:25:42 2013 Nobuyoshi Nakada <nobu@ruby-lang.org> 5050 5051 * test/ruby/envutil.rb (Test::Unit::Assertions#assert_in_out_err): 5052 check stdout and stderr both. 5053 5054Sat Jan 5 10:21:54 2013 Eric Hodel <drbrain@segment7.net> 5055 5056 * doc/syntax/modules_and_classes.rdoc: Added documentation of syntax 5057 for Modules and Classes. 5058 * doc/syntax/methods.rdoc: Moved some text to the Modules and 5059 Classes syntax document. 5060 5061Sat Jan 5 08:38:27 2013 Eric Hodel <drbrain@segment7.net> 5062 5063 * doc/syntax/methods.rdoc: Added return values and scope sections, 5064 slightly modified from the original patch. Fixes #227 from github by 5065 Dave Brown. 5066 5067Sat Jan 5 08:21:41 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 5068 5069 * io.c (rb_cloexec_fcntl_dupfd): improve #ifdef condition. 5070 * io.c (rb_maygvl_fd_fix_cloexec): ditto. 5071 5072Sat Jan 5 07:54:59 2013 Eric Hodel <drbrain@segment7.net> 5073 5074 * lib/rubygems/commands/cleanup_command.rb: Clean all possible gems 5075 using multiple passes. Fixes RubyGems bug #422. Refactored for 5076 maintainability. 5077 * test/rubygems/test_gem_commands_cleanup_command.rb: Test for above. 5078 5079Sat Jan 5 05:04:39 2013 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 5080 5081 * gc.c (vm_xrealloc): add a few comment why we avoid realloc(ptr,0). 5082 5083Fri Jan 4 20:17:06 2013 Yuki Yugui Sonoda <yugui@yugui.jp> 5084 5085 * Makefile.in (RBCONFIG): Moved from common.mk in order to use the 5086 variable in Makefile.in. 5087 5088 * win32/Makefile.sub (RBCONFIG): Ditto. 5089 5090Fri Jan 4 19:45:50 2013 Yuki Yugui Sonoda <yugui@yugui.jp> 5091 5092 * common.mk (run, parse): Use BTESTRUBY instead of MINIRUBY to handle 5093 cross-compiling cases, e.g. NativeClient. 5094 5095Fri Jan 4 17:58:16 2013 Yuki Yugui Sonoda <yugui@yugui.jp> 5096 5097 * common.mk (yes-btest): btest depends on also $(arch)-fake.rb and 5098 rbconfig.rb on building for NativeClient. 5099 5100 * Makefile.in (fake): Avoid generating $(arch)-fake.rb unless cross 5101 compiling. 5102 5103 * configure.in (CROSS_COMPILING): New substitution. 5104 5105Fri Jan 4 16:26:45 2013 Eric Hodel <drbrain@segment7.net> 5106 5107 * lib/rubygems/doctor.rb: Process directories in order in case the 5108 filesystem doesn't. [ruby-trunk - Bug #7618] 5109 5110 Process specifications before other directories in case of bugs. 5111 * test/rubygems/test_gem_doctor.rb: Test for above. 5112 5113 * lib/rubygems.rb: Updated version. 5114 5115 * test/rubygems/test_require.rb: Fixed double require of 5116 benchmark.rb. RubyGems bug #420. 5117 5118 * test/rubygems/test_gem_commands_check_command.rb: Fixed unused 5119 variable warnings. 5120 * test/rubygems/test_gem_commands_query_command.rb: ditto 5121 * test/rubygems/test_gem_installer.rb: ditto 5122 5123Fri Jan 4 15:05:25 2013 Eric Hodel <drbrain@segment7.net> 5124 5125 * lib/rdoc/cross_reference.rb: Fixed matching of C#=== or #===. RDoc 5126 bug #164 5127 * test/rdoc/test_rdoc_cross_reference.rb: Test for above. 5128 5129 * lib/rdoc/parser/changelog.rb: Fixed parsing of dates. RDoc bug #165 5130 * test/rdoc/test_rdoc_parser_changelog.rb: Test for above. 5131 5132 * lib/rdoc/parser.rb: Fixed parsing multibyte files with incomplete 5133 characters at byte 1024. [ruby-trunk - Bug #6393] 5134 Fixed handling of -E. [ruby-trunk - Bug #6392] 5135 * test/rdoc/test_rdoc_options.rb: Test for above. 5136 * test/rdoc/test_rdoc_parser.rb: ditto. 5137 * test/rdoc/test_rdoc_parser_c.rb: ditto. 5138 * test/rdoc/test_rdoc_parser_changelog.rb: ditto. 5139 * test/rdoc/test_rdoc_parser_markdown.rb: ditto. 5140 * test/rdoc/test_rdoc_parser_rd.rb: ditto. 5141 * test/rdoc/test_rdoc_rdoc.rb: ditto. 5142 5143 * lib/rdoc/tom_doc.rb: Fixed parsing of [] in TomDoc arguments list. 5144 RDoc bug #167 5145 * test/rdoc/test_rdoc_tom_doc.rb: Test for above. 5146 5147 * lib/rdoc.rb: Update version. 5148 5149Fri Jan 4 11:51:00 2013 Zachary Scott <zachary@zacharyscott.net> 5150 5151 * lib/forwardable.rb: Fix rdoc parameters for ::def_single_delegator. 5152 Patch by Vladimir Andrijevik [Github Fixes #230] 5153 5154Fri Jan 4 00:35:11 2013 Yuki Yugui Sonoda <yugui@yugui.jp> 5155 5156 Fix failures on btest for NativeClient. 5157 * bootstraptest/runner.rb (nacl?): New method to distinguish NaCl 5158 cross build. 5159 5160 * bootstraptest/test_io.rb: Skip unsupported operations. 5161 5162 * bootstraptest/test_literal.rb: ditto. 5163 5164Fri Jan 4 00:29:40 2013 Yuki Yugui Sonoda <yugui@yugui.jp> 5165 5166 * io.c (rb_cloexec_fcntl_dupfd): Fix failures in 5167 bootstrap_test/test_io.rb. NativeClient does not support F_DUPFD 5168 but supports dup2(2). 5169 5170Thu Jan 3 17:46:50 2013 Kouhei Sutou <kou@cozmixng.org> 5171 5172 * lib/rexml/element.rb (REXML::Elements#add): Remove too much 5173 "elements" in document. Sorry... 5174 5175Thu Jan 3 17:42:32 2013 Kouhei Sutou <kou@cozmixng.org> 5176 5177 * lib/rexml/element.rb (REXML::Elements#each): Add missing 5178 "elements" in document. [ruby-talk:402713] 5179 Reported by Wesley Rishel. Thanks!!! 5180 5181Thu Jan 3 15:13:00 2013 Zachary Scott <zachary@zacharyscott.net> 5182 5183 * ext/psych/lib/psych.rb (Psych.load): Return value of 5184 Psych::SyntaxError.message should be same as example. 5185 Patch by Ippei Obayashi [ruby-core:51193] [Bug #7636] 5186 5187Thu Jan 3 14:58:00 2013 Zachary Scott <zachary@zacharyscott.net> 5188 5189 * lib/forwardable.rb (SingleForwardable): Fix example in overview 5190 Patch by Vladimir Andrijevik [Github Fixes #231] 5191 5192Thu Jan 3 14:32:47 2013 Yuki Yugui Sonoda <yugui@yugui.jp> 5193 5194 * configure.in (OBJCOPY): Fixes build error for NativeClient. 5195 Avoid disabling OBJCOPY for NativeClient. 5196 5197 * thread_pthread.c (rb_reserved_fd_p): USE_SLEEPY_TIMER_THREAD is 5198 always defined. Fixes compilation error for NativeClient. 5199 5200Wed Jan 02 03:09:00 2013 Zachary Scott <zachary@zacharyscott.net> 5201 5202 * ext/zlib/zlib.c (Zlib::GzipReader): Fix typo by zed_0xff 5203 [Fixes Github #229] 5204 5205Wed Jan 02 02:29:00 2013 Zachary Scott <zachary@zacharyscott.net> 5206 5207 * hash.c (rb_hash_update): Revert documentation from r38672 5208 See: https://github.com/ruby/ruby/pull/228#issuecomment-11791013 5209 5210Wed Jan 02 02:16:00 2013 Zachary Scott <zachary@zacharyscott.net> 5211 5212 * hash.c (rb_hash_update): Documentation for Hash#merge and shallow 5213 copies Patch by Yorick Peterse [Fixes Github #228] 5214 5215Mon Dec 31 15:10:00 2012 Zachary Scott <zachary@zacharyscott.net> 5216 5217 * vm_backtrace.c: Add documentation for Kernel#caller_locations, 5218 Kernel#caller, and Thread::Backtrace::Location 5219 5220Mon Dec 31 13:05:00 2012 Zachary Scott <zachary@zacharyscott.net> 5221 5222 * test/ruby/test_backtrace.rb: Add test for r37957 [Feature #7434] 5223 5224Sun Dec 30 23:33:36 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5225 5226 * parse.y (simple_re_meta): escaped closing parenthesis has different 5227 meaning. [Bug #7610] [ruby-core:51088] 5228 5229Sun Dec 30 12:09:47 2012 Charlie Somerville <charlie@charliesomerville.com> 5230 5231 * configure.in: use 4 argument form of AC_CHECK_HEADERS to force 5232 autoconf to use compiler's result 5233 5234Sun Dec 30 10:58:04 2012 Kazuki Tsujimoto <kazuki@callcc.net> 5235 5236 * test/ruby/test_keyword.rb: add a test for passing hash 5237 as a last argument. [ruby-dev:46712] [Bug #7529] 5238 5239Sun Dec 30 10:51:29 2012 Kazuki Tsujimoto <kazuki@callcc.net> 5240 5241 * vm_insnhelper.c: set keyword hash on Proc/block calls. 5242 [ruby-core:51172] [Bug #7630] 5243 5244 * test/ruby/test_keyword.rb: add tests for above. 5245 5246Sat Dec 29 21:57:11 2012 Keiju Ishitsuka <keiju@ishitsuka.com> 5247 5248 * lib/irb/completion.rb: treat rightly completion for symbol on irb 5249 [Bug #7632]. 5250 5251Sat Dec 29 21:51:30 2012 Shugo Maeda <shugo@ruby-lang.org> 5252 5253 * ext/curses/curses.c (window_cury, window_curx, window_maxy, 5254 window_maxx, window_begy, window_begx): use RB_UNUSED_VAR() 5255 to suppress unused-but-set-variable warnings. 5256 5257Sat Dec 29 16:45:00 2012 Zachary Scott <zachary@zacharyscott.net> 5258 5259 * iseq.c (RubyVM::InstructionSequence): rdoc formatting 5260 5261Sat Dec 29 15:28:00 2012 Zachary Scott <zachary@zacharyscott.net> 5262 5263 * iseq.c (RubyVM::InstructionSequence): Add rdoc for new iseq features 5264 added from r38085, this includes ::of, #path, #absolute_path, 5265 #label, #base_label, #first_lineno, and #inspect 5266 5267Sat Dec 29 14:06:00 2012 Zachary Scott <zachary@zacharyscott.net> 5268 5269 * iseq.c (rb_iseq_line_trace_all, rb_iseq_line_trace_specify): Add 5270 rdoc for experimental C level api of iseq, from r38076 5271 5272Sat Dec 29 11:37:36 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5273 5274 * object.c (rb_obj_clone): attach clone to its singleton class during 5275 cloning singleton class so that singleton_method_added will be called 5276 on it. based on the patch by shiba (satoshi shiba)[Bug #5283] in 5277 [ruby-dev:44477]. [Bug #5283] 5278 5279Sat Dec 29 10:10:39 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5280 5281 * configure.in (crt_externs.h): use standard macro AC_CHECK_HEADERS. 5282 5283Fri Dec 28 23:12:44 2012 Charlie Somerville <charlie@charliesomerville.com> 5284 5285 * configure.in: check for the whether crt_externs.h is present when compiling 5286 for darwin (this header is missing in the iOS SDK) 5287 * eval_intern.h: check HAVE_CRT_EXTERNS_H before including crt_externs.h, if 5288 not defined, include missing/crt_externs.h instead 5289 * hash.c: ditto 5290 * missing/setproctitle.c: ditto 5291 * missing/crt_externs.h: declare _NSGetEnviron() function and define environ 5292 for iOS 5293 5294Fri Dec 28 21:40:36 2012 Keiju Ishitsuka <keiju@ishitsuka.com> 5295 5296 * lib/irb/context.rb: IRB::Context#new: Check from JobManager 5297 inside IRB namespace [Bug #7628]. Thanks rafaelfranca for bug 5298 report and its patch. 5299 5300Fri Dec 28 17:06:17 2012 Akinori MUSHA <knu@iDaemons.org> 5301 5302 * misc/ruby-electric.el (ruby-electric-curlies): Automatically 5303 indent closing curly brackets when 5304 ruby-electric-newline-before-closing-bracket is true. 5305 5306Fri Dec 28 11:50:42 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5307 5308 * vm_insnhelper.c (vm_yield_setup_block_args): pass single argument to 5309 single optional parameter unchanged without splatting. [Bug #7621] 5310 [ruby-dev:46801] 5311 5312Fri Dec 28 11:17:47 2012 Shugo Maeda <shugo@ruby-lang.org> 5313 5314 * proc.c (method_eq): fix the documentation to refer to owner. 5315 [ruby-core:51105] [Bug #7613] 5316 5317 * test/ruby/test_method.rb (test_alias_onwer): new test to confirm 5318 that `a == b' returns false if owners of a and b are different. 5319 5320Fri Dec 28 07:07:43 2012 NARUSE, Yui <naruse@ruby-lang.org> 5321 5322 * def/id.def: use split(/^/) instead of String#lines to support 5323 Ruby 1.8.5 as BASERUBY. 5324 5325Thu Dec 27 21:56:56 2012 NARUSE, Yui <naruse@ruby-lang.org> 5326 5327 * variable.c (rb_mod_remove_const): fix segv caused by r38558. 5328 5329Tue Dec 28 01:13:48 2012 James Edward Gray II <james@graysoftinc.com> 5330 5331 * lib/csv.rb: Added more Hash methods to CSV::Row. 5332 5333Thu Dec 27 23:27:15 2012 Keiju Ishitsuka <keiju@ishitsuka.com> 5334 5335 * lib/irb/ruby-lex.rb: make lex_state to EXPR_END when next token 5336 is an operator after SYMBEG [Bug #6378]. 5337 5338Thu Dec 27 21:30:21 2012 Keiju Ishitsuka <keiju@ishitsuka.com> 5339 5340 * lib/irb/ruby-lex.rb: allow to handle recursive heredocs on 5341 irb[Bug #5648]. 5342 5343Thu Dec 27 20:45:29 2012 Masaki Matsushita <glass.saga@gmail.com> 5344 5345 * ext/stringio/stringio.c (strio_getline): fix not to raise TypeError 5346 when limit is nil. 5347 [Bug #7232] [ruby-core:48531] 5348 5349 * test/stringio/test_stringio.rb: a test for above. 5350 5351Thu Dec 27 21:08:23 2012 Charlie Somerville <charlie@charliesomerville.com> 5352 5353 * vm_core.h (VM_DEFINECLASS_TYPE): explicit cast to enum type to avoid 64->32 5354 shorten warning 5355 5356Thu Dec 27 20:11:29 2012 Masaki Matsushita <glass.saga@gmail.com> 5357 5358 * ext/stringio/stringio.c (strio_ungetc): raise IOError instead of RuntimeError 5359 if the string is frozen. 5360 [Bug #7231] [ruby-core:48530] 5361 5362 * ext/stringio/stringio.c (strio_ungetbyte): ditto. 5363 5364 * test/stringio/test_stringio.rb: a test for above. 5365 5366Wed Dec 26 23:55:18 2012 Keiju Ishitsuka <keiju@ishitsuka.com> 5367 5368 * lib/irb/context.rb: fix IRB::Inspector#keys_with_inspector [Bug #7598] 5369 5370Wed Dec 26 23:26:15 2012 Keiju Ishitsuka <keiju@ishitsuka.com> 5371 5372 * lib/irb/context.rb: IRB::Context#use_readline= has been obsolete 5373 [Bug #6339]. 5374 5375Wed Dec 26 21:32:46 2012 Keiju Ishitsuka <keiju@ishitsuka.com> 5376 5377 * lib/irb/context.rb: make a correct prompt from 5378 IRB.conf[:IRB_NAME] on irb [Bug #6338]. Patched by sho-h. 5379 5380Wed Dec 26 21:09:19 2012 Keiju Ishitsuka <keiju@ishitsuka.com> 5381 5382 * lib/irb/ext/math-mode.rb: make not able to change math-mode 5383 after irb starting [Bug #6302]. Patched by sho-h. 5384 5385Wed Dec 26 12:52:36 2012 Keiju Ishitsuka <keiju@ishitsuka.com> 5386 5387 * lib/irb/init.rb: change default debug level for 5388 irb[ruby-dev:46805], [Bug #6301]. 5389 5390Wed Dec 26 11:54:11 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 5391 5392 * configure.in: enable -fPIE when checking -pie for fixing 5393 OpenBSD build error. Patch by George Koehler. Thank you! 5394 [Bug #7606] [ruby-core:51082] 5395 5396Wed Dec 26 07:31:24 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5397 5398 * string.c (rb_enc_cr_str_copy_for_substr): empty string is always 5399 valid or 7bit. 5400 5401 * string.c (rb_str_enumerate_lines, rb_str_chop): reduce duplicated 5402 code. 5403 5404 * string.c (rb_str_enumerate_chars): prevent shared copy from GC. 5405 5406Wed Dec 26 01:31:16 2012 Keiju Ishitsuka <keiju@ishitsuka.com> 5407 5408 * lib/irb/init.rb, lib/irb/context.rb: fix conf.debug_level= 5409 [Bug #6301] and fix irb command option: -- irb_debug_level for irb. 5410 5411Wed Dec 26 00:59:18 2012 Keiju Ishitsuka <keiju@ishitsuka.com> 5412 5413 * lib/irb/ruby-lex.rb: improve RubyLex performance for large files 5414 [Bug #5202]. Patch by ryanmelt. 5415 5416Tue Dec 25 22:21:06 2012 Keiju Ishitsuka <keiju@ishitsuka.com> 5417 5418 * lib/irb/output-method.rb: raise right exception when 5419 IRB::OutputMethod#print don't defined [Bug #6657]. 5420 5421Tue Dec 25 22:06:33 2012 Koichi Sasada <ko1@atdot.net> 5422 5423 * vm_trace.c (rb_threadptr_exec_event_hooks_and_pop_frame): 5424 pop a frame before JUMP_TAG() if exception occurred. 5425 This change fix bug of Ruby 1.9. 5426 [ruby-core:51128] [ruby-trunk - Bug #7624] 5427 5428 * vm_core.h (EXEC_EVENT_HOOK_AND_POP_FRAME): add to use 5429 `rb_threadptr_exec_event_hooks_and_pop_frame()'. 5430 5431 * vm.c (vm_exec): use EXEC_EVENT_HOOK_AND_POP_FRAME() while 5432 exception handling. While exception handling, if an exception 5433 is raised in hooks, need to pop current frame and raise this 5434 raised exception by hook. 5435 5436 * test/ruby/test_settracefunc.rb: add a test. 5437 5438Tue Dec 25 21:08:53 2012 Keiju Ishitsuka <keiju@ishitsuka.com> 5439 5440 * lib/irb/init.rb, lib/irb/lc/ja/error.rb, lib/irb/lc/error.rb: 5441 raise exception when illegal RC_NAME_GENERATOR defined [Bug #6455]. 5442 5443Tue Dec 25 19:22:17 2012 Keiju Ishitsuka <keiju@ishitsuka.com> 5444 5445 * lib/irb/workspace.rb: define method to private on top-level irb 5446 [Bug #5776]. Patch by davidbalbert. 5447 5448Tue Dec 25 19:09:51 2012 NAKAMURA Usaku <usa@ruby-lang.org> 5449 5450 * bignum.c, include/ruby/intern.h (rb_big_eql): exported. 5451 5452 * thread.c (recursive_check): object_id maybe a Bignum, not Fixnum on 5453 LLP64. see also r38493 and r38548. 5454 reported by Heesob Park at [ruby-core:51083] [Bug #7607], and patched 5455 by shirosaki at [ruby-core:51095] 5456 5457Tue Dec 25 18:53:35 2012 Koichi Sasada <ko1@atdot.net> 5458 5459 * vm_core.h, eval_intern.h (CHECK_STACK_OVERFLOW): move 5460 CHECK_STACK_OVERFLOW() to vm_core.h and rename to 5461 CHECK_VM_STACK_OVERFLOW(). 5462 This change is only move and rename. 5463 5464 * tool/instruction.rb: catch up above changes. 5465 5466 * vm.c, vm_insnhelper.c: ditto. 5467 5468 * vm_insnhelper.c (vm_stackoverflow): add a function to unify 5469 raising vm stackoverflow exception. 5470 5471Tue Dec 25 16:16:54 2012 Koichi Sasada <ko1@atdot.net> 5472 5473 * vm_core.h (RUBY_VM_THREAD_VM_STACK_SIZE): change default 5474 VM stack size (128 KB or 256 KB -> 512 KB or 1024 KB). 5475 This re-sizing corrects smaller value introduced at r38478. 5476 Newer value is same VM stack size of Ruby 1.9. 5477 [ruby-dev:46797] [ruby-trunk - Bug #7603] 5478 5479Tue Dec 25 13:38:12 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5480 5481 * error.c (compile_err_append, compile_warn_print, warn_print): use 5482 rb_write_error_str() instead of writing to rb_stderr directly. 5483 5484 * io.c (rb_write_error_str): a stopgap measure not to unblock GVL. 5485 warning from require seems to still have race condition errors. 5486 5487Tue Dec 25 00:59:29 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5488 5489 * node.h (NODE_OP_CDECL), compile.c (iseq_compile_each), 5490 parse.y (stmt, arg): allow scoped constant op-assignment. 5491 [ruby-core:40154] [Bug #5449] 5492 5493Mon Dec 24 04:56:48 2012 NARUSE, Yui <naruse@ruby-lang.org> 5494 5495 * lib/net/http/generic_request.rb (Net::HTTPGenericRequest): 5496 set content-length to zero on empty post requests 5497 by Gregory Ostermayr <gregory.ostermayr@gmail.com> 5498 https://github.com/ruby/ruby/pull/201 fix GH-201 5499 5500Sun Dec 23 19:09:16 2012 Koichi Sasada <ko1@atdot.net> 5501 5502 * thread.c: rename methods: 5503 from Thread.async_interrupt_timing to Thread.handle_interrupt, 5504 from Thread.async_interrupted? to Thread.pending_interrupt?. 5505 Also rename option from `defer' to `never'. 5506 [ruby-core:51074] [ruby-trunk - Feature #6762] 5507 5508 * vm_core.c, thread.c: rename functions and data structure 5509 `async_errinfo' to `pending_interrupt'. 5510 5511 * thread.c: add global variables sym_immediate, sym_on_blocking and 5512 sym_never. 5513 5514 * cont.c, process.c, vm.c, signal.c: ditto. 5515 5516 * lib/sync.rb, lib/thread.rb: catch up this renaming. 5517 5518 * test/ruby/test_thread.rb: ditto. 5519 5520Sun Dec 23 17:57:30 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5521 5522 * lib/profiler.rb (Profiler__::PROFILE_PROC, print_profile): store 5523 profile data per threads for concurrent-execution. 5524 [ruby-core:22046] [Bug #1152] 5525 5526 * lib/profiler.rb (Profiler__::Wrapper): support calling singleton 5527 methods of an instance of BasicObject. 5528 5529 * lib/profiler.rb (Profiler__::PROFILE_PROC): use TracePoint. 5530 5531Sun Dec 23 16:13:00 2012 Zachary Scott <zachary@zacharyscott.net> 5532 5533 * lib/erb.rb: typos for ERB::new link 5534 5535Sun Dec 23 16:06:00 2012 Zachary Scott <zachary@zacharyscott.net> 5536 5537 * lib/erb.rb: Document ERB::new trim_mode '-' for lines ending in -%> 5538 [ruby-core:51084] [Bug #7608] 5539 5540Sun Dec 23 15:25:00 2012 Zachary Scott <zachary@zacharyscott.net> 5541 5542 * lib/irb/ruby-lex.rb: Add handling for %i and %I quoting to irb 5543 Patch by flori [ruby-core:49550] [Bug #7392] [Github Issue #157] 5544 5545Sun Dec 23 15:05:48 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5546 5547 * vm_eval.c (rb_check_funcall_with_hook): rb_check_funcall with hook 5548 which is called before calling method_missing or target method. 5549 5550 * marshal.c (w_object, r_object0): use rb_check_funcall_with_hook 5551 instead of respond_to? and call. 5552 5553Sun Dec 23 14:52:00 2012 Zachary Scott <zachary@zacharyscott.net> 5554 5555 * re.c (rb_reg_eqq): doc: #=== is not a synonym for #=~, added example 5556 [ruby-dev:46746] [Bug #7571] 5557 5558Sun Dec 23 14:35:13 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5559 5560 * thread.c (BLOCKING_REGION): if fail_if_interrupted is false ignore 5561 the result of blocking_region_begin(), since it always is true in 5562 that case. suppress "uninitialized" warnings. 5563 5564Sun Dec 23 09:34:07 2012 Eric Hodel <drbrain@segment7.net> 5565 5566 * lib/rubygems/commands/check_command.rb: Added --doctor and --dry-run 5567 options to clean up after failed uninstallation. 5568 * test/rubygems/test_gem_commands_check_command.rb: Test for above. 5569 5570 * lib/rubygems/commands/push_command.rb: Allow pushes from RubyGems 5571 2.0.0.preview3 5572 5573 * lib/rubygems/commands/update_command.rb: Use Gem.ruby_version 5574 5575 * lib/rubygems/dependency.rb: Update style. 5576 5577 * lib/rubygems/installer.rb: Ensure installed gem specifications will 5578 be useable. Refactor. 5579 * test/rubygems/test_gem_installer.rb: ditto. 5580 5581 * lib/rubygems/validator.rb: Fixed bug with unreadable files. 5582 5583 * lib/rubygems.rb: Fixed broken methods. 5584 * test/rubygems/test_gem.rb: Test for above. 5585 5586 * test/rubygems/test_gem_commands_push_command.rb: Fixed overridden 5587 Gem.latest_rubygems_version 5588 5589Sun Dec 23 01:52:01 2012 Akinori MUSHA <knu@iDaemons.org> 5590 5591 * io.c (rb_io_lines, rb_io_bytes, rb_io_chars, rb_io_codepoints): 5592 Deprecate IO#{lines,bytes,chars,codepoints} and those of ARGF. 5593 [Feature #6670] 5594 5595 * ext/stringio/stringio.c (strio_lines, strio_bytes, strio_chars) 5596 (strio_codepoints): Deprecate 5597 StringIO#{lines,bytes,chars,codepoints}. [Feature #6670] 5598 5599 * ext/zlib/zlib.c (rb_gzreader_lines, rb_gzreader_bytes): 5600 Deprecate Zlib::GzipReader#{lines,bytes}. [Feature #6670] 5601 5602Sat Dec 23 01:35:00 2012 Zachary Scott <zachary@zacharyscott.net> 5603 5604 * lib/optparse.rb: Documentation for OptionParser to remove 'shadowed 5605 outer local variable' from example and make obvious ARGV with 5606 non-option arguments. 5607 Patch by Marcus Stollsteimer [ruby-core:47460] [Bug #6997] 5608 5609Sat Dec 23 00:08:00 2012 Kenta Murata <mrkn@mrkn.jp> 5610 5611 * include/ruby/intern.h: add the prototype declaration of 5612 rb_num_coerce_bit. 5613 5614 * numeric.c (rb_num_coerce_bit): the new coerce function for bitwise 5615 binary operation. 5616 5617 * bignum.c (rb_big_and): use coerce to convert the argument, which isn't 5618 a Fixnum nor a Bignum, to the corresponding Integer object so that 5619 bitwise operations can support Integer-mimic objects. 5620 [Bug #1792] [ruby-core:39491] 5621 5622 * bignum.c (rb_big_or): ditto. 5623 5624 * bignum.c (rb_big_xor): ditto. 5625 5626 * numeric.c (bit_coerce): ditto. 5627 5628 * numeric.c (fix_and): ditto. 5629 5630 * numeric.c (fix_or): ditto. 5631 5632 * numeric.c (fix_xor): ditto. 5633 5634 * test/ruby/test_integer.rb: add tests for the above changes. 5635 5636 * test/ruby/test_bignum.rb: ditto. 5637 5638Sun Dec 23 00:04:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5639 5640 * internal.h (QUOTE, QUOTE_ID): quote unprintable chars in strings and 5641 IDs. [Bug #7574] [ruby-dev:46749] 5642 5643 * string.c (rb_str_quote_unprintable): ditto. 5644 5645Sat Dec 22 23:59:18 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5646 5647 * error.c (rb_compile_error, rb_compile_warn, rb_compile_warning), 5648 (rb_warn, rb_warning): support PRIsVALUE. 5649 5650Sat Dec 22 22:04:58 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 5651 5652 * cont.c (rb_fiber_start): unify conditions. 5653 5654Sat Dec 22 21:47:55 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 5655 5656 * io.c (rb_io_wait_writable): use rb_thread_check_ints() instead 5657 of rb_thread_fd_writable(). 5658 * io.c (rb_io_wait_readable): ditto. 5659 5660Sat Dec 22 20:31:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5661 5662 * object.c (rb_mod_const_get): symbol cannot be nested constant name. 5663 5664Sat Dec 22 19:26:35 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5665 5666 * object.c (rb_mod_const_get): check more strictly. [ruby-dev:46748] 5667 [Bug #7573] 5668 5669Wed Dec 19 02:34:48 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 5670 5671 * cont.c (rb_fiber_start): in case of jump with TAG_FATAL, 5672 enqueue error into async_errinfo_queue, because you cannot call 5673 TH_TAG_JUMP() in this function. [ruby-dev:45218] [Bug #5993] 5674 5675 * thread.c (rb_threadptr_execute_interrupts): now INT2FIX(TAG_FATAL) 5676 can be popped from async_errinfo_queue. 5677 5678 * vm.c (rb_vm_make_jump_tag_but_local_jump): revert r38441. 5679 rb_vm_make_jump_tag_but_local_jump() shouldn't return exception 5680 in case of state == TAG_FATAL. 5681 5682 * test/ruby/test_fiber.rb (test_exit_in_fiber): fix a test to illuminate 5683 Thread.exit should terminate current Thread. 5684 5685Sat Dec 22 13:15:08 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 5686 5687 * gc.c (obj_id_to_ref): add a macro to treat Bignum object id. 5688 This follows the change r38493. 5689 5690 * gc.c (id2ref): fix for working fine with Bignum object id on x64 5691 Windows. 5692 * gc.c (wmap_finalize): ditto. 5693 5694Sat Dec 22 11:30:21 2012 Masaki Matsushita <glass.saga@gmail.com> 5695 5696 * struct.c (make_struct): remove junk ID check to allow members who 5697 have junk name like "foo\000". 5698 * test/ruby/test_struct.rb: Test for above. 5699 [Bug #7575] [ruby-dev:46750] 5700 5701Sat Dec 22 05:34:54 2012 Eric Hodel <drbrain@segment7.net> 5702 5703 * lib/net/http.rb: Requests may be created with a URI which sets the 5704 Host header. Responses contain the requested URI for easier redirect 5705 following. [ruby-trunk - Feature #6482] 5706 * lib/net/http/generic_request.rb: ditto. 5707 * lib/net/http/response.rb: ditto. 5708 * NEWS (net/http): Updated for above. 5709 * test/net/http/test_http.rb: Tests for above. 5710 * test/net/http/test_http.rb: ditto. 5711 * test/net/http/test_httpresponse.rb: ditto. 5712 5713Sat Dec 22 02:35:00 2012 Zachary Scott <zachary@zacharyscott.net> 5714 5715 * lib/irb/slex.rb(#match): Typo, should be D_DETAIL 5716 [ruby-core:51071] [Bug#7600] 5717 5718Sat Dec 22 02:29:00 2012 Zachary Scott <zachary@zacharyscott.net> 5719 5720 * lib/irb/input-method.rb, lib/irb.rb: Typo in 5721 InputMethod#readable_atfer_eof? to #readable_after_eof? 5722 [ruby-core:51069] [Bug #7599] 5723 5724Sat Dec 22 02:19:38 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 5725 5726 * vm_dump.c (rb_vm_bugreport): revert r38533. 5727 * addr2line.c (fill_lines): add ELF sanity check. 5728 [Bug #7597] [ruby-dev:46786] 5729 5730Sat Dec 22 02:05:00 2012 Zachary Scott <zachary@zacharyscott.net> 5731 5732 * lib/irb/inspector.rb, lib/irb/context.rb: Move IRB::INSPECTORS and 5733 class methods to IRB::Inspector [ruby-core:51067][Bug #7598] 5734 5735Sat Dec 22 00:28:46 2012 NAKAMURA Usaku <usa@ruby-lang.org> 5736 5737 * object.c (rb_obj_hash): shouldn't assume object_id can be long. 5738 based on a patch by Heesob Park at [ruby-core:51060]. 5739 cf. [Backport #7454] 5740 5741Fri Dec 21 23:15:25 2012 Kouhei Sutou <kou@cozmixng.org> 5742 5743 * ext/fiddle/lib/fiddle/struct.rb (Fiddle::CStructEntity#set_ctypes): 5744 CPtr -> Pointer. 5745 * test/fiddle/test_c_struct_entry.rb 5746 (Fiddle::TestCStructEntity#test_aref_pointer): 5747 Added the test for the above. 5748 5749Fri Dec 21 23:12:05 2012 Kouhei Sutou <kou@cozmixng.org> 5750 5751 * ext/fiddle/lib/fiddle/struct.rb (Fiddle::CStructEntity#set_ctypes): 5752 CPtr -> Pointer. 5753 * test/fiddle/test_c_struct_entry.rb 5754 (Fiddle::TestCStructEntity#test_aref_pointer_array): 5755 Added the test for the above. 5756 5757Fri Dec 21 22:43:36 2012 Kouhei Sutou <kou@cozmixng.org> 5758 5759 * ext/fiddle/lib/fiddle/import.rb (Fiddle::Importer#sizeof): 5760 CPtr -> Pointer. 5761 * test/fiddle/test_import.rb (Fiddle::TestImport#test_sizeof): 5762 Added the test for the above. 5763 5764Fri Dec 21 22:34:17 2012 Koichi Sasada <ko1@atdot.net> 5765 5766 * test/ruby/test_iseq.rb: disable a test which checks features 5767 removed at r38532. 5768 5769Fri Dec 21 22:02:00 2012 NAKAMURA Usaku <usa@ruby-lang.org> 5770 5771 * win32/{dir.h,win32.c} (rb_w32_readdir): removed old rb_w32_readdir() 5772 and renamed from rb_w32_readdir_with_enc(). 5773 [ruby-core:24864] [Feature #1927] 5774 5775 * dir.c (READDIR): follow above change. 5776 5777Fri Dec 21 21:12:54 2012 Masaya Tarui <tarui@ruby-lang.org> 5778 5779 * vm_dump.c (rb_vm_bugreport): commentout addr2line call temporarily 5780 in order to avoid segv. anyone can fix addr2line? 5781 [Bug #7597] [ruby-dev:46786] 5782 5783Fri Dec 21 20:38:28 2012 Koichi Sasada <ko1@atdot.net> 5784 5785 * iseq.c (Init_ISeq): remove definition of the following methods: 5786 ISeq#line_trace_all and ISeq#line_trace_specify because they are 5787 half baked. 5788 C APIs are remained as experimental. These functions will be 5789 renamed, removed their parameters may be changed. 5790 You can use these methods by C exts. Please give us your comments. 5791 5792Fri Dec 21 20:21:04 2012 Koichi Sasada <ko1@atdot.net> 5793 5794 * vm_trace.c (tracepoint_new): add code to support specified thread. 5795 But not tested and this feature is not supported officially. 5796 5797Fri Dec 21 19:37:15 2012 Koichi Sasada <ko1@atdot.net> 5798 5799 * ruby.c (process_options): need to acquire env from TOPLEVEL_BINDING 5800 each time. 5801 `bind->env' may update after `eval()'. 5802 [Bug #7536] 5803 5804Fri Dec 21 18:46:50 2012 Koichi Sasada <ko1@atdot.net> 5805 5806 * include/ruby/debug.h, vm_core.h: define rb_trace_arg_t at 5807 include/ruby/debug.h (move from vm_core.h). 5808 5809Fri Dec 21 17:48:15 2012 Koichi Sasada <ko1@atdot.net> 5810 5811 * vm_core.h, vm_trace.c: fix multi-threading bug for tracing. 5812 Move `trace_arg' from rb_tp_t::trace_arg to rb_thread_t::trace_arg. 5813 `trace_arg' may changed by multiple threads. 5814 rb_thread_t::trace_arg can represent rb_thread_t::trace_running 5815 (null or non-null) and rb_thread_t::trace_running is removed. 5816 After that, `rb_tp_t' is not needed to check tracing or not 5817 (A running thread knows tracing or not). This is why I remove 5818 tp_attr_check_active() and make new function get_trace_arg(). 5819 5820 And this modification disable to work the following code: 5821 TracePoint.trace{|tp| 5822 Thread.new{p tp.event} # access `tp' from other threads. 5823 } 5824 I believe nobody mix threads at trace procedure. 5825 This is current limitation. 5826 [Bug #7590] 5827 5828 * cont.c (fiber_switch, rb_cont_call): use rb_thread_t::trace_arg 5829 instead of rb_thread_t::trace_running. 5830 5831 * test/ruby/test_settracefunc.rb: add a multi-threading test. 5832 5833Fri Dec 21 16:38:08 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5834 5835 * template/id.h.tmpl (ID2ATTRSET): compile time constant macro for 5836 ID_ATTRSET. 5837 5838 * defs/id.def (KeywordError): check duplication. 5839 5840 * defs/id.def: support for other scope IDs, 5841 ID_{INSTANCE,GLOBAL,CONST,CLASS}. 5842 5843Fri Dec 21 14:45:00 2012 Zachary Scott <zachary@zacharyscott.net> 5844 5845 * lib/irb.rb, lib/irb/*: Documentation for IRB 5846 5847Fri Dec 21 11:31:02 2012 Eric Hodel <drbrain@segment7.net> 5848 5849 * lib/rake/*: Updated to rake 0.9.6 5850 * doc/rake/*: ditto 5851 * test/rake/*: ditto 5852 5853Fri Dec 21 08:56:34 2012 Masaya Tarui <tarui@ruby-lang.org> 5854 5855 * vm_trace.c (rb_suppress_tracing): remove unused variable 'vm_tracing' 5856 5857Fri Dec 21 01:01:45 2012 Masaya Tarui <tarui@ruby-lang.org> 5858 5859 * lib/irb/completion.rb (CompletionProc): support completion of 5860 instance variables. [ruby-dev:46710] [Bug #7520] 5861 5862Thu Dec 20 20:58:25 2012 Masaya Tarui <tarui@ruby-lang.org> 5863 5864 * vm_trace.c (rb_suppress_tracing): bugfix for vm->trace_running 5865 counter. And if tracing is already true, vm_trace_running ops is 5866 skipped to control overflow. 5867 5868Thu Dec 20 18:29:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5869 5870 * include/ruby/ruby.h (RTEST, NIL_P): make bare expressions without 5871 outermost parentheses. 5872 5873Thu Dec 20 17:29:00 2012 Shugo Maeda <shugo@ruby-lang.org> 5874 5875 * NEWS: fix the description for Refinements. 5876 5877Thu Dec 20 16:53:59 2012 Shugo Maeda <shugo@ruby-lang.org> 5878 5879 * vm_core.h (rb_vm_defineclass_type_t), 5880 compile.c (iseq_compile_each), insns.def (defineclass): change the 5881 meaning of the third operand of defineclass as follows: 5882 lower 3bits: the type of the defineclass 5883 0 = class, 1 = singleton class, 2 = module 5884 4th bit: a flag represents whether the defineclass is scoped 5885 0 = not scoped (e.g., class Foo) 5886 1 = scoped (e.g., class Bar::Baz) 5887 5th bit: a flag represents whether the superclass is specified 5888 0 = not specified (e.g., class Foo) 5889 1 = specified (e.g., class Bar < Foo) 5890 If the superclass is specified and is not a class, a TypeError 5891 should be raised. [ruby-dev:46747] [Bug #7572] 5892 5893 * test/ruby/test_class.rb: related test. 5894 5895Thu Dec 20 16:52:37 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 5896 5897 * NEWS: announce AEAD encryption support in the OpenSSL extension. 5898 5899Thu Dec 20 16:40:13 2012 NAKAMURA Usaku <usa@ruby-lang.org> 5900 5901 * gc.c (nonspecial_obj_id): VALUE is not compatible with Fixnum on 5902 LLP64 platform, such as 64bit Windows. 5903 reported by Heesob Park at [ruby-core:50255] [Bug #7454], and the 5904 fix is suggested by akr. 5905 5906Thu Dec 20 16:39:04 2012 Martin Bosslet <Martin.Bosslet@gmail.com> 5907 5908 * ext/openssl/ossl_cipher.c: fix errors for installations that do not 5909 feature Authenticated Encryption. 5910 * ext/openssl/extconf.rb: detect presence of EVP_CTRL_GCM_GET_TAG to 5911 determine whether Authenticated Encryption can be used. 5912 [Feature #6980] [ruby-core:47426] 5913 5914Thu Dec 20 15:55:46 2012 Martin Bosslet <Martin.Bosslet@gmail.com> 5915 5916 * ext/openssl/ossl.c: do not use FIPS_mode_set if not available. 5917 * test/openssl/utils.rb: revise comment about setting FIPS mode to 5918 false. 5919 * test/openssl/test_fips.rb: remove tests that cause errors on 5920 ruby-ci. 5921 [Feature #6946] [ruby-core:47345] 5922 5923Thu Dec 20 15:22:59 2012 Eric Hodel <drbrain@segment7.net> 5924 5925 * lib/rdoc/parser/ruby.rb: Ignore methods defined on constants to 5926 prevent modules with the names of constants from appearing in the 5927 documentation. 5928 * test/rdoc/test_rdoc_parser_ruby.rb: Test for the above. 5929 5930Thu Dec 20 15:00:33 2012 Martin Bosslet <Martin.Bosslet@gmail.com> 5931 5932 * ext/openssl/ossl_cipher.c: add support for Authenticated Encryption 5933 with Associated Data (AEAD) for OpenSSL versions that support the 5934 GCM encryption mode. It's the only mode supported for now by OpenSSL 5935 itself. Add Cipher#authenticated? to detect whether a chosen mode 5936 does support Authenticated Encryption. 5937 * test/openssl/test_cipher.rb: add tests for Authenticated Encryption. 5938 [Feature #6980] [ruby-core:47426] Thank you, Stephen Touset for 5939 providing a patch! 5940 5941Thu Dec 20 12:56:53 2012 Eric Hodel <drbrain@segment7.net> 5942 5943 * lib/rdoc/markup/to_html.rb (class RDoc): Added current heading and 5944 top links to headings. 5945 * lib/rdoc/generator/template/darkfish/rdoc.css: ditto 5946 * test/rdoc/test_rdoc_generator_markup.rb: Test for above 5947 * test/rdoc/test_rdoc_markup_to_html.rb: ditto 5948 5949 * test/rdoc/test_rdoc_comment.rb: Removed trailing whitespace. 5950 5951Thu Dec 20 11:05:26 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 5952 5953 * test/ruby/envutil.rb (assert_valid_syntax): move from 5954 test_syntax.rb. 5955 5956 * test/ruby/envutil.rb (assert_normal_exit): validate syntax before 5957 running because this assertion passes even if the code fails by 5958 SyntaxError. 5959 5960Thu Dec 20 10:29:58 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 5961 5962 * test/openssl/test_pkey_dh.rb: revert special treatment of 5963 FIPS-capable installations since FIPS mode is now disabled for the 5964 tests. 5965 5966Thu Dec 20 10:23:12 2012 Martin Bosslet <Martin.Bosslet@gmail.com> 5967 5968 * ext/openssl/ossl.c: add OpenSSL.fips_mode= to allow enabling FIPS 5969 mode manually. 5970 * test/openssl/utils.rb: turn off FIPS mode for tests. This prevents 5971 OpenSSL installations with FIPS mode enabled by default from raising 5972 FIPS-related errors during the tests. 5973 * test/openssl/test_fips.rb: add tests for FIPS-capable OpenSSL 5974 installations. 5975 [Feature #6946] [ruby-core:47345] 5976 5977Thu Dec 20 06:59:52 2012 Koichi Sasada <ko1@atdot.net> 5978 5979 * vm.c: support variable VM/Machine stack sizes. 5980 Specified by the following environment variables: 5981 - RUBY_THREAD_VM_STACK_SIZE: vm stack size used at thread creation. 5982 default: 128KB (32bit CPU) or 256KB (64bit CPU). 5983 - RUBY_THREAD_MACHINE_STACK_SIZE: machine stack size used at thread 5984 creation. default: 512KB or 1024KB. 5985 - RUBY_FIBER_VM_STACK_SIZE: vm stack size used at fiber creation. 5986 default: 64KB or 128KB. 5987 - RUBY_FIBER_MACHINE_STACK_SIZE: machine stack size used at fiber 5988 creation. default: 256KB or 256KB. 5989 This values are specified at launched timing. You can not change 5990 these values at running time. 5991 Environ variables are only *hints* because: 5992 - They are aligned to 4KB. 5993 - They have minimum values (depend on OSs). 5994 - Machine stack settings are ignored by some OSs. 5995 Default values especially fiber stack sizes are increased. 5996 This change affect Fiber's behavior: 5997 (1) You can run more complex program on a Fiber. 5998 (2) You can not make many (thousands) Fibers because of 5999 lack of address space (on 32bit CPU). 6000 If (2) bothers you, 6001 (a) Use 64bit CPU with big memory, or 6002 (b) Specify RUBY_FIBER_(VM|MACHINE)_STACK_SIZE correctly. 6003 You need to choose correct stack size carefully. These values 6004 are completely rely on systems (OS/compiler and so on). 6005 [Feature #4614], [Bug #7212] 6006 6007 * vm_core.h (rb_vm_t::default_params): add to record above settings. 6008 6009 * vm.c (RubyVM::DEFAULT_PARAMS): add new constant to see 6010 above setting. 6011 6012 * thread_pthread.c: support RUBY_THREAD_MACHINE_STACK_SIZE. 6013 6014 * cont.c: support RUBY_FIBER_(VM|MACHINE)_STACK_SIZE. 6015 6016 * test/ruby/test_fiber.rb: add tests for above. 6017 6018 * test/ruby/test_thread.rb: ditto. 6019 6020Thu Dec 20 06:25:44 2012 Koichi Sasada <ko1@atdot.net> 6021 6022 * test/ruby/test_fiber.rb: remove a strange single quote character. 6023 With this character, this script exits by SyntaxError. 6024 6025Thu Dec 20 01:03:00 2012 Zachary Scott <zachary@zacharyscott> 6026 6027 * ext/.document: Add missing ext modules to .document 6028 Patch by Ryunosuke SATO [Fixes Github #224] 6029 6030Wed Dec 19 23:52:16 2012 NAKAMURA Usaku <usa@ruby-lang.org> 6031 6032 * ruby.c (load_file_internal): use original C string as the filename 6033 for parser. 6034 reported by whiteleaf at [ruby-list:49085] [ruby-dev:46738] 6035 [Bug #7562] 6036 6037Wed Dec 19 23:36:12 2012 Naohisa Goto <ngotogenome@gmail.com> 6038 6039 * marshal.c (marshal_dump, marshal_load): fix SEGV during make rdoc 6040 and test failure in TestMarshal#test_gc and test_context_switch 6041 on SPARC Solaris 10 compiled with Oracle Solaris Studio 12.3. 6042 [Bug #7591] [ruby-dev:46772] 6043 6044Wed Dec 19 19:34:03 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6045 6046 * object.c (rb_mod_const_get): nul byte is invalid as constant name. 6047 6048Wed Dec 19 17:54:18 2012 Masaya Tarui <tarui@ruby-lang.org> 6049 6050 * vm_trace.c (rb_threadptr_exec_event_hooks): get rid of race 6051 condition. [Bug #7589] [ruby-dev:46763] 6052 6053Wed Dec 19 16:30:28 2012 Eric Hodel <drbrain@segment7.net> 6054 6055 * doc/syntax/literals.rdoc: Added 0d decimal format. Thanks Nobu! 6056 6057Wed Dec 19 16:19:36 2012 Eric Hodel <drbrain@segment7.net> 6058 6059 * doc/syntax/methods.rdoc: Fixed typo. Thanks to Josh Susser. 6060 6061Wed Dec 19 16:18:22 2012 Eric Hodel <drbrain@segment7.net> 6062 6063 * lib/rubygems/commands/query_command.rb: Refactored to improve 6064 maintainability. 6065 * test/rubygems/test_gem_commands_query_command.rb: Note default gems 6066 in gem list details. 6067 6068 * lib/rubygems/uninstaller.rb: Detect all gems for uninstallation. 6069 This allows duplicate installs of default gems to be removed. 6070 * lib/rubygems/specification.rb: Allow use of ::each_spec. 6071 * lib/rubygems/test_case.rb: Added install_default_gems. 6072 * test/rubygems/test_gem_commands_uninstall_command.rb: Moved test 6073 down to the uninstaller tests. 6074 * test/rubygems/test_gem_uninstaller.rb: Test for uninstallation of 6075 default gems and duplicate default gems. 6076 6077Wed Dec 19 15:23:50 2012 Eric Hodel <drbrain@segment7.net> 6078 6079 * doc/syntax/methods.rdoc: Add () around keyword arguments example for 6080 consistency. Thanks to Josh Susser. 6081 6082Wed Dec 19 01:51:24 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 6083 6084 * vm.c (rb_vm_jump_tag_but_local_jump): remove unnecessary 2nd 6085 argument. 6086 6087 * load.c (rb_load_internal): ditto. 6088 6089 * eval_intern.h (rb_vm_jump_tag_but_local_jump): ditto. 6090 6091Tue Dec 18 18:57:58 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6092 6093 * io.c (rb_io_wait_writable): don't use rb_thread_wait_fd() 6094 because it is for waiting until io readable. 6095 6096 * io.c (rb_io_wait_writable): always use rb_thread_fd_writable() 6097 instead of bare rb_wait_for_single_fd(). we shouldn't ignore 6098 return value. 6099 * io.c (rb_io_wait_readable): ditto. always use rb_thread_wait_fd(). 6100 6101Tue Dec 18 18:55:33 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6102 6103 * thread.c (rb_thread_wait_fd_rw): fix infinite loop bug. 6104 rb_wait_for_single_fd() never return positive number. 6105 6106Tue Dec 18 17:24:40 2012 Eric Hodel <drbrain@segment7.net> 6107 6108 * lib/rdoc/encoding.rb: Do not remove #! line from document when 6109 setting encoding. This allows ruby executables to be parsed as ruby 6110 files. 6111 * test/rdoc/test_rdoc_encoding.rb: Test for above. 6112 6113 * lib/rdoc/parser.rb: Set the parser file name of ruby executables 6114 correctly. 6115 * test/rdoc/test_rdoc_parser.rb: Test for above. 6116 6117Tue Dec 18 16:46:15 2012 Eric Hodel <drbrain@segment7.net> 6118 6119 * doc/syntax/literals.rdoc: Used simplified heredoc example that 6120 doesn't include method definition. Added heredoc with backticks. 6121 6122Tue Dec 18 16:38:51 2012 Eric Hodel <drbrain@segment7.net> 6123 6124 * lib/rdoc/store.rb: Work around RDoc stores from older versions of 6125 RDoc. 6126 * test/rdoc/test_rdoc_store.rb: Test for above. 6127 6128Tue Dec 18 16:31:20 2012 Eric Hodel <drbrain@segment7.net> 6129 6130 * lib/rdoc/ruby_lex.rb: Return a TkHEREDOC instead of a TkSTRING when 6131 the heredoc identifier is followed by a line-end. This allows proper 6132 display of some HEREDOCs in source view. 6133 * lib/rdoc/ruby_token.rb: Added TkHEREDOC 6134 * test/rdoc/test_rdoc_ruby_lex.rb: Test for above. 6135 6136Tue Dec 18 09:45:14 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 6137 6138 * vm.c (rb_vm_make_jump_tag_but_local_jump): take care of the case 6139 TAG_JUMP() with TAG_FATAL (ex. rb_fatal()). [ruby-core:50917] 6140 [Bug #7570] 6141 6142 * test/ruby/test_fiber.rb (test_fatal_in_fiber): add a test for above. 6143 6144 * ext/-test-/fatal/extconf.rb, ext/-test-/fatal/rb_fatal.c: ditto. 6145 6146Tue Dec 18 13:17:00 2012 Zachary Scott <zachary@zacharyscott.net> 6147 6148 * vm_trace.c (tracepoint_attr_defined_class): Clean up rdoc for 6149 TracePoint#defined_class 6150 6151Tue Dec 18 12:15:59 2012 Eric Hodel <drbrain@segment7.net> 6152 6153 * lib/rubygems/specification.rb: Fixed ruby output of requirements 6154 with multiple version specifiers. 6155 * test/rubygems/test_gem_ext_cmake_builder.rb: Only look for specific 6156 lines in cmake output. Should fix [ruby-trunk - Bug #7579] 6157 6158Tue Dec 18 11:45:26 2012 Eric Hodel <drbrain@segment7.net> 6159 6160 * doc/syntax/literals.rdoc: Added 0o octal integers. 6161 6162Tue Dec 18 12:28:52 2012 Martin Bosslet <Martin.Bosslet@gmail.com> 6163 6164 * test/openssl/test_ssl.rb: Use :TLSv1_2_client explicitly in 6165 test_tls_v1_2 to prevent upstream bug. 6166 [Bug #7197] [ruby-dev:46240] 6167 6168Tue Dec 18 11:52:34 2012 Martin Bosslet <Martin.Bosslet@gmail.com> 6169 6170 * ext/openssl/lib/ssl.rb: Enable insertion of empty fragments as a 6171 countermeasure for the BEAST attack by default. The default options 6172 of OpenSSL::SSL:SSLContext are now: 6173 OpenSSL::SSL::OP_ALL & ~OpenSSL::SSL::OP_DONT_INSERT_EMPTY_FRAGMENTS 6174 [Bug #5353] [ruby-core:39673] 6175 6176 * test/openssl/test_ssl.rb: Adapt tests to new SSLContext default. 6177 6178 * NEWS: Announce the new default. 6179 6180Tue Dec 18 06:36:12 2012 Koichi Sasada <ko1@atdot.net> 6181 6182 * method.h: remove `VM_METHOD_TYPE_CFUNC_FRAMELESS' method type. 6183 This method type is for optimized CFUNC such as Fixnum#+ and so on. 6184 This feature is half-baked and no way to use them. 6185 [Background] 6186 Now, VM has opt_plus instructions to optimize `+' methods for 6187 some Classes (such as Fixnum, Float (flonum)). We call this 6188 type of instructions as `specialized instructions'. 6189 This simple technique improve simple program dramatically. 6190 However, we can make specialized instructions for only several 6191 types (classes) and selectors (method names) because a large 6192 instruction will be slow. In other words, this technique has no 6193 extensibility. 6194 To overcome this problem, VM_METHOD_TYPE_CFUNC_FRAMELESS was 6195 introduced (r37198). This type is a variant of CFUNC, but called 6196 their functions directly without building a method frame. 6197 Any CFUNC method can be defined as frameless methods if a method 6198 is not needed to make method frame. Frameless methods are faster 6199 as specialized instructions (a bit slower, but no need to care). 6200 No problem described at 6201 http://charlie.bz/blog/why-do-singleton-methods-make-ruby-slow 6202 because this technique doesn't see class, but see method body 6203 itself. Alias is also no problem. 6204 [Problem] 6205 However, we can't set frameless method type for polymorphic methods 6206 such as Array#[]. Necessity for method frame depends on which 6207 parameter type. For example, Fixnum#+ needs method frame if 6208 coerce is needed. Current VM_METHOD_TYPE_CFUNC_FRAMELESS is not 6209 flexible and need more tuning to introduce it. 6210 Expected behavior of frameless method type may be: 6211 result = optimized_cfunc(params); /* call optimized cfunc */ 6212 if (result == Qundef) { result = normal_cfunc(); } 6213 This is why I say this feature is half-baked. 6214 We need to learn primitive method in Smalltalk more. 6215 (I heard this name at RubyConf Taiwan this month. Thanks!) 6216 [Conclusion] 6217 I remove this feature and consider again. 6218 This feature goes to next minor (2.1?). 6219 Nobody may use this feature and there is no compatibility issue. 6220 6221 * proc.c (rb_method_entry_arity): ditto. 6222 6223 * vm_eval.c, vm_insnhelper.c, vm_method.c: ditto. 6224 6225Tue Dec 18 04:58:22 2012 Koichi Sasada <ko1@atdot.net> 6226 6227 * vm_trace.c (fill_id_and_klass): TracePoint#defined_class returns 6228 singleton class. `set_trace_func' passed attached class (which is 6229 attached/modified by singleton class) by 6th block parameter if it 6230 is singleton class. Previous behavior follows this spec. 6231 However, this method named `defined_class' should return singleton 6232 class directly because singleton methods are defined in singleton 6233 class. There are no compatible issue because TracePoint is introduced 6234 after 2.0. 6235 But compatibility with `set_trace_func' is broken. This means that 6236 you can not replace all `set_trace_func' code with TracePoint 6237 without consideration of this behavior. 6238 [Bug #7554] 6239 6240 * test/ruby/test_settracefunc.rb: change a test to catch up 6241 an above change. 6242 6243Tue Dec 18 03:03:10 2012 Aaron Patterson <aaron@tenderlovemaking.com> 6244 6245 * ext/psych/lib/psych/visitors/to_ruby.rb: speed up node mapping so 6246 common cases are evaluated first. Thanks Kevin Menard! 6247 6248Tue Dec 18 02:35:00 2012 Zachary Scott <zachary@zacharyscott.net> 6249 6250 * lib/optparse.rb: Remove 'developer documentation' section from rdoc 6251 Patch by Marcus Stollsteimer [ruby-core:50526][Bug #7504] 6252 6253Tue Dec 18 02:35:00 2012 Zachary Scott <zachary@zacharyscott.net> 6254 6255 * lib/matrix.rb (#lup): typo in example [ruby-core:50946][Bug #7582] 6256 6257Mon Dec 17 18:03:34 2012 Charlie Somerville <charlie@charliesomerville.com> 6258 6259 * class.c (rewrite_cref_stack, clone_method): rewrite a method's cref 6260 stack when cloning into a new class to allow lexical const lookup to 6261 work as expected [ruby-core:47834] [Bug #7107] 6262 * test/ruby/test_class.rb (class TestClass): related test 6263 6264Mon Dec 17 13:56:55 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6265 6266 * io.c (io_flush_buffer_sync2): avoid to return 0. because 6267 rb_thread_call_without_gvl2 uses 0 internally. 6268 * io.c (io_flush_buffer_async2): adapt the above. 6269 6270Mon Dec 17 12:05:32 2012 Eric Hodel <drbrain@segment7.net> 6271 6272 * doc/syntax/methods.rdoc: Added a description of singleton methods. 6273 6274Mon Dec 17 11:35:57 2012 Eric Hodel <drbrain@segment7.net> 6275 6276 * doc/.document: Added doc/syntax 6277 6278Mon Dec 17 11:25:32 2012 Eric Hodel <drbrain@segment7.net> 6279 6280 * doc/syntax.rdoc: Added syntax guide table of contents 6281 * doc/syntax/exceptions.rdoc: Syntax guide for exceptions 6282 * doc/syntax/literals.rdoc: Syntax guide for literals 6283 * doc/syntax/methods.rdoc: Syntax guide for methods 6284 6285Mon Dec 17 07:59:40 2012 Eric Hodel <drbrain@segment7.net> 6286 6287 * lib/rubygems.rb: Updated VERSION 6288 6289 * test/rubygems/test_gem_installer.rb: Fixed ambiguous first argument 6290 warning. 6291 6292 * test/rubygems/test_gem_rdoc.rb: RDoc generation depends on installed 6293 version of RDoc. 6294 6295Sun Dec 16 02:04:41 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6296 6297 * signal.c (rb_sigaltstack_size): cast sysconf() return value 6298 explicitly. Fix compile error on Mac OS X. 6299 6300Sun Dec 16 00:39:43 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 6301 6302 * cont.c (rb_fiber_start): don't enqueue Qnil to async_errinfo_queue. 6303 rb_vm_make_jump_tag_but_local_jump() could return Qnil (ex. when 6304 finished by Thread.exit). [ruby-dev:45218] [Bug #5993] 6305 6306 * test/ruby/test_fiber.rb (test_exit_in_fiber): add test for it. 6307 6308Sat Dec 15 23:56:51 2012 Naohisa Goto <ngotogenome@gmail.com> 6309 6310 * ext/fiddle/pointer.c (rb_fiddle_ptr2cptr): fix error message 6311 forgotten to be changed from DL to Fiddle. 6312 6313Sat Dec 15 23:14:32 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6314 6315 * signal.c (default_handler): remove rb_register_sigaltstack() 6316 call. sigaltstack was already registered when creating threads. 6317 6318Sat Dec 15 23:08:56 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6319 6320 * signal.c (rb_sigaltstack_size): new. calculate stack size for 6321 sigsegv handler. enlarge value when x86 or x86_64 on Linux. 6322 Linux has very small MINSIGSTKSZ size (2048 bytes) and 6323 our sigsegv routine need 5KiB at least. [Bug #7141] 6324 * internal.h: add declaration of rb_sigaltstack_size(). 6325 * vm_core.h: remove ALT_STACK_SIZE definition. 6326 6327 * signal.c (rb_register_sigaltstack): replace ALT_STACK_SIZE with 6328 rb_sigaltstack_size(); 6329 * gc.c (Init_heap): ditto. 6330 * vm.c (th_init): ditto. 6331 6332Sat Dec 15 18:24:21 2012 Tadayoshi Funaba <tadf@dotrb.org> 6333 6334 * rational.c (f_round_common): should check overflow. 6335 6336Sat Dec 15 18:00:00 2012 Tadayoshi Funaba <tadf@dotrb.org> 6337 6338 * rational.c (float_rationalize): reduced. 6339 6340Sat Dec 15 14:18:44 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6341 6342 * io.c (finish_writeconv): uses rb_write_internal2 if 6343 fptr->write_lock have. 6344 6345Sat Dec 15 13:57:08 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6346 6347 * thread.c (rb_mutex_owned_p): remove static. 6348 * io.c (io_flush_buffer): don't hold mutex if already have. 6349 Now recursive lock may occur when following scenario. 6350 fptr_finalize -> finish_writeconv_sync -> finish_writeconv 6351 -> io_fflush. 6352 6353Sat Dec 15 13:38:30 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6354 6355 * io.c (io_flush_buffer): uses io_flush_buffer_async2 instead of 6356 io_flush_buffer_async. 6357 * io.c (io_flush_buffer_async2): new helper function for 6358 io_flush_buffer. It uses rb_thread_call_without_gvl2() instead 6359 of rb_thread_io_blocking_region. 6360 * io.c (io_flush_buffer_sync2): new helper function for 6361 io_flush_buffer_async2. 6362 6363Sat Dec 15 13:04:26 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6364 6365 * io.c (internal_write_func2): new helper function for rb_write_internal2(). 6366 * io.c (rb_write_internal2): new function. it uses 6367 rb_thread_call_without_gvl2() instead of rb_thread_io_blocking_region(). 6368 * io.c (rb_binwrite_string): uses rb_write_internal2 instead of 6369 rb_write_internal. [Bug #7134] 6370 6371Sat Dec 15 12:55:29 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6372 6373 * io.c (rb_io_wait_writable): add to call rb_thread_wait_fd() 6374 likes rb_io_wait_readable. 6375 6376Sat Dec 15 11:54:50 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6377 6378 * io.c (rb_io_wait_writable): don't call rb_thread_fd_writable() 6379 when EINTR. EINTR mean signal interrupt was happen. We don't 6380 need any wait. 6381 6382Sat Dec 15 11:53:36 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6383 6384 * thread.c (rb_thread_wait_fd_rw): remove silly rb_thread_alone() 6385 check. 6386 6387Sat Dec 15 10:22:38 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6388 6389 * thread.c (rb_thread_polling): revert but deprecate. 6390 6391 * include/ruby/intern.h (rb_thread_polling): deprecate. 6392 6393Sat Dec 15 08:37:01 2012 Masaya Tarui <tarui@ruby-lang.org> 6394 6395 * test/rubygems/test_gem_ext_cmake_builder.rb (test_self_build): 6396 get rid of false positive. 6397 6398Sat Dec 15 08:05:56 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6399 6400 * test/ruby/test_thread.rb (test_uninitialized, test_backtrace, 6401 test_thread_timer_and_interrupt, test_thread_join_in_trap, 6402 test_thread_join_current, test_thread_join_main_thread, 6403 test_main_thread_status_at_exit, test_thread_status_in_trap, 6404 test_thread_status_raise_after_kill, test_mutex_owned, 6405 test_mutex_owned2): move these tests from TestThreadGroup class 6406 to TestThread because they are not thread group tests. 6407 6408 * test/ruby/test_thread.rb (test_thread_status_raise_after_kill): 6409 add t.join. 6410 6411 * test/ruby/test_threadgroup.rb: new file. moved ThreadGroup test 6412 from test_thread.rb. 6413 6414Sat Dec 15 08:02:11 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6415 6416 * test/ruby/test_thread.rb (TestThread::Thread::new.): remove 6417 th.abort_on_exception change. Test template shouldn't change 6418 global flag. It prevent to test a normal case. 6419 6420Sat Dec 15 06:15:14 2012 Eric Hodel <drbrain@segment7.net> 6421 6422 * configure.in (HAVE_GCC_ATOMIC_BUILTINS): Set -march=i486 to enable 6423 __sync_val_compare_and_swap. Patch by KOSAKI Motohiro. 6424 [ruby-trunk - Bug #7485] 6425 6426Sat Dec 15 03:42:34 2012 Naohisa Goto <ngotogenome@gmail.com> 6427 6428 * ext/.document: add fiddle/pointer.c, fiddle/handle.c, and 6429 fiddle/win32/lib as documentation. 6430 6431Sat Dec 15 03:06:40 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6432 6433 * file.c (rb_file_flock): use rb_thread_wait_for() instead of 6434 rb_thread_polling(). When getting EAGAIN, we need to wait a 6435 while even if no multi threading. 6436 * thread.c (sleep_for_polling, rb_thread_polling) removed. 6437 6438Sat Dec 15 00:03:31 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 6439 6440 * signal.c (rb_f_kill): remove rb_thread_polling() because this 6441 has no good effect and makes meaningless 100ms delay. 1) 6442 when sending signal to another process, waiting has just silly. 6443 2) when sending signal to current process, 100ms is often not 6444 enough time to wait. It depend on kernel behavior. And, 6445 rb_thread_polling() doesn't make sense anyway. When rb_thread_alone() 6446 is true, it doesn't wait at all and Process.kill() users don't 6447 expect threading changes Process.kill() behavior. [Bug #7560] 6448 6449Fri Dec 14 17:10:57 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6450 6451 * parse.y (parser_params): parser_tokline to track the line number at 6452 which token started. [ruby-dev:46737] [Bug #7559] 6453 6454 * parse.y (fcall): operation with starting line number. 6455 6456 * parse.y (command, primary, method_call): point method name line. 6457 6458 * parse.y (gettable_gen): return token line for __LINE__. 6459 6460Fri Dec 14 16:56:59 2012 Shugo Maeda <shugo@ruby-lang.org> 6461 6462 * vm_insnhelper.c (vm_call_super_method): remove volatile introduced 6463 in r38365. 6464 6465 * vm_insnhelper.c (vm_call_method): use __forceinline to prevent 6466 VC++ to make vm_call_general and vm_call_super_method as the same 6467 method. Thanks, Heesob Park. [Bug #7556] [ruby-core:50867] 6468 6469Fri Dec 14 14:59:14 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6470 6471 * test/ruby/envutil.rb (Test::Unit::Assertions#assert_separately): 6472 take file and line by using caller_locations if not given. 6473 6474 * test/ruby/envutil.rb (Test::Unit::Assertions#assert_separately): 6475 count assertions in separated tests. 6476 6477Fri Dec 14 14:16:42 2012 Eric Hodel <drbrain@segment7.net> 6478 6479 * lib/rdoc/rubygems_hook.rb: Fixed generation of documentation. 6480 Disabled rdoc generation by default to match RubyGems defaults. 6481 Reduced diff with RubyGems::RDoc. 6482 * test/rdoc/test_rdoc_rubygems_hook.rb: Tests for the above. 6483 * test/rubygems/test_gem_rdoc.rb: ditto. 6484 6485 * lib/rdoc/store.rb: Removed useless variable assignment 6486 6487Fri Dec 14 13:58:40 2012 Eric Hodel <drbrain@segment7.net> 6488 6489 * lib/rubygems/commands/rdoc_command.rb: When overwriting 6490 documentation, remove existing documentation first. 6491 6492 * lib/rubygems/server.rb: Fixed documentation links. 6493 * test/rubygems/test_gem_server.rb: Test for the above. 6494 6495 * lib/rubygems/rdoc.rb: Reduced diff with RDoc::RubyGemsHook 6496 * test/rubygems/test_gem_rdoc.rb: ditto 6497 6498Fri Dec 14 04:08:05 2012 NARUSE, Yui <naruse@ruby-lang.org> 6499 6500 * test/ruby/envutil.rb (Test::Unit::Assertions#assert_separately): 6501 added to execute given test source on separate process, 6502 catch its resulted exception and raise it on main process. 6503 6504Fri Dec 14 07:43:44 2012 Aaron Patterson <aaron@tenderlovemaking.com> 6505 6506 * ext/psych/lib/psych/visitors/yaml_tree.rb: quote strings that begin 6507 with non-word characters. Thanks Alex Tambellini! 6508 * test/psych/test_yaml.rb: appropriate test case 6509 6510Thu Dec 13 23:14:17 2012 Shugo Maeda <shugo@ruby-lang.org> 6511 6512 * vm_insnhelper.c (vm_call_super_method): a workaround for the 6513 failure of TestRefinement#test_refine_recursion in Windows. 6514 See [ruby-core:50871] for details. 6515 6516Thu Dec 13 23:10:52 Charlie Somerville <charlie@charliesomerville.com> 6517 6518 * object.c (Init_Object): use rb_mod_init_copy for Class#initialize_copy 6519 * class.c (rb_class_init_copy): rename to class_init_copy_check, performs type 6520 checks on arguments to prevent reinitialization of initialized class 6521 [ruby-core:50869] [Bug #7557] 6522 * class.c (rb_mod_init_copy): use class_init_copy_check if receiver is T_CLASS 6523 * test/ruby/test_class.rb (class TestClass): related test 6524 6525Thu Dec 13 16:53:10 2012 Eric Hodel <drbrain@segment7.net> 6526 6527 * lib/rdoc/class_module.rb: Fixed duplicate comments for classes and 6528 modules from C. 6529 * test/rdoc/test_rdoc_class_module.rb: Test for the above. 6530 6531 * lib/rdoc/parser/c.rb: Reload C variable names to allow proper 6532 updates of an ri store for C files. 6533 * lib/rdoc/rdoc.rb: ditto. 6534 * lib/rdoc/store.rb: ditto. 6535 * test/rdoc/test_rdoc_parser_c.rb: Test for the above. 6536 * test/rdoc/test_rdoc_store.rb: ditto. 6537 6538Thu Dec 13 14:20:00 2012 Zachary Scott <zachary@zacharyscott.net> 6539 6540 * lib/irb*: merge doc from doc/irb/ird.rd and improve overall 6541 documentation of IRB 6542 * doc/irb/irb.rd: remove stale documentation 6543 6544Thu Dec 13 14:10:00 2012 Shugo Maeda <shugo@ruby-lang.org> 6545 6546 * marshal.c (r_entry0): don't taint classes and modules because 6547 Marshal.load just returns the dumped classes and modules. 6548 [Bug #7325] [ruby-core:49198] 6549 6550 * test/ruby/test_marshal.rb: related test. 6551 6552Thu Dec 13 14:10:13 2012 NAKAMURA Usaku <usa@ruby-lang.org> 6553 6554 * test/ruby/test_require.rb (TestRequire#test_loaded_features_encoding): 6555 need to check compatibility, not equality of encodings. 6556 6557Thu Dec 13 14:02:15 2012 NAKAMURA Usaku <usa@ruby-lang.org> 6558 6559 * file.c (rb_file_join): check encoding compatibility before joining 6560 strings. 6561 6562Thu Dec 13 13:06:27 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6563 6564 * proc.c (umethod_bind): allow another form of method transplanting 6565 from a module via UnboundMethod. [ruby-core:34267][Feature #4254] 6566 6567Thu Dec 13 12:07:25 2012 Shugo Maeda <shugo@ruby-lang.org> 6568 6569 * include/ruby/ruby.h (RB_UNUSED_VAR): new macro to suppress 6570 warnings for unused variables. 6571 6572 * ext/bigdecimal/bigdecimal.c (ENTER): use RB_UNUSED_VAR() to 6573 suppress annoying warnings by -Wunused-but-set-variable in gcc 4.6. 6574 6575Thu Dec 13 11:22:33 2012 Koichi Sasada <ko1@atdot.net> 6576 6577 * method.h: remove "VM_METHOD_TYPE__MAX" from rb_method_type_t. 6578 rb_method_type_t is not a number and "_MAX" causes misunderstanding. 6579 6580 * proc.c (rb_method_entry_arity): ditto. 6581 6582 * vm_eval.c (vm_call0_body): ditto. 6583 6584 * vm_insnhelper.c (vm_call_method): ditto. 6585 6586Wed Dec 12 21:40:45 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6587 6588 * lib/tmpdir.rb (Dir::Tmpname#create): deal with a prefix name which 6589 starts with tilde as a plain name, not expanding as home directory. 6590 [ruby-core:50793] [Bug #7547] 6591 6592Wed Dec 12 19:48:59 2012 NARUSE, Yui <naruse@ruby-lang.org> 6593 6594 * ext/json: merge JSON 1.7.5. 6595 fix tests and other fixes. 6596 6597Wed Dec 12 18:30:29 2012 Shugo Maeda <shugo@ruby-lang.org> 6598 6599 * class.c (rb_prepend_module): move refined methods from the origin 6600 of a class to the class, because refinements should have priority 6601 over prepended modules. 6602 6603 * test/ruby/test_refinement.rb: related test. 6604 6605Wed Dec 12 18:27:09 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6606 6607 * time.c (zone_str): lookup or insert by using st_update() at once. 6608 6609Wed Dec 12 15:30:11 2012 NARUSE, Yui <naruse@ruby-lang.org> 6610 6611 * configure.in: add -fno-omit-frame-pointer if libexecinfo is used. 6612 At least on FreeBSD ruby will crash on getting C backtrace 6613 when it is compiled with other than -O0. 6614 6615 * vm_dump.c: enable backtrace on FreeBSD even if with optimizations. 6616 6617Wed Dec 12 16:08:04 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6618 6619 * test/rdoc/test_rdoc_rdoc.rb (TestRDocRDoc#test_normalized_file_list_non_file_directory): 6620 use File::NULL for portability if possible. 6621 6622Wed Dec 12 16:07:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6623 6624 * method.h (rb_method_flag_t): name a magic number for NOEX_SAFE and 6625 NOEX_WITH as NOEX_SAFE_SHIFT_OFFSET. 6626 6627 * method.h (rb_method_type_t, method_optimized_type): C89 forbids a 6628 comma after the last element in enum. 6629 6630 * proc.c (rb_method_entry_arity), vm_eval.c (vm_call0_body), 6631 vm_insnhelper.c (vm_call_method): add VM_METHOD_TYPE__MAX case. 6632 6633Wed Dec 12 14:16:35 2012 Eric Hodel <drbrain@segment7.net> 6634 6635 * lib/rdoc/class_module.rb: Added RDoc::ClassModule#documented? which 6636 checks comment_location. Hide RDoc::ClassModule#comment=. 6637 * test/rdoc/test_rdoc_class_module.rb: Test for above. 6638 6639 * lib/rdoc/generator/template/darkfish/_sidebar_table_of_contents.rhtml: 6640 Fix display of the table of contents in the sidebar. 6641 6642 * lib/rdoc/generator/template/darkfish/table_of_contents.rhtml: 6643 Use #comment_location when displaying classes or modules. 6644 6645 * test/rdoc/test_rdoc_store.rb: Use comment_location. 6646 6647Wed Dec 12 13:40:52 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6648 6649 * vm_insnhelper.c (vm_getivar): no uninitialized instance variables 6650 warnings for non-object if attr method. 6651 6652Wed Dec 12 06:43:37 2012 Benoit Daloze <eregontp@gmail.com> 6653 6654 * iseq.c (rb_iseq_parameters): fix limit for optional arguments. 6655 6656 * test/ruby/test_keyword.rb: tests for above. 6657 6658 * vm_core.h (struct rb_iseq_struct): update documentation 6659 with keyword arguments. [Bug #7540] [ruby-core:50735] 6660 6661Wed Dec 12 03:45:41 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6662 6663 * vm.c (vm_exec): pass exceptions while handling an exception. 6664 6665 * vm_trace.c (rb_threadptr_exec_event_hooks): propagate exceptions. 6666 revert r38293 partially. 6667 6668Wed Dec 12 03:09:05 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6669 6670 * sample/test.rb (Progress#initialize): add --verbose option and show 6671 messages in one line unless --verbose is given. 6672 6673Wed Dec 12 01:47:02 2012 Shugo Maeda <shugo@ruby-lang.org> 6674 6675 * eval.c (rb_using_refinement): make the method table of an iclass 6676 for a refinement that of the refinement, not that of the origin of 6677 the refinement, which is set by rb_include_class_new(). This 6678 change is needed to make module prepend into a refinement work 6679 properly. 6680 6681 * test/ruby/test_refinement.rb: related test. 6682 6683Wed Dec 12 01:05:04 2012 NARUSE, Yui <naruse@ruby-lang.org> 6684 6685 * tool/make-snapshot: add --disable-rubygem to both MINIRUBY and RUBY. 6686 On making miniprelude.c, it seems use MINIRUBY. this fixes #7541 6687 but rubygems also needs to be fixed for older rubies. 6688 6689Wed Dec 12 00:32:11 2012 Naohisa Goto <ngotogenome@gmail.com> 6690 6691 * test/dl/test_func.rb (test_name_with_block, test_bind, test_qsort1): 6692 call unbind to release the callback closure because maximum number 6693 of callbacks is limited to DL::MAX_CALLBACK (== 5) with pure DL 6694 without Fiddle. 6695 6696Wed Dec 12 00:13:34 2012 Naohisa Goto <ngotogenome@gmail.com> 6697 6698 * ext/dl/lib/dl/func.rb (DL::Function#unbind, #bound?): suppress 6699 NoMethodError when Fiddle is available. [ruby-core:50756] [Bug #7543] 6700 * test/dl/test_func.rb (test_bound*, test_unbind*): tests for the above. 6701 6702Tue Dec 11 19:38:37 2012 Naohisa Goto <ngotogenome@gmail.com> 6703 6704 * ext/fiddle/function.c (Fiddle::Function.new): new keyword argument 6705 :name to set the name attribute. 6706 * ext/fiddle/lib/fiddle/import.rb (import_function, bind_function): 6707 set function name by using the :name keyword argument. 6708 Re-fixes r38243. [ruby-core:50566] 6709 * test/fiddle/test_function.rb (test_name): test for the :name keyword 6710 argument and Fiddle::Function#name. 6711 6712Tue Dec 11 16:57:33 2012 Eric Hodel <drbrain@segment7.net> 6713 6714 * common.mk: Added --pages-dir to rdoc creation. Now doc/ items show 6715 up at top-level. 6716 * .document: Moved doc/* entries to doc/.document 6717 * doc/.document: ditto 6718 6719Tue Dec 11 16:44:37 2012 Eric Hodel <drbrain@segment7.net> 6720 6721 * lib/rdoc/options.rb: Added --page-dir option for moving pages in 6722 doc/ to the top-level. 6723 * lib/rdoc/rdoc.rb: ditto. 6724 * test/rdoc/test_rdoc_options.rb: Test for the above. 6725 * test/rdoc/test_rdoc_rdoc.rb: ditto. 6726 6727Tue Dec 11 15:24:05 2012 Eric Hodel <drbrain@segment7.net> 6728 6729 * ext/pathname/lib/pathname.rb: Hide private methods from RDoc. 6730 6731Tue Dec 11 15:11:29 2012 NARUSE, Yui <naruse@ruby-lang.org> 6732 6733 * tool/make-snapshot (BASERUBY): add --disable-gem to avoid load gems. 6734 [Bug #7541] [ruby-core:50736] 6735 6736Tue Dec 11 12:00:19 2012 NARUSE, Yui <naruse@ruby-lang.org> 6737 6738 * ext/dl/win32/extconf.rb: Fix typo 6739 by Santiago Pastorino <santiago@wyeworks.com> 6740 https://github.com/ruby/ruby/pull/221 fix GH-221 6741 6742Tue Dec 11 01:53:37 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 6743 6744 * lib/matrix: alias {row|column}_size to {row|column}_count and use 6745 the latter. 6746 [Bug #7369] [ruby-core:49409] 6747 6748Tue Dec 11 00:26:58 2012 Shugo Maeda <shugo@ruby-lang.org> 6749 6750 * fix the behavior when a module is included into a refinement. 6751 This change is a little tricky, so it might be better to prohibit 6752 module inclusion to refinements. 6753 6754 * include/ruby/ruby.h (RMODULE_INCLUDED_INTO_REFINEMENT): new flag 6755 to represent that a module (iclass) is included into a refinement. 6756 6757 * class.c (include_modules_at): set RMODULE_INCLUDED_INTO_REFINEMENT 6758 if klass is a refinement. 6759 6760 * eval.c (rb_mod_refine): set the superclass of a refinement to the 6761 refined class for super. 6762 6763 * eval.c (rb_using_refinement): skip the above superclass (the 6764 refined class) when creating iclasses for refinements. Otherwise, 6765 `using Refinement1; using Refinement2' creates iclasses: 6766 <Refinement2> -> <RefinedClass> -> <Refinement1> -> RefinedClass, 6767 where <Module> is an iclass for Module, so RefinedClass is 6768 searched before Refinement1. The correct iclasses should be 6769 <Refinement2> -> <Refinement1> -> RefinedClass. 6770 6771 * vm_insnhelper.c (vm_search_normal_superclass): if klass is an 6772 iclass for a refinement, use the refinement's superclass instead 6773 of the iclass's superclass. Otherwise, multiple refinements are 6774 searched by super. For example, if a refinement Refinement2 6775 includes a module M (i.e., Refinement2 -> <M> -> RefinedClass, 6776 and if refinements iclasses are <Refinement2> -> <M>' -> 6777 <Refinement1> -> RefinedClass, then super in <Refinement2> should 6778 use Refinement2's superclass <M> instead of <Refinement2>'s 6779 superclass <M>'. 6780 6781 * vm_insnhelper.c (vm_search_super_method): do not raise a 6782 NotImplementError if current_defined_class is a module included 6783 into a refinement. Because of the change of 6784 vm_search_normal_superclass(), the receiver might not be an 6785 instance of the module('s iclass). 6786 6787 * test/ruby/test_refinement.rb: related test. 6788 6789Mon Dec 10 18:35:25 2012 Shugo Maeda <shugo@ruby-lang.org> 6790 6791 * vm_method.c (rb_method_entry_without_refinements): use 6792 rb_resolve_refined_method() to search superclasses if 6793 me->def->orig_me is 0. This change fixes make test-all 6794 TESTS="json ruby/test_refinement.rb". 6795 6796 * test/ruby/test_refinement.rb: related test. 6797 6798Mon Dec 10 17:59:07 2012 NAKAMURA Usaku <usa@ruby-lang.org> 6799 6800 * ext/fiddle/win32/*: library ports from DL to Fiddle. 6801 6802 * ext/dl/win32/extconf.rb: check fiddle. often case dl compiled prior 6803 to fiddle, so this change is no meaning. in most cases, simply 6804 fiddle/win32 overwrite dl/win32. 6805 6806Mon Dec 10 15:23:35 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6807 6808 * vm_trace.c (rb_threadptr_exec_event_hooks): exceptions in event 6809 hooks should not propagate outside. 6810 6811Mon Dec 10 15:11:06 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6812 6813 * compile.c (iseq_compile_each): count flip-flop state in local iseq 6814 not in each iseqs, so that the keys can be other than hidden 6815 strings. [ruby-core:47253] [Bug #6899] 6816 6817 * vm_insnhelper.c (lep_svar_get, lep_svar_set, vm_getspecial): store 6818 flip-flop states in an array instead of a hash. 6819 6820 * iseq.c (set_relation): main iseq also can has local scope. 6821 6822Mon Dec 10 10:36:12 2012 Narihiro Nakamura <authornari@gmail.com> 6823 6824 * lib/irb/magic-file.rb: set a encoding, which is detected from 6825 the file to read, to the internal encoding. 6826 [Bug #4281][ruby-dev:43036] 6827 6828Mon Dec 10 09:40:19 2012 Eric Hodel <drbrain@segment7.net> 6829 6830 * lib/rubygems/ext/cmake_builder.rb: Added a builder for cmake. 6831 * lib/rubygems/ext.rb: ditto. 6832 * lib/rubygems/installer.rb: ditto. 6833 * test/rubygems/test_gem_ext_cmake_builder.rb: Test for above. 6834 6835Mon Dec 10 09:13:08 2012 Eric Hodel <drbrain@segment7.net> 6836 6837 * lib/rubygems/package.rb: Omit directories when packaging gems like 6838 RubyGems 1.8.x 6839 * test/rubygems/test_gem_package.rb: Test for above. 6840 6841Sun Dec 9 17:36:59 2012 Shugo Maeda <shugo@ruby-lang.org> 6842 6843 * vm_insnhelper.c (vm_call_opt_send): Kernel#send should not use 6844 refinements. 6845 6846 * proc.c (mnew): Kernel#method, Kernel#public_method, 6847 Module#instance_method, and Module#public_instance_method should 6848 not use refinements. 6849 6850 * vm_method.c (rb_method_boundp): Kernel#respond_to? should not use 6851 refinements. 6852 6853 * test/ruby/test_refinement.rb: related test. 6854 6855Sun Dec 9 06:19:04 2012 Eric Hodel <drbrain@segment7.net> 6856 6857 * lib/rdoc/markdown/entities.rb: Added documentation. 6858 6859 * lib/rdoc/parser/ruby.rb: Updated style 6860 6861 * lib/rdoc/ruby_lex.rb: Parse characters up to \u{FFFFF} 6862 * test/rdoc/test_rdoc_ruby_lex.rb: Test for above. 6863 6864Sat Dec 8 22:38:35 2012 Shugo Maeda <shugo@ruby-lang.org> 6865 6866 * eval.c (rb_mod_refine): don't override Module#include. It's 6867 unnecessary now because refinements are activated only in refine 6868 blocks. 6869 6870Sat Dec 8 22:33:26 2012 Shugo Maeda <shugo@ruby-lang.org> 6871 6872 * eval.c: remove Module#refinements. 6873 6874 * test/ruby/test_refinement.rb: remove tests for Module#refinements. 6875 6876Sat Dec 8 13:17:55 2012 Shugo Maeda <shugo@ruby-lang.org> 6877 6878 * eval.c (top_using): raise a RuntimeError if using is called in a 6879 module definition or a method definition. 6880 6881 * test/ruby/test_refinement.rb: related test. 6882 6883Sat Dec 8 15:01:35 2012 Eric Hodel <drbrain@segment7.net> 6884 6885 * lib/rubygems/commands/cleanup_command.rb: Skip default gems when 6886 cleaning up. 6887 * test/rubygems/test_gem_commands_cleanup_command.rb: Test for above. 6888 6889 * lib/rubygems/commands/query_command.rb: Fixed listing remote gems. 6890 6891 * lib/rubygems/dependency_installer.rb: Ignore non-files when looking 6892 for local gems. 6893 * test/rubygems/test_gem_dependency_installer.rb: Test for above. 6894 6895 * lib/rubygems/uninstaller.rb: The user must confirm uninstalling gems 6896 that have dependencies. 6897 * test/rubygems/test_gem_uninstaller.rb: Test for above. 6898 6899 * lib/rubygems.rb (module Gem): Updated version. 6900 6901 * test/rubygems/*.pem: Updated to run in FIPS mode. 6902 * test/rubygems/test_gem_security.rb: ditto. 6903 * test/rubygems/test_gem_security_signer.rb: ditto. 6904 6905Sat Dec 8 12:34:01 2012 Shugo Maeda <shugo@ruby-lang.org> 6906 6907 * vm_insnhelper.c (vm_search_normal_superclass): super in a 6908 refinement always uses the refined class as its superclass. 6909 6910 * test/ruby/test_refinement.rb: related test. 6911 6912Sat Dec 8 11:59:59 2012 Shugo Maeda <shugo@ruby-lang.org> 6913 6914 * eval.c (rb_mod_refine): raise an ArgumentError if a given 6915 block is of a Proc object. 6916 6917 * vm_insnhelper.c (vm_call_method): store refined methods in inline 6918 cache to improve performance. It's safe now because blocks cannot 6919 be yielded with different refinements in the new specification. 6920 6921 * test/ruby/test_refinement.rb: related test. 6922 6923Sat Dec 8 11:17:53 2012 Shugo Maeda <shugo@ruby-lang.org> 6924 6925 * eval.c (rb_mod_refine), vm_eval.c (rb_yield_refine_block): 6926 Module#refine activates all refinements defined in that module 6927 only in a given block. 6928 6929 * string.c (sym_to_proc, sym_call): don't use refinements. 6930 6931 * test/ruby/test_refinement.rb: related test. 6932 6933Sat Dec 8 09:24:42 2012 Eric Hodel <drbrain@segment7.net> 6934 6935 * ext/openssl/ossl_x509name.c: Completed documentation for 6936 OpenSSL::X509::Name. 6937 6938Sat Dec 8 07:57:12 2012 Koichi Sasada <ko1@atdot.net> 6939 6940 * ext/objspace/objspace.c (iow_size): return size of internal object 6941 for ObjectSpace.memsize_of(). 6942 6943 * test/objspace/test_objspace.rb: add a test. 6944 6945Tue Dec 08 02:39:23 2012 James Edward Gray II <james@graysoftinc.com> 6946 6947 * lib/csv.rb: A fix for row comparison by Stephen Wattam. [Bug #7528] 6948 6949Sat Dec 8 01:27:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 6950 6951 * lib/test/unit.rb (Test::Unit::Runner#_run_parallel): no need to 6952 check all reports. 6953 6954Sat Dec 8 00:10:34 2012 Shugo Maeda <shugo@ruby-lang.org> 6955 6956 * vm_eval.c (yield_under, eval_under): do not activate refinements 6957 of the receiver in module_eval and instance_eval. 6958 6959 * eval.c (ruby_Init_refinement): undef Class#refine. 6960 6961 * eval.c (ruby_Init_refinement): remove Module#using. 6962 6963 * eval.c (ruby_Init_refinement): main.using should be private. 6964 6965 * eval.c (rb_mod_refine): the argument of Module#refine should not 6966 be a module. 6967 6968 * insns.def (defineclass): do not activate refinements in a class or 6969 module. 6970 6971Fri Dec 7 23:42:11 2012 Shugo Maeda <shugo@ruby-lang.org> 6972 6973 * ext/refinement/refinement.c: include ruby/ruby.h instead of the 6974 declaration of rb_warn(). 6975 6976Fri Dec 7 16:07:00 2012 Zachary Scott <zachary@zacharyscott.net> 6977 6978 * doc/etc.rd: Removed stale documentation file 6979 * ext/etc/etc.c: Merged documentation from doc/etc.rd and updated 6980 rdoc, added documentation for Etc::Passwd and Etc::Group 6981 6982Fri Dec 7 16:00:57 2012 NAKAMURA Usaku <usa@ruby-lang.org> 6983 6984 * lib/test/unit.rb (Test::Unit::Runner#_run_parallel): no need to 6985 retry skipped test. this fix makes 40% faster the whole test-all 6986 with -j5 on Windows. 6987 6988Fri Dec 7 14:22:29 2012 Eric Hodel <drbrain@segment7.net> 6989 6990 * lib/rdoc/markup/to_joined_paragraph.rb: Completed documentation 6991 * lib/rdoc/parser/c.rb: ditto 6992 * lib/rdoc/parser/changelog.rb: ditto 6993 * lib/rdoc/servlet.rb: ditto 6994 * lib/rdoc/store.rb: ditto 6995 6996 * lib/rdoc/store.rb: Improved HTML error page. Completed 6997 documentation 6998 6999 * lib/rdoc/parser/ruby.rb: Fixed bug attaching a comment to A::B = 42 7000 * test/rdoc/test_rdoc_parser_ruby.rb: Test for above 7001 7002 * test/rdoc/test_rdoc_comment.rb: Removed garbage 7003 7004Fri Dec 7 14:03:59 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7005 7006 * lib/timeout.rb (Timeout#timeout): since async_interrupt_timing 7007 re-raises a deferred exception, replace the timeout exception with 7008 Timeout::Error after it. [Bug #7503] 7009 7010Fri Dec 7 13:07:00 2012 Zachary Scott <zachary@zacharyscott.net> 7011 7012 * doc/forwardable.rd: Remove stale documentation file 7013 * lib/forwardable.rb: Merge documentation from doc/forwardable.rd 7014 7015Fri Dec 7 09:47:35 2012 NARUSE, Yui <naruse@ruby-lang.org> 7016 7017 * time.c (time_mdump): dump timezone string to private instance variable 7018 on marshaling. 7019 7020 * time.c (time_mload): load timezone string from private instance 7021 variable named 'zone'. 7022 7023Fri Dec 7 01:15:07 2012 Naohisa Goto <ngotogenome@gmail.com> 7024 7025 * ext/fiddle/lib/fiddle/function.rb (Fiddle::Function#name): new 7026 attribute needed to switch Win32::Registry from DL to Fiddle. 7027 7028 * ext/fiddle/lib/fiddle/import.rb (import_function, bind_function): 7029 set function name to the returned Fiddle::Function object. 7030 7031Fri Dec 7 00:11:44 2012 Shugo Maeda <shugo@ruby-lang.org> 7032 7033 * test/ruby/test_refinement.rb: fix some tests to use neither 7034 Module#using nor Module#module_eval. 7035 7036Thu Dec 6 23:27:50 2012 Shugo Maeda <shugo@ruby-lang.org> 7037 7038 * eval.c (ruby_Init_refinement): a new function to enable 7039 Refinements with a warning "Refinements are experimental...". 7040 7041 * ext/refinement/refinement.c, ext/refinement/extconf.rb: a new 7042 extension library to enable Refinements. 7043 7044Thu Dec 6 18:23:05 2012 Shugo Maeda <shugo@ruby-lang.org> 7045 7046 * revised r37993 to avoid SEGV/ILL in tests. In r37993, a method 7047 entry with VM_METHOD_TYPE_REFINED holds only the original method 7048 definition, so ci->me is set to a method entry allocated in the 7049 stack, and it causes SEGV/ILL. In this commit, a method entry 7050 with VM_METHOD_TYPE_REFINED holds the whole original method entry. 7051 Furthermore, rb_thread_mark() is changed to mark cfp->klass to 7052 avoid GC for iclasses created by copy_refinement_iclass(). 7053 7054 * vm_method.c (rb_method_entry_make): add a method entry with 7055 VM_METHOD_TYPE_REFINED to the class refined by the refinement if 7056 the target module is a refinement. When a method entry with 7057 VM_METHOD_TYPE_UNDEF is invoked by vm_call_method(), a method with 7058 the same name is searched in refinements. If such a method is 7059 found, the method is invoked. Otherwise, the original method in 7060 the refined class (rb_method_definition_t::body.orig_me) is 7061 invoked. This change is made to simplify the normal method lookup 7062 and to improve the performance of normal method calls. 7063 7064 * vm_method.c (EXPR1, search_method, rb_method_entry), 7065 vm_eval.c (rb_call0, rb_search_method_entry): do not use 7066 refinements for method lookup. 7067 7068 * vm_insnhelper.c (vm_call_method): search methods in refinements if 7069 ci->me is VM_METHOD_TYPE_REFINED. If the method is called by 7070 super (i.e., ci->call == vm_call_super_method), skip the same 7071 method entry as the current method to avoid infinite call of the 7072 same method. 7073 7074 * class.c (include_modules_at): add a refined method entry for each 7075 method defined in a module included in a refinement. 7076 7077 * class.c (rb_prepend_module): set an empty table to 7078 RCLASS_M_TBL(klass) to add refined method entries, because 7079 refinements should have priority over prepended modules. 7080 7081 * proc.c (mnew): use rb_method_entry_with_refinements() to get 7082 a refined method. 7083 7084 * vm.c (rb_thread_mark): mark cfp->klass for iclasses created by 7085 copy_refinement_iclass(). 7086 7087 * vm.c (Init_VM), cont.c (fiber_init): initialize th->cfp->klass. 7088 7089 * test/ruby/test_refinement.rb (test_inline_method_cache): do not skip 7090 the test because it should pass successfully. 7091 7092 * test/ruby/test_refinement.rb (test_redefine_refined_method): new 7093 test for the case a refined method is redefined. 7094 7095Thu Dec 6 17:29:03 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7096 7097 * parse.y (parser_here_document): flush string content between new 7098 line and :string_embexpr. [ruby-core:48703] [Bug #7255] 7099 7100Thu Dec 6 16:35:21 2012 Eric Hodel <drbrain@segment7.net> 7101 7102 * test/rake/helper.rb: Load envutil correctly. Removed useless rescue 7103 for signal propagation tests 7104 * lib/rake/file_utils.rb: Prefer the built ruby. 7105 * test/rake/test_rake_functional.rb: ditto 7106 7107Thu Dec 6 15:20:34 2012 Eric Hodel <drbrain@segment7.net> 7108 7109 * lib/rdoc/context.rb: Don't warn for duplicate methods while loading. 7110 * test/rdoc/test_rdoc_context.rb: Test for above. 7111 7112Thu Dec 6 14:26:22 2012 Eric Hodel <drbrain@segment7.net> 7113 7114 * lib/rubygems/command_manager.rb: Removed string concatenation 7115 syntax. [Bug #6265] 7116 * lib/rubygems/commands/install_command.rb: ditto 7117 * lib/rubygems/commands/uninstall_command.rb: ditto 7118 * lib/rubygems/indexer.rb: ditto 7119 * lib/rubygems/security/policy.rb: ditto 7120 * lib/rubygems/security.rb: ditto 7121 * lib/rubygems/uninstaller.rb: ditto 7122 * test/rubygems/test_gem_commands_cert_command.rb: ditto 7123 * test/rubygems/test_gem_package.rb: ditto 7124 * test/rubygems/test_gem_security.rb: ditto 7125 * test/rubygems/test_gem_security_policy.rb: ditto 7126 7127Thu Dec 6 14:10:08 2012 Eric Hodel <drbrain@segment7.net> 7128 7129 * lib/rubygems/package.rb: Set rubygems_version before validation. 7130 Fixes issue with bundler. 7131 * test/rubygems/test_gem_package.rb: Test for above. 7132 7133 * lib/rubygems/remote_fetcher.rb: Only update the cache when we have 7134 permission. [ruby-trunk - Bug #7509] 7135 * lib/rubygems/source.rb (class Gem): ditto 7136 * test/rubygems/test_gem_remote_fetcher.rb: Test for above. 7137 * lib/rubygems/test_utilities.rb: ditto 7138 7139 * lib/rubygems/specification.rb: Derive base_dir properly for default 7140 gems. [ruby-trunk - Bug #7496] 7141 * test/rubygems/test_gem_specification.rb: Test for above. 7142 7143 * lib/rubygems.rb: Untaint Dir.pwd when searching for gemdeps files 7144 for operation under $SAFE=1 7145 7146Thu Dec 06 12:07:11 2012 Koichi Sasada <ko1@atdot.net> 7147 7148 * vm_trace.c: TracePoint#enable should not cause an error 7149 when it is already enabled. TracePoint#disable is too. 7150 [ruby-core:50561] [ruby-trunk - Bug #7513] 7151 7152 * test/ruby/test_settracefunc.rb: add tests. 7153 7154Thu Dec 6 07:19:58 2012 Eric Hodel <drbrain@segment7.net> 7155 7156 * lib/rdoc*: Improved display of ChangeLog files as HTML. 7157 * test/rdoc*: Test for above. 7158 7159Thu Dec 6 04:34:19 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 7160 7161 * thread.c (rb_uninterruptible): helper function for providing 7162 temporary async_interrupt_timing(Object => :defer) 7163 7164 * io.c (rb_f_p): use rb_uninterruptible. 7165 * io.c (rb_f_p_internal): helper function for rb_f_p(). 7166 * io.c (struct rb_f_p_arg): new struct for rb_f_p_internal. 7167 7168 * test/ruby/test_thread.rb (test_async_interrupt_and_p): test for 7169 the above. 7170 7171Thu Dec 6 04:27:10 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 7172 7173 * io.c (io_binwrite): check interrupt before io issue. 7174 * test/ruby/test_thread.rb (test_async_interrupt_and_io): 7175 test for the above. 7176 7177Thu Dec 6 01:10:36 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7178 7179 * vm_eval.c (rb_method_call_status): use Qundef as no self instead of 7180 the current self. 7181 7182 * vm_eval.c (send_internal): public_send does not consider how it is 7183 called, as mentioned in r14173. patched by charliesome (Charlie 7184 Somerville). [ruby-core:50489] [Bug #7499] 7185 7186Wed Dec 5 23:50:23 2012 Narihiro Nakamura <authornari@gmail.com> 7187 7188 * gc.c (getrusage_time): uses clock_gettime() with 7189 CLOCK_PROCESS_CPUTIME_ID when available, which provides a 1ns 7190 precision on linux. [ruby-core:50495] [Bug #7500] 7191 patched by Aman Gupta. 7192 7193Wed Dec 5 22:46:02 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7194 7195 * vm.c (rb_vm_make_proc): save the proc made from the given block so 7196 that it will not get collected. [ruby-core:50545] [Bug #7507] 7197 7198Wed Dec 5 22:13:57 2012 Naohisa Goto <ngotogenome@gmail.com> 7199 7200 * ext/dl/lib/dl/func.rb (DL::Function#bind): When Fiddle is used, 7201 @ptr should be updated. This fixes SEGV raised in DL::Function#call 7202 after calling DL::Function#bind. [Bug #7516] [ruby-dev:46708] 7203 7204 * test/dl/test_func.rb (test_bind): test for the above 7205 7206Wed Dec 5 18:53:00 2012 Masaya Tarui <tarui@ruby-lang.org> 7207 7208 * thread.c (rb_thread_s_async_interrupt_timing): have to check ints 7209 before jumping out. 7210 * test/ruby/test_thread.rb (test_async_interrupt_with_return): add test 7211 rescue has to catch a queued async exception at the time of return. 7212 * test/ruby/test_thread.rb (test_async_interrupt_with_break): add test 7213 rescue has to catch a queued async exception at the time of break. 7214 7215Wed Dec 5 16:54:28 2012 Koichi Sasada <ko1@atdot.net> 7216 7217 * test/ruby/memory_status.rb: suppress warning. 7218 A patch from NAKAMURA Usaku. 7219 7220Wed Dec 5 16:06:54 2012 Eric Hodel <drbrain@segment7.net> 7221 7222 * lib/rdoc/parser/changelog.rb: Parse more ChangeLog file variations. 7223 * test/rdoc/test_rdoc_parser_changelog.rb: Test for above. 7224 7225Wed Dec 5 12:17:11 2012 Naohisa Goto <ngotogenome@gmail.com> 7226 7227 * ext/dl/lib/dl/func.rb (DL::Function#initialize, DL::Function#bind): 7228 ABI should be set by using CFunc#calltype even when Fiddle is used. 7229 When Fiddle is used and a block is given, name should not be ignored. 7230 [ruby-core:50562] [Bug #7514] 7231 7232 * ext/dl/lib/dl/import.rb (DL::Importer#bind_function): should respect 7233 abi and name when Fiddle is used. 7234 7235 * test/dl/test_func.rb (test_name_with_block): test for "name" method 7236 with giving a block. 7237 7238Wed Dec 5 11:55:00 2012 Zachary Scott <zachary@zacharyscott.net> 7239 7240 * doc/shell.rd, doc/shell.rd.ja: Removed stale doc files 7241 * lib/shell.rb, lib/shell/*: Merge and updates docs from doc/shell.rd* 7242 7243Wed Dec 5 11:42:38 2012 Koichi Sasada <ko1@atdot.net> 7244 7245 * test/ruby/test_settracefunc.rb: disable trace. 7246 7247Wed Dec 5 11:37:37 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7248 7249 * lib/mkmf.rb (MakeMakefile#macro_defined?): use clearly different 7250 strings from conflict markers. 7251 7252Wed Dec 5 04:25:00 2012 Zachary Scott <zachary@zacharyscott.net> 7253 7254 * lib/README: Add rdoc modeline directive and formatting libs 7255 7256Wed Dec 5 04:04:02 2012 Masaya Tarui <tarui@ruby-lang.org> 7257 7258 * test/ruby/test_thread.rb (test_async_interrupt_blocking): bugfix 7259 about deferred check 7260 7261Wed Dec 5 03:35:37 2012 Masaya Tarui <tarui@ruby-lang.org> 7262 7263 * vm_core.h (RUBY_VM_CHECK_INTS_BLOCKING): check async queue everytime. 7264 * thread.c (sleep_forever): check RUBY_VM_CHECK_INTS_BLOCKING first. 7265 * thread.c (sleep_timeval): ditto. 7266 * test/ruby/test_thread.rb (test_async_interrupt_blocking): add a test 7267 exceptions are correctly deferred and raised on :on_blocking context. 7268 7269Wed Dec 5 02:36:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7270 7271 * common.mk, defs/id.def, template/id.c.tmpl: generate id.c as well as id.h. 7272 7273Wed Dec 5 00:56:21 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 7274 7275 * thread.c (rb_mutex_owned_p): new method that return current 7276 thread have the target mutex or not. [Feature #7505] [ruby-dev:46697] 7277 * test/ruby/test_thread.rb (test_mutex_owned, test_mutex_owned2): 7278 test for the above. 7279 * NEWS: new for the above. 7280 7281Wed Dec 5 00:05:47 2012 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp> 7282 7283 * lib/erb.rb (make_compiler, add_put_cmd, add_insert_cmd): extract 7284 methods. 7285 7286Tue Dec 4 18:21:04 2012 Naohisa Goto <ngotogenome@gmail.com> 7287 7288 * test/ruby/memory_status.rb (Memory): use fiddle/types if available. 7289 7290 * test/ruby/memory_status.rb (Memory::Win32): :stdcall is needed on 7291 x86 WIN32. This commit partly reverts r38054. 7292 7293Tue Dec 4 18:05:58 2012 Naohisa Goto <ngotogenome@gmail.com> 7294 7295 * ext/fiddle/lib/fiddle/types.rb: copied from ext/dl/lib/dl/types.rb 7296 and modified for Fiddle, needed for migration from DL to Fiddle. 7297 7298Tue Dec 4 17:57:09 2012 Naohisa Goto <ngotogenome@gmail.com> 7299 7300 * ext/fiddle/lib/fiddle/import.rb (import_function, bind_function): 7301 should respect call_type for migration from DL to Fiddle. 7302 [Bug #7484] [ruby-core:50405] 7303 7304Tue Dec 4 16:54:00 2012 Eric Hodel <drbrain@segment7.net> 7305 7306 * .document: Added ChangeLog and doc/ChangeLog-* as documentation 7307 7308Tue Dec 4 16:47:46 2012 Eric Hodel <drbrain@segment7.net> 7309 7310 * lib/rdoc/parser/changelog.rb: Added a ChangeLog parser to RDoc. 7311 * lib/rdoc/parser.rb: ditto 7312 * test/rdoc/test_rdoc_parser_changelog.rb: Test for above. 7313 7314Tue Dec 4 16:23:32 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7315 7316 * marshal.c (path2class, path2module): use PRIsVALUE. 7317 7318 * marshal.c (w_object, marshal_dump, marshal_load): use 7319 rb_check_funcall if possible. 7320 7321 * marshal.c (w_object, marshal_dump, r_object0, marshal_load): use 7322 RB_GC_GUARD() (directly or indirectly) instead of volatile. 7323 7324 * variable.c (rb_path_to_class): prevent the argument from GC. 7325 7326Tue Dec 04 13:55:07 2012 Koichi Sasada <ko1@atdot.net> 7327 7328 * vm_opts.h: enable optimization - operand unification. 7329 Operand unification technique enable to combine 7330 an instruction and specific operands and make new 7331 instruction. 7332 7333 * defs/opt_operand.def: add several configuration 7334 of operand unification. 7335 7336 * insns.def: use `int' instead to suppress warning. 7337 7338Mon Dec 3 17:58:53 2012 NARUSE, Yui <naruse@ruby-lang.org> 7339 7340 * parse.y: replace parser->enc with current_enc. 7341 7342Tue Dec 4 08:33:46 2012 Eric Hodel <drbrain@segment7.net> 7343 7344 * README.EXT: Converted to RDoc format 7345 * README.EXT.ja: ditto 7346 7347Tue Dec 4 08:32:10 2012 Eric Hodel <drbrain@segment7.net> 7348 7349 * lib/rdoc/ri/driver.rb: Fixed ri page display for files with 7350 extensions. 7351 * test/rdoc/test_rdoc_ri_driver.rb: Test for above 7352 7353Tue Dec 4 04:11:50 2012 Eric Hodel <drbrain@segment7.net> 7354 7355 * .document: Add NEWS for `ri ruby:NEWS` 7356 * NEWS: Set format as rdoc 7357 * doc/NEWS-1.8.7: ditto 7358 * doc/NEWS-1.9.1: ditto 7359 * doc/NEWS-1.9.2: ditto 7360 * doc/NEWS-1.9.3: ditto 7361 7362Mon Dec 3 20:37:22 2012 Koichi Sasada <ko1@atdot.net> 7363 7364 * vm_exec.c: check VM_COLLECT_USAGE_DETAILS. 7365 7366Mon Dec 3 20:28:02 2012 Koichi Sasada <ko1@atdot.net> 7367 7368 * compile.c (iseq_specialized_instruction): 7369 change condition of using `opt_send_simple'. 7370 More method invocations can be simple. 7371 7372Mon Dec 3 20:03:38 2012 Koichi Sasada <ko1@atdot.net> 7373 7374 * test/ruby/test_objectspace.rb: skip RuntimeError 7375 which says a message "can't modify frozen File". 7376 Is that correct behavior? 7377 7378Mon Dec 03 20:00:19 2012 Koichi Sasada <ko1@atdot.net> 7379 7380 * vm_exec.c: vm_analysis_insn should be static. 7381 7382Mon Dec 3 19:10:12 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7383 7384 * random.c (Init_Random), rational.c (Init_Rational): make marshal 7385 methods private. [Feature #6539] 7386 7387Mon Dec 3 18:29:27 2012 Koichi Sasada <ko1@atdot.net> 7388 7389 * iseq.h: iseq_catch_table_entry::catch_type should be 7390 Fixnum because they are pushed into Array in a compiler. 7391 [Bug #7502] 7392 7393 * test/ruby/test_objectspace.rb: add a test of this issue. 7394 7395Mon Dec 3 18:25:16 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7396 7397 * template/id.h.tmpl (preserved_ids): "empty?" is not an attribute name. 7398 7399Mon Dec 3 16:23:09 2012 Koichi Sasada <ko1@atdot.net> 7400 7401 * vm_backtrace.c (vm_backtrace_to_ary): check negative size (2nd arg). 7402 7403Mon Dec 3 15:50:33 2012 Akinori MUSHA <knu@iDaemons.org> 7404 7405 * misc/ruby-additional.el (ruby-mode-set-encoding): Unbreak by 7406 fixing a typo, s/set/setq/. 7407 7408Mon Dec 3 14:14:19 2012 Koichi Sasada <ko1@atdot.net> 7409 7410 * compile.c (iseq_compile_each): joke shouldn't use id.h defined ids. 7411 7412 * id.c (Init_id): ditto. 7413 7414 * common.mk: fix dependency. 7415 7416Mon Dec 3 12:43:35 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7417 7418 * misc/ruby-mode.el (ruby-block-end-re, ruby-delimiter) 7419 (ruby-mode-syntax-table, ruby-parse-partial, ruby-beginning-of-indent): 7420 merge from Emacs. 7421 7422 * misc/ruby-mode.el (ruby-calculate-indent): fix indentation of 7423 argument lines in parentheses. [Bug #5140] 7424 7425Mon Dec 3 07:52:41 2012 Eric Hodel <drbrain@segment7.net> 7426 7427 * lib/rdoc/parser.rb: Improved modeline support. Patch by nobu. 7428 * test/rdoc/test_rdoc_parser.rb: Test for above. 7429 7430Sun Dec 3 00:06:00 2012 Kenta Murata <mrkn@mrkn.jp> 7431 7432 * ext/bigdecimal/bigdecimal.c (BigDecimal_new): stop checking string 7433 taintness. [Bug #5508] [ruby-core:40510] 7434 7435Sun Dec 2 19:26:47 2012 Masaya Tarui <tarui@ruby-lang.org> 7436 7437 * thread.c (RB_GC_SAVE_MACHINE_CONTEXT, rb_gc_save_machine_context): 7438 extract rb_gc_save_machine_context to RB_GC_SAVE_MACHINE_CONTEXT. 7439 NOTE: machine_regs and machine_stack_end must be set in current scope. 7440 7441Sun Dec 2 18:46:24 2012 Koichi Sasada <ko1@atdot.net> 7442 7443 * array.c, enum.c, insns.def, io.c, numeric.c, parse.y, process.c, 7444 range.c: use prepared IDs. 7445 A patch from charliesome (Charlie Somerville). 7446 [Bug #7495] 7447 7448 * common.mk: add dependency to id.h. 7449 7450 * common.mk: replace ID_H_INCLUDES with id.h. 7451 7452Sun Dec 2 16:48:00 2012 Zachary Scott <zachary@zacharyscott.net> 7453 7454 * lib/weakref.rb (rdoc): Clean up usage, add example, 7455 note ArgumentError on WeakRef.new 7456 7457Sun Dec 2 16:45:00 2012 Zachary Scott <zachary@zacharyscott.net> 7458 7459 * gc.c (WeakMap): Add doc for internal reference, use lib/weakref.rb 7460 7461Sun Dec 2 07:24:23 2012 Eric Hodel <drbrain@segment7.net> 7462 7463 * lib/rdoc/parser.rb: Parse files with a -*- rdoc -*- modeline 7464 * test/rdoc/test_rdoc_parser.rb: Test for above 7465 7466Sun Dec 2 06:02:00 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 7467 7468 * gc.h (SET_MACHINE_STACK_END): add volatile for preventing 7469 harmful optimization. [ruby-dev:46665] [Bug #7468] 7470 7471Sun Dec 2 05:01:58 2012 Koichi Sasada <ko1@atdot.net> 7472 7473 * iseq.c (rb_iseq_line_trace_each): iterate `line' event only. 7474 7475 * test/ruby/test_iseq.rb: add a test for this change. 7476 7477Sun Dec 2 02:46:04 2012 Koichi Sasada <ko1@atdot.net> 7478 7479 * vm_trace.c: add TracePoint#inspect. 7480 7481 * test/ruby/test_settracefunc.rb: add a test for this change. 7482 7483Sat Dec 1 21:18:19 2012 Koichi Sasada <ko1@atdot.net> 7484 7485 * test/ruby/test_backtrace.rb: add a test for 7486 Thread::Backtrace::Location#inspect. 7487 BTW, tests for `caller_locations' are not enough. 7488 Any volunteers are welcome. 7489 7490Sat Dec 1 21:06:58 2012 Koichi Sasada <ko1@atdot.net> 7491 7492 * vm_backtrace.c (location_inspect_m): add 7493 Thread::Backtrace::Location#inspect. 7494 It same as loc_obj.to_s.inspect. 7495 7496Sat Dec 1 19:24:09 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7497 7498 * io.c (rb_io_puts): recurse for the argument itself, not converted 7499 array elements. [ruby-core:42444] [Bug #5986] 7500 7501Sat Dec 1 19:01:36 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7502 7503 * marshal.c (w_object, r_object0): call private marshal methods. 7504 [Feature #6539] 7505 7506Sat Dec 1 18:52:22 2012 Eric Hodel <drbrain@segment7.net> 7507 7508 * lib/rubygems/commands/cleanup_command.rb: Fix cleanup command for 7509 multiple gems. [ruby-trunk - #7481] by Kouhei Sutou 7510 * test/rubygems/test_gem_commands_cleanup_command.rb: Test for above. 7511 * lib/rubygems.rb: Autoload Gem::Source to prevent test failures 7512 7513Sat Dec 1 18:17:00 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7514 7515 * complex.c (Init_Complex), time.c (Init_Time): make marshal methods 7516 private. [Feature #6539] 7517 7518 * object.c (Init_Object): make remove_instance_variable public. 7519 [Feature #6539] 7520 7521 * id.c (Init_id), template/id.h.tmpl: add initialize_{copy,clone,dup} 7522 and respond_to_missing?. 7523 7524 * vm_method.c (rb_method_entry_make): make above methods private. 7525 [Feature #6539] 7526 7527Sat Dec 1 16:40:22 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 7528 7529 * test/ruby/test_thread.rb: move ConditionVariable related test 7530 into test/thread/test_cv.rb. 7531 * test/thread/test_cv.rb: new file. 7532 * test/thread/test_cv.rb (test_condvar_empty_signal): new tests. 7533 * test/thread/test_cv.rb (test_condvar_empty_broadcast): ditto. 7534 7535Sat Dec 1 15:14:25 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 7536 7537 * test/ruby/test_thread.rb (test_cv_wait_deadlock): enable 7538 cv deadlock test. 7539 7540Sat Dec 1 14:23:33 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 7541 7542 * lib/thread.rb (ConditionVariable): use hash instead of array for 7543 @waiters. 7544 * test/thread/test_queue.rb (test_sized_queue_and_wakeup): remove 7545 a test because @waiters no longer have a chance to duplicated. Now it's 7546 a hash. 7547 7548Sat Dec 1 17:16:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7549 7550 * misc/ruby-electric.el (ruby-electric-curlies): use kill-region 7551 instead of interactive command delete-backward-char. 7552 7553Sat Dec 1 17:12:55 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7554 7555 * misc/inf-ruby.el (inferior-ruby-mode): fix the 7556 compilation-shell-minor-mode configuration. a patch by 7557 j2petkov (Jean-Christophe Petkovich) in [ruby-core:46518]. 7558 [Bug #6742] 7559 7560Sat Dec 1 15:05:30 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7561 7562 * dir.c (glob_helper): use NAMLEN() to tell the length of d_name 7563 instead of strlen(), which can access beyond the boundary. 7564 7565Sat Dec 1 13:48:13 2012 Eric Hodel <drbrain@segment7.net> 7566 7567 * lib/rubygems/specification.rb: Don't add default gems to $LOAD_PATH 7568 as they are already there. 7569 7570Sat Dec 1 12:22:17 2012 Kouhei Sutou <kou@cozmixng.org> 7571 7572 * re-added r38053 that is reverted by r38061. Problems by r38053 7573 are resolved by r38096. r38096 removed GEM_SKIP configuration. 7574 7575 The below is ChangeLog of r38053: 7576 7577 * defs/default_gems: Add base directory column. 7578 7579 * tool/rbinstall.rb: 7580 - Install .gemspecs of default gem to 7581 #{GEM_HOME}/specifications/default/. 7582 - Update files parameter of .gemspecs by relative path from 7583 library directory. 7584 7585Sat Dec 1 11:09:12 2012 Aaron Patterson <aaron@tenderlovemaking.com> 7586 7587 * variable.c (rb_class_path_no_cache): add a function to get the class 7588 path without caching the computed path. Some classes are frozen, and 7589 will raise an exception without this. 7590 7591 * probes.d (cmethod-entry, cmethod-return): separate cmethods from 7592 regular methods to match set trace func. 7593 7594 * probes_helper.h: refactor macros. Fix probes to avoid calling 7595 #inspect when profiling. 7596 7597 * insns.def: update for use with new macros. 7598 7599 * vm_eval.c: ditto 7600 7601 * vm_insnhelper.c: ditto 7602 7603 * test/dtrace/test_singleton_function.rb: fix test for new output. 7604 7605 * test/dtrace/test_cmethod.rb: test the cmethod probes. 7606 7607Sat Dec 1 09:44:16 2012 Eric Hodel <drbrain@segment7.net> 7608 7609 * test/rdoc/test_rdoc_options.rb: Windows drive letters are 7610 case-insensitive. 7611 7612Sat Dec 1 09:42:13 2012 Eric Hodel <drbrain@segment7.net> 7613 7614 * lib/rubygems.rb: Search for gem deps file up the directory tree. 7615 * test/rubygems/test_gem.rb: Test for above. 7616 7617Sat Dec 1 09:33:32 2012 Eric Hodel <drbrain@segment7.net> 7618 7619 * test/runner.rb: Set GEM_HOME, GEM_PATH and GEM_SKIP to empty set. 7620 With default_gem support in RubyGems GEM_SKIP prevents loading of 7621 built-in gems. 7622 7623Sat Dec 1 07:16:17 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 7624 7625 * compile.c (ADD_CATCH_ENTRY): add a cast to fix SEGV with x64 mingw 7626 on Windows 8. Without cast, 0 might be non zero value at higher bits 7627 in rb_ary_new3(). 7628 [ruby-core:50258] [Bug #7456] 7629 7630Sat Dec 1 04:07:57 2012 NARUSE, Yui <naruse@ruby-lang.org> 7631 7632 * parse.y (parser.utf8): remove unused property. 7633 7634 * parse.y (UTF8_ENC): remove unused macro. 7635 7636 * parse.y (parser_tokadd_utf8): use rb_utf8_encoding() directly. 7637 7638Sat Dec 1 03:49:45 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 7639 7640 * lib/sync.rb (Sync_m#sync_synchronize): add Thread.async_interrupt_timing 7641 for protecting from async interrupt. 7642 * lib/sync.rb (Sync_m#sync_lock): ditto. 7643 7644Sat Dec 1 03:38:04 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 7645 7646 * lib/thread.rb (ConditionVariable#broadcast): s/RuntimeError/StandardError/ 7647 * lib/thread.rb (ConditionVariable#signal): ditto. 7648 7649Sat Dec 1 03:29:52 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 7650 7651 * lib/thread.rb (SizedQueue#pop): rewrite by using ConditionVariable. 7652 * lib/thread.rb (SizedQueue#push): ditto. 7653 * lib/thread.rb (SizedQueue#max): ditto. 7654 * lib/thread.rb (Queue#pop): ditto. 7655 * lib/thread.rb (Queue#push): ditto. 7656 7657 * lib/thread.rb (SizedQueue#num_waiting): adopt the above changes. 7658 * lib/thread.rb (SizedQueue#initialize): ditto. 7659 * lib/thread.rb (Queue#num_waiting): ditto. 7660 * lib/thread.rb (Queue#initialize): ditto. 7661 * test/thread/test_queue.rb (test_sized_queue_and_wakeup): ditto. 7662 7663Sat Dec 1 03:45:47 2012 Koichi Sasada <ko1@atdot.net> 7664 7665 * thread.c (Thread.async_interrupt_timing): fix RDoc. 7666 :never is not used any more. 7667 7668Sat Dec 1 02:56:19 2012 Koichi Sasada <ko1@atdot.net> 7669 7670 * iseq.c: add RubyVM::InstructionSequence (ISeq) inspection methods. 7671 * ISeq#path returns path of this ISeq written. 7672 * ISeq#absolute_path returns absolute path. 7673 * ISeq#label returns label (method name and so on). 7674 * ISeq#base_label returns base label (see Thread::Backtrace::Location). 7675 * ISeq#first_lineno returns first line number of this ISeq. 7676 * ISeq.of(obj) returns ISeq object which obj (Proc or Method) 7677 is contains. 7678 7679 * test/ruby/test_iseq.rb: add tests. 7680 7681Sat Dec 1 02:58:51 2012 Eric Hodel <drbrain@segment7.net> 7682 7683 * include/ruby/ruby.h (rb_event_flag_t): Maintain integer precision 7684 for clang error (VALUE aka unsigned long vs unsigned int) 7685 7686Sat Dec 1 02:53:18 2012 Eric Hodel <drbrain@segment7.net> 7687 7688 * test/rubygems/test_gem_dependency_installer.rb: Use Gem.read_binary 7689 instead of File.binread for ruby 1.8 compatibility in the rubygems 7690 source repository. Updates r38075 7691 7692Sat Dec 1 02:33:20 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 7693 7694 * thread.c (rb_threadptr_interrupt_mask, async_interrupt_timing_func): 7695 merge into them into rb_thread_s_async_interrupt_timing. 7696 * thread.c (rb_thread_s_async_interrupt_timing): ditto. 7697 7698Sat Dec 1 02:11:47 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 7699 7700 * thread.c (rb_threadptr_interrupt_mask): add argument check. 7701 * thread.c (async_interrupt_timing_arg_check_i): helper function 7702 for the above. 7703 * test/ruby/test_thread.rb (test_async_interrupt_timing_invalid_argument): 7704 test for the above. 7705 7706Sat Dec 1 01:19:34 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 7707 7708 * lib/thread.rb (ConditionVariable#broadcast): protect from 7709 async interrupt by using Thread.async_interrupt_timing. 7710 * lib/thread.rb (ConditionVariable#signal): ditto. 7711 * lib/thread.rb (ConditionVariable#wait): ditto. 7712 7713Sat Dec 1 02:04:23 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 7714 7715 * test/ruby/envutil.rb (Test::Unit::Assertions#assert_in_out_err): 7716 raise if assert_in_out_err misused. 7717 7718Sat Dec 1 02:08:16 2012 NAKAMURA Usaku <usa@ruby-lang.org> 7719 7720 * test/rdoc/test_rdoc_rubygems_hook.rb 7721 (TestRDocRubygemsHook#test_setup_unwritable): 1. check the existence 7722 of the file(directory) before touch it. 2. remove test 7723 file(directory) after the test. see [ruby-core:50388]. 7724 7725Sat Dec 1 01:51:06 2012 Koichi Sasada <ko1@atdot.net> 7726 7727 [EXPERIMENTAL] 7728 * iseq.c: add following two methods. 7729 * ISeq#line_trace_all returns all line traces (line numbers) 7730 * ISeq#line_trace_specify(pos, set) set `pos'th line event to 7731 specified_line event (if set is true). 7732 These features are introduced for debuggers (mainly to make 7733 breakpoint). 7734 7735 * iseq.h: add decl. of C APIs. 7736 7737 * test/ruby/test_iseq.rb: add tests. 7738 7739 * vm_trace.c: add `specified_line' event. 7740 7741 * include/ruby/ruby.h: ditto. 7742 7743Sat Dec 1 01:49:52 2012 NAKAMURA Usaku <usa@ruby-lang.org> 7744 7745 * test/rubygems/test_gem_dependency_installer.rb: gems are of course 7746 binary files, so use a binary reading method when reading it. 7747 see [ruby-core:50388]. 7748 7749Sat Dec 1 01:21:07 2012 NAKAMURA Usaku <usa@ruby-lang.org> 7750 7751 * lib/rubygems/command.rb (Gem::Command#get_all_gem_names_and_versions): 7752 who assumes that the pathname of a gem never contains ':' ? 7753 yes, on Unixen pathnames can contain ':', and on Windows they almost 7754 certainly contain ':'. see [ruby-core:50388]. 7755 7756 * lib/rubygems/requirement.rb (Gem::Requirement::PATTERN_RAW): extract 7757 the regexp to match the version specifier from PATTERN to use in 7758 above method. 7759 7760Sat Dec 1 00:48:19 2012 Naohisa Goto <ngotogenome@gmail.com> 7761 7762 * ext/fiddle/extconf.rb, ext/fiddle/function.c 7763 (Fiddle::Function::STDCALL): FFI_STDCALL is not a macro, but an 7764 enumeration. [ruby-core:50398] [Bug #7483] 7765 7766Sat Dec 1 00:08:55 2012 NAKAMURA Usaku <usa@ruby-lang.org> 7767 7768 * test/rubygems/test_gem_installer.rb 7769 (TestGemInstaller#test_check_executable_overwrite_other_non_gem): 7770 on Windows, rubygems always generate a wrapper .bat file when 7771 installing a file into bin, so testing no-overwrite a wrapper file 7772 and a non-wrapper file is nonsense. see [ruby-core:50388]. 7773 7774Fri Nov 30 23:39:58 2012 NAKAMURA Usaku <usa@ruby-lang.org> 7775 7776 * test/rubygems/test_gem_installer.rb 7777 (TestGemInstaller#test_check_executable_overwrite_default_bin_dir): 7778 if the executable to be overwritten was generated by rubygems, the 7779 error message differs from the only copied one's. 7780 see [ruby-core:50388]. 7781 7782Fri Nov 30 23:27:26 2012 NAKAMURA Usaku <usa@ruby-lang.org> 7783 7784 * test/rubygems/test_gem_ext_ext_conf_builder.rb 7785 (TestGemExtExtConfBuilder::test_class_make): reading with binary mode 7786 of course introduce \r on Windows. see [ruby-core:50388]. 7787 7788Fri Nov 30 23:11:37 2012 NAKAMURA Usaku <usa@ruby-lang.org> 7789 7790 * lib/rubygems/specification.rb 7791 (Gem::Specification.validate_permissions): don't check executability 7792 of the source on Windows. they will be wrapped to .bat files when 7793 installing. see [ruby-core:50388]. 7794 7795Fri Nov 30 22:44:14 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 7796 7797 * vm_core.h (rb_vm_struct): add thread_destruct_lock field. 7798 * thread.c (Init_Thread): ditto. 7799 * thread.c (rb_vm_gvl_destroy): ditto. 7800 7801 * thread.c (thread_start_func_2): make sure vm->running_thread 7802 don't point to dead thread. 7803 * thread.c (timer_thread_function): close a race against thread 7804 destruction. [Bug #4911][ruby-dev:43859] 7805 7806 * vm_core.h (rb_thread_set_current): reset running time of 7807 current thread instead of previous thread. We no longer 7808 assume previous running thread still live. 7809 7810Fri Nov 30 21:57:43 2012 NAKAMURA Usaku <usa@ruby-lang.org> 7811 7812 * revert r38053 because it causes too many test failures. 7813 if you've already installed r38053 or later, remove the installed 7814 lib/ruby/gems/2.0.0 directory and reinstall this revision or later. 7815 7816Fri Nov 30 21:07:56 2012 NAKAMURA Usaku <usa@ruby-lang.org> 7817 7818 * lib/test/unit/parallel.rb (Test::Unit::Worker.run): wrap LoadError 7819 because it's Gem::LoadError sometimes. see [Bug #6882] 7820 7821Fri Nov 30 20:47:44 2012 Koichi Sasada <ko1@atdot.net> 7822 7823 * thread.c: TracePoint#self returns invoking/exiting thread object 7824 at thread_begin/end event. 7825 7826 * test/ruby/test_settracefunc.rb: fix test. 7827 7828Fri Nov 30 19:55:17 2012 NAKAMURA Usaku <usa@ruby-lang.org> 7829 7830 * test/ruby/memory_status.rb (Memory::Win32): use fiddle instead of dl, 7831 but I doubt fiddle is not compatible with dl. (if you are interested, 7832 see the diff.) [ruby-core:50194] [Bug #7443] 7833 7834Fri Nov 30 19:37:44 2012 Kouhei Sutou <kou@cozmixng.org> 7835 7836 * defs/default_gems: Add base directory column. 7837 7838 * tool/rbinstall.rb: 7839 - Install .gemspecs of default gem to 7840 #{GEM_HOME}/specifications/default/. 7841 - Update files parameter of .gemspecs by relative path from 7842 library directory. 7843 7844Fri Nov 30 19:30:00 2012 Zachary Scott <zachary@zacharyscott.net> 7845 7846 * vm_trace.c: 7847 tracepoint_attr_return_value (TracePoint#return_value): 7848 include `:b_return` for method doc 7849 tracepoint_enable_m, tracepoint_disable_m (#enable/#disable): 7850 don't have block argument, document block scope 7851 7852Fri Nov 30 18:52:56 2012 Koichi Sasada <ko1@atdot.net> 7853 7854 * vm_trace.c (tracepoint_disable_m, tracepoint_enable_m): 7855 fix block parameter. 7856 No argument should be given to a block which is passed 7857 to TracePoint#enable (and disable). 7858 7859Fri Nov 30 18:23:26 2012 Koichi Sasada <ko1@atdot.net> 7860 7861 * thread.c: rename Thread.control_interrupt 7862 to Thread.async_interrupt_timing. 7863 The option name `:never' is also changed to `:defer'. 7864 [ruby-core:50375] [ruby-trunk - Feature #6762] 7865 7866 * thread.c: remove Thread.check_interrupt. 7867 This method is difficult to understand by name. 7868 7869 * thread.c: add Thread.async_interrupted?. 7870 This method check any deferred async interrupts. 7871 7872 * test/ruby/test_thread.rb: change tests for above. 7873 7874Fri Nov 30 18:24:00 2012 Zachary Scott <zachary@zacharyscott.net> 7875 7876 * vm_trace.c: Documentation for TracePoint API 7877 [ruby-core:47243] [Feature #6895] 7878 7879Fri Nov 30 17:43:50 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7880 7881 * string.c (rb_str_cmp_m): try to compare with to_str result if 7882 possible before calling <=> method. [ruby-core:49279] [Bug #7342] 7883 7884 * string.c (rb_str_cmp_m): use rb_check_funcall instead of respond_to 7885 and call. 7886 7887 * string.c (rb_str_cmp_m): return fixed value, one of -1,0,+1 always. 7888 7889Fri Nov 30 16:19:14 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7890 7891 * vm_dump.c (rb_vm_bugreport): get rid of calling methods in sigsegv 7892 handler. based on a patch by charliesome (Charlie Somerville) 7893 [ruby-core:49573] [Bug #7402] 7894 7895Fri Nov 30 16:05:44 2012 Eric Hodel <drbrain@segment7.net> 7896 7897 * NEWS: Added RubyGems 2.0.0 7898 7899Fri Nov 30 15:24:37 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7900 7901 * parse.y (parser_yylex): fix false usage of local variable, it cannot 7902 appear in fname state [ruby-core:49659] [Bug #7408] 7903 7904Fri Nov 30 15:20:12 2012 Eric Hodel <drbrain@segment7.net> 7905 7906 * lib/rubygems/package.rb: Load YAML for building gems. 7907 * test/rubygems/test_gem_commands_contents_command.rb: Sort expected 7908 output of default gem contents. Re-fixes r38004 and r38005. 7909 7910Fri Nov 30 15:15:00 2012 Zachary Scott <zachary@zacharyscott.net> 7911 7912 * vm_trace.c (set_trace_func): Formatting of params and events 7913 7914Fri Nov 30 14:45:00 2012 Zachary Scott <zachary@zacharyscott.net> 7915 7916 * lib/net/http.rb: Net::HTTP::Patch to list of HTTP Request Classes 7917 Patch by Ryunosuke SATO [Fixes #217 on github] 7918 7919Fri Nov 30 14:05:00 2012 Zachary Scott <zachary@zacharyscott.net> 7920 7921 * lib/cgi.rb: CGI example for HTML generation 7922 Patch by Marcus Stollsteimer [ruby-core:50303] [Bug #7465] 7923 7924Fri Nov 30 13:52:00 2012 Zachary Scott <zachary@zacharyscott.net> 7925 7926 * time.c: Documentation improvements, grammar and formatting 7927 Patch by Bernd Homuth [ruby-core:49203] [Bug #7326] 7928 7929Fri Nov 30 13:48:33 2012 Eric Hodel <drbrain@segment7.net> 7930 7931 * lib/rdoc.rb: Set version to 4.0.0.preview2 7932 * lib/rubygems.rb: Set version to 2.0.0.preview2 7933 7934Fri Nov 30 13:11:53 2012 Eric Hodel <drbrain@segment7.net> 7935 7936 * lib/rubygems/commands/setup_command.rb: Remove old files on install 7937 of RubyGems. (not by rbinstall.rb). 7938 * test/rubygems/test_gem_commands_setup_command.rb: Test for above. 7939 7940Fri Nov 30 12:47:59 2012 Akinori MUSHA <knu@iDaemons.org> 7941 7942 * lib/abbrev.rb (Abbrev#abbrev): A fixed string prefix pattern 7943 should only match the beginning of each word, not the beginning 7944 of every line in it. 7945 7946 * lib/abbrev.rb (Abbrev#abbrev): Stop using a regexp that causes a 7947 false warning. [Bug #7471] 7948 7949Fri Nov 30 12:30:55 2012 Akinori MUSHA <knu@iDaemons.org> 7950 7951 * test/test_abbrev.rb: Add tests for lib/abbrev.rb. 7952 7953Fri Nov 30 12:27:51 2012 Eric Hodel <drbrain@segment7.net> 7954 7955 * lib/rubygems/spec_fetcher.rb: Allow prerelease spec fetching to fail 7956 for bundler. 7957 * test/rubygems/test_gem_spec_fetcher.rb: Test for above. 7958 7959Fri Nov 30 12:20:53 2012 Eric Hodel <drbrain@segment7.net> 7960 7961 * lib/rake/backtrace.rb: Removed duplication in 7962 Rake::Backtrace::SUPPRESSED_PATHS 7963 * test/rake/test_rake_backtrace.rb: Skip tests when tmpdir is in the 7964 suppressed pattern. 7965 7966Fri Nov 30 11:07:45 2012 Shugo Maeda <shugo@ruby-lang.org> 7967 7968 * revert r37993 to avoid SEGV in tests. 7969 7970Fri Nov 30 10:38:54 2012 Eric Hodel <drbrain@segment7.net> 7971 7972 * lib/rdoc/ri/driver.rb: Relaxed matching for pages to be more 7973 user-friendly. 7974 * test/rdoc/test_rdoc_ri_driver.rb: Test for above. 7975 7976Fri Nov 30 09:50:16 2012 Eric Hodel <drbrain@segment7.net> 7977 7978 * lib/rdoc/markdown.rb: Fixed warnings with -w 7979 7980Fri Nov 30 09:38:22 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 7981 7982 * include/ruby/ruby.h (RB_GC_GUARD_PTR): add note. 7983 7984 * vm_backtrace.c (backtrace_to_str_ary): use RB_GC_GUARD() instead of 7985 RB_GC_GUARD_PTR() which has no effect. 7986 (backtrace_to_location_ary): ditto. 7987 (vm_backtrace_to_ary): ditto. 7988 7989Fri Nov 30 09:22:52 2012 Eric Hodel <drbrain@segment7.net> 7990 7991 * lib/rubygems/commands/contents_command.rb: Sort output from command. 7992 Replaces r38004, r38005 7993 * test/rubygems/test_gem_commands_contents_command.rb: ditto. 7994 7995 * lib/rubygems/defaults.rb: Use Gem.path_separator for jruby support. 7996 * lib/rubygems/path_support.rb: ditto 7997 7998Fri Nov 30 08:34:03 2012 Eric Hodel <drbrain@segment7.net> 7999 8000 * lib/rdoc/generator/darkfish.rb: Silenced warning 8001 * test/rdoc/test_rdoc_rdoc.rb: ditto 8002 8003 * lib/rdoc/markup/parser.rb: Use byteslice when available for 8004 performance 8005 * test/rdoc/test_rdoc_markup_parser.rb: Test for above 8006 * lib/rdoc/test_case.rb: ditto 8007 8008 * lib/rdoc/parser/ruby.rb: Fixed bug parsing yield({}) 8009 * test/rdoc/test_rdoc_parser_ruby.rb (end): 8010 8011 * lib/rdoc/rubygems_hook.rb: Skip default gems. Display generator 8012 name properly. 8013 * test/rdoc/test_rdoc_rubygems_hook.rb: Test for above 8014 8015 * lib/rdoc/servlet.rb: Fixed typo. 8016 8017Fri Nov 30 08:09:56 2012 Narihiro Nakamura <authornari@gmail.com> 8018 8019 * gc.c : remove a unused function. 8020 8021Fri Nov 30 07:46:42 2012 Narihiro Nakamura <authornari@gmail.com> 8022 8023 * gc.c (rb_objspace_call_finalizer): finalize_deferred may free up 8024 a object which is reachable from a part after this function, 8025 e.g. ruby_vm_destruct(). [ruby-dev:46647] [Bug #7452] 8026 8027 * test/ruby/test_gc.rb (test_finalizing_main_thread): add a test 8028 for above. 8029 8030Fri Nov 30 07:43:44 2012 Koichi Sasada <ko1@atdot.net> 8031 8032 * thread.c (rb_thread_interrupted): avoid warning of 8033 implicit conversion. 8034 8035 * thread.c (rb_threadptr_execute_interrupts): ditto. 8036 8037Fri Nov 30 07:34:28 2012 Koichi Sasada <ko1@atdot.net> 8038 8039 * vm_backtrace.c: add GC guards. 8040 8041Fri Nov 30 07:21:33 2012 Koichi Sasada <ko1@atdot.net> 8042 8043 [EXPERIMENTAL: NEED DISCUSS] 8044 * vm_trace.c: add events 8045 * :thread_begin - hook at thread beginning. 8046 * :thread_end - hook at thread ending. 8047 * :b_call - hook at block enter. 8048 * :b_return - hook at block leave. 8049 This change slow down block invocation. 8050 Please try and give us feedback until 2.0 code freeze. 8051 8052 * include/ruby/ruby.h: ditto. 8053 8054 * compile.c (rb_iseq_compile_node): ditto. 8055 8056 * insns.def: ditto. 8057 8058 * thread.c: ditto. 8059 8060 * vm.c: ditto. 8061 8062 * include/ruby/debug.h: add a comment. 8063 8064 * test/ruby/test_settracefunc.rb: add a tests. 8065 8066Fri Nov 30 06:56:30 2012 Ryan Davis <ryand-ruby@zenspider.com> 8067 8068 * test/minitest/*: Imported minitest 4.3.2 (r8027) 8069 8070Fri Nov 30 04:16:29 2012 Eric Hodel <drbrain@segment7.net> 8071 8072 * lib/rake/*: Updated to rake 0.9.5 8073 * test/rake/*: ditto. 8074 * NEWS: ditto. 8075 8076Fri Nov 30 02:53:47 2012 Aaron Patterson <aaron@tenderlovemaking.com> 8077 8078 * vm.c: add a return hook when a method raises an exception. 8079 8080 * probes_helper.h: look up klass and method if none are provided. 8081 8082 * eval.c: update macro usage. 8083 8084 * vm_eval.c: ditto. 8085 8086 * vm_insnhelper.c: ditto. 8087 8088 * test/dtrace/test_function_entry.rb: test for change. 8089 8090Fri Nov 30 02:27:12 2012 NARUSE, Yui <naruse@ruby-lang.org> 8091 8092 * compile.c (compile_array_): refix r37991 remove assertion: 8093 it is true only if type == COMPILE_ARRAY_TYPE_HASH. 8094 [ruby-dev:46658] [Bug #7466] 8095 8096 * vm.c (m_core_hash_from_ary): add assertion instead of above. 8097 8098 * vm.c (m_core_hash_merge_ary): ditto. 8099 8100Thu Nov 29 19:15:14 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 8101 8102 * compile.c (compile_array_): hash elements must be paired even for 8103 literal elements. [ruby-dev:46658] [Bug #7466] 8104 8105Thu Nov 29 22:39:35 2012 Naohisa Goto <ngotogenome@gmail.com> 8106 8107 * ext/openssl/ossl_ssl.c (ssl_npn_encode_protocol_i): fix byte order 8108 issue on big-endian architecture [ruby-core:50292] [Bug #7463] 8109 8110Thu Nov 29 22:23:31 2012 Hiroshi Nakamura <nahi@ruby-lang.org> 8111 8112 * test/openssl/test_cipher.rb (test_ctr_if_exists): add CTR mode test 8113 if underlying OpenSSL supports it. See #4408 8114 8115Thu Nov 29 21:42:16 2012 Shugo Maeda <shugo@ruby-lang.org> 8116 8117 * vm_method.c (rb_method_entry_make): add a method entry with 8118 VM_METHOD_TYPE_REFINED to the class refined by the refinement if 8119 the target module is a refinement. When a method entry with 8120 VM_METHOD_TYPE_UNDEF is invoked by vm_call_method(), a method with 8121 the same name is searched in refinements. If such a method is 8122 found, the method is invoked. Otherwise, the original method in 8123 the refined class (rb_method_definition_t::body.orig_def) is 8124 invoked. This change is made to simplify the normal method lookup 8125 and to improve the performance of normal method calls. 8126 8127 * vm_method.c (EXPR1, search_method, rb_method_entry), 8128 vm_eval.c (rb_call0, rb_search_method_entry): do not use 8129 refinements for method lookup. 8130 8131 * vm_insnhelper.c (vm_call_method): search methods in refinements if 8132 ci->me is VM_METHOD_TYPE_REFINED. If the method is called by 8133 super (i.e., ci->call == vm_call_super_method), skip the same 8134 method entry as the current method to avoid infinite call of the 8135 same method. 8136 8137 * class.c (include_modules_at): add a refined method entry for each 8138 method defined in a module included in a refinement. 8139 8140 * class.c (rb_prepend_module): set an empty table to 8141 RCLASS_M_TBL(klass) to add refined method entries, because 8142 refinements should have priority over prepended modules. 8143 8144 * proc.c (mnew): use rb_method_entry_with_refinements() to get 8145 a refined method. 8146 8147 * test/ruby/test_refinement.rb (test_inline_method_cache): do not skip 8148 the test because it should pass successfully. 8149 8150 * test/ruby/test_refinement.rb (test_redefine_refined_method): new 8151 test for the case a refined method is redefined. 8152 8153Thu Nov 29 17:45:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 8154 8155 * variable.c (rb_const_set): show namespace in warning messages. 8156 [Feature #7190] 8157 8158Thu Nov 29 17:31:53 2012 NARUSE, Yui <naruse@ruby-lang.org> 8159 8160 * lib/rubygems.rb (Gem.load_yaml): return if Kernel#gem is not defined 8161 yet. This causes crash if test-all requires libraries in a certain 8162 order. A simple reproducible code is 8163 ruby --disable-gem -e'require"yaml";require"minitest/autorun"' 8164 8165Thu Nov 29 17:19:26 2012 Eric Hodel <drbrain@segment7.net> 8166 8167 * lib/tracer.rb: Updated to match removal of custom_require from 8168 RubyGems. 8169 * test/test_tracer.rb: ditto. Improved failure message if the test 8170 fails 8171 8172Thu Nov 29 17:15:00 2012 Zachary Scott <zachary@zacharyscott.net> 8173 8174 * gc.c: Documentation for GC, GC::Profiler, ObjectSpace, and 8175 ObjectSpace::WeakMap [ruby-core:50245] [Bug #7449] 8176 8177Thu Nov 29 17:12:26 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 8178 8179 * tool/generic_erb.rb, tool/id2token.rb: add --path-separator option 8180 for mingw where make and built ruby live in different world. 8181 8182 * tool/vpath.rb: extract from tool/instruction.rb. 8183 8184Thu Nov 29 17:11:06 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 8185 8186 * test/io/wait/test_io_wait.rb (TestIOWait#fill_pipe): 8187 Errno::EWOULDBLOCK may not be the same as Errno::EAGAIN. patch by 8188 phasis68 (Heesob Park) at [ruby-core:49894]. [Bug #7420] 8189 8190Thu Nov 29 17:03:38 2012 Eric Hodel <drbrain@segment7.net> 8191 8192 * lib/rubygems/test_case.rb: Determine path to certificates to avoid 8193 build-dir problems. 8194 * test/rubygems/test_gem_security_signer.rb: Use predetermined paths 8195 to avoid build-dir problems. 8196 8197Thu Nov 29 16:18:14 2012 Eric Hodel <drbrain@segment7.net> 8198 8199 * lib/rubygems/test_case.rb: Disable loading of keys and certificates 8200 outside rubygems or ruby tests as the files are not available (or 8201 necessary). 8202 8203Thu Nov 29 16:14:41 2012 Koichi Sasada <ko1@atdot.net> 8204 8205 * vm_backtrace.c (rb_debug_inspector_open): use RARRAY_LENINT() for 8206 int variable. 8207 8208Thu Nov 29 15:59:55 2012 Koichi Sasada <ko1@atdot.net> 8209 8210 * include/ruby/debug.h: add rb_debug_inspector_* APIs. 8211 8212 * vm_backtrace.c: ditto. 8213 8214 * common.mk: add dependency from vm_backtrace.o to 8215 include/ruby/debug.h. 8216 8217 * proc.c (rb_binding_new_with_cfp): constify. 8218 8219 * vm.c (rb_vm_get_ruby_level_next_cfp): constify. 8220 8221 * vm_core.h, vm_trace.c: move decls. 8222 8223Thu Nov 29 15:56:14 2012 NARUSE, Yui <naruse@ruby-lang.org> 8224 8225 * lib/rdoc/test_case.rb (RDoc::TestCase#verbose_capture_io): 8226 defined for asserts of warnings. 8227 8228 * test/rdoc: use verbose_capture_io on asserts of warnings. 8229 they failed when tests was run with RUBYOPT=-W0. 8230 8231Thu Nov 29 15:53:38 2012 NAKAMURA Usaku <usa@ruby-lang.org> 8232 8233 * ext/psych/extconf.rb: added --enable-bundled-libyaml option. this 8234 enforces using bundled libyaml. 8235 8236Thu Nov 29 15:51:54 2012 Eric Hodel <drbrain@segment7.net> 8237 8238 * lib/rubygems*: Updated to RubyGems 2.0 8239 * test/rubygems*: ditto. 8240 8241 * common.mk (prelude): Updated for RubyGems 2.0 source rearrangement. 8242 8243 * tool/change_maker.rb: Allow invalid UTF-8 characters in source 8244 files. 8245 8246Thu Nov 29 15:38:14 2012 Koichi Sasada <ko1@atdot.net> 8247 8248 * include/ruby/debug.h: provide rb_tracearg_*() APIs, 8249 instead of rb_tracepoint_attr_*(). 8250 These APIs are for debuggers/profilers. 8251 They will be explained in another docs sometime. 8252 8253 * vm_trace.c: ditto. 8254 8255Thu Nov 29 15:10:45 2012 NARUSE, Yui <naruse@ruby-lang.org> 8256 8257 * test/minitest/test_minitest_unit.rb: restore orig_verbose only 8258 if it is set. This broke rdoc's tests. 8259 http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20121129T050102Z.diff.html.gz 8260 8261Thu Nov 29 14:56:30 2012 Koichi Sasada <ko1@atdot.net> 8262 8263 * vm_trace.c (rb_tracepoint_attr_method_id): 8264 rename TracePoint#id to TracePoint#method_id. 8265 8266 * include/ruby/debug.h: ditto. 8267 8268 * test/ruby/test_settracefunc.rb: ditto, 8269 8270Thu Nov 29 14:49:10 2012 Koichi Sasada <ko1@atdot.net> 8271 8272 * vm_trace.c (rb_tracepoint_attr_defined_class): 8273 rename TracePoint#klass to TracePoint#defined_class. 8274 [ruby-core:50187] Re: [ruby-trunk - Feature #6895] 8275 8276 * include/ruby/debug.h: ditto. 8277 8278 * test/ruby/test_settracefunc.rb: ditto. 8279 8280Thu Nov 29 14:27:57 2012 Koichi Sasada <ko1@atdot.net> 8281 8282 * gc.c (gc_stat): prepare Symbol objects at first time 8283 to make it fast. 8284 8285Thu Nov 29 14:02:15 2012 Koichi Sasada <ko1@atdot.net> 8286 8287 * gc.c (gc_stat): GC.stat supports new information 8288 * total_allocated_object: total allocated object number. 8289 * total_freed_object: total freed object number. 8290 Above two numbers are only accumulated and they will 8291 overflow (return to 0). Please use them as a hint. 8292 8293Thu Nov 29 12:13:54 2012 Ryan Davis <ryand-ruby@zenspider.com> 8294 8295 * lib/minitest/*: Imported minitest 4.3.2 (r8026) 8296 * test/minitest/*: ditto 8297 8298Thu Nov 29 11:06:06 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8299 8300 * thread.c (thread_start_func_2): remove unused code. When 8301 th->safe_level == 4, th->errinfo never be thrown. So, to 8302 create new exception makes no sense. 8303 8304Thu Nov 29 10:29:53 2012 Koichi Sasada <ko1@atdot.net> 8305 8306 * vm_backtrace.c: same as a last patch. 8307 8308Thu Nov 29 10:24:25 2012 Koichi Sasada <ko1@atdot.net> 8309 8310 * vm_backtrace.c: use `long' for return values of `NUM2LONG()'. 8311 8312Thu Nov 29 09:52:08 2012 NARUSE, Yui <naruse@ruby-lang.org> 8313 8314 * thread.c (do_select): suppress warning (uninitialized value warning) 8315 with UNINITIALIZED_VAR(). 8316 8317Thu Nov 29 09:36:09 2012 Koichi Sasada <ko1@atdot.net> 8318 8319 * eval.c (ruby_cleanup): delay THREAD_KILLED timing. 8320 It should be located just before rb_thread_terminate_all(). 8321 8322Thu Nov 29 09:10:17 2012 Koichi Sasada <ko1@atdot.net> 8323 8324 * vm_backtrace.c (vm_backtrace_to_ary): support range argument 8325 like Array#[]. 8326 [ruby-core:50092] [ruby-trunk - Feature #7434] 8327 Test and document is not available. Please help us. 8328 8329Thu Nov 29 06:46:33 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8330 8331 * thread.c (thread_start_func_2): small cleanups. 8332 8333Thu Nov 29 06:37:08 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8334 8335 * thread.c (thread_start_func_2): remove unused code. 8336 this function never be used for main thread. 8337 8338Thu Nov 29 06:27:55 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8339 8340 * thread.c (thread_start_func_2): remove unused code. 8341 errinfo = th->errinfo; and errinfo = rb_errinfo(); are 8342 the same. 8343 8344Thu Nov 29 05:26:32 2012 Koichi Sasada <ko1@atdot.net> 8345 8346 * vm_backtrace.c (backtrace_to_str_ary2): rename to backtrace_to_str_ary. 8347 8348 * vm_backtrace.c (rb_backtrace_to_str_ary): use `backtrace_to_str_ary()'. 8349 8350 * vm_backtrace.c (backtrace_to_frame_ary): rename to 8351 backtrace_to_location_ary. 8352 8353Thu Nov 29 05:19:25 2012 Aaron Patterson <aaron@tenderlovemaking.com> 8354 8355 * probes.d: Change function-entry probe to method-entry. 8356 * insns.def: ditto 8357 * probes_helper.h: ditto 8358 * test/dtrace/test_function_entry.rb: ditto 8359 * test/dtrace/test_singleton_function.rb: ditto 8360 * vm.c: ditto 8361 * vm_eval.c: ditto 8362 * vm_insnhelper.c: ditto 8363 8364Thu Nov 29 04:45:17 2012 Koichi Sasada <ko1@atdot.net> 8365 8366 * vm_backtrace.c: rename Class name from 8367 ::RubyVM::Backtrace and ::RubyVM::Backtrace::Location 8368 to ::Thread::Backtrace and ::Thread::Backtrace::Location. 8369 8370Wed Nov 28 23:52:02 2012 Masaya Tarui <tarui@ruby-lang.org> 8371 8372 * NEWS (Thread) remove incompatible changes about trap. 8373 8374Wed Nov 28 23:39:01 2012 Koichi Sasada <ko1@atdot.net> 8375 8376 * thread.c (rb_mutex_sleep): fix to allow spurious wakeup. 8377 [ruby-dev:46654] [ruby-trunk - Bug #7455] 8378 8379 * NEWS: write about spurious wakeup. 8380 8381Wed Nov 28 22:57:23 2012 Koichi Sasada <ko1@atdot.net> 8382 8383 * thread_win32.c: catch up latest change of BLOCKING_REGION. 8384 8385Wed Nov 28 22:54:21 2012 Koichi Sasada <ko1@atdot.net> 8386 8387 * vm_insnhelper.c (vm_call_method): fix undefined behavior. 8388 Should not access scope local variable from outer scope. 8389 8390Wed Nov 28 22:20:55 2012 Masaya Tarui <tarui@ruby-lang.org> 8391 8392 * test/ruby/test_thread.rb (test_thread_status_in_trap): change test for 8393 thread status in trap. now can accept Thread#join and Thread#value in trap. 8394 8395Wed Nov 28 21:58:47 2012 Koichi Sasada <ko1@atdot.net> 8396 8397 * include/ruby/thread.h (rb_thread_call_without_gvl2): change 8398 meaning of function. 8399 This function is called with same parameters of 8400 `rb_thread_call_without_gvl()'. 8401 However, if interrupts are detected, then return immediately. 8402 8403 * thread.c: implement `rb_thread_call_without_gvl2()'. 8404 8405Wed Nov 28 21:31:21 2012 Masaya Tarui <tarui@ruby-lang.org> 8406 8407 * thread.c (thread_join_sleep): check spurious wakeup by itself for 8408 corresponding status change in trap context. 8409 * vm_core.h (struct rb_thread_struct): add rb_thread_list_t and use as join_list for 8410 reentry by trap context. 8411 * thread.c (thread_start_func_2): ditto. 8412 * thread.c (remove_from_join_list): ditto. 8413 * thread.c (rb_thread_atfork): ditto. 8414 * thread.c (thread_join): ditto. & remove trap handler check. 8415 * thread.c (sleep_forever): add argument : spurious_check. 8416 * thread.c (sleep_timeval): ditto. 8417 * thread.c (rb_thread_sleep_forever): set spurious_check. 8418 * thread.c (rb_thread_sleep_deadly): ditto. 8419 * thread.c (sleep_for_polling): ditto. 8420 * thread.c (rb_thread_wait_for): ditto. 8421 * thread.c (sleep_wait_for_interrupt): bypass spurious_check. 8422 8423Wed Nov 28 21:23:18 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 8424 8425 * ext/psych/yaml/emitter.c (yaml_emitter_write_indicator): constify. 8426 8427 * ext/psych/yaml/emitter.c (yaml_emitter_write_block_scalar_hints): 8428 ditto. 8429 8430 * ext/psych/extconf.rb: mingw32 also needs macros for win32, not 8431 only mswin32. 8432 8433 * ext/psych/extconf.rb: compile sources in the source directory 8434 without copying by using VPATH. 8435 8436Wed Nov 28 21:18:57 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 8437 8438 * lib/mkmf.rb (MakeMakefile#each_compile_rules): splat $(*VPATH*) for 8439 each VPATH elements. 8440 8441Wed Nov 28 16:40:14 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8442 8443 * vm_core.h (enum rb_thread_status): remove THREAD_TO_KILL 8444 * vm_core.h (struct rb_thread_struct): add to_kill field 8445 * thread.c (terminate_i): convert THREAD_TO_KILL to to_kill. 8446 * thread.c (rb_threadptr_to_kill): ditto. 8447 * thread.c (rb_thread_kill): ditto. 8448 * thread.c (rb_thread_wakeup_alive): ditto. 8449 * thread.c (thread_list_i): ditto. 8450 * thread.c (static const char): ditto. 8451 * thread.c (thread_status_name): ditto. 8452 * thread.c (rb_thread_status): ditto. 8453 * thread.c (rb_thread_inspect): ditto. 8454 * vm_backtrace.c (thread_backtrace_to_ary): ditto. 8455 8456 * thread.c (rb_threadptr_execute_interrupts): fix thread status 8457 overwritten issue. [Bug #7450] [ruby-core:50249] 8458 8459 * test/ruby/test_thread.rb (test_hread_status_raise_after_kill): 8460 test for the above. 8461 * test/ruby/test_thread.rb (test_thread_status_in_trap): test for 8462 thread status in trap. 8463 * test/ruby/test_thread.rb (test_status_and_stop_p): remove 8464 Thread.control_interrupt unsafe test. Thread#kill no longer 8465 changes thread status. Instead of, Thread#kill receiver changes 8466 their own status when receiving kill signal. 8467 8468Wed Nov 28 16:21:46 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8469 8470 * thread.c (struct rb_mutex_struct): add allow_trap field. 8471 * internal.h (rb_mutex_allow_trap): added. 8472 * thread.c (rb_mutex_lock, rb_mutex_unlock): check mutex->allow_trap. 8473 * thread.c (mutex_sleep): remove trap check because it uses 8474 rb_mutex_lock and rb_mutex_unlock internally. 8475 * thread.c (rb_mutex_allow_trap): new helper function for the above. 8476 8477 * io.c (io_binwrite): mark fptr->write_lock as writable in trap. 8478 8479 * test/ruby/test_signal.rb (test_trap_puts): test for the above. 8480 8481Wed Nov 28 16:59:12 2012 Koichi Sasada <ko1@atdot.net> 8482 8483 * proc.c: remove Proc#== and Proc#eql?. 8484 Proc objects compared with their object ids. 8485 [Bug #4559] 8486 8487 * test/ruby/test_proc.rb: remove related test. 8488 8489Wed Nov 28 16:41:04 2012 Eric Hodel <drbrain@segment7.net> 8490 8491 * lib/rdoc/servlet.rb: Add support for serving documentation from a 8492 subdirectory. 8493 * lib/rdoc/generator/darkfish.rb: ditto 8494 * test/rdoc/test_rdoc_servlet.rb: Test for above 8495 * test/rdoc/test_rdoc_servlet.rb: ditto 8496 8497Wed Nov 28 15:37:17 2012 NARUSE, Yui <naruse@ruby-lang.org> 8498 8499 * configure.in: fix r37924: run only on i[3-6]86-linux. 8500 8501Wed Nov 28 15:31:11 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8502 8503 * io.c (FMODE_SYNCWRITE): removed unused macro. 8504 8505Wed Nov 28 15:19:25 2012 Naohisa Goto <ngotogenome@gmail.com> 8506 8507 * configure.in: revert r37911, r37906 and r37904 which break build 8508 with non-gcc and/or non-IA32 compilers, e.g. Solaris Studio, 8509 Fujitsu C Compiler. [ruby-dev:46646] [Bug #7451] 8510 8511Wed Nov 28 14:50:55 2012 Koichi Sasada <ko1@atdot.net> 8512 8513 * ext/psych/extconf.rb: copy sources into build directory, 8514 not into srcdir. 8515 8516Wed Nov 28 14:34:06 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8517 8518 * thread.c (rb_mutex_lock): moved trap context check from 8519 rb_mutex_trylock because try_lock have no change to make 8520 a deadlock. 8521 * thread.c (rb_mutex_trylock): ditto. 8522 * NEWS: news for the above. 8523 8524Wed Nov 28 13:39:54 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8525 8526 * thread.c (thread_s_new): uses main_thread->status instead of 8527 th->inhibit_thread_creation for preventing thread creation. 8528 * vm_core.h (rb_vm_struct): remove inhibit_thread_creation field. 8529 * thread.c (rb_thread_terminate_all): ditto. 8530 8531Wed Nov 28 13:27:29 2012 Aaron Patterson <aaron@tenderlovemaking.com> 8532 8533 * ext/psych/extconf.rb: use embedded libyaml if no system libyaml is 8534 found. [ruby-core:49463] 8535 * ext/psych/lib/psych.rb: updating to psych 2.0.0 8536 * ext/psych/lib/psych/deprecated.rb: updated docs 8537 * ext/psych/psych.gemspec: updated to psych 2.0.0 8538 * ext/psych/psych.h: fixing header file include for rename 8539 * ext/psych/psych_emitter.c: renamed to avoid libyaml conflict. 8540 * ext/psych/psych_emitter.h: ditto 8541 * ext/psych/psych_parser.c: ditto 8542 * ext/psych/psych_parser.h: ditto 8543 * ext/psych/psych_to_ruby.c: ditto 8544 * ext/psych/psych_to_ruby.h: ditto 8545 * ext/psych/psych_yaml_tree.c: ditto 8546 * ext/psych/psych_yaml_tree.h: ditto 8547 * ext/psych/yaml/LICENSE: embedding libyaml 0.1.4 8548 * ext/psych/yaml/api.c: ditto 8549 * ext/psych/yaml/config.h: ditto 8550 * ext/psych/yaml/dumper.c: ditto 8551 * ext/psych/yaml/emitter.c: ditto 8552 * ext/psych/yaml/loader.c: ditto 8553 * ext/psych/yaml/parser.c: ditto 8554 * ext/psych/yaml/reader.c: ditto 8555 * ext/psych/yaml/scanner.c: ditto 8556 * ext/psych/yaml/writer.c: ditto 8557 * ext/psych/yaml/yaml.h: ditto 8558 * ext/psych/yaml/yaml_private.h: ditto 8559 8560Wed Nov 28 12:54:59 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8561 8562 * thread.c (thread_join): A trap handler check was moved from 8563 thread_join_m because Thread#value should be raised an exception 8564 too. 8565 * thread.c (thread_join_m): remove trap handler check. 8566 * test/ruby/test_thread.rb (test_thread_join_in_trap): add test 8567 for thread#value. 8568 * NEWS: documentation fix for the above. 8569 8570Wed Nov 28 11:07:00 2012 Zachary Scott <zachary@zacharyscott.net> 8571 8572 * ext/fiddle/closure.c: Documentation for Fiddle 8573 * ext/fiddle/lib/fiddle/import.rb: ditto 8574 * ext/fiddle/lib/fiddle/value.rb: ditto 8575 * ext/fiddle/lib/fiddle/pack.rb: ditto 8576 * ext/fiddle/lib/fiddle/cparser.rb: ditto 8577 * ext/fiddle/lib/fiddle/struct.rb: ditto 8578 * ext/fiddle/lib/fiddle/function.rb: ditto 8579 8580Wed Nov 28 09:15:51 2012 Ryan Davis <ryand-ruby@zenspider.com> 8581 8582 * ext/strscan/strscan.c: Added #charpos for multibyte string position. 8583 * test/strscan/test_stringscanner.rb: ditto 8584 8585Wed Nov 28 09:00:34 2012 Aaron Patterson <aaron@tenderlovemaking.com> 8586 8587 * ext/fiddle/fiddle.c: adding alignment constants for compatibility 8588 with DL. 8589 * ext/fiddle/fiddle.h: ditto 8590 * ext/fiddle/lib/fiddle/cparser.rb: importing the C parser for DL 8591 backwards compatibility. 8592 * ext/fiddle/lib/fiddle/import.rb: importing the import DSL for DL 8593 backwards compatibility. 8594 * ext/fiddle/lib/fiddle/pack.rb: importing structure pack for DL 8595 backwards compatibility. 8596 * ext/fiddle/lib/fiddle/value.rb: ditto 8597 * ext/fiddle/lib/fiddle/struct.rb: importing struct DSL for DL backwards 8598 compatibility. 8599 * test/dl/test_c_struct_entry.rb: importing tests 8600 * test/dl/test_c_union_entity.rb: ditto 8601 * test/dl/test_cparser.rb: ditto 8602 * test/dl/test_import.rb: ditto 8603 * test/fiddle/test_c_struct_entry.rb: ditto 8604 * test/fiddle/test_c_union_entity.rb: ditto 8605 * test/fiddle/test_cparser.rb: ditto 8606 * test/fiddle/test_import.rb: ditto 8607 8608Wed Nov 28 08:56:00 2012 Zachary Scott <zachary@zacharyscott.net> 8609 8610 * doc/globals.rdoc: Add documentation file for magic globals 8611 [ruby-core:29048] [Bug #3022] 8612 8613Wed Nov 28 08:55:00 2012 Zachary Scott <zachary@zacharyscott.net> 8614 8615 * .document: Add README's to be included with docs 8616 8617Wed Nov 28 08:26:00 2012 Zachary Scott <zachary@zacharyscott.net> 8618 8619 * ext/dl/lib/dl.rb: Deprecation notice for DL 8620 8621Wed Nov 28 08:25:00 2012 Zachary Scott <zachary@zacharyscott.net> 8622 8623 * ext/fiddle/closure.c: Documentation for Fiddle 8624 * ext/fiddle/pointer.c: ditto 8625 * ext/fiddle/function.c: ditto 8626 * ext/fiddle/lib/fiddle.rb: ditto 8627 * ext/fiddle/fiddle.c: ditto 8628 * ext/fiddle/handle.c: ditto 8629 8630Wed Nov 28 04:53:40 2012 Aaron Patterson <aaron@tenderlovemaking.com> 8631 8632 * ext/fiddle/handle.c: Make Fiddle independent of DL, copy DL::Handle 8633 to Fiddle::Handle. 8634 * ext/fiddle/pointer.c: Make Fiddle independent of DL, copy 8635 DL::Pointer to Fiddle::Pointer. 8636 * test/fiddle/test_func.rb: relevant tests 8637 * test/fiddle/test_handle.rb: ditto 8638 * test/fiddle/test_pointer.rb: ditto 8639 * ext/dl/lib/dl/struct.rb: use Fiddle::Pointer if available 8640 * ext/fiddle/extconf.rb: check for dlfcn.h 8641 * ext/fiddle/fiddle.c: add constants for sizeof() things 8642 * ext/fiddle/fiddle.h: include dlfcn.h 8643 * ext/fiddle/function.c: expose a C function for creating new 8644 Fiddle::Function objects. 8645 * ext/fiddle/lib/fiddle.rb: include constants for dl backwards compat 8646 * ext/fiddle/lib/fiddle/function.rb: read the pointer from the 8647 function for dl backwards compat. 8648 * test/dl/test_callback.rb: check the addresses of the pointers rather 8649 than their types. 8650 * test/fiddle/helper.rb: remove dependency on dl 8651 * test/fiddle/test_closure.rb: ditto 8652 * test/fiddle/test_fiddle.rb: ditto 8653 8654Wed Nov 28 03:03:28 2012 NARUSE, Yui <naruse@ruby-lang.org> 8655 8656 * configure.in (opt-dir): don't use non portable flag -E of sed. 8657 8658Wed Nov 28 02:55:35 2012 NARUSE, Yui <naruse@ruby-lang.org> 8659 8660 * configure.in (ARCH_FLAG): __sync_val_compare_and_swap_4 needs 8661 -march=$target_cpu on at least linux gcc 4.1. 8662 patched by KOSAKI Motohiro 8663 8664Tue Nov 27 22:03:09 2012 Akinori MUSHA <knu@iDaemons.org> 8665 8666 * string.c (rb_str_enumerate_chars, rb_str_enumerate_codepoints) 8667 (rb_str_enumerate_lines): Dummy initialization of ary has been 8668 replaced with UNINITIALIZED_VAR(). 8669 8670Tue Nov 27 21:29:00 2012 Kenta Murata <mrkn@mrkn.jp> 8671 8672 * bignum.c (bigdivrem): optimize the way to retry calculation of 8673 bigdivrem so that the calculation is started from the point where 8674 the last interruption was occurred. 8675 8676 * bignum.c (bigdivrem1): ditto. 8677 8678 * test/ruby/test_bignum.rb: add a test case for rb_bigdivrem in the 8679 case that an interruption is occurred during bigdivrem1 is running. 8680 8681Tue Nov 27 19:56:43 2012 Koichi Sasada <ko1@atdot.net> 8682 8683 * vm.c (rb_vm_make_env_object): make Proc object if Env is possible 8684 to point block. 8685 [ruby-core:41038] [ruby-trunk - Bug #5634] 8686 8687 * vm.c (rb_vm_make_proc): No need to make Proc object here. 8688 8689 * bootstraptest/test_proc.rb: add tests. 8690 8691Tue Nov 27 18:51:06 2012 Naohisa Goto <ngotogenome@gmail.com> 8692 8693 * ruby_atomic.h (ATOMIC_CAS): added for Solaris and other platforms. 8694 * ruby_atomic.h, signal.c (NEED_RUBY_ATOMIC_OPS): renamed from 8695 NEED_RUBY_ATOMIC_EXCHANGE. 8696 * signal.c (ruby_atomic_compare_and_swap): naive, non-atomic 8697 compare-and-swap implementation only used for platforms without 8698 valid support for atomic operations. 8699 8700Tue Nov 27 17:43:46 2012 Eric Hodel <drbrain@segment7.net> 8701 8702 * lib/rdoc/*: Added --root option for building documentation outside 8703 the source directory. 8704 * test/rdoc/*: ditto 8705 * common.mk (rdoc): Added --root to rdoc rule 8706 8707Tue Nov 27 16:24:45 2012 Eric Hodel <drbrain@segment7.net> 8708 8709 * test/rdoc/test_rdoc_ri_paths.rb: Fixed duplicate path bug which 8710 caused windows failures. 8711 8712Tue Nov 27 16:06:00 2012 Eric Hodel <drbrain@segment7.net> 8713 8714 * test/rdoc/test_rdoc_generator_darkfish.rb: Updated tests for windows 8715 * test/rdoc/test_rdoc_options.rb: ditto 8716 * test/rdoc/test_rdoc_parser.rb: ditto 8717 * test/rdoc/test_rdoc_rdoc.rb: ditto 8718 * test/rdoc/test_rdoc_ri_driver.rb: ditto 8719 * test/rdoc/test_rdoc_servlet.rb: ditto 8720 8721Tue Nov 27 15:13:51 2012 Eric Hodel <drbrain@segment7.net> 8722 8723 * common.mk (rdoc): Set --debug for rdoc generation in case of bugs 8724 8725Tue Nov 27 14:56:45 2012 Eric Hodel <drbrain@segment7.net> 8726 8727 * lib/rdoc/rubygems_hook.rb: Updated for (upcoming) RubyGems 2 8728 import. 8729 * test/rdoc/test_rdoc_rubygems_hook.rb: ditto 8730 8731Tue Nov 27 13:59:29 2012 Narihiro Nakamura <authornari@gmail.com> 8732 8733 * NEWS: add improvements of the garbage collector. 8734 8735Tue Nov 27 13:27:46 2012 Eric Hodel <drbrain@segment7.net> 8736 8737 * lib/rdoc*: Updated to RDoc 4.0 (pre-release) 8738 * bin/rdoc: ditto 8739 * test/rdoc*: ditto 8740 * NEWS: Updated with RDoc 4.0 information 8741 8742Tue Nov 27 12:17:11 2012 Koichi Sasada <ko1@atdot.net> 8743 8744 * thread.c (rb_thread_terminate_all): retry broadcast only when 8745 an exception is raised. 8746 8747Tue Nov 27 12:02:25 2012 Koichi Sasada <ko1@atdot.net> 8748 8749 * thread.c (rb_thread_terminate_all): broadcast terminate event 8750 not only an interrupt exception but any exceptions. 8751 8752Tue Nov 27 10:55:09 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8753 8754 * eval.c (ruby_cleanup): set thread status to THREAD_KILLED 8755 for preventing thr.raise. 8756 * test/ruby/test_thread.rb (test_main_thread_status_at_exit): 8757 test for the above. 8758 8759Tue Nov 27 10:31:29 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8760 8761 * thread.c (rb_thread_terminate_all): suppress a warning. 8762 8763Tue Nov 27 09:29:11 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8764 8765 * thread.c (thread_join): raises ThreadError if target thread 8766 is a main thread. 8767 * test/ruby/test_thread.rb (test_thread_join_main_thread): 8768 test for the above. 8769 * NEWS: news for the above. 8770 8771Tue Nov 27 09:24:47 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8772 8773 * thread.c (thread_join): raises ThreadError if target thread 8774 is a current thread. 8775 * test/ruby/test_thread.rb (test_thread_join_current): 8776 test for the above. 8777 * NEWS: news for the above. 8778 8779Tue Nov 27 09:59:16 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 8780 8781 * ext/extmk.rb (extmake): close mkmf.log for each libraries so that 8782 failure messages are not mixed. 8783 8784Tue Nov 27 09:58:48 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 8785 8786 * ext/digest/*/extconf.rb, ext/openssl/extconf.rb: get git rid of 8787 post-1.8 feature require_relative for cross compilation. 8788 [ruby-core:50160] [Bug #7439] 8789 8790Tue Nov 27 09:17:59 2012 Koichi Sasada <ko1@atdot.net> 8791 8792 * NEWS: add TracePoint. 8793 8794Tue Nov 27 08:16:03 2012 Koichi Sasada <ko1@atdot.net> 8795 8796 * vm_trace.c: rename TracePoint#file and TracePoint#line 8797 to TracePoint#path and TracePoint#lineno respectively. 8798 They are consistent to RubyVM::Backtrace::Location. 8799 8800 * include/ruby/debug.h: ditto. 8801 8802 * vm_core.h: ditto. 8803 8804 * test/ruby/test_settracefunc.rb: ditto. 8805 8806Tue Nov 27 08:04:26 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8807 8808 * thread.c (rb_thread_terminate_all): broadcast eTerminateSignal 8809 again when Ctrl-C was pressed. [Feature #1952] [ruby-dev:39107] 8810 8811Tue Nov 27 07:58:03 2012 Koichi Sasada <ko1@atdot.net> 8812 8813 * vm_core.h: add members to rb_trace_arg_t: 8814 * `klass_solved' represents klass and id is checked. 8815 * `line' represents line calculated from cfp. 8816 * `file' represents line calculated from cfp. 8817 8818 * vm_trace.c: fix to use above data structures. 8819 No need to calculate klass and id, line and file 8820 pairs for each trace points. 8821 8822Tue Nov 27 07:47:09 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8823 8824 * thread.c (rb_thread_terminate_all): add RUBY_VM_CHECK_INTS_BLOCKING(). 8825 Otherwise the loop in this function behave as busy loop because 8826 native_sleep() return immediately when RUBY_VM_INTERRUPTED() is true. 8827 8828Tue Nov 27 04:12:49 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 8829 8830 * ext/extmk.rb (extmake): git rid of post-1.8 features for cross 8831 compilation. [ruby-core:50160] [Bug #7439] 8832 8833Tue Nov 27 00:13:41 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8834 8835 * thread.c (rb_mutex_trylock, rb_mutex_unlock, mutex_sleep): 8836 raises ThreadError if called from trap handler as Thread#join. 8837 * NEWS: news for the above. 8838 8839Mon Nov 26 23:55:33 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8840 8841 * NEWS: update for Thread#join incompatible change. 8842 8843Mon Nov 26 22:44:24 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8844 8845 * thread.c (rb_thread_terminate_all): use native_sleep() instead 8846 of rb_thread_schedule(). Otherwise, it consume 100% cpu meaninglessly. 8847 [Bug #5368] [ruby-dev:44546] 8848 * thread.c (thread_start_func_2): last sub-thread wakes up main thread. 8849 8850Mon Nov 26 21:16:04 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8851 8852 * vm_core.h (RUBY_VM_SET_TIMER_INTERRUPT, RUBY_VM_SET_INTERRUPT) 8853 (RUBY_VM_SET_FINALIZER_INTERRUPT, RUBY_VM_SET_TRAP_INTERRUPT) 8854 (RUBY_VM_INTERRUPTED): use enum symbol instead of immediate value. 8855 * thread.c (thread_join_m, rb_threadptr_execute_interrupts): ditto. 8856 * signal.c (signal_exec): ditto. 8857 8858Mon Nov 26 20:23:20 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8859 8860 * thread.c (thread_join_m): use th->interrupt_mask instead of 8861 th->in_trap. 8862 8863 * vm_core.h (struct rb_thread_struct): remove in_trap member. 8864 * signal.c (signal_exec): ditto. 8865 * thread.c (thread_create_core): ditto. 8866 * thread.c (Init_Thread): ditto. 8867 8868Mon Nov 26 20:23:49 2012 NAKAMURA Usaku <usa@ruby-lang.org> 8869 8870 * test/ruby/test_argf.rb (TestArgf#test_chars): since marshal data is 8871 binary, shouldn't pass via text mode. use base64 encoded data. 8872 8873Mon Nov 26 19:45:18 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8874 8875 * ruby_atomic.h (ATOMIC_CAS): new macro for compare-and-exchange. 8876 8877 * vm_core.h (struct rb_thread_struct): add interrupt_mask member. 8878 * thread.c (thread_create_core, Init_Thread): initialize 8879 th->thread_mask. 8880 8881 * vm_core.h (RUBY_VM_INTERRUPTED_ANY): new macro for avoiding 8882 bare th->interrupt_flag. 8883 * vm_core.h (RUBY_VM_INTERRUPTED, RUBY_VM_INTERRUPTED): check 8884 th->interrupt_mask. 8885 * thread.c (set_unblock_function, rb_thread_schedule): replace 8886 th->interrupt_flag with RUBY_VM_INTERRUPTED_ANY() 8887 8888 * signal.c (signal_exec): set up thread->interrupt_mask for 8889 preventing recursive trap handler. 8890 * vm_core.h (RUBY_VM_CHECK_INTS, RUBY_VM_CHECK_INTS_BLOCKING): ditto. 8891 8892 * thread.c (rb_threadptr_execute_interrupts): 8893 don't process interrupt if it is masked. 8894 [Bug #6009] [ruby-core:42524] 8895 8896Mon Nov 26 19:43:42 2012 Koichi Sasada <ko1@atdot.net> 8897 8898 * iseq.c (make_compile_option_value): add trace_instruction option. 8899 a patch by davidbalbert (David Albert). 8900 [Bug #6786] 8901 8902Mon Nov 26 19:10:53 2012 Koichi Sasada <ko1@atdot.net> 8903 8904 * bootstraptest/test_thread.rb: try to `join' each 100 8905 threads. 8906 This benchmark seems consuming long time on travis-ci 8907 several times (and make `failure'). 8908 8909Mon Nov 26 18:22:56 2012 Koichi Sasada <ko1@atdot.net> 8910 8911 * common.mk: specify label `built-ruby'. 8912 8913 * benchmark/driver.rb: quote path. 8914 8915Mon Nov 26 18:26:28 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8916 8917 * signal.c (signal_exec): add volatile to make sure setjmp safe. 8918 8919Mon Nov 26 18:19:47 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8920 8921 * signal.c (signal_exec): suppress "warning: variable 'signum' 8922 might be clobbered by 'longjmp' or 'vfork'" warning. 8923 8924Mon Nov 26 18:15:47 2012 Koichi Sasada <ko1@atdot.net> 8925 8926 * benchmark/driver.rb: accept multiple `-e'. 8927 You don't need to use `;' separation character. 8928 [ruby-core:50139] [ruby-trunk - Bug #7380] 8929 8930Mon Nov 26 17:10:04 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8931 8932 * string.c (rb_str_enumerate_chars, rb_str_enumerate_codepoints) 8933 (rb_str_enumerate_lines): suppress "may be used uninitialized in 8934 this function" warning. 8935 8936Mon Nov 26 17:00:12 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8937 8938 * vm_core.h (rb_thread_struct): added 'in_trap' member for marking 8939 running trap handler. 8940 * signal.c (signal_exec): turn on in_trap when running trap. 8941 * thread.c (Init_Thread, thread_create_core): initialize in_trap 8942 when creating new threads. 8943 * thread.c (thread_join_m): raise ThreadError when running trap 8944 handler.Bug [#6416][ruby-core:44956] 8945 * test/ruby/test_thread.rb (test_thread_join_in_trap): new test 8946 for the above. 8947 8948Mon Nov 26 16:36:13 2012 NARUSE, Yui <naruse@ruby-lang.org> 8949 8950 * io.c (argf_each_codepoint): add missing ARGF#codepoints [Bug #7438] 8951 8952Mon Nov 26 15:50:29 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8953 8954 * bignum.c (bigdivrem): restart calculation when bigdivrem1 was 8955 interrupted by signal. Otherwise, ruby script may see a garbage 8956 value. 8957 8958Mon Nov 26 15:33:02 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8959 8960 * bignum.c (big_div_struct): added volatile to 'stop' member. 8961 Otherwise, "if (bds->stop)" check in bigdivrem1 don't read 8962 memory and ignore interrupt. 8963 * bignum.c (bigdivrem, rb_big_stop): ditto. 8964 8965Mon Nov 26 12:11:09 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 8966 8967 * win32/Makefile.sub (DLNOBJ): missing in r37821. 8968 8969Mon Nov 26 10:50:19 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 8970 8971 * test/ruby/test_process.rb (test_setsid): added a few wait for 8972 preventing that Process.getsid(io.pid) makes Errno::ESRCH. 8973 8974Sun Nov 25 22:34:00 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 8975 8976 * array.c (ary_resize_smaller): new function to resize array. 8977 8978 * array.c (rb_ary_delete): refactoring to extract a function. 8979 8980 * array.c (rb_ary_delete_same): refactoring. 8981 It renames function, reduces duplicated code and removes unused 8982 code. 8983 8984 * gc.c (wmap_final_func): follow the above change. 8985 8986 * internal.h (rb_ary_delete_same): ditto. 8987 8988Sun Nov 25 22:27:33 2012 Benoit Daloze <eregontp@gmail.com> 8989 8990 * array.c: fixes for the updated documentation in r35858: 8991 Typos and #take/#drop accept to take/drop 0 elements. 8992 8993Sun Nov 25 19:43:29 2012 Kazuki Tsujimoto <kazuki@callcc.net> 8994 8995 * NEWS: add a news about iconv. 8996 8997Sun Nov 25 03:49:23 2012 Akinori MUSHA <knu@iDaemons.org> 8998 8999 * lib/set.rb, test/test_set.rb: Move tests embedded in lib/set.rb 9000 to test/test_set.rb. 9001 9002Sun Nov 25 03:44:50 2012 Akinori MUSHA <knu@iDaemons.org> 9003 9004 * string.c (rb_str_each_line, rb_str_lines): String#lines now 9005 returns an array instead of an enumerator. Passing a block is 9006 deprecated but still supported for backwards compatibility. 9007 Based on the patch by yhara. [Feature #6670] 9008 9009 * string.c (rb_str_each_char, rb_str_chars): Ditto for 9010 String#chars. 9011 9012 * string.c (rb_str_each_codepoint, rb_str_codepoints): Ditto for 9013 String#codepoints. 9014 9015 * string.c (rb_str_each_byte, rb_str_bytes): Ditto for 9016 String#bytes. 9017 9018 * NEWS: Add notes for the above changes. 9019 9020Sun Nov 25 02:07:37 2012 Akinori MUSHA <knu@iDaemons.org> 9021 9022 * test/ruby/envutil.rb (Test::Unit::Assertions#assert_warning) 9023 (Test::Unit::Assertions#assert_warn), test/ruby/envutil.rb, 9024 test/ruby/test_enumerator.rb, test/ruby/test_io_m17n.rb, 9025 test/ruby/test_regexp.rb, test/ruby/test_syntax.rb: 9026 assert_warn() and assert_warning() are reversed. 9027 9028Sat Nov 24 21:08:50 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 9029 9030 * gc.c (wmap_final_func): rename variables to clarify the meaning. 9031 In wmap2obj the key is WeakRef and the value is referenced object. 9032 In obj2wmap the key is referenced object and the value is an array 9033 of WeakRef. 9034 9035 * gc.c (wmap_finalize): ditto. 9036 [ruby-core:49044] [Bug #7304] 9037 9038Sat Nov 24 21:01:55 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 9039 9040 * array.c (rb_ary_delete_same_obj): new function for WeakRef. 9041 This deletes same objects as item argument in the array. 9042 9043 * internal.h (rb_ary_delete_same_obj): add a declaration. 9044 9045 * gc.c (wmap_final_func): remove WeakRef object reference from the 9046 array. rb_ary_delete() is not usable because it uses rb_equal() to 9047 compare object references. 9048 9049 * gc.c (wmap_finalize): remove recycled object references from weak 9050 map hash properly. How to get object reference from object id was 9051 wrong. st_delete() doesn't work properly if key and value arguments 9052 are same. The key of obj2wmap is referenced object and the value of 9053 obj2wmap is WeakRef array. 9054 9055 * gc.c (wmap_aset): obj2wmap should contain WeakRef array in the 9056 definition. 9057 9058 * test/test_weakref.rb 9059 (TestWeakRef#test_not_reference_different_object, 9060 TestWeakRef#test_weakref_finalize): add tests for above. 9061 [ruby-core:49044] [Bug #7304] 9062 9063Sat Nov 24 19:44:41 2012 NARUSE, Yui <naruse@ruby-lang.org> 9064 9065 * ext/nkf/nkf-utf8/nkf.c (unicode_iconv_combine): returning flags are 9066 nkf_char. 9067 9068Sat Nov 24 19:29:18 2012 Tadayoshi Funaba <tadf@dotrb.org> 9069 9070 * test/ruby/test_rubyoptions.rb (test_usage, test_usage_long): 9071 reduced, renamed. 9072 9073Sat Nov 24 13:10:14 2012 Koichi Sasada <ko1@atdot.net> 9074 9075 * vm_trace.c (rb_tracepoint_attr_raised_exception): should not check 9076 value before event checking. 9077 9078 * vm_trace.c (rb_tracepoint_attr_return_value): ditto. 9079 9080 * test/ruby/test_settracefunc.rb: add tests for TracePoint#return_value 9081 and TracePoint#raised_exception. 9082 9083Sat Nov 24 12:47:27 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 9084 9085 * test/ruby/test_process.rb (TestProcess#test_setsid): "./ruby-trunk" 9086 doesn't work on all environments. EnvUtil.rubybin would be suitable. 9087 9088Sat Nov 24 12:28:04 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 9089 9090 * array.c (rb_ary_aref): fix Segmentation fault at TestArray#test_aref 9091 on x64 mingw. Variable argument of rb_scan_args() should be a pointer 9092 (VALUE *), but 0 of variable argument seems not equal to null pointer 9093 on x64 mingw. 9094 9095Sat Nov 24 11:47:14 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9096 9097 * process.c (proc_getsid): adds new method for getting session id. 9098 Contributed from fumiyas (Fumiyasu SATOH). Thank you! 9099 [Feature #6757] [ruby-dev:45977] 9100 * configure.in: adds getsid check. 9101 * test/ruby/test_process.rb (TestProcess#test_setsid): new test 9102 for the above. 9103 * NEWS: news for the above. 9104 9105Sat Nov 24 10:59:14 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9106 9107 * thread.c (thread_create_core): don't use th->thread_id before 9108 initialized. 9109 9110Sat Nov 24 00:00:53 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 9111 9112 * ruby.c (proc_options, process_options, ruby_process_options): take 9113 care of the case argc is 0, and check if argv has NULL. 9114 [ruby-core:49889] [Bug #7423] 9115 9116Sat Nov 24 00:00:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 9117 9118 * configure.in (--disable-dln): option to disable dynamic linking 9119 feature. [ruby-core:37676] [Feature #4946] 9120 9121Fri Nov 23 23:44:41 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 9122 9123 * lib/mkmf.rb (MakeMakefile#pkg_config): strip all white spaces for 9124 mingw64+MSYS pkg-config which erroneously emits extra newlines. 9125 [ruby-core:47998] [Bug #7163] 9126 9127Fri Nov 23 17:31:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 9128 9129 * ruby.c (usage): wrap description lines if options are too long. 9130 9131Fri Nov 23 11:13:46 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 9132 9133 * test/ruby/test_rubyoptions.rb (TestRubyOptions#test_usage2): refine 9134 assertion. 9135 9136 * test/ruby/test_rubyoptions.rb (TestRubyOptions#test_usage2): now 9137 --help option is for modern terminals. 9138 9139Fri Nov 23 10:45:00 2012 Zachary Scott <zachary@zacharyscott.net> 9140 9141 * ext/socket/ipsocket.c (IPSocket#peeraddr): Fix example 9142 [ruby-core:46429] [Bug #6732] 9143 9144Fri Nov 23 02:40:00 2012 Zachary Scott <zachary@zacharyscott.net> 9145 9146 * lib/cgi/core.rb: Documentation for CGI#header alias 9147 Based on a patch by Marcus Stollsteimer 9148 [ruby-core:49585] [Bug #7405] 9149 9150Thu Nov 22 23:48:10 2012 Narihiro Nakamura <authornari@gmail.com> 9151 9152 * gc.c (is_swept_object): extract from is_dead_object(). 9153 9154 * gc.c (rb_gcdebug_print_obj_condition): add the function for debug. 9155 This function shows some conditions of given object (e.g., 9156 marked, in heap, swept). 9157 9158 * gc.c (rb_gcdebug_sentinel): add the function for debug. 9159 This function allow check to inadvertently free up an object. 9160 9161Thu Nov 22 23:45:18 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 9162 9163 * array.c (rb_ary_shared_with_p): fix cache validity check. 9164 If #pop or #shift has been called against $: or $", the array will 9165 be still shared with the snapshot. We check array length for cache 9166 validity. 9167 [ruby-core:49518] [Bug #7383] 9168 9169 * test/ruby/test_require.rb 9170 (TestRequire#test_require_with_array_pop, 9171 TestRequire#test_require_with_array_shift): add tests for above. 9172 9173Thu Nov 22 21:48:48 2012 NAKAMURA Usaku <usa@ruby-lang.org> 9174 9175 * common.mk, win32/Makefile.sub (probes.dmyh): now be made in current 9176 (=build) directory if build from the repository. 9177 9178Thu Nov 22 21:34:51 2012 Tadayoshi Funaba <tadf@dotrb.org> 9179 9180 * test/ruby/test_rubyoptions.rb: added a test. 9181 9182Thu Nov 22 20:32:07 2012 Tadayoshi Funaba <tadf@dotrb.org> 9183 9184 * complex.c (string_to_c_strict, string_to_c): check NUL. 9185 * rational.c (string_to_r_strict, string_to_r): ditto. 9186 9187Thu Nov 22 20:21:45 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9188 9189 * Makefile.in (.dmyh.h): removed $(VPATH). GNU make don't 9190 recognize suffix rule with VPATH. 9191 9192Thu Nov 22 18:11:27 2012 NAKAMURA Usaku <usa@ruby-lang.org> 9193 9194 * common.mk, Makefile.in, win32/Makefile.sub (.dmyh.h): nmake merges 9195 explicit rules for same target, but not merges explicit rules and 9196 implicit rules -- always explicit rules win. So, need to add an 9197 explicit rule for probes.h. [Bug #7421] [ruby-core:49839] 9198 9199Thu Nov 22 18:01:28 2012 NARUSE, Yui <naruse@ruby-lang.org> 9200 9201 * Makefile.in (probes.o): add -C to ignore #include in probes.d. 9202 9203 * probes.d: include vm_opts.h instead of vm_core.h. 9204 9205 * vm_opts.h (VM_COLLECT_USAGE_DETAILS): move definition from vm_core.h. 9206 9207Thu Nov 22 17:45:17 2012 NARUSE, Yui <naruse@ruby-lang.org> 9208 9209 * ext/nkf/nkf-utf8: Merge b0a6577a521d1bba5e19853f95d5c4b9be1072b5. 9210 Support JIS X 0213 and some bugfixes. 9211 9212Thu Nov 22 17:39:37 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9213 9214 * tool/gen_dummy_probes.rb: don't change #include, #if and #endif 9215 lines. [Bug #7370] 9216 9217Thu Nov 22 16:58:26 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9218 9219 * Makefile.in: run preprocessor when making probe.h 9220 * probes.d: define probe insn and insn__operand only when 9221 VM_COLLECT_USAGE_DETAILS is 1. [Bug #7370] 9222 9223Thu Nov 22 16:20:49 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9224 9225 * vm.c: Don't define vm_collect_usage_operand() and 9226 static void vm_collect_usage_insn() when disabling 9227 VM_COLLECT_USAGE_DETAILS. (refix r37796) 9228 9229Thu Nov 22 15:26:02 2012 NARUSE, Yui <naruse@ruby-lang.org> 9230 9231 * vm_insnhelper.h: partly revert r37631 (DTrace support). 9232 "vm usage information is always collected, so uncomment the 9233 functions." causes performance impact. [Bug #7370] 9234 Off course this revert disables related probes. 9235 9236Thu Nov 22 14:14:36 2012 Akinori MUSHA <knu@iDaemons.org> 9237 9238 * re.c (rb_memsearch_ss): Apply performance improvement to short 9239 byte array search for platforms without memmem(3). 9240 [Feature #6311] [ruby-dev:45530] 9241 9242Thu Nov 22 12:52:19 2012 Akinori MUSHA <knu@iDaemons.org> 9243 9244 * test/ruby/test_string.rb (TestString#test_index): Add some 9245 corner cases to tests for String#index, which might fail if ruby 9246 directly used a buggy memmem(3) implementation. 9247 9248Thu Nov 22 08:06:42 2012 Narihiro Nakamura <authornari@gmail.com> 9249 9250 * test/ruby/test_gc.rb (test_profiler_clear): fix wrong method 9251 calls [Bug #7419] [ruby-core:49828]. 9252 9253Thu Nov 22 02:22:33 2012 Tadayoshi Funaba <tadf@dotrb.org> 9254 9255 * NEWS: edited (order etc). 9256 9257Wed Nov 21 22:52:59 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 9258 9259 * ext/io/wait/wait.c (io_wait_readable): add alias wait_readable. 9260 9261 * ext/io/wait/wait.c (io_wait_writable): this is easier to use than 9262 IO.select for a single IO object and is immune to the 9263 limitations/inefficiency of select() on platforms where poll/ppoll 9264 is available. patched by Eric Wong. [Feature #4646] 9265 9266Wed Nov 21 22:27:52 2012 Narihiro Nakamura <authornari@gmail.com> 9267 9268 * gc.c (garbage_collect): remove a duplicative probe. 9269 9270Wed Nov 21 22:08:48 2012 Narihiro Nakamura <authornari@gmail.com> 9271 9272 * gc.c (gc_profile_clear): realloc profile records if its size is 9273 higher than the threshold, GC_PROFILE_RECORD_DEFAULT_SIZE * 2. 9274 9275Wed Nov 21 21:53:29 2012 Tadayoshi Funaba <tadf@dotrb.org> 9276 9277 * complex.c (nucomp_to_c): added. 9278 9279Wed Nov 21 21:35:38 2012 Tadayoshi Funaba <tadf@dotrb.org> 9280 9281 * include/ruby/util.h: removed extra semicolon in definition of 9282 macro. 9283 * compile.c: ditto. 9284 * cont.c: ditto. 9285 * math.c: ditto. 9286 * node.c: ditto. 9287 * parse.y: ditto. 9288 9289Wed Nov 21 18:46:37 2012 Tadayoshi Funaba <tadf@dotrb.org> 9290 9291 * rational.c (read_digits): due to a bit tighter rb_cstr_to_inum(). 9292 9293Wed Nov 21 16:13:37 2012 Koichi Sasada <ko1@atdot.net> 9294 9295 * benchmark/bm_so_nsieve_bits.rb: add an encoding pragma because 9296 this benchmark using strings (literals) as binary sequence. 9297 Now, they are UTF-8 strings. [ruby-dev:46578] 9298 9299Wed Nov 21 00:57:43 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9300 9301 * file.c (Init_File): null device definition uses rb_define_const 9302 instead of rb_file_const. 9303 9304Wed Nov 21 00:28:18 2012 NARUSE, Yui <naruse@ruby-lang.org> 9305 9306 * test/ruby/test_m17n_comb.rb (test_str_crypt): Use RbConfig to get 9307 libc's directory. Patched by Vit Ondruch [ruby-core:49763] [Bug #7312] 9308 9309Tue Nov 20 23:28:26 2012 Masaki Matsushita <glass.saga@gmail.com> 9310 9311 * marshal.c: add marshal readahead. marshalized Array, Hash and Struct 9312 have size at least number of its elements, marshal readahead will 9313 read the certain readable length and buffer when it needs more bytes. 9314 marshal readahead prevents many calls to IO#getbyte and IO#read, 9315 then it enables performance improvement. 9316 [ruby-dev:45637] [Feature #6440] 9317 9318Tue Nov 20 22:35:02 2012 NARUSE, Yui <naruse@ruby-lang.org> 9319 9320 * Makefile.in (.d.h): replace char * to const char * because somehow 9321 current dtrace removes const of function declaration in probes.d. 9322 9323Tue Nov 20 21:41:04 2012 Koichi Sasada <ko1@atdot.net> 9324 9325 * include/ruby/debug.h: introduced. 9326 Debugging/profiling features will be located. 9327 9328 * vm_trace.c: expose C-level TracePoint APIs. 9329 Note that they are experimental. 9330 9331 * vm_trace.c, include/ruby/debug.h: rename `rb_hook_flag_t' 9332 to `rb_event_hook_flag_t'. 9333 Macro names `RUBY_HOOK_FLAG_*' are also renamed to 9334 `RUBY_EVENT_HOOK_FLAG_*'. 9335 9336 * debug.h, vm_debug.h: rename debug.h to vm_debug.h. 9337 9338 * common.mk: ditto. 9339 9340 * debug.c, main.c, vm_core.h: ditto. 9341 9342Tue Nov 20 21:12:37 2012 NARUSE, Yui <naruse@ruby-lang.org> 9343 9344 * configure.in (RUBY_DTRACE_AVAILABLE): only check dtrace availability. 9345 9346 * configure.in (RUBY_DTRACE_POSTPROCESS): restore. 9347 9348Tue Nov 20 21:22:44 2012 Masaki Suketa <masaki.suketa@nifty.ne.jp> 9349 9350 * test/win32ole/test_win32ole_type.rb (test_implemented_ole_types): 9351 IShellDispatch6 bundled in Windows 8. Thanks to phasis68 (Heesob 9352 Park). [ruby-core:49580][Bug #7403] 9353 9354Tue Nov 20 21:06:41 2012 Tadayoshi Funaba <tadf@dotrb.org> 9355 9356 * complex.c: some improvements. 9357 * rational.c: ditto. 9358 9359Tue Nov 20 21:01:16 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 9360 9361 * common.mk (incs): BSD make cannot deal with non-prefixed dependency 9362 and prefixed target. 9363 9364Tue Nov 20 20:10:23 2012 Yusuke Endoh <mame@tsg.ne.jp> 9365 9366 * array.c (rb_ary_bsearch): fix rdoc bug (O(n log n) -> O(log n)). 9367 Patch by Charlie Somerville. [ruby-core:49661] [Bug #7409] 9368 9369 * range.c (range_bsearch): ditto. 9370 9371Tue Nov 20 19:02:44 2012 Koichi Sasada <ko1@atdot.net> 9372 9373 * vm_trace.c: rename and add TracePoint APIs. 9374 (1) TracePoint.new(...){...} creates a new trace point 9375 but does not make it enable. 9376 (2) TracePoint.trace(...){...} creates a new trace point 9377 and enable it (same as old behavior). 9378 (3) TracePoint#enable make it enable (renamed from TracePoint#retrace). 9379 If block given, when enable only in block. 9380 (4) TracePoint#disable make it disable (renamed from TracePoint#untrace). 9381 If block given, when disable only in block. 9382 (5) TracePoint#enabled? returns this trace is enable or not. 9383 [Feature #6895] 9384 9385 * test/ruby/test_settracefunc.rb: add tests. 9386 9387Tue Nov 20 18:35:05 2012 Koichi Sasada <ko1@atdot.net> 9388 9389 * vm_trace.c: add two methods: 9390 (1) TracePoint#return_value which returns return 9391 value on the :return and :c_return event. 9392 (2) TracePoint#raised_exception which returns raised exception 9393 value on the :raise event. 9394 Each methods raise RuntimeError if it is called at unsupported 9395 event. 9396 Please review and give us feedback until next preview 9397 release (Dec/2012) of Ruby 2.0.0. 9398 [Feature #6895] 9399 9400 * insns.def, vm.c, vm_eval.c, vm_insnhelper.c, eval.c, thread.c: 9401 ditto. 9402 9403 * vm_trace.c, vm_core.h: move definition of rb_trace_arg_t from 9404 vm_trace.c to vm_core.h. 9405 Caller fills rb_trace_arg_t and pass the pointer of this variable. 9406 9407 * test/ruby/test_settracefunc.rb: fix tests to test this change. 9408 9409Tue Nov 20 17:31:12 2012 NARUSE, Yui <naruse@ruby-lang.org> 9410 9411 * configure.in: fix dtrace didn't work on darwin. 9412 9413 * configure.in (RUBY_DTRACE_AVAILABLE): unify RUBY_DTRACE_POSTPROCESS 9414 and RUBY_DTRACE_BSD_BROKEN. 9415 9416Tue Nov 20 15:20:00 2012 Zachary Scott <zachary@zacharyscott.net> 9417 9418 * file.c (File.extname): Documentation for extname on dotfiles and 9419 files ending with a dot. Also, added example for this. 9420 [ruby-core:47852] [Bug #7112] 9421 9422Tue Nov 20 14:19:20 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9423 9424 * test/ruby/test_signal.rb (TestSignal#test_signame): fix windows 9425 test failure. Process.kill on windows can't send a signal to 9426 another process. 9427 9428Tue Nov 20 13:58:11 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9429 9430 * io.c (Init_IO): moved all rb_file_const() into file.c. 9431 * file.c (Init_File): replace with rb_file_const() with 9432 rb_define_const() because RDoc don't care rb_file_const. 9433 [Bug #5530] 9434 9435Tue Nov 20 12:35:00 2012 Zachary Scott <zachary@zacharyscott.net> 9436 9437 * ruby.c (usage_msg): Fix typo [ruby-core:49205] [Bug #7327] 9438 9439Tue Nov 20 12:35:00 2012 Zachary Scott <zachary@zacharyscott.net> 9440 9441 * file.c (File::NULL): Document File::NULL constant 9442 [ruby-core:49384] [Bug #7365] 9443 9444Tue Nov 20 12:05:15 2012 NAKAMURA Usaku <usa@ruby-lang.org> 9445 9446 * win32/win32.c (rb_w32_read): Windows 8 fixed one of a bug of console 9447 API. 9448 based on the patch by Heesob Park at [ruby-core:49479] [Bug #7379] 9449 9450Tue Nov 20 11:14:33 2012 NARUSE, Yui <naruse@ruby-lang.org> 9451 9452 * configure.in (--enable-dtrace): always call RUBY_DTRACE_BSD_BROKEN 9453 for portability. 9454 As the note, FreeBSD 8 has DTrace as the optional 9455 feature (it is enabled by the build option), but doesn't have USDT. 9456 FreeBSD 9 has USDT but they are still optional. FreeBSD 10 will 9457 enable them by default. 9458 The variable $rb_cv_prog_dtrace_g is "yes" only on FreeBSD 9 with 9459 optional DTrace or FreeBSD 10. If it is "no", you cannot know 9460 whether it doesn't need -G or DTrace is disabled. (by checking 9461 error code, you can know) 9462 9463Mon Nov 19 22:55:48 2012 Naohisa Goto <ngotogenome@gmail.com> 9464 9465 * configure.in (--enable-dtrace): change help message 9466 9467Tue Nov 20 11:05:00 2012 Zachary Scott <zachary@zacharyscott.net> 9468 9469 * lib/tracer.rb (Tracer.trace_func): printf to stdout 9470 Patch by Michal Fojtik [ruby-core:45219] [Bug #6490] 9471 9472Mon Nov 19 21:24:18 2012 Naohisa Goto <ngotogenome@gmail.com> 9473 9474 * vm_dump.c: not to include probes.h because the code does not depend 9475 on it. 9476 * common.mk (vm_dump.$(OBJEXT)): remove dependency on probes.h 9477 9478Tue Nov 20 10:14:22 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9479 9480 * thread.c (rb_thread_s_check_interrupt): removed redundant 9481 GET_THREAD(). 9482 9483Tue Nov 20 10:12:46 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9484 9485 * thread.c (rb_threadptr_async_errinfo_active_p): added a small 9486 comment. 9487 9488Tue Nov 20 10:05:56 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9489 9490 * thread.c (rb_thread_blocking_region_end): replaced GET_THREAD() 9491 with ruby_thread_from_native(). We don't have GVL here. 9492 9493Tue Nov 20 09:56:15 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9494 9495 * thread.c (rb_threadptr_execute_interrupts) removed. 9496 * thread.c (rb_threadptr_execute_interrupts_common) renamed to 9497 rb_threadptr_execute_interrupts. I.e. unified 9498 rb_threadptr_execute_interrupts and rb_threadptr_execute_interrupts_common. 9499 * thread.c (rb_thread_schedule, rb_thread_execute_interrupts) s/_common//. 9500 9501Tue Nov 20 09:48:34 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9502 9503 * signal.c (rb_get_next_signal): removed pointless signal 9504 disabling. pthread_sigmask() only changes current thread 9505 mask. 9506 9507Tue Nov 20 09:36:55 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9508 9509 * signal.c (install_sighandler): added comments why we need 9510 rb_disable_interrupt(). 9511 9512Tue Nov 20 09:31:33 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9513 9514 * signal.c (rb_disable_interrupt, rb_enable_interrupt): removed 9515 USE_TRAP_MASK. 9516 * signal.c (trap_arg, trap_ensure): removed. 9517 * signal.c (trap, sig_trap): removed pointless signal disabling. 9518 We don't need it because we no longer run trap handler on signal 9519 handler context. 9520 9521Tue Nov 20 09:20:49 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9522 9523 * prelude.rb: Moved Mutex#synchronize to 9524 * thread.c (rb_mutex_synchronize_m): here. [Bug #4266] 9525 9526Tue Nov 20 08:36:15 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 9527 9528 * signal.c (sig_signame): implements Signal.signame method 9529 [Feature #5613] 9530 * test/ruby/test_signal.rb (test_signame): adds test for above 9531 * NEWS: add an item about above 9532 9533Mon Nov 19 16:30:59 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 9534 9535 * struct.c (rb_struct_each_pair): yield associated pairs so that 9536 an unsplat argument can get both, for consistency with Hash, 9537 OpenStruct, and etc. [ruby-dev:46533] [Bug #7382] 9538 9539Mon Nov 19 16:17:53 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 9540 9541 * configure.in (LIBS): libelf is need on only FreeBSD. 9542 9543Mon Nov 19 16:08:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 9544 9545 * common.mk (RUBYLIB): purelib option in runruby.rb is deprecated 9546 since r28841, so set to an empty list to get rid of a bogus path in 9547 child processes, which caused an insecure operation exception in 9548 test/ruby/test_encoding.rb:test_unsafe. 9549 9550Mon Nov 19 15:40:50 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 9551 9552 * .travis.yml (script): add OPTS=-v, requested by @_ko1. 9553 9554Mon Nov 19 15:09:07 2012 NARUSE, Yui <naruse@ruby-lang.org> 9555 9556 * configure.in: fix didn't enable_dtrace=yes on auto. 9557 9558 * configure.in: see enable_dtrace for adding libelf on FreeBSD. 9559 9560 * common.mk: VPATH is not needed. 9561 9562Mon Nov 19 14:55:51 2012 Koichi Sasada <ko1@atdot.net> 9563 9564 * thread.c: add `Thread#backtrace_locations' method. 9565 This method is similar to `caller_locations' method for 9566 specific method. 9567 And fix to accept `level' and `n' parameters for `Thread#backtrace' 9568 and `Thread#backtrace_locations'. 9569 `caller' (and `caller_locations') do not return `caller' method 9570 frame. 9571 However, `Thread#backtrace' (and `Thread#backtrace_locations') 9572 return `Thread#backtrace' method frame itself 9573 if `Thread.current.backtrace' was called. 9574 9575 * vm_backtrace.c: ditto. 9576 9577 * internal.h: ditto. 9578 9579 * test/ruby/test_backtrace.rb: add tests. 9580 9581Mon Nov 19 14:54:32 2012 NAKAMURA Usaku <usa@ruby-lang.org> 9582 9583 * Makefile.in, common.mk (probes.h): moved to common.mk and changed to 9584 see $(srcdir). 9585 9586 * common.mk (probes.dmyh): now created it on $(srcdir) always. 9587 9588 * win32/Makefile.sub (.SUFFIXES): removed common suffix. 9589 9590Mon Nov 19 10:00:10 2012 NARUSE, Yui <naruse@ruby-lang.org> 9591 9592 * Makefile.in (.SUFFIX): bsdmake needs .SUFFIX is defined before use. 9593 9594 * common.mk: fix path of probes.dmyh. 9595 9596 * common.mk (vm_dump.o): depend probes.h. 9597 9598 * configure.in: FreeBSD's USDT requires libelf. 9599 9600Mon Nov 19 01:11:59 2012 Naohisa Goto <ngotogenome@gmail.com> 9601 9602 * vm_core.h, probes_helper.h (RUBY_DTRACE_FUNC_ENTRY_HOOK, 9603 RUBY_DTRACE_FUNC_RETURN_HOOK): move from vm_core.h to new file 9604 probes_helper.h for narrowing dependency to probes.h. 9605 * common.mk (VM_CORE_H_INCLUDES): remove dependency to probes.h. 9606 * common.mk (vm.$(OBJEXT)): add dependency to probes_helper.h. 9607 * vm.c, vm_insnhelper.c: include probes_helper.h. 9608 9609Sun Nov 18 16:33:00 2012 Naohisa Goto <ngotogenome@gmail.com> 9610 9611 * configure.in, Makefile.in, common.mk: support DTrace on Solaris 10, 9612 based on r26235 by Yugui. On Solaris 10, low optimization level 9613 may also be needed, e.g. optflags="-xO1" or "-xO0" with Oracle 9614 SolarisStudio 12.3 cc. 9615 9616 * configure.in (--enable-dtrace): new option to enable/disable 9617 DTrace support. By default, trying to enable if dtrace command 9618 is found on the system. It is disabled when cross compiling. 9619 9620 * configure.in (RUBY_DTRACE_POSTPROCESS): new macro. checks whether 9621 the dtrace on the system needs postprocessing with "dtrace -G". 9622 The postprocessing is needed on Solaris 10 and other platforms. 9623 9624 * configure.in (RUBY_DTRACE_BSD_BROKEN): new macro. checks whether 9625 the dtrace supports USDT. 9626 9627 * configure.in (DTRACE): move after RUBY_DTRACE_POSTPROCESS. 9628 9629 * configure.in (LD): On Solaris, /usr/ccs/bin/ld is preferred. 9630 9631 * configure.in, Makefile.in, common.mk (DTRACE_OBJ): new macro for 9632 DTrace probe object generated by postprocessing with "dtrace -G". 9633 9634 * Makefile.in, common.mk (probes.$(OBJEXT)): DTrace probe object 9635 generated by the postprocessing. New file probes.stamp is for 9636 rebuilding related objects that may be modified by "dtrace -G". 9637 9638 * configure.in, Makefile.in, common.mk (DTRACE_GLOMMED_OBJ): new 9639 macro for DTrace static library hacks. 9640 9641 * configure.in, Makefile.in (LIBRUBY_A_OBJS): ditto. 9642 9643 * Makefile.in, common.mk (ruby-glommed.$(OBJEXT)): new target with 9644 rule for DTrace static library hacks. 9645 9646 * common.mk (DTRACE_DEPENDENT_OBJS): objects depended on probes.h. 9647 9648Sun Nov 18 09:31:47 2012 Tadayoshi Funaba <tadf@dotrb.org> 9649 9650 * complex.c (read_comp): mathn compliant. 9651 * rational.c (read_num): ditto. 9652 9653Sun Nov 18 02:50:12 2012 Luis Lavena <luislavena@gmail.com> 9654 9655 * win32/file.c (replace_to_long_name): correct logic around wildcard 9656 characters detection and ensure wide-chars are used as pattern. 9657 [ruby-core:49451] [Bug #7374] 9658 9659Sun Nov 18 02:02:46 2012 Tadayoshi Funaba <tadf@dotrb.org> 9660 9661 * complex.c (read_comp): modified handling of polar form. 9662 9663Sun Nov 18 00:50:44 2012 Tadayoshi Funaba <tadf@dotrb.org> 9664 9665 * complex.c (read_comp): fixed handling of polar form. 9666 9667Sun Nov 18 00:14:46 2012 Tadayoshi Funaba <tadf@dotrb.org> 9668 9669 * complex.c (string_to_c_strict, string_to_c): rewrote without regexp. 9670 * rational.c (string_to_r_strict, string_to_r): ditto. 9671 9672Sat Nov 17 23:53:05 2012 Tadayoshi Funaba <tadf@dotrb.org> 9673 9674 * complex.c (make_patterns): should not accept extra sign. 9675 9676Sat Nov 17 21:45:12 Luis Lavena <luislavena@gmail.com> 9677 9678 * win32/file.c (replace_to_long_name): skip expansion for all wildcard 9679 characters. 9680 [ruby-core:49451] [Bug #7374] 9681 9682 * test/ruby/test_file_exhaustive.rb: add more assertions to test. 9683 9684Sat Nov 17 12:14:50 2012 Aaron Patterson <aaron@tenderlovemaking.com> 9685 9686 * ext/psych/lib/psych/visitors/yaml_tree.rb: use literal YAML style 9687 when emitting multi-line strings. Thanks @atambo 9688 9689 * test/psych/test_yaml.rb: test for change. 9690 9691Sat Nov 17 12:03:41 2012 Aaron Patterson <aaron@tenderlovemaking.com> 9692 9693 * ext/psych/lib/psych/scalar_scanner.rb: avoid raising exceptions when 9694 parsing Floats and Integers. Thanks riffraff [ruby-core:44426] 9695 * test/psych/test_numeric.rb: associated test 9696 9697Sat Nov 17 11:34:31 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 9698 9699 * st.c (st_update): pass the key in st_table so that we can free 9700 memory of the key in st_table when deleting. 9701 [ruby-core:49220] [Bug #7330] 9702 9703 * test/-ext-/st/test_update.rb 9704 (Bug::StTable#test_pass_objects_in_st_table): add a test. 9705 9706Sat Nov 17 11:26:36 2012 Aaron Patterson <aaron@tenderlovemaking.com> 9707 9708 * ext/psych/lib/psych/core_ext.rb: move Kernel#y so that it can 9709 manually be required as 'psych/y'. 9710 9711 * ext/psych/lib/psych/y.rb: ditto 9712 9713Sat Nov 17 08:13:48 2012 Benoit Daloze <eregontp@gmail.com> 9714 9715 * lib/abbrev.rb: fix r37113. Correct examples, fix style 9716 and show explicit dependency (require 'abbrev'). 9717 9718Sat Nov 17 07:35:15 2012 Luis Lavena <luislavena@gmail.com> 9719 9720 * win32/file.c (replace_to_long_name): skip automatic path expansion 9721 when wildcard character is used. [ruby-core:49451] [Bug #7374] 9722 9723 * test/ruby/test_file_exhaustive.rb: add a test for above. 9724 9725Sat Nov 17 00:50:23 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 9726 9727 * marshal.c (w_object): add flonum to arg->data to keep reference index 9728 consistency. [ruby-core:49323] [Bug #7348] 9729 9730 * test/ruby/test_marshal.rb: add a test for above. 9731 9732Sat Nov 17 00:40:25 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 9733 9734 * common.mk (incs): dist files need probes.dmyh. 9735 9736 * common.mk (probes.dmyh): depends on generator script. 9737 9738 * Makefile.in, common.mk, configure.in, win32/Makefile.sub (probes.h): 9739 select generating with dtrace or copying dummy file by suffix rules. 9740 9741Fri Nov 16 19:24:10 2012 Koichi Sasada <ko1@atdot.net> 9742 9743 * thread.c (rb_thread_call_without_gvl2): change the parameter of 9744 `func' from `int *skip_interrupt' to `VALUE *flags'. 9745 If (flags & RUBY_CALL_WO_GVL_FLAG_SKIP_CHECK_INTS) is not zero, 9746 then skip checking interrupt. 9747 [ruby-core:46547] 9748 9749 * include/ruby/thread.h: ditto. 9750 9751Fri Nov 16 18:59:05 2012 NARUSE, Yui <naruse@ruby-lang.org> 9752 9753 * Makefile.in (no-dtrace-probes.h): dmyprobes.h is in srcdir. 9754 9755 * common.mk (dmyprobes.h): ditto. 9756 9757Fri Nov 16 17:57:15 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 9758 9759 * Makefile.in (probes.h): split build commands for dtrace-available 9760 and unavailable platforms. 9761 9762 * Makefile.in (incs): probes.h is a platform dependent file, so it 9763 cannot be a part of prereq target. move it to all-incs. 9764 9765 * configure.in (DTRACE): move after AC_PROG_CC since cross_compiling 9766 is set in it. 9767 9768 * configure.in (DTRACE): ignore non-prefixed version if 9769 cross-compiling. 9770 9771 * Makefile.in, win32/Makefile.sub (probes.h): fix copying dmyprobes.h 9772 path when outplace-build. 9773 9774Fri Nov 16 15:27:36 2012 Masaki Matsushita <glass.saga@gmail.com> 9775 9776 * lib/net/pop.rb (POP3.certs): fix typo in comment. 9777 patch from no6v (Nobuhiro IMAI) <nov@yo.rim.or.jp>. 9778 [ruby-dev:46519] [Bug #7355] 9779 9780Fri Nov 16 12:36:47 2012 NARUSE, Yui <naruse@ruby-lang.org> 9781 9782 * test/rake/helper.rb (Rake::TestCase#setup): revert r37669. 9783 @orig_PWD should be the original pwd. 9784 9785 * test/rake/test_*.rb: don't use @orig_PWD to load libraries. 9786 It should be specified with relative path from the file. 9787 9788Fri Nov 16 10:22:52 2012 NARUSE, Yui <naruse@ruby-lang.org> 9789 9790 * test/rake/helper.rb (Rake::TestCase#setup): @orig_PWD shouldn't be 9791 Dir.pwd when the build directory is different from source directory. 9792 9793Fri Nov 16 09:41:08 2012 NARUSE, Yui <naruse@ruby-lang.org> 9794 9795 * lib/rake/version.rb: workaround fix to build. see #7366 9796 [ruby-dev:46522] 9797 9798Fri Nov 16 07:23:18 2012 Eric Hodel <drbrain@segment7.net> 9799 9800 * lib/rake*: Updated to rake 0.9.4 9801 http://rake.rubyforge.org/doc/release_notes/rake-0_9_4_rdoc.html for 9802 a list of changes in 0.9.4. 9803 9804 * test/rake*: ditto 9805 9806 * NEWS: ditto 9807 9808Fri Nov 16 06:58:52 2012 Eric Hodel <drbrain@segment7.net> 9809 9810 * lib/rake*: Updated to rake 0.9.3. See 9811 http://rake.rubyforge.org/doc/release_notes/rake-0_9_3_rdoc.html for 9812 a list of changes in 0.9.3. 9813 9814 * test/rake*: ditto 9815 9816 * bin/rake: ditto 9817 9818 * NEWS: ditto 9819 9820Thu Nov 15 22:39:32 2012 Yusuke Endoh <mame@tsg.ne.jp> 9821 9822 * range.c (range_bsearch): fix some bugs: a documentation bug, a wrong 9823 condition, missed break in switch/case, and workaround for GCC 9824 optimization. See [ruby-core:49364] in detail. A great patch from 9825 Heesob Park. [Bug #7352] [Feature #4766] 9826 9827 * array.c (rb_ary_bsearch): fix similar bug (missed break). 9828 9829 * test/ruby/test_range.rb: add two test cases for above. 9830 9831Thu Nov 15 22:41:57 2012 Koichi Sasada <ko1@atdot.net> 9832 9833 * vm_exec.h (GENTRY): GENTRY should be pointer size. 9834 A patch by yoshidam (Yoshida Masato) [Bug #7332]. 9835 9836Thu Nov 15 13:20:00 2012 Zachary Scott <zachary@zacharyscott.net> 9837 9838 * man/erb.1: Fix grammar and copyright dates 9839 * man/goruby.1: ditto 9840 * man/irb.1: ditto 9841 * man/rake.1: ditto 9842 * man/ri.1: ditto 9843 * man/ruby.1: ditto 9844 Patch by Arthur Gunn 9845 [Fixes Github #210] 9846 9847Thu Nov 15 11:35:00 2012 Zachary Scott <zachary@zacharyscott.net> 9848 9849 * man/ruby.1: Grammar edits for man page 9850 Based on a patch by Michael Endsley [Fixes Github #183] 9851 9852Thu Nov 15 00:47:20 2012 Yusuke Endoh <mame@tsg.ne.jp> 9853 9854 * array.c (rb_ary_bsearch): add Array#bsearch for binary search. 9855 [ruby-core:36390] [Feature #4766] 9856 9857 * test/ruby/test_array.rb: add a test for above. 9858 9859 * range.c (range_bsearch): add Range#bsearch for binary search. 9860 [ruby-core:36390] [Feature #4766] 9861 9862 * test/ruby/test_range.rb: add a test for above 9863 9864 * NEWS: added the two new methods. 9865 9866Wed Nov 14 13:25:00 2012 Zachary Scott <zachary@zacharyscott.net> 9867 9868 * lib/fileutils.rb (chmod): Add "X" to modes, convert format to table 9869 [ruby-core:48965] [Bug #7288] 9870 9871Wed Nov 14 11:51:00 2012 Zachary Scott <zachary@zacharyscott.net> 9872 9873 * lib/csv.rb (init_comments): Document private method #init_comments. 9874 Based on a patch from Vincent Batts [ruby-core:49172] [Bug #7319] 9875 9876Wed Nov 14 00:54:00 2012 Kenta Murata <mrkn@mrkn.jp> 9877 9878 * Makefile.in (probes.h): create from probes.d 9879 9880Tue Nov 13 18:44:01 2012 Koichi Sasada <ko1@atdot.net> 9881 9882 * vm_insnhelper.c (vm_call_cfunc_with_frame): don't use ci after 9883 EXEC_EVENT_HOOK because ci can be overridden. 9884 9885 * vm_eval.c: ditto. 9886 9887 * method.h: change invoker's parameters types. 9888 9889 * vm_method.c (call_cfunc_invoker_func): ditto. 9890 9891Tue Nov 13 18:01:54 2012 Shugo Maeda <shugo@ruby-lang.org> 9892 9893 * eval.c (rb_mod_using): raise an ArgumentError if cyclic using is 9894 detected. based on the patch by Charlie Somerville. 9895 [ruby-core:49092] Bug #7308 9896 9897 * test/ruby/test_refinement.rb: related test. 9898 9899Tue Nov 13 17:40:04 2012 NARUSE, Yui <naruse@ruby-lang.org> 9900 9901 * common.mk (vm_insnhelper.c): this target is useless and causes 9902 ruby always need rebuild. 9903 9904Tue Nov 13 17:35:49 2012 Koichi Sasada <ko1@atdot.net> 9905 9906 * compile.c (insn_data_to_s_detail): remove debug lines. 9907 9908Tue Nov 13 17:28:47 2012 Koichi Sasada <ko1@atdot.net> 9909 9910 * vm_insnhelper.c (vm_caller_setup_args): save and restore 9911 ci->argc and ci->blockptr before and after method invocations 9912 because these method dispatches can override call_info. 9913 9914 * bootstraptest/test_method.rb: add tests for this fix. 9915 9916Tue Nov 13 16:38:02 2012 NARUSE, Yui <naruse@ruby-lang.org> 9917 9918 * common.mk (dmyprobes.h): always create for make dist. 9919 9920 * Makefile.in (probes.h): create or copy dmyprobes.h 9921 9922 * win32/Makefile.sub: only do copy dmyprobes.h. 9923 9924Tue Nov 13 15:37:21 2012 NARUSE, Yui <naruse@ruby-lang.org> 9925 9926 * Makefile.in (.SUFFIX): .SUFFIX is needed here for .d.h on bsd make. 9927 9928Tue Nov 13 15:34:35 2012 NAKAMURA Usaku <usa@ruby-lang.org> 9929 9930 * common.mk Makefile.in win32/Makefile.sub (.d.h): it's not common. 9931 9932Tue Nov 13 12:27:11 2012 NARUSE, Yui <naruse@ruby-lang.org> 9933 9934 * configure.in: disable dtrace because it doesn't work on FreeBSD. 9935 9936 * common.mk (clean-local): rm probes.h. 9937 9938 * common.mk (parse.o): depend $(PROBES_H_INCLUDES). 9939 9940 * common.mk (.d.h): moved from Makefile.in and use BASERUBY. 9941 9942 * tool/gen_dummy_probes.rb: reimplemented with ruby because sed is not 9943 available on Windows Microsoft VC++ environment. 9944 9945Tue Nov 13 12:30:26 2012 NAKAMURA Usaku <usa@ruby-lang.org> 9946 9947 * win32/README.win32: added mention about build directory. currently 9948 we can not build ruby in win32 directory. this problem is reported 9949 by Masahiro Kitajima <katonbo@katontech.com>. 9950 9951Tue Nov 13 11:03:47 2012 Masaki Matsushita <glass.saga@gmail.com> 9952 9953 * re.c (rb_memsearch_ss): performance improvement by using memmem(3) if 9954 possible. [ruby-dev:45530] [Feature #6311] 9955 9956 * configure.in: check existence of memmem(3) and that it is not broken. 9957 9958Tue Nov 13 06:50:02 2012 Aaron Patterson <aaron@tenderlovemaking.com> 9959 9960 * probes.d: add DTrace probe declarations. [ruby-core:27448] 9961 9962 * array.c (empty_ary_alloc, ary_new): added array create DTrace probe. 9963 9964 * compile.c (rb_insns_name): allowing DTrace probes to access 9965 instruction sequence name. 9966 9967 * Makefile.in: translate probes.d file to appropriate header file. 9968 9969 * common.mk: declare dependencies on the DTrace header. 9970 9971 * configure.in: add a test for existence of DTrace. 9972 9973 * eval.c (setup_exception): add a probe for when an exception is 9974 raised. 9975 9976 * gc.c: Add DTrace probes for mark begin and end, and sweep begin and 9977 end. 9978 9979 * hash.c (empty_hash_alloc): Add a probe for hash allocation. 9980 9981 * insns.def: Add probes for function entry and return. 9982 9983 * internal.h: function declaration for compile.c change. 9984 9985 * load.c (rb_f_load): add probes for `load` entry and exit, require 9986 entry and exit, and wrapping search_required for load path search. 9987 9988 * object.c (rb_obj_alloc): added a probe for general object creation. 9989 9990 * parse.y (yycompile0): added a probe around parse and compile phase. 9991 9992 * string.c (empty_str_alloc, str_new): DTrace probes for string 9993 allocation. 9994 9995 * test/dtrace/*: tests for DTrace probes. 9996 9997 * vm.c (vm_invoke_proc): add probes for function return on exception 9998 raise, hash create, and instruction sequence execution. 9999 10000 * vm_core.h: add probe declarations for function entry and exit. 10001 10002 * vm_dump.c: add probes header file. 10003 10004 * vm_eval.c (vm_call0_cfunc, vm_call0_cfunc_with_frame): add probe on 10005 function entry and return. 10006 10007 * vm_exec.c: expose instruction number to instruction name function. 10008 10009 * vm_insnhelper.c: add function entry and exit probes for cfunc 10010 methods. 10011 10012 * vm_insnhelper.h: vm usage information is always collected, so 10013 uncomment the functions. 10014 10015Mon Nov 12 19:14:50 2012 Akinori MUSHA <knu@iDaemons.org> 10016 10017 * configure.in (isinf, isnan): isinf() and isnan() are macros on 10018 DragonFly which cannot be found by AC_REPLACE_FUNCS(). This 10019 workaround enforces the fact that they exist on DragonFly. 10020 10021Mon Nov 12 15:59:38 2012 Shugo Maeda <shugo@ruby-lang.org> 10022 10023 * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo), 10024 vm_insnhelper.c (vm_search_method): revert r37616 because it's too 10025 slow. [ruby-dev:46477] 10026 10027 * test/ruby/test_refinement.rb (test_inline_method_cache): skip 10028 the test until the bug is fixed efficiently. 10029 10030Mon Nov 12 14:28:01 2012 NAKAMURA Usaku <usa@ruby-lang.org> 10031 10032 * win32/mkexports.rb (each_export): skip garbage generated by VS2012's 10033 nmake. 10034 reported and patched by Yoshida Masato at [Bug #7333] [ruby-dev:46484] 10035 10036Sun Nov 11 18:58:55 2012 Tadayoshi Funaba <tadf@dotrb.org> 10037 10038 * test/date/test_date_{parse,strptime}.rb: changed the format of 10039 some extra messages. 10040 10041Sun Nov 11 18:41:34 2012 Tadayoshi Funaba <tadf@dotrb.org> 10042 10043 * ext/date/date_parse.c (date__parse): revised the tight parser 10044 (about handling of apostrophes). 10045 10046Sun Nov 11 15:39:04 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10047 10048 * hash.c (rb_hash_s_create): just warn for wrong elements now. 10049 [ruby-dev:46440] [Bug #7300] 10050 10051 * hash.c (rb_hash_s_create): refine error messages. 10052 10053 * error.c (rb_builtin_class_name): share for above. 10054 10055Sun Nov 11 15:12:18 2012 Shugo Maeda <shugo@ruby-lang.org> 10056 10057 * eval.c (top_using): remove Kernel#using, and add main.using instead. 10058 10059 * test/ruby/test_refinement.rb: related test. 10060 10061Sun Nov 11 13:41:01 2012 Shugo Maeda <shugo@ruby-lang.org> 10062 10063 * eval.c (rb_using_refinement, rb_mod_using, f_using): clear method 10064 cache only when using is called explicitly. 10065 10066 * test/ruby/test_refinement.rb: related test. 10067 10068Sun Nov 11 12:56:34 2012 Masaki Matsushita <glass.saga@gmail.com> 10069 10070 * lib/pstore.rb (PStore): fix not to replace ThreadError raised in 10071 #transaction block with PStore::Error. 10072 [ruby-core:39238] [Bug #5269] 10073 10074Sun Nov 11 11:36:19 2012 Shugo Maeda <shugo@ruby-lang.org> 10075 10076 * vm_core.h (rb_call_info_t::refinements), compile.c (new_callinfo): 10077 add a new field for inline method cache. 10078 10079 * vm_insnhelper.c (vm_search_method): check rb_call_info_t::refinements 10080 not to confuse inline method cache when module_eval is used with 10081 refinements. 10082 10083 * test/ruby/test_refinement.rb: related test. 10084 10085Sun Nov 11 08:45:45 2012 Martin Duerst <duerst@it.aoyama.ac.jp> 10086 10087 * ruby.c: removed a comma before "before" 10088 10089Sat Nov 10 23:02:31 2012 Narihiro Nakamura <authornari@gmail.com> 10090 10091 * gc.c: move immutable fields from struct heaps_slot and struct 10092 sorted_heaps_slot into struct heaps_header. 10093 Based on a patch from Sokolov Yura [Feature #6199][ruby-core:43592] 10094 10095Sat Nov 10 19:28:16 2012 Tadayoshi Funaba <tadf@dotrb.org> 10096 10097 * complex.c: modified doc. 10098 * rational.c: ditto. 10099 10100Sat Nov 10 18:20:10 2012 Tadayoshi Funaba <tadf@dotrb.org> 10101 10102 * ext/date/date_parse.c: edited about era. 10103 10104Sat Nov 10 12:13:41 2012 Kouhei Sutou <kou@cozmixng.org> 10105 10106 * tool/rbinstall.rb: Don't install *.gemspec under lib/. 10107 [ruby-core:48966] [Bug #7289] 10108 Reported by Vit Ondruch. Thanks!!! 10109 10110Sat Nov 10 00:49:26 2012 Naohisa Goto <ngotogenome@gmail.com> 10111 10112 * ruby_atomic.h: renamed from atomic.h to avoid header file name 10113 conflict on Solaris 10. [ruby-dev:46414] [Bug #7287] 10114 10115 * gc.c, signal.c, vm_core.h, common.mk: reflect the rename from 10116 atomic.h to ruby_atomic.h. 10117 10118Sat Nov 10 00:46:57 2012 Naohisa Goto <ngotogenome@gmail.com> 10119 10120 * atomic.h: Revert r37491 which is a temporary workaround. 10121 10122Sat Nov 10 00:33:31 2012 NAKAMURA Usaku <usa@ruby-lang.org> 10123 10124 * siphash.h: check configure macros before include newer headers. 10125 10126Fri Nov 9 23:33:05 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10127 10128 * lib/erb.rb (ERB#run, ERB#result): eval under isolated bindings for 10129 safe concurrent use. [ruby-core:47638] [Bug #7046] 10130 10131Fri Nov 9 23:05:06 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10132 10133 * random.c (BYTE_ORDER): define using configured WORDS_BIGENDIAN. 10134 10135 * siphash.c (sip_init_state): use union to suppress warnings by gcc 10136 4.7. 10137 10138Fri Nov 9 19:40:03 2012 NARUSE, Yui <naruse@ruby-lang.org> 10139 10140 * array.c (rb_ary_splice): fix r37583 doesn't consider the case when 10141 beg > array length. 10142 10143Fri Nov 9 16:11:58 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10144 10145 * random.c (rb_memhash): use siphash. 10146 10147Fri Nov 9 16:08:46 2012 Sokolov Yura funny-falcon <funny.falcon@gmail.com> 10148 10149 * array.c: speedup Array#unshift by using space in shared array. 10150 [Feature #6638] 10151 - when array owns its shared array (ARY_SHARED_NUM == 1), and there 10152 is enough space then try unshift values directly into shared 10153 array. 10154 - when resulting array is big (~>64 items) then make it shared with 10155 enough room for future #unshifts, and then insert into shared 10156 array. 10157 10158 * array.c (rb_ary_splice): use shared array in rb_ary_slice. 10159 [Feature #6638] 10160 - use ary_ensure_room_for_push when rb_ary_slice used to add at the 10161 end of array, cause rb_ary_concat use rb_ary_slice. 10162 10163 * array.c (ary_ensure_room_for_push): make array really suitable for 10164 queue. [Feature #6638] 10165 when array is shared (which happens after Array#shift), and 10166 ARY_SHARED_NUM == 1 (which is very often when array used as queue), 10167 then make rb_ary_push push directly into shared array. 10168 10169 * array.c (rb_ary_modify): steal shared array's container when 10170 ARY_SHARED_NUM == 1. [Feature #6638] 10171 - Do not allocate new memory in rb_ary_modify when ARY_SHARED_NUM == 1 10172 and length almost same. 10173 - Store ARY_CAPA instead of RARRAY_LEN in ary_make_shared, to make 10174 it useful. 10175 - Fix rb_ary_sort_bang accordantly. 10176 10177Fri Nov 9 16:00:00 2012 Zachary Scott <zzak@zacharyscott.net> 10178 10179 * ext/bigdecimal/bigdecimal.c: Documentation for BigDecimal 10180 Based on a patch from Vincent Batts [ruby-core:49047] [Bug #7305] 10181 10182Fri Nov 9 15:25:42 2012 Akinori MUSHA <knu@iDaemons.org> 10183 10184 * lib/shellwords.rb (Shellwords#shellescape): Add back my original 10185 real world example with some enhancement. 10186 10187 * lib/shellwords.rb (Shellwords#shelljoin): Undo part of the 10188 previous rdoc change. This new example using a string-only 10189 array was not in line with the description. 10190 10191Fri Nov 9 12:58:13 2012 NARUSE, Yui <naruse@ruby-lang.org> 10192 10193 * string.c (rb_str_crypt): crypt(3) may return NULL. 10194 Latest glibc (2.16?) crypt(3) actually returns NULL. [Bug #7312] 10195 10196Fri Nov 9 12:07:06 2012 Akinori MUSHA <knu@iDaemons.org> 10197 10198 * include/ruby/ruby.h (alloca), eval_intern.h (alloca), gc.c 10199 (alloca): Make alloca() globally available by moving the 10200 ultimate ifdef's to ruby/ruby.h. Gcc hides its builtin alloca() 10201 when compiling with -ansi, and linking thus fails on platforms 10202 that lack their own alloca() implementation in libc, which 10203 include OpenBSD and some ports of NetBSD. We use alloca() 10204 everywhere including from within third party C extensions, so 10205 alloca() must be made globally available. [Bug #7307] 10206 10207 * addr2line.c (alloca): Replace the alloca() part with the 10208 ultimate ifdef's. [Bug #7307] 10209 10210Fri Nov 9 09:30:00 2012 Zachary Scott <zachary@zacharyscott.net> 10211 10212 * io.c (IO#new): 10213 Fix indentation from r37444 10214 [ruby-core:48052] [Bug #7179] 10215 10216Fri Nov 9 07:36:00 2012 Kenta Murata <mrkn@mrkn.jp> 10217 10218 * bignum.c (bigmul0): enable big_mul_toom3. 10219 [ruby-core:48552] [Bug #7242] 10220 10221 * bignum.c (bigmul1_toom3): fix incorrect calculation. 10222 the patch is made by Heesob Park. 10223 [ruby-core:48552] [Bug #7242] 10224 10225Fri Nov 9 05:33:00 2012 Kenta Murata <mrkn@mrkn.jp> 10226 10227 * bignum.c (bigmul0): disable big_mul_toom3 temporarily. 10228 [ruby-core:48552] [Bug #7242] 10229 10230 * test/ruby/test_bignum.rb (test_mul_large_numbers): 10231 add a test for bigmul1_toom3 suggested in [Bug #7242]. 10232 10233Thu Nov 8 21:57:59 2012 Masaki Matsushita <glass.saga@gmail.com> 10234 10235 * re.c (rb_memsearch): performance improvement by using memchr(). 10236 [ruby-dev:45397] [Feature #6173] 10237 10238Thu Nov 8 19:02:50 2012 NARUSE, Yui <naruse@ruby-lang.org> 10239 10240 * lib/net/protocol.rb (Net::InternetMessageIO#each_crlf_line): 10241 treat \r as newline as mame pointed. [ruby-dev:46425] [Bug #7278] 10242 10243Thu Nov 8 11:32:11 2012 Akinori MUSHA <knu@iDaemons.org> 10244 10245 * configure.in (--with-opt-dir): Avoid nesting of double quotes 10246 inside backquotes, since some traditional shells like PD KSH 10247 (which OpenBSD's /bin/sh bases on) fail to parse them. 10248 10249Thu Nov 8 09:34:00 2012 Kenta Murata <mrkn@cookpad.com> 10250 10251 * numeric.c: Add a caution that the results of the comparing 10252 operations of two NaNs are undefined. 10253 [#1720] [ruby-dev:38725] [ruby-core:36966] 10254 10255Thu Nov 8 04:45:21 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 10256 10257 * include/ruby/intern.h: Restore rb_enumeratorize as it was before 10258 r37497 and introduce rb_enumeratorize_with_size instead. [#7302] 10259 10260 * enumerator.c: ditto. 10261 10262Wed Nov 7 15:22:37 2012 NARUSE, Yui <naruse@ruby-lang.org> 10263 10264 * numeric.c (ruby_float_step): fix r37514: it yielded with NaN 10265 if the unit is infinity. 10266 10267Wed Nov 7 15:46:12 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 10268 10269 * lib/webrick.rb: fix typo. reported by Rohit Arondekar. 10270 https://github.com/ruby/ruby/pull/211 10271 10272Wed Nov 7 15:34:12 2012 Takeyuki FUJIOKA <xibbar@ruby-lang.org> 10273 10274 * lib/cgi/core.rb: alias CGI#http_header to CGI#header. 10275 10276Wed Nov 7 12:49:39 2012 Shugo Maeda <shugo@ruby-lang.org> 10277 10278 * eval.c (rb_mod_refine): set RMODULE_IS_REFINEMENT to a created 10279 refinement module, and don't override method_added. 10280 10281 * vm_method.c (rb_method_entry_make): check redefinition of 10282 optimized methods when a method is added to a refinement module. 10283 [ruby-core:48970] [Bug #7290] 10284 10285 * test/ruby/test_refinement.rb: related test. 10286 10287Wed Nov 7 11:48:14 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10288 10289 * misc/ruby-additional.el (ruby-mode-set-encoding): now encoding needs 10290 to be set always explicitly actually. [Feature #6679] 10291 10292Wed Nov 7 09:15:58 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10293 10294 * object.c (rb_mod_const_get): avoid inadvertent symbol creation. 10295 10296Wed Nov 7 07:52:50 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10297 10298 * enum.c (rb_enum_cycle_size): prefix with rb. 10299 10300Wed Nov 7 04:32:15 2012 Luis Lavena <luislavena@gmail.com> 10301 10302 * test/ruby/test_file_exhaustive.rb: Remove FIXME skip on Windows 10303 specific test because the test in question was already fixed. 10304 10305Wed Nov 7 03:45:12 2012 Luis Lavena <luislavena@gmail.com> 10306 10307 * ext/zlib/extconf.rb: Recognize zlibwapi as linking library. 10308 Patch by Daniel Berger. 10309 10310 [ruby-core:44979] [Feature #6421] 10311 10312Wed Nov 7 02:06:40 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 10313 10314 * enumerator.c: New method #size; constructor accepts size. 10315 Have #to_enum accept a block 10316 Warn when using deprecated form of constructor 10317 Support #size for enumerators created from enumerators 10318 Support for lazy.{map|flat_map|...}.size. 10319 10320 * include/ruby/intern.h: RETURN_SIZED_ENUMERATOR for support of 10321 sized enumerators. 10322 10323 * array.c: Support for various enumerator.size. 10324 10325 * enum.c: ditto. 10326 10327 * hash.c: ditto. 10328 10329 * numeric.c: ditto. 10330 10331 * range.c: ditto. 10332 10333 * string.c: ditto. 10334 10335 * struct.c: ditto. 10336 10337 * vm_eval.c: ditto. 10338 10339Tue Nov 6 20:40:28 2012 Aaron Patterson <aaron@tenderlovemaking.com> 10340 10341 * object.c (rb_mod_const_get): Fix constant missing exception class 10342 and message to maintain backwards compatibility. Constant search 10343 should start at Object when constant starts with '::' 10344 10345 * test/ruby/test_module.rb: test for fixes 10346 10347Tue Nov 6 16:50:00 2012 Masaki Matsushita <glass.saga@gmail.com> 10348 10349 * lib/tempfile.rb (Tempfile#inspect): fix confusing #inspect. 10350 previous Tempfile#inspect says it is a File, but actually 10351 it is not a File. 10352 10353 t = Tempfile.new("foo") #=> #<File:/tmp/foo20121106-31970-1ffbum0> 10354 t.is_a? File #=> false 10355 10356 now Tempfile#inspect returns like: 10357 10358 t = Tempfile.new("foo") 10359 #=> #<Tempfile:/tmp/foo20121106-31970-1ffbum0> 10360 10361 [ruby-core:47544] [Bug #7027] 10362 10363Tue Nov 6 16:22:30 2012 Naohisa Goto <ngotogenome@gmail.com> 10364 10365 * atomic.h: add #include <sys/atomic.h> for the workaround of 10366 header file name conflict of atomic.h with /usr/include/atomic.h 10367 on Solaris 10. [ruby-dev:46414] [Bug #7287] 10368 10369Tue Nov 6 14:38:00 2012 NAKAMURA Usaku <usa@ruby-lang.org> 10370 10371 * test/win32ole/test_win32ole.rb: now source encoding is UTF-8, so 10372 binary strings in old scripts are dangerous. 10373 10374Tue Nov 6 14:25:09 2012 NARUSE, Yui <naruse@ruby-lang.org> 10375 10376 * lib/net/protocol.rb (Net::InternetMessageIO#each_crlf_line): 10377 don't use /n in universal regexp. [ruby-dev:46394] [Bug #7278] 10378 10379Tue Nov 6 09:42:26 2012 NARUSE, Yui <naruse@ruby-lang.org> 10380 10381 * string.c (rb_str_b): Add String#b, returning a copied string 10382 whose encoding is ASCII-8BIT. [ruby-dev:45992] [Feature #6767] 10383 10384Tue Nov 6 09:37:57 2012 NARUSE, Yui <naruse@ruby-lang.org> 10385 10386 * ruby.c (load_file_internal): set default source encoding as 10387 UTF-8 instead of US-ASCII. [ruby-core:46021] [Feature #6679] 10388 10389 * parse.y (parser_initialize): set default parser encoding as 10390 UTF-8 instead of US-ASCII. 10391 10392Tue Nov 6 05:48:06 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 10393 10394 * test/ruby/test_require.rb 10395 (TestRequire#test_require_to_path_redefined_in_load_path, 10396 TestRequire#test_require_to_str_redefined_in_load_path): 10397 Suppress method redefined warning when test-all with RUBYOPT=-w. 10398 10399Thu Nov 8 00:24:14 2012 Akinori MUSHA <knu@iDaemons.org> 10400 10401 * ext/curses/view.rb: Do not fail if the file to view is shorter 10402 than the screen height. 10403 10404Mon Nov 5 11:40:00 2012 Mark Somerville <mark@scottishclmibs.com> 10405 10406 * thread_pthread.c (rb_reserved_fd_p): fix typo in macro check 10407 that prevented the ifdef ever being true. 10408 [Bug #7281] [ruby-core:48940] 10409 10410Mon Nov 5 23:28:57 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 10411 10412 * file.c (rb_get_path_check_to_string): extract from 10413 rb_get_path_check(). We change the spec not to call to_path of 10414 String object. 10415 10416 * file.c (rb_get_path_check_convert): extract from rb_get_path_check(). 10417 10418 * file.c (rb_get_path_check): follow the above change. 10419 10420 * file.c (rb_file_expand_path_fast): remove check_expand_path_args(). 10421 Instead we call it in load.c. 10422 10423 * file.c (rb_find_file_ext_safe): use rb_get_expanded_load_path() to 10424 reduce expand cost. 10425 10426 * file.c (rb_find_file_safe): ditto. 10427 10428 * internal.h (rb_get_expanded_load_path): add a declaration. 10429 10430 * internal.h (rb_get_path_check_to_string, rb_get_path_check_convert): 10431 add declarations. 10432 10433 * load.c (rb_construct_expanded_load_path): fix for compatibility. 10434 Same checks in rb_get_path_check() are added. We don't replace 10435 $LOAD_PATH and ensure that String object of $LOAD_PATH are frozen. 10436 We don't freeze non String object and expand it every time. We add 10437 arguments for expanding load path partially and checking if load path 10438 have relative paths or non String objects. 10439 10440 * load.c (load_path_getcwd): get current working directory for checking 10441 if it's changed when getting load path. 10442 10443 * load.c (rb_get_expanded_load_path): fix for rebuilding cache properly. 10444 We check if current working directory is changed and rebuild expanded 10445 load path cache. We expand paths which start with ~ (User HOME) and 10446 non String objects every time for compatibility. We make this 10447 accessible from other source files. 10448 10449 * load.c (rb_feature_provided): call rb_get_path() since we changed 10450 rb_file_expand_path_fast() not to call it. 10451 10452 * load.c (Init_load): initialize vm->load_path_check_cache. 10453 10454 * vm.c (rb_vm_mark): mark vm->load_path_check_cache for GC. 10455 10456 * vm_core.h (rb_vm_struct): add vm->load_path_check_cache to store data 10457 to check load path cache validity. 10458 10459 * test/ruby/test_require.rb (TestRequire): add tests for require 10460 compatibility related to cached expanded load path. 10461 [ruby-core:47970] [Bug #7158] 10462 10463Mon Nov 5 23:26:05 2012 Greg Price <price@mit.edu> 10464 10465 * load.c (rb_get_expanded_load_path): cache the expanded load 10466 path. This saves 4KB of allocation and some stats for every 10467 element of the load path (so nearly a MB in my Rails app) 10468 on every require. 10469 10470 * load.c (rb_construct_expanded_load_path): ensure that $LOAD_PATH 10471 entries are frozen strings. The user must mutate $LOAD_PATH 10472 itself rather than its individual entries. 10473 10474 * vm_core.h (rb_vm_struct): add fields. 10475 10476 * vm.c (rb_vm_mark): mark new fields. 10477 10478 * ruby.c (process_options): modify $LOAD_PATH directly rather than 10479 its elements. 10480 Patch by Greg Price. 10481 [ruby-core:47970] [Bug #7158] 10482 10483Mon Nov 5 23:24:42 2012 Greg Price <price@mit.edu> 10484 10485 * load.c (rb_feature_p, rb_provide_feature): index $LOADED_FEATURES 10486 so that require isn't so slow. 10487 10488 * load.c (rb_provide_feature, get_loaded_features_index): ensure 10489 that $LOADED_FEATURES entries are frozen strings. The user 10490 must mutate $LOADED_FEATURES itself rather than its individual 10491 entries. 10492 10493 * load.c (reset_loaded_features_snapshot): add a new function to reset 10494 vm->loaded_features_snapshot. 10495 10496 * load.c (get_loaded_features_index_raw): add a new function to get 10497 the loaded-features index. 10498 10499 * load.c (features_index_add_single): add a new function to add to the 10500 loaded-features index a single feature. 10501 10502 * load.c (features_index_add): add a new function to add to the 10503 loaded-features index all the required entries for `feature`. 10504 10505 * vm_core.h (rb_vm_struct): add fields. 10506 10507 * vm.c (rb_vm_mark): mark new fields. 10508 10509 * include/ruby/intern.h (rb_hash_clear): declare function. 10510 10511 * hash.c (rb_hash_clear): make function non-static. 10512 Patch by Greg Price. 10513 [ruby-core:47970] [Bug #7158] 10514 10515Mon Nov 5 23:23:51 2012 Greg Price <price@mit.edu> 10516 10517 * array.c (rb_ary_shared_with_p): new function. 10518 Expose whether two arrays are shared (read-only, C only). 10519 10520 * include/ruby/intern.h (rb_ary_shared_with_p): declare. 10521 Patch by Greg Price. 10522 [ruby-core:47970] [Bug #7158] 10523 10524Mon Nov 5 23:21:14 2012 Greg Price <price@mit.edu> 10525 10526 * load.c (loaded_feature_path): clarify and briefly comment 10527 function. These clarifications have no effect on the behavior 10528 of the function. 10529 10530 * load.c (rb_feature_p): explain the search loop. Especially 10531 useful because the logic is complicated as described in the 10532 second paragraph. 10533 Patch by Greg Price. 10534 [ruby-core:47970] [Bug #7158] 10535 10536Mon Nov 5 22:45:03 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 10537 10538 * ext/dl/win32/lib/Win32API.rb (Win32API#call): use 64bit pointer for x64 10539 Windows. This would fix 10540 TestSecureRandom#test_s_random_bytes_without_openssl error. 10541 [ruby-core:47451] [Bug #6990] 10542 10543Mon Nov 5 22:09:26 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 10544 10545 * cygwin/GNUmakefile.in (uncommon.mk): link *.res.o. 10546 EXTOBJES is defined in uncommon.mk. *.res.o setting should be below 10547 uncommon.mk. 10548 [ruby-core:48858] [Bug #7277] 10549 10550Mon Nov 5 11:35:11 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 10551 10552 * thread_pthread.c (native_thread_init, native_thread_destroy): 10553 removed HAVE_PTHREAD_CONDATTR_INIT check because this silly 10554 #ifdef makes use-uninitialized-var issue and (2) native_cond_initialize() 10555 already have a right platform and caller don't need any additional care. 10556 [Bug #6825] 10557 10558Mon Nov 5 10:57:59 2012 NARUSE, Yui <naruse@ruby-lang.org> 10559 10560 * lib/cgi/core.rb: check if Tempfile is defined before use it. 10561 10562 * lib/cgi/core.rb: remove tempfiles only if tempfiles exist 10563 10564Mon Nov 5 12:17:00 2012 Zachary Scott <zachary@zacharyscott.net> 10565 10566 * lib/uri/http.rb (URI::HTTP.build): Fix example 10567 Patch by Carina C. Zona 10568 [Fixes #209 Github] 10569 10570Mon Nov 5 09:55:05 2012 Takeyuki FUJIOKA <xibbar@ruby-lang.org> 10571 10572 * lib/cgi/core.rb: remove tempfile more early. 10573 10574Sun Nov 4 20:29:46 2012 Takeyuki FUJIOKA <xibbar@ruby-lang.org> 10575 10576 * lib/cgi.rb, lib/cgi/*/rb: rename CGI#header to CGI#http_header, 10577 add and update HTML5 tag generator. [Bug #7110] 10578 Patch provided by Marcus Stollsteimer, thank you ! 10579 10580Sun Nov 4 11:47:39 2012 Masaki Matsushita <glass.saga@gmail.com> 10581 10582 * lib/fileutils.rb (module FileUtils): repatch [ruby-core:39622] 10583 [Feature #5337]. improve performance of FileUtils.compare_stream. 10584 [ruby-core:47545] [Feature #7028] 10585 10586Sun Nov 4 11:27:54 2012 Masaki Matsushita <glass.saga@gmail.com> 10587 10588 * array.c (recursive_equal): fix to return true when self and other 10589 are resized to same size and the current index become out of 10590 range. 10591 10592 * test/ruby/test_array.rb: add a test for the above. 10593 10594Sun Nov 4 10:19:03 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10595 10596 * dir.c (file_s_fnmatch): match with expanding braces if FNM_EXTGLOB 10597 is set. [ruby-core:40037] [Feature #5422] 10598 10599Sat Nov 3 23:38:15 2012 Tadayoshi Funaba <tadf@dotrb.org> 10600 10601 * complex.c: modified doc. 10602 * rational.c: ditto. 10603 10604Sat Nov 3 22:38:55 2012 Tadayoshi Funaba <tadf@dotrb.org> 10605 10606 * ext/date/date_core.c: modified doc. 10607 10608Sat Nov 3 18:35:55 2012 Kazuki Tsujimoto <kazuki@callcc.net> 10609 10610 * vm.c (rb_vm_rewrite_ep_in_errinfo, vm_rewrite_ep_in_errinfo): 10611 merge code and remove `rb_vm_rewrite_ep_in_errinfo'. 10612 10613Sat Nov 3 18:15:24 2012 Kazuki Tsujimoto <kazuki@callcc.net> 10614 10615 * vm.c, proc.c: avoid unnecessary `rb_vm_rewrite_ep_in_errinfo' 10616 calls. 10617 10618Sat Nov 3 17:53:43 2012 Kouhei Sutou <kou@cozmixng.org> 10619 10620 * bin/testrb: Use only Test::Unit::AutoRunner in test-unit gem 10621 compatible API to be available by both test/unit bundled in Ruby 10622 and test-unit gem. 10623 * lib/test/unit.rb (Test::Unit::AutoRunner): Move codes from testrb. 10624 10625Sat Nov 3 14:56:21 2012 Tadayoshi Funaba <tadf@dotrb.org> 10626 10627 * ext/date/date_parse.c (parse_eu): should capture apostrophe too. 10628 10629Sat Nov 3 14:46:15 2012 Tadayoshi Funaba <tadf@dotrb.org> 10630 10631 * ext/date/date_parse.c (date__parse): revised the tight parser. 10632 10633Sat Nov 3 14:43:42 2012 Kouhei Sutou <kou@cozmixng.org> 10634 10635 * lib/rexml/xmldecl.rb (REXML::XMLDecl#content): Add missing \A 10636 and \z. 10637 10638Sat Nov 3 14:42:55 2012 Kouhei Sutou <kou@cozmixng.org> 10639 10640 * lib/rexml/output.rb (REXML::Output#initialize): Use normalized 10641 encoding name. 10642 10643Sat Nov 3 14:41:17 2012 Kouhei Sutou <kou@cozmixng.org> 10644 10645 * lib/rexml/output.rb (REXML::Output): Don't output BOM in middle 10646 of the output string. 10647 * test/rexml/test_document.rb: Add a test for the above change. 10648 10649Sat Nov 3 14:09:55 2012 Kouhei Sutou <kou@cozmixng.org> 10650 10651 * NEWS: Add an item about REXML::Document#write. 10652 10653Sat Nov 3 13:46:49 2012 Kouhei Sutou <kou@cozmixng.org> 10654 10655 * test/rexml/test_document.rb: Fix tests that expect encoding name 10656 isn't normalized. 10657 10658Sat Nov 3 13:26:00 2012 Zachary Scott <zachary@zacharyscott.net> 10659 10660 * dir.c (Dir#glob): 10661 Documentation for pattern section, backslash subsection 10662 Patch by Eric Bouchut 10663 [ruby-core:48528] [Bug #7230] 10664 10665Sat Nov 3 13:26:00 2012 Zachary Scott <zachary@zacharyscott.net> 10666 10667 * io.c (IO#new): 10668 Documentation for IO#open modes and formatting 10669 [ruby-core:48052] [Bug #7179] 10670 10671Sat Nov 3 13:01:02 2012 Kouhei Sutou <kou@cozmixng.org> 10672 10673 * test/rexml/test_encoding.rb (EncodingTester#test_in_different_out): 10674 Fix a test that expects encoding in XML declaration is changed by 10675 Output's encoding. It is dropped feature. 10676 10677Sat Nov 3 12:49:45 2012 Kouhei Sutou <kou@cozmixng.org> 10678 10679 * lib/rexml/document.rb (REXML::Document#write): Document encoding 10680 option. Now different encoding between XML file's encoding and 10681 XML declaration's encoding is support. 10682 [Feature #4872] (work in progress) 10683 * lib/rexml/xmldecl.rb (REXML::XMLDecl#write): Always use XMLDecl's 10684 encoding. 10685 * test/rexml/test_document.rb: Update tests for the above change. 10686 10687Sat Nov 3 12:18:35 2012 Masaki Matsushita <glass.saga@gmail.com> 10688 10689 * array.c (recursive_equal): fix not to make invalid pointers when 10690 self and other are resized to same size in #== of their elements. 10691 [ruby-dev:46373] [Feature #6177] 10692 10693Sat Nov 3 12:06:15 2012 Kouhei Sutou <kou@cozmixng.org> 10694 10695 * test/rexml/test_xml_declaration.rb (TestXmlDeclaration#test_*): 10696 Remove needless prefix from test names. 10697 10698Sat Nov 3 12:04:52 2012 Kouhei Sutou <kou@cozmixng.org> 10699 10700 * test/rexml/test_xml_declaration_parent_child.rb: Rename to ... 10701 * test/rexml/test_xml_declaration.rb: ... this. 10702 10703Sat Nov 3 11:43:00 2012 Zachary Scott <zachary@zacharyscott.net> 10704 10705 * hash.c (rb_hash_delete): Correct grammar 10706 Patch by Glenn Oppegard 10707 [Fixes #208 Github] 10708 10709Sat Nov 3 11:28:28 2012 Narihiro Nakamura <authornari@gmail.com> 10710 10711 * NEWS: add a news about GC::Profiler.raw_data. 10712 10713Sat Nov 3 11:01:32 2012 Narihiro Nakamura <authornari@gmail.com> 10714 10715 * NEWS: add a news about rb_newobj_of() and NEWOBJ_OF(). 10716 10717Sat Nov 3 10:17:41 2012 Narihiro Nakamura <authornari@gmail.com> 10718 10719 * eval.c (f_current_dirname): add the new method for Kernel. 10720 This method almost same as File.dirname(__FILE__). One 10721 different behavior is it returns nil when __FILE__ returns nil. 10722 [Feature #3346] 10723 10724 * NEWS: ditto 10725 10726 * test/ruby/test_method.rb: related test. 10727 10728Sat Nov 3 09:03:34 2012 Shugo Maeda <shugo@ruby-lang.org> 10729 10730 * test/ruby/test_refinement.rb (test_new_method_by_send, 10731 test_new_method_by_method_object): add tests for Kernel#send and 10732 Kernel#method with refinements. 10733 10734 * test/ruby/test_refinement.rb (test_symbol_to_proc): add a test 10735 calling a proc created by Symbol#to_proc outside the scope where 10736 a refinement is closed over. 10737 10738Sat Nov 3 04:14:19 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10739 10740 * vm.c (rb_vm_rewrite_ep_in_errinfo): rewrite all catch points in 10741 errinfo, not only the topmost frame. based on the patch by 10742 ktsj (Kazuki Tsujimoto) in [ruby-dev:45656]. [Bug #6460] 10743 10744Fri Nov 2 20:11:17 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10745 10746 * lib/mkmf.rb (MakeMakefile#timestamp_file): remove @ which looks like 10747 configure variables. 10748 10749 * lib/mkmf.rb (MakeMakefile#timestamp_file): use .-. instead of !, a 10750 special character of NMAKE and BSD make. [Bug #7265] 10751 10752Fri Nov 2 17:55:39 2012 Shota Fukumori <sorah@tubusu.net> 10753 10754 * lib/test/unit.rb (_run_parallel): Delete status line before showing 10755 results. Patch by Hiroshi Shirosaki. [Bug #6897] [ruby-core:47250] 10756 10757 * lib/test/unit.rb (_run_parallel): Fix strange result when disabled retrying. 10758 Patch by Hiroshi Shirosaki. [Bug #6897] [ruby-core:47250] 10759 10760Fri Nov 2 17:52:12 2012 Shugo Maeda <shugo@ruby-lang.org> 10761 10762 * object.c (rb_mod_to_s): Module#{to_s,inspect}, when invoked on 10763 a refinement, returns a string in the format #<refinement:C@M>, 10764 where C is a refined class and M is a module at which the refinement 10765 is defined. 10766 10767 * eval.c (rb_mod_refine): store information on a refinement for the 10768 above change. 10769 10770 * test/ruby/test_refinement.rb: related test. 10771 10772Fri Nov 2 16:57:52 2012 Shota Fukumori <sorah@tubusu.net> 10773 10774 * vm_dump.c (rb_vm_bugreport): Because of many log directories, 10775 making directory lists readable. 10776 10777Fri Nov 2 16:44:00 2012 Kenta Murata <mrkn@mrkn.jp> 10778 10779 * vm_dump.c (rb_vm_bugreport): add ~/Library/Logs/DiagnosticReports 10780 in the locations list of crash reports. 10781 10782Fri Nov 2 14:52:52 2012 Masaki Matsushita <glass.saga@gmail.com> 10783 10784 * array.c (recursive_equal): performance improvement by avoiding 10785 overhead to call rb_ary_elt(). 10786 [ruby-dev:45412] [Feature #6177] 10787 10788Fri Nov 2 14:47:53 2012 Shugo Maeda <shugo@ruby-lang.org> 10789 10790 * string.c (sym_to_proc, sym_call): A Proc created by Symbol#to_proc 10791 should close over the current refinements. 10792 [ruby-dev:46345] [Bug #7261] 10793 10794 * vm_eval.c (rb_call0, rb_search_method_entry, 10795 rb_funcall_passing_block_with_refinements): add a new argument 10796 `refinements' for the above changes. 10797 10798 * test/ruby/test_refinement.rb: related test. 10799 10800Fri Nov 2 08:24:28 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10801 10802 * proc.c (top_define_method): new method, main.define_method. 10803 [ruby-core:45715] [Feature #6609] 10804 10805 * eval.c (top_include): fix a warning message, main is not a class or 10806 module. 10807 10808Fri Nov 2 04:41:33 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10809 10810 * lib/mkmf.rb (MakeMakefile#timestamp_file): use ! instead of %, a GNU 10811 make special character. 10812 10813Fri Nov 2 04:40:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10814 10815 * test/ruby/test_process.rb (test_execopts_preserve_env_on_exec_failure): 10816 use never existing file in the current temporary directory. 10817 10818Fri Nov 2 04:23:20 2012 NARUSE, Yui <naruse@ruby-lang.org> 10819 10820 * tool/merger.rb: add feature to tag preview/rc. 10821 10822Fri Nov 2 03:23:37 2012 NARUSE, Yui <naruse@ruby-lang.org> 10823 10824 * lib/mkmf.rb: fix for if config["libdir"] is nil. 10825 10826Thu Nov 1 23:06:01 2012 NARUSE, Yui <naruse@ruby-lang.org> 10827 10828 * tool/make-snapshot: fix wrong regexp for releasing preview. 10829 patched by mame. 10830 10831Thu Nov 1 22:27:11 2012 Koichi Sasada <ko1@atdot.net> 10832 10833 * NEWS: add a news about objspace, 10834 ObjectSpace.reachable_objects_from. 10835 10836Thu Nov 1 21:57:00 2012 Kenta Murata <mrkn@mrkn.jp> 10837 10838 * ext/bigdecimal/bigdecimal.c (BigDecimal_new), 10839 test/bigdecimal/test_bigdecimal.rb: 10840 Fix exception message of BigDecimal constructor with a Float. 10841 10842Thu Nov 1 21:52:20 2012 Kenta Murata <mrkn@mrkn.jp> 10843 10844 * ext/bigdecimal/bigdecimal.c (BigDecimal_add), 10845 test/bigdecimal/test_bigdecimal.rb: 10846 need to specify precision for converting Rational and Float. 10847 [ruby-core:48045] [Bug #7176] 10848 10849Thu Nov 1 21:42:20 2012 Yusuke Endoh <mame@tsg.ne.jp> 10850 10851 * test/ruby/test_process.rb: Revert r37404. My ubuntu box has 10852 actually the directory named "/nonexistent"... Sorry. 10853 10854Thu Nov 1 21:28:28 2012 Yusuke Endoh <mame@tsg.ne.jp> 10855 10856 * test/ruby/test_process.rb: Process.exec raised EACCES on Linux 10857 3.5.0-17-generic. This is a temporal fix to rescue that exception. 10858 Needs kosaki's review. 10859 10860Thu Nov 1 21:19:56 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10861 10862 * iseq.c (set_relation): parent_iseq need to be set regardless iseq 10863 type. fix r37397. 10864 10865Thu Nov 1 19:47:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10866 10867 * thread_pthread.c (RUBY_STACK_MIN): may not a compile time constant. 10868 fix r37079. [ruby-dev:46322] [Bug #7247] 10869 10870Thu Nov 1 16:44:36 2012 Shugo Maeda <shugo@ruby-lang.org> 10871 10872 * NEWS: add note for Module#refine, Module#refinements, 10873 Module#using, and Kernel#using. 10874 10875Thu Nov 1 14:41:47 2012 Shugo Maeda <shugo@ruby-lang.org> 10876 10877 * eval.c (rb_using_module): using should be used indirectly. 10878 [ruby-dev:46326] [Feature #7251] 10879 10880Wed Oct 31 18:17:38 2012 Narihiro Nakamura <authornari@gmail.com> 10881 10882 * gc.c (gc_profile_record): don't define unused variables when 10883 GC_PROFILE_MORE_DETAIL is 0. 10884 10885Wed Oct 31 18:10:53 2012 Narihiro Nakamura <authornari@gmail.com> 10886 10887 * gc.c (gc_prof_mark_timer_stop): count is not initialized. 10888 10889Wed Oct 31 09:28:24 2012 Eric Hodel <drbrain@segment7.net> 10890 10891 * thread.c (rb_thread_call_without_gvl2): Note that ubf() may or may 10892 not be called with the GVL. Hinted that rb_thread_call_with_gvl() 10893 can be used to access ruby functionality. 10894 10895Wed Oct 31 09:06:54 2012 Eric Hodel <drbrain@segment7.net> 10896 10897 * thread.c (rb_thread_call_without_gvl2): Update documentation to 10898 natural English. 10899 * thread.c (rb_thread_call_with_gvl): ditto. 10900 10901Wed Oct 31 02:53:07 2012 Aaron Patterson <aaron@tenderlovemaking.com> 10902 10903 * ext/dl/lib/dl/struct.rb: fix strange require order. [ruby-dev:45702] 10904 10905 * ext/dl/lib/dl/value.rb: ditto 10906 10907 * test/dl/test_c_struct_entry.rb: remove strange require order from 10908 tests. 10909 10910 * test/dl/test_c_union_entity.rb: ditto 10911 10912Tue Oct 30 23:59:32 2012 Shugo Maeda <shugo@ruby-lang.org> 10913 10914 * eval.c (rb_mod_refine): fix the error message when no block is 10915 given. [ruby-dev:46319] [Bug #7244] 10916 10917 * test/ruby/test_refinement.rb: related test. 10918 10919Tue Oct 30 19:27:48 2012 NAKAMURA Usaku <usa@ruby-lang.org> 10920 10921 * process.c (redirect_dup2): set standard handles when new fd is stdio, 10922 because if there is no allocated console at the moment Windows does 10923 not automatically associate it for child process's standard handle. 10924 this is adhoc workaround. 10925 reported by Martin Thiede at [ruby-core:48542] [Bug #7239]. 10926 10927 * io.c (rb_cloexec_dup2): ditto. 10928 10929Tue Oct 30 03:08:53 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10930 10931 * lib/rbconfig/obsolete.rb (Config): re-introduce warnings for a 10932 lame-duck. [ruby-core:46836] [Bug #6809] 10933 10934Tue Oct 30 02:20:10 2012 Aaron Patterson <aaron@tenderlovemaking.com> 10935 10936 * thread.c: added Thread#thread_variable_(get|set), 10937 Thread#thread_variable?, and Thread#thread_variables for operating 10938 on variables that are local to threads. [ruby-core:47790] 10939 10940 * vm.c: ditto 10941 10942 * test/ruby/test_thread.rb: tests for thread variables. 10943 10944Mon Oct 29 18:22:58 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 10945 10946 * ext/stringio/stringio.c (strio_close): close separately per each 10947 instances, as well as IO. 10948 10949Mon Oct 29 10:22:00 2012 Aaron Patterson <aaron@tenderlovemaking.com> 10950 10951 * ext/psych/lib/psych/handlers/recorder.rb: added a class for 10952 recording YAML parse and emit events. 10953 10954 * ext/psych/lib/psych/handler.rb: adding a list of events so that 10955 handler classes can more easily be meta-programmed. 10956 10957 * test/psych/handlers/test_recorder.rb: tests for the change. 10958 10959Mon Oct 29 05:48:52 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 10960 10961 * lib/ostruct.rb: Add [] and []=, base on a patch by Thomas Sawyer. 10962 Also accept {Open}Struct as argument to new. 10963 Add #eql?, #hash & #each_pair 10964 Protect new_ostruct_member 10965 10966Mon Oct 29 03:20:58 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 10967 10968 * lib/matrix.rb: Fix determinant_e [ruby-dev:46305] [Bug #7228] 10969 10970Sun Oct 28 23:52:25 2012 Kouhei Sutou <kou@cozmixng.org> 10971 10972 * test/rexml/test_document.rb: Add tests for parsing XML encoded 10973 by UTF-8 with BOM. 10974 10975Sun Oct 28 23:47:09 2012 Kouhei Sutou <kou@cozmixng.org> 10976 10977 * lib/rexml/source.rb: Move encoding detection code to base class. 10978 * lib/rexml/encoding.rb: Remove needless encoding detection code. 10979 10980Sun Oct 28 21:40:13 2012 Kouhei Sutou <kou@cozmixng.org> 10981 10982 * lib/rexml/parsers/baseparser.rb: Fix a bug that UTF-8 is used 10983 for UTF-16XX encoded XML that doesn't have encoding="UTF-16" in 10984 XML declaration. 10985 * test/rexml/test_document.rb: Add tests for the above change. 10986 10987Sun Oct 28 21:37:34 2012 Kouhei Sutou <kou@cozmixng.org> 10988 10989 * test/rexml/test_document.rb: Group tests that they parse 10990 UTF-16XX encoded XML that has encoding="UTF-16" in XML declaration. 10991 10992Sun Oct 28 21:25:11 2012 Kouhei Sutou <kou@cozmixng.org> 10993 10994 * lib/rexml/source.rb (REXML::IOSource#initialize): Reduce 10995 @line_break initialize code. It should be done only in #encoding=. 10996 * lib/rexml/parsers/baseparser.rb: Don't set UTF-16 encoding to 10997 source by encoding="UTF-16" in XML declaration because UTF-16XX 10998 source encoding should be set in Source#initialize or 10999 IOSource#initialize. They should handle BOM. Parser should not 11000 consider about it. 11001 11002Sun Oct 28 21:18:37 2012 Kouhei Sutou <kou@cozmixng.org> 11003 11004 * test/rexml/test_document.rb: Add tests for parsing XML encoded 11005 by UTF-16 with BOM. 11006 11007Sun Oct 28 19:12:11 2012 Tadayoshi Funaba <tadf@dotrb.org> 11008 11009 * ext/date/date_parse.c (iso8601_{ext,bas}_time): should not match 11010 empty string. 11011 11012Sun Oct 28 18:51:33 2012 Tadayoshi Funaba <tadf@dotrb.org> 11013 11014 * ext/date/date_parse.c (date__parse): revised the tight parser. 11015 11016Sun Oct 28 15:41:50 2012 Kouhei Sutou <kou@cozmixng.org> 11017 11018 * lib/rexml/document.rb (REXML::Document#write): Add :encoding option 11019 to support custom XML encoding. 11020 [Feature #4872] (work in progress) 11021 * test/rexml/test_document.rb: Add tests for the above change. 11022 11023Sun Oct 28 15:00:19 2012 Kouhei Sutou <kou@cozmixng.org> 11024 11025 * lib/rexml/document.rb (REXML::Document#write): Remove needless 11026 indent in document. 11027 11028Sun Oct 28 14:59:14 2012 Kouhei Sutou <kou@cozmixng.org> 11029 11030 * lib/rexml/document.rb (REXML::Document#write): Accept options 11031 Hash as argument. 11032 * test/rexml/test_document.rb: Add tests for the above change. 11033 11034Sun Oct 28 14:09:44 2012 Kouhei Sutou <kou@cozmixng.org> 11035 11036 * lib/rexml/document.rb (REXML::Document#write): Fix wrong usage 11037 in document. 11038 11039Sun Oct 28 14:03:48 2012 Kouhei Sutou <kou@cozmixng.org> 11040 11041 * lib/rexml/document.rb (REXML::Document#write): Fix wrong method 11042 names in document. 11043 11044Sun Oct 28 10:12:15 2012 Aaron Patterson <aaron@tenderlovemaking.com> 11045 11046 * ext/psych/lib/psych/visitors/yaml_tree.rb: `tree` should return the 11047 same thing on every call. 11048 11049 * test/psych/visitors/test_yaml_tree.rb: related test. 11050 11051Sun Oct 28 10:05:03 2012 Aaron Patterson <aaron@tenderlovemaking.com> 11052 11053 * ext/psych/lib/psych/visitors/yaml_tree.rb: YAML Tree object should 11054 be able to take an emitter object as it's output. 11055 11056 * test/psych/visitors/test_yaml_tree.rb: related test. 11057 11058Sun Oct 28 08:23:16 2012 Koichi Sasada <ko1@atdot.net> 11059 11060 * bignum.c (bignew_1): Bignum instances are frozen. 11061 Feature #3222 11062 11063 * include/ruby/ruby.h: Fixnum instances are also frozen. 11064 11065 * class.c (singleton_class_of): check Bignum before 11066 singleton checking. 11067 11068 * test/ruby/test_bignum.rb: add a test. 11069 11070 * test/ruby/test_fixnum.rb: ditto. 11071 11072 * test/ruby/marshaltestlib.rb, test/ruby/test_eval.rb, 11073 test/ruby/test_object.rb: catch up above changes. 11074 11075Sun Oct 28 04:38:06 2012 Koichi Sasada <ko1@atdot.net> 11076 11077 * vm.c (vm_define_method): remove type and frozen checking. 11078 Checking is done in `rb_singleton_class()'. 11079 11080Sun Oct 28 00:49:06 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11081 11082 * parse.y (assign_in_cond): warn for static content object assignments 11083 in conditional statements. [ruby-dev:43083] [Feature #4299] 11084 11085Sat Oct 27 23:33:41 2012 Benoit Daloze <eregontp@gmail.com> 11086 11087 * gc.c (gc_profile_result, gc_profile_report): use internal structures 11088 to avoid allocations and progressively print the output for #report. 11089 [ruby-core:47163] [Bug #6865] 11090 11091Sat Oct 27 11:01:10 2012 Koichi Sasada <ko1@atdot.net> 11092 11093 * numeric.c (rb_float_new_in_heap), include/ruby/ruby.h: 11094 make all Float objects frozen. 11095 [ruby-dev:46081] [ruby-trunk - Feature #6936] 11096 Most part of patch by NARUSE, Yui <naruse@ruby-lang.org>. 11097 11098 * class.c (singleton_class_of): raise TypeError when 11099 trying to define a singleton method on Float objects. 11100 11101 * vm.c (vm_define_method): ditto. 11102 11103 * test/ruby/marshaltestlib.rb: catch up above changes. 11104 11105 * test/ruby/test_class.rb: ditto. 11106 11107 * test/test_pp.rb: ditto. 11108 11109Sat Oct 27 10:50:53 2012 Aaron Patterson <aaron@tenderlovemaking.com> 11110 11111 * object.c (rb_mod_const_get): make sure the constant name is 11112 converted to a string before searching. [ruby-core:48405] 11113 11114Sat Oct 27 10:12:13 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 11115 11116 * iseq.c (rb_iseq_compile_with_option): Instead of testing 11117 respond_to, just check if the argument is actually a file, 11118 because by calling user-defined gets something weired can 11119 happen. Patch by Glass_saga. [ruby-dev:40202] [Bug #2861] 11120 11121 * parse.y (ripper_initialize): ditto. 11122 11123Sat Oct 27 10:07:57 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11124 11125 * parse.y (enum lex_state_e): [EXPERIMENTAL] lex_state as bit field / 11126 IS_lex_state() macro. based on the patch by Dave B in 11127 [ruby-core:23503]. [Feature #1493] 11128 11129Sat Oct 27 10:05:03 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11130 11131 * include/ruby/win32.h (fstat): use _fstati64() instead of fstati64() 11132 on mingw32. 11133 11134Sat Oct 27 06:28:33 2012 Aaron Patterson <aaron@tenderlovemaking.com> 11135 11136 * object.c (rb_mod_const_get): const_get accepts qualified constant 11137 strings. e.g. Object.const_get("Foo::Bar::Baz") [ruby-core:41404] 11138 11139 * test/ruby/test_module.rb: tests for new behavior 11140 11141Fri Oct 26 13:24:20 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11142 11143 * parse.y (literal_concat_gen): merge fixed strings across 11144 concatenated literals, after an interpolation. 11145 11146Thu Oct 25 17:48:54 2012 NAKAMURA Usaku <usa@ruby-lang.org> 11147 11148 * win32/win32.c (has_redirection): should use shell (cmd.exe) when 11149 the commandline contains '&'. 11150 reported by Roger Pack at [ruby-core:47912] [Bug #7143], and 11151 patched by Heesob Park at [ruby-core:47931]. 11152 11153Thu Oct 25 15:00:08 2012 Koichi Sasada <ko1@atdot.net> 11154 11155 * include/ruby/ruby.h, class.c: remove (revert) 11156 `rb_add_method_cfunc_frameless()' API. 11157 This API is not mature to become an official API. 11158 For example, we can not use this API with 11159 `rb_define_private_method()'. 11160 11161 * method.h, vm_method.c (rb_add_method_cfunc_frameless): removed. 11162 11163Thu Oct 25 13:35:07 2012 NAKAMURA Usaku <usa@ruby-lang.org> 11164 11165 * tool/mkconfig.rb: remove string literal concatenation. 11166 11167Wed Oct 24 18:49:16 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11168 11169 * ext/objspace/objspace.c (type2sym, count_objects_size): use enum 11170 instead of size_t which may be larger than actual values. 11171 11172Wed Oct 24 17:41:24 2012 Koichi Sasada <ko1@atdot.net> 11173 11174 * benchmark/driver.rb: add `-x' or `--exclude' option 11175 to specify exclude benchmark name pattern. 11176 You can specify "-x foo" if you want to exclude the benchmarks 11177 if the name of benchmark contains `foo'. 11178 11179Wed Oct 24 11:57:24 2012 Narihiro Nakamura <authornari@gmail.com> 11180 11181 * gc.c (gc_prepare_free_objects): rename to match the behavior of 11182 this function. 11183 11184Wed Oct 24 11:55:19 2012 Koichi Sasada <ko1@atdot.net> 11185 11186 * ext/objspace/objspace.c (reachable_object_from_i): change data 11187 structure of the result of reachable objects. Keys of table 11188 contains object_id of each reachable objects. Value of table 11189 is an object itself or an instance of InternalObjectWrapper. 11190 To avoid duplication, we use st_table and object_id keys. 11191 11192 * ext/objspace/objspace.c (type2sym): bug fix. 11193 Should use `i' instead of `type'. 11194 11195Wed Oct 24 10:33:09 2012 Koichi Sasada <ko1@atdot.net> 11196 11197 * gc.c (garbage_collect, gc_marks): move the location of 11198 clear and restore rb_objspace_t::mark_func_data 11199 from garbage_collect() to gc_marks(). 11200 11201Wed Oct 24 10:17:45 2012 Koichi Sasada <ko1@atdot.net> 11202 11203 * ext/objspace/objspace.c (Init_objspace): add a new method 11204 `ObjectSpace::InternalObjectWrapper#internal_object_id' which returns 11205 an object id of a wrapped internal object. 11206 11207Wed Oct 24 08:55:04 2012 Koichi Sasada <ko1@atdot.net> 11208 11209 * ext/objspace/objspace.c (ObjectSpace.reachable_objects_from): 11210 internal object support. 11211 If given object `obj' has references to internal objects 11212 (such as T_NODE objects), then this method returns instances of 11213 `ObjectSpace::InternalObjectWrapper' instead of that internal objects. 11214 This instance contains a reference to an internal object and you can 11215 check the type of internal object using 11216 `ObjectSpace::InternalObjectWrapper#type' method. 11217 Rdoc of `InternalObjectWrapper' is not prepared yet. 11218 11219 * gc.c (rb_objspace_reachable_objects_from), gc.h: change 11220 an interface of 'rb_objspace_reachable_objects_from()' 11221 11222 * gc.c, gc.h: add two APIs 11223 - rb_objspace_markable_object_p(obj): check markable or not. 11224 - rb_objspace_internal_object_p(obj): check internal or not. 11225 11226Wed Oct 24 05:52:36 2012 Koichi Sasada <ko1@atdot.net> 11227 11228 * vm_insnhelper.c (vm_call_method): remove `default' and 11229 add a case for `VM_METHOD_TYPE_UNDEF'. 11230 11231Wed Oct 24 05:41:18 2012 Koichi Sasada <ko1@atdot.net> 11232 11233 * eval_error.c (error_print), vm_eval.c (eval_string_with_cref), 11234 vm_trace.c (rb_suppress_tracing): use TH_PUSH_TAG() instead of 11235 PUSH_TAG(). 11236 11237Wed Oct 24 05:17:52 2012 Koichi Sasada <ko1@atdot.net> 11238 11239 * vm_eval.c (vm_call0_body): remove RUBY_VM_CHECK_INTS() 11240 after method invocation using rb_call0(). 11241 11242 * vm_eval.c (vm_call0_body): remove default section on top of 11243 switch statement and add cases for `VM_METHOD_TYPE_CFUNC_FRAMELESS' 11244 and `VM_METHOD_TYPE_UNDEF'. 11245 11246 * vm_eval.c (vm_call0_body): remove useless brackets. 11247 11248Tue Oct 23 22:34:49 2012 Koichi Sasada <ko1@atdot.net> 11249 11250 * thread.c (thread_raise_m): check interrupts after Thread#raise 11251 if a target thread is the current thread because the behavior 11252 of Thread.current.raise is expected to perform same as 11253 Kernel.raise (by rubyspec). 11254 11255Tue Oct 23 17:08:39 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11256 11257 * ruby.c (usage, process_options): show more info in --help. 11258 [EXPERIMENTAL] [ruby-core:48072] [Bug #7184] 11259 11260Tue Oct 23 14:20:43 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11261 11262 * misc/ruby-electric.el using variable `last-command-event' instead of 11263 obsolete `last-command-char', so that work with Emacs trunk. 11264 a patch by Victor Deryagin <vderyagin AT gmail.com>. 11265 11266Tue Oct 23 14:06:47 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11267 11268 * configure.in (visibility_option): visibility attribute is not 11269 available before GCC 4, so do not use -fvisibility option in that 11270 case. [ruby-core:48147] [Bug #7205] 11271 11272Tue Oct 23 12:57:29 2012 Koichi Sasada <ko1@atdot.net> 11273 11274 * vm_core.h, vm_insnhelper.c, vm_eval.c (OPT_CALL_CFUNC_WITHOUT_FRAME): 11275 add a new optimization and its macro `OPT_CALL_CFUNC_WITHOUT_FRAME'. 11276 This optimization makes all cfunc method calls `frameless', which 11277 is faster than ordinal cfunc method call. 11278 If `frame' is needed (for example, it calls another method with 11279 `rb_funcall()'), then build a frame. In other words, this 11280 optimization delays frame building. 11281 However, to delay the frame building, we need additional overheads: 11282 (1) Store the last call information. 11283 (2) Check the delayed frame building before the frame is needed. 11284 (3) Overhead to build a delayed frame. 11285 rb_thread_t::passed_ci is storage of delayed cfunc call information. 11286 (1) is lightweight because it is only 1 assignment to `passed_ci'. 11287 To achieve (2), we modify GET_THREAD() to check `passed_ci' every 11288 time. It causes 10% overhead on my environment. 11289 This optimization only works for cfunc methods which do not need 11290 their `frame'. 11291 After evaluation on my environment, this optimization does not 11292 effective every time. Because of this evaluation results, this 11293 optimization is disabled at default. 11294 11295 * vm_insnhelper.c, vm.c: add VM_PROFILE* macros to measure behaviour 11296 of VM internals. I will extend this feature. 11297 11298 * vm_method.c, method.h: change parameters of the `invoker' function. 11299 Receive `func' pointer as the first parameter. 11300 11301Tue Oct 23 06:21:05 2012 Aaron Patterson <aaron@tenderlovemaking.com> 11302 11303 * ext/psych/parser.c: just get the constant defined in Ruby. 11304 11305 * ext/psych/lib/psych/syntax_error.rb: Psych::SyntaxError now inherits 11306 from StandardError rather than SyntaxError. Thanks Eric Hodel! 11307 11308 * test/psych/test_exception.rb: tests for change. 11309 11310Tue Oct 23 06:17:36 2012 Aaron Patterson <aaron@tenderlovemaking.com> 11311 11312 * ext/psych/lib/psych/scalar_scanner.rb: Cache symbols while 11313 tokenizing. Thanks Kevin Menard! 11314 11315Tue Oct 23 06:15:40 2012 Aaron Patterson <aaron@tenderlovemaking.com> 11316 11317 * ext/psych/lib/psych/scalar_scanner.rb: Updated the RegExp to catch 11318 Strings earlier in the tokenization process. Thanks Kevin Menard! 11319 11320Tue Oct 23 06:12:39 2012 Aaron Patterson <aaron@tenderlovemaking.com> 11321 11322 * ext/psych/lib/psych/visitors/to_ruby.rb: Handle nil tags specially 11323 to avoid slow method_missing calls. Thanks Kevin Menard! 11324 11325Tue Oct 23 06:07:57 2012 Aaron Patterson <aaron@tenderlovemaking.com> 11326 11327 * ext/psych/lib/psych/scalar_scanner.rb: Ignore bad timestamps. If 11328 something looks like a timestamp but has an invalid component, treat 11329 it as a string instead of throwing an ArgumentError. 11330 Thanks Rhett Sutphin! 11331 11332 * test/psych/test_scalar_scanner.rb: appropriate tests. 11333 11334Tue Oct 23 06:04:07 2012 Aaron Patterson <aaron@tenderlovemaking.com> 11335 11336 * ext/psych/lib/psych/scalar_scanner.rb: Fix scalar_scanner to 11337 understand strings starting with an underscore and containing only 11338 digits. Thanks Kelley Reynolds. 11339 11340 * test/psych/test_scalar_scanner.rb: test for fix 11341 11342Tue Oct 23 06:00:41 2012 Aaron Patterson <aaron@tenderlovemaking.com> 11343 11344 * ext/psych/lib/psych.rb: Changed comment in psych.rb to update new 11345 home page for libyaml. Thanks to Carolyn Ann. 11346 11347Sun Oct 21 19:12:59 2012 Kazuki Tsujimoto <kazuki@callcc.net> 11348 11349 * vm_core.h (rb_vm_t::trace_running): add a new field 11350 `trace_running' to store vm global tracing status. 11351 11352 * vm_trace.c: fix SEGV bug. event_hook was free'd 11353 even when the hook is still used in another thread. 11354 [ruby-dev:46141] [Bug #7032] 11355 11356Sun Oct 21 19:12:42 2012 Kazuki Tsujimoto <kazuki@callcc.net> 11357 11358 * vm_core.h (rb_vm_t::trace_flag): remove `trace_flag' 11359 which is no longer used. 11360 11361Sun Oct 21 18:34:27 2012 Tadayoshi Funaba <tadf@dotrb.org> 11362 11363 * ext/date/date_parse.c (date__parse): uses more tight parser if 11364 defined TIGHT_PARSER. now inactivated; because it introduces 11365 incompatibilities and it is a bit slow. 11366 11367Sat Oct 20 15:35:06 2012 Narihiro Nakamura <authornari@gmail.com> 11368 11369 * include/ruby/ruby.h: add C APIs. 11370 VALUE rb_newobj_of(VALUE klass, VALUE flags) 11371 #define NEWOBJ_OF(obj,type,klass,flags) 11372 These allow to change a allocation strategy depending on klass 11373 or flags. 11374 11375 * gc.c: ditto 11376 11377 * array.c: use new C API. 11378 * bignum.c: ditto 11379 * class.c: ditto 11380 * complex.c: ditto 11381 * ext/socket/ancdata.c: ditto 11382 * ext/socket/option.c: ditto 11383 * hash.c: ditto 11384 * io.c: ditto 11385 * marshal.c: ditto 11386 * numeric.c: ditto 11387 * object.c: ditto 11388 * random.c: ditto 11389 * range.c: ditto 11390 * rational.c: ditto 11391 * re.c: ditto 11392 * string.c: ditto 11393 * struct.c: ditto 11394 [Feature #7177][Feature #7047] 11395 11396Sat Oct 20 12:50:00 2012 Zachary Scott <zachary@zacharyscott.net> 11397 11398 * ext/socket/socket.c: Documentation for Socket 11399 Based on a patch by David Albert 11400 [Bug #7105] [ruby-core:47828] 11401 11402Sat Oct 20 11:00:00 2012 Zachary Scott <zachary@zacharyscott.net> 11403 11404 * lib/open-uri.rb: Documentation for OpenURI 11405 11406Sat Oct 20 06:18:34 2012 Aaron Patterson <aaron@tenderlovemaking.com> 11407 11408 * hash.c (initialize_copy): unset the default proc if there isn't one 11409 for the target hash, call to_hash, check frozen status. 11410 11411Fri Oct 19 22:22:01 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11412 11413 * vm.c (rb_vm_jump_tag_but_local_jump): pass through thrown objects. 11414 [ruby-dev:46234] [Bug #7185] 11415 11416 * vm_eval.c (rb_eval_cmd): if state is non-zero, val should be nil and 11417 rb_vm_jump_tag_but_local_jump() just jump tag. 11418 11419Fri Oct 19 22:11:55 2012 Benoit Daloze <eregontp@gmail.com> 11420 11421 * pack.c (pack_unpack): set encoding of the 11422 'H','h','B' and 'B' modifiers to US-ASCII. 11423 11424 * test/ruby/test_pack.rb: tests for the above. 11425 [ruby-core:47653][Bug #7050] 11426 11427 * test/test_securerandom.rb: tests for SecureRandom.hex 11428 from tenderlove. [ruby-core:46792][Bug #6799] 11429 11430Fri Oct 19 19:29:11 2012 Koichi Sasada <ko1@atdot.net> 11431 11432 * method.h (rb_method_cfunc_t::invoker): add new field (func ptr) 11433 `invoker'. `invoker' function invoke cfunc body 11434 (rb_method_cfunc_t::func). 11435 `invoker' is set at method definition timing. 11436 With this change, the big `switch' (branch) in `call_cfunc()' 11437 is no longer needed. 11438 However, the performance benefit is only a bit. 11439 11440 * vm_core.h (rb_call_info_t::aux::func): add a new field to store 11441 cfunc body function pointer. 11442 11443 * vm_method.c (call_cfunc_invoker_func): add a new function which 11444 returns a suitable invoke function. 11445 11446 * vm_method.c (setup_method_cfunc_struct): added. 11447 11448 * vm_method.c (rb_add_method): fix to set `invoker'. 11449 11450 * vm_eval.c (vm_call0_body): catch up above changes. 11451 11452 * vm_insnhelper.c (call_cfunc): removed. 11453 11454 * vm_insnhelper.c (vm_call_cfunc): fix to call cfunc body 11455 with `invoker' function. 11456 11457Fri Oct 19 16:55:58 2012 Koichi Sasada <ko1@atdot.net> 11458 11459 * eval.c, vm_eval.c: use TH_PUSH_TAG() instead of PUSH_TAG(). 11460 11461Fri Oct 19 11:13:55 2012 Koichi Sasada <ko1@atdot.net> 11462 11463 * benchmark/driver.rb: remove unexpected `output'. 11464 (commit miss) 11465 11466Fri Oct 19 10:24:03 2012 Koichi Sasada <ko1@atdot.net> 11467 11468 * vm_insnhelper.c (vm_search_method): remove needless local variable. 11469 11470Fri Oct 19 10:22:26 2012 Koichi Sasada <ko1@atdot.net> 11471 11472 * benchmark/bmx_temp.rb: removed. 11473 This file should not be in repository. 11474 11475Fri Oct 19 10:20:10 2012 Koichi Sasada <ko1@atdot.net> 11476 11477 * benchmark/driver.rb: add new option `--ruby-arg [ARG]' 11478 which is passed as a launch parameter for each ruby's execution. 11479 ($ ruby [ARG] [File]) 11480 11481Thu Oct 18 18:42:35 2012 Koichi Sasada <ko1@atdot.net> 11482 11483 * insns.def (opt_send_simple): move the location of 11484 `opt_send_simple' to the place near `send' definition. 11485 (to take care about icache locality). 11486 11487Thu Oct 18 18:29:25 2012 Koichi Sasada <ko1@atdot.net> 11488 11489 * insns.def (send): remove unused condition. 11490 This condition will be true after r37258. 11491 11492 * vm_insnhelper.c (vm_caller_setup_args): remove `UNLIKELY' on 11493 checking blockiseq (it seems `LIKELY'). 11494 11495Thu Oct 18 17:31:58 2012 Koichi Sasada <ko1@atdot.net> 11496 11497 * insns.def (opt_send_simple): introduce new instruction used 11498 when no need to care about block and splat. 11499 11500 * compile.c: use the `opt_send_simple' instruction. 11501 11502Thu Oct 18 16:44:07 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11503 11504 * vm_method.c (rb_add_method_cfunc, rb_add_method_cfunc_frameless): 11505 check arity earlier at definition time. 11506 11507Thu Oct 18 15:11:31 2012 Koichi Sasada <ko1@atdot.net> 11508 11509 * vm_insnhelper.c: add `inline' keyword to several functions. 11510 Compilers (gcc) are conservative than I expected. 11511 11512Thu Oct 18 15:01:15 2012 Koichi Sasada <ko1@atdot.net> 11513 11514 * include/ruby/ruby.h: add a decl. of 11515 `rb_define_frameless_method()'. 11516 11517Thu Oct 18 14:31:17 2012 Koichi Sasada <ko1@atdot.net> 11518 11519 * compile.c (new_callinfo): set a temporary index of callinfo 11520 (used in `iseq_set_sequence()') to rb_call_info_t::aux::index. 11521 rb_call_info_t::argc is initialized by same value of 11522 rb_call_info_t::orig_argc. 11523 11524Thu Oct 18 14:11:08 2012 Koichi Sasada <ko1@atdot.net> 11525 11526 * class.c (rb_define_frameless_method): rename from 11527 rb_define_method_fast(). Defined method with this C API 11528 does not make a method frame. It is bit lightweight than 11529 ordinal C functions. Now only 0 or 1 argc are permitted. 11530 11531 * method.h (VM_METHOD_TYPE_CFUNC_FRAMELESS): rename macro name 11532 from VM_METHOD_TYPE_CFUNC_FAST. 11533 11534 * vm_insnhelper.c, vm_method.c: rename related functions. 11535 11536 * proc.c (rb_method_entry_arity): catch up above changes. 11537 11538Thu Oct 18 10:30:34 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11539 11540 * parse.y (assignable_gen): fail if yyerror occurred. fix a bug in 11541 r36973. 11542 11543Thu Oct 18 09:23:03 2012 Aaron Patterson <aaron@tenderlovemaking.com> 11544 11545 * hash.c (initialize_copy): duping should rehash the hash. 11546 11547 * test/ruby/test_hash.rb: added a test to ensure rehash. 11548 11549Wed Oct 17 21:16:47 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 11550 11551 * common.mk (WPROGRAM): need same dependencies as PROGRAM. 11552 11553 * cygwin/GNUmakefile.in (uncommon.mk): move include position 11554 below WPROGRAM definition to be defined in uncommon.mk. 11555 11556 * ext/extmk.rb (all, static): fix make rubyw.exe failure with make -jN. 11557 If make of ruby.exe and rubyw.exe run in parallel, link dll and link 11558 exe run in parallel, which causes link failure on mingw. To fix this, 11559 we make ruby.exe and rubyw.exe in one make process. 11560 [ruby-core:48007] [Bug #7165] 11561 11562Wed Oct 17 16:25:34 2012 Koichi Sasada <ko1@atdot.net> 11563 11564 * benchmark/bm_vm2_method_missing.rb: add a benchmark to measure 11565 performance of invoking `method_missing'. 11566 11567Wed Oct 17 16:23:17 2012 Koichi Sasada <ko1@atdot.net> 11568 11569 * vm_insnhelper.c (vm_getivar): fix to use `aux.index' instead of 11570 `aux.opt_pc'. 11571 11572Wed Oct 17 16:03:54 2012 Koichi Sasada <ko1@atdot.net> 11573 11574 * vm_insnhelper.c (vm_call_method_missing): make a refactoring 11575 about method_missing process. Use `vm_call_method()' to invoke 11576 `method_missing' method instead of `rb_funcall2()'. 11577 In `vm_call_method()', set fastpath to `vm_call_method_missing()' 11578 if it can be cached. 11579 11580 * vm_core.h (rb_call_info_t): add new field 11581 `rb_call_info_t::aux::missing_reason' to pass the reason to 11582 `vm_call_method_missing()'. 11583 11584Wed Oct 17 15:33:12 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11585 11586 * configure.in (opt-dir): allow multiple directories separated by 11587 $PATH_SEPARATOR as well as dir_config in mkmf.rb. [ruby-core:47868] 11588 [Bug #7120] 11589 11590Wed Oct 17 15:08:13 2012 Shugo Maeda <shugo@ruby-lang.org> 11591 11592 * lib/net/imap.rb: fix Net::IMAP::ResponseParser to accept 11593 message/delivery-status ([ruby-core:47920] [Bug #7146]), 11594 message/rfc822 attachments ([ruby-core:47921] [Bug #7147]), and 11595 (BODY ("MIXED")) ([ruby-core:47951] [Bug #7153]). 11596 patched by Tony Arkles. 11597 11598 * test/net/imap/test_imap_response_parser.rb: related test. 11599 11600Wed Oct 17 11:04:48 2012 NAKAMURA Usaku <usa@ruby-lang.org> 11601 11602 * test/ruby/test_hash.rb (TestHash#test_dup_equality): added a new test 11603 to show the problem of r37232. 11604 11605Wed Oct 17 10:48:40 2012 Shugo Maeda <shugo@ruby-lang.org> 11606 11607 * vm_insnhelper.c (vm_search_method): fix a build error that occurs 11608 when OPT_INLINE_METHOD_CACHE is 0. 11609 11610Wed Oct 17 08:46:47 2012 Koichi Sasada <ko1@atdot.net> 11611 11612 * benchmark/bm_vm2_dstr.rb: add a benchmark to measure 11613 performance of dynamic generated string ("foo#{bar}baz"). 11614 11615Wed Oct 17 08:32:46 2012 Koichi Sasada <ko1@atdot.net> 11616 11617 * compile.c (compile_dstr_fragments): use `putobject' instead of 11618 `putstring' for all of strings used by NODE_DSTR because 11619 ruby users can not grab this string. 11620 For example, the string object of "baz" in "foo#{bar}baz" 11621 is located by `putobject' (users can not touch "baz" object 11622 directly). This change reduces GC pressure. 11623 This improvement is suggested by Aaron Patterson. 11624 11625Wed Oct 17 08:02:57 2012 Koichi Sasada <ko1@atdot.net> 11626 11627 * thread.c (rb_threadptr_interrupt_mask): fix to check interrupt 11628 after interrupt_mask changed. 11629 11630Wed Oct 17 06:42:47 2012 Koichi Sasada <ko1@atdot.net> 11631 11632 * vm_insnhelper.c (vm_call_method): fix to return value immediately. 11633 Remove CHECK_INTS() after that method dispatch. 11634 11635Wed Oct 17 06:25:56 2012 Aaron Patterson <aaron@tenderlovemaking.com> 11636 11637 * hash.c (initialize_copy): copy the underlying st_table on dup, 11638 rather than copying the hash key by key. [ruby-core:48009] 11639 11640 * test/ruby/test_hash.rb: relevant tests for initialize_copy 11641 11642Wed Oct 17 06:17:44 2012 Koichi Sasada <ko1@atdot.net> 11643 11644 * vm_insnhelper.c (vm_call_iseq_setup_2): separate tailcall and normal 11645 method frame setup functions. 11646 Add checking interrupts at the tailcall setup function. 11647 11648Wed Oct 17 05:35:37 2012 Koichi Sasada <ko1@atdot.net> 11649 11650 * benchmark/bm_vm1_yield.rb: add a benchmark to measure `yield' 11651 (invoke empty block) performance. 11652 11653 * benchmark/bm_vm2_method_with_block.rb: add a benchmark to measure 11654 method invocation with empty block. 11655 11656Wed Oct 17 05:05:07 2012 Koichi Sasada <ko1@atdot.net> 11657 11658 * vm_insnhelper.c (vm_invoke_block): vm_caller_setup_args() can skip 11659 when splat flag is not set. 11660 11661Wed Oct 17 01:53:47 2012 Koichi Sasada <ko1@atdot.net> 11662 11663 * vm_insnhelper.c (vm_getivar, vm_setivar): support index inline cache 11664 with rb_call_info_t to speedup `attr' getter and setter. 11665 Cached index is stored in rb_call_info_t::aux::index. 11666 `index' == 0 means not cached. `index' > 0 means cached and cached 11667 index is `index - 1'. 11668 11669 * insns.def ((get|set)instancevariable): use new wrapper functions 11670 vm_(get|set)instancevariable() defined in vm_insnhelper.c. 11671 11672 * vm_core.h (rb_call_info_t::aux): introduce new union data because 11673 opt_pc can share with index. 11674 11675Tue Oct 16 22:24:44 2012 Koichi Sasada <ko1@atdot.net> 11676 11677 * benchmark/driver.rb (show_results): Show speedup ratio 11678 with first executables score at last of results 11679 if two or more executables are given. 11680 11681Tue Oct 16 21:59:01 2012 Koichi Sasada <ko1@atdot.net> 11682 11683 * benchmark/driver.rb: some refactoring. 11684 (1) Remove `average differential'. 11685 In this benchmark driver, We should not care about `average'. 11686 We use fastest score because this score should not include 11687 any disturbances (affections of background process, etc). 11688 If you care about timing affect, I recommend `median' 11689 score with more than 5 examinations rather than simple 11690 `average' score (`average' score was affected by error scores). 11691 (2) Show log file name. 11692 (3) Change default directory from './' to driver's directory. 11693 11694Tue Oct 16 14:56:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11695 11696 * file.c (rb_file_join): need to check again after any conversion run. 11697 [ruby-core:48012] [Bug #7168] 11698 11699Tue Oct 16 12:52:14 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 11700 11701 * test/ruby/envutil.rb (Test::Unit::Assertions#assert_file): 11702 rename from file_assertion. 11703 11704Tue Oct 16 11:30:18 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11705 11706 * file.c (rb_file_join): hide the result under construction until 11707 return. 11708 11709 * file.c (rb_file_join): check nul-byte only for strings, since 11710 FilePathStringValue() does it. [ruby-core:48012] [Bug #7168] 11711 11712 * file.c (rb_file_join): path names must be ASCII-compatible. 11713 [ruby-core:48012] [Bug #7168] 11714 11715 * file.c (check_path_encoding): new function to ensure path name 11716 encoding to be ASCII-compatible. 11717 11718Tue Oct 16 09:40:04 2012 NAKAMURA Usaku <usa@ruby-lang.org> 11719 11720 * test/ruby/test_regexp.rb 11721 (TextRegexp#test_raw_hyphen_and_tk_char_type_after_range): use 11722 Regexp.new instead of literal to ignore a parser warning. 11723 11724Tue Oct 16 09:30:30 2012 NAKAMURA Usaku <usa@ruby-lang.org> 11725 11726 * test/ruby/test_regexp.rb 11727 (TextRegexp#test_raw_hyphen_and_tk_char_type_after_range): ignoring 11728 warnings are already set in setup method. 11729 11730Tue Oct 16 06:44:06 2012 Koichi Sasada <ko1@atdot.net> 11731 11732 * vm_insnhelper.c (VM_CALLEE_SETUP_ARG): fix wrong condition. 11733 11734Tue Oct 16 06:29:18 2012 Koichi Sasada <ko1@atdot.net> 11735 11736 * vm_insnhelper.c (vm_call_method): disable CI_SET_FASTPATH() if 11737 this method call needs splat argument because cached functions 11738 (vm_call_attrset, vm_call_ivar, vm_call_cfunc_fast_(unary|binary)) 11739 do not check an arity. 11740 11741 * bootstraptest/test_method.rb: add a test to check an above issue. 11742 11743Tue Oct 16 06:15:44 2012 Koichi Sasada <ko1@atdot.net> 11744 11745 * method.h: introduce new method type VM_METHOD_TYPE_CFUNC_FAST. 11746 This method is similar to VM_METHOD_TYPE_CFUNC methods, but 11747 called cfunc without building new frame (does not push new control 11748 frame). If error is occurred in cfunc, the backtrace only shows 11749 caller frame and upper. 11750 This kind of methods can be added by rb_define_method_fast(). 11751 This feature is similar to specialized instructions (opt_plus, etc), 11752 but more flexible (but a bit slower). 11753 11754 * class.c (rb_define_method_fast): added. 11755 Maybe it will be renamed soon. 11756 11757 * vm_insnhelper.c (vm_call_method): support method type 11758 VM_METHOD_TYPE_CFUNC_FAST. 11759 11760 * proc.c (rb_method_entry_arity): catch up new method type. 11761 11762 * vm_method.c (rb_add_method_cfunc_fast): added. 11763 11764Tue Oct 16 02:32:29 2012 Koichi Sasada <ko1@atdot.net> 11765 11766 * vm_insnhelper.h (CI_SET_FASTPATH): add new parameter `enabled'. 11767 If `enable' is 0 then CI_SET_FASTPATH() doesn't work. 11768 And add new configuration option OPT_CALL_FASTPATH. If this macro 11769 was defined by 0, then CI_SET_FASTPATH() doesn't work any more. 11770 11771 * vm_insnhelper.c (vm_call_method): Pass `0' for `enabled' parameter 11772 of CI_SET_FASTPATH if this method is protected. 11773 11774Tue Oct 16 02:17:35 2012 Koichi Sasada <ko1@atdot.net> 11775 11776 * vm_core.h (VM_CALL_*): rename VM_CALL_*_BIT 11777 to VM_CALL_* (remove `_BIT' suffix). 11778 Add comments on each macros. 11779 Remove unused macro VM_CALL_TAILRECURSION_BIT. 11780 11781 * compile.c, iseq.c, insns.def, vm_insnhelper.c: ditto. 11782 11783Mon Oct 15 22:14:44 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11784 11785 * test/ruby/envutil.rb (Test::Unit::Assertions#file_assertion): 11786 rewrite file assertions. 11787 11788Mon Oct 15 09:41:17 2012 Koichi Sasada <ko1@atdot.net> 11789 11790 * vm_insnhelper.c (VM_CALLEE_SETUP_ARG): skip CI_SET_FASTPATH() if 11791 it was called from vm_yield_setup_args(). 11792 11793Mon Oct 15 05:20:13 2012 Koichi Sasada <ko1@atdot.net> 11794 11795 * vm_insnhelper.h CI_SET_FASTPATH: introduce new macro 11796 `CI_SET_FASTPATH(ci, func)'. This macro set `ci->call' as `func'. 11797 `func' (ci->call) is called at the last of `send' 11798 (and `invokesuper') instruction. 11799 `CI_SET_FASTPATH' does not set `ci->call' when the method 11800 (stored in `ci->me') is `protected'. 11801 11802 * vm_insnhelper.c (vm_call_method): use `CI_SET_FASTPATH'. 11803 After several checking (visibility, argc checking), the result of 11804 checking can be reused until re-definition of this method 11805 with inline method cache. 11806 11807 Note that this optimization is now experimental. 11808 If you find any problem about it, please tell us. 11809 11810Mon Oct 15 04:51:55 2012 Koichi Sasada <ko1@atdot.net> 11811 11812 * vm_insnhelper.c: refactoring. 11813 - move all `call' related functions to the last of file. 11814 - make functions for respective method types in vm_call_method(). 11815 (all functions have same function parameters) 11816 11817 * vm_core.h: add `opt_pc' field in `rb_call_info_t' 11818 as temporal variable. 11819 11820 * vm_eval.c (vm_call0_body): catch up above changes. 11821 11822Mon Oct 15 03:51:46 2012 Koichi Sasada <ko1@atdot.net> 11823 11824 * benchmark/bm_vm1_attr_ivar(_set).rb: added (for method dispatch speed). 11825 11826 * benchmark/bm_vm1_float_simple.rb: added (for flonum/float). 11827 11828Mon Oct 15 02:51:16 2012 Koichi Sasada <ko1@atdot.net> 11829 11830 * vm_eval.c (vm_call0_body): add new function. 11831 `vm_call0()' makes call_info struct and calls `vm_call0_body()' 11832 with this struct. In near future, `vm_call0()' will be removed 11833 because all of `vm_call0()' users setup call_info struct by itself. 11834 11835Mon Oct 15 01:38:06 2012 Koichi Sasada <ko1@atdot.net> 11836 11837 * insns.def (send, invokesuper, invokeblock, opt_*), vm_core.h: 11838 use only a `ci' (rb_call_info_t) parameter instead of using 11839 parameters such as `op_id', 'op_argc', `blockiseq' and flag. 11840 These information are stored in rb_call_info_t at the compile 11841 time. 11842 This technique simplifies parameter passing at related 11843 function calls (~10% speedups for simple method invocation at 11844 my machine). 11845 `rb_call_info_t' also has new function pointer variable `call'. 11846 This `call' variable enables to customize method (block) 11847 invocation process for each place. However, it always call 11848 `vm_call_general()' at this changes. 11849 `rb_call_info_t' also has temporary variables for method 11850 (block) invocation. 11851 11852 * vm_core.h, compile.c, insns.def: introduce VM_CALL_ARGS_SKIP_SETUP 11853 VM_CALL macro. This flag indicates that this call can skip 11854 caller_setup (block arg and splat arg). 11855 11856 * compile.c: catch up above changes. 11857 11858 * iseq.c: catch up above changes (especially for TS_CALLINFO). 11859 11860 * tool/instruction.rb: catch up above changes. 11861 11862 * vm_insnhelper.c, vm_insnhelper.h: ditto. Macros and functions 11863 parameters are changed. 11864 11865 * vm_eval.c (vm_call0): ditto (it will be rewritten soon). 11866 11867Sun Oct 14 12:30:44 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11868 11869 * ruby.c (rb_f_sub, rb_f_gsub): pass the given block. 11870 [ruby-core:47967] [Bug #7157] 11871 11872Sat Oct 13 23:15:39 2012 NAKAMURA Usaku <usa@ruby-lang.org> 11873 11874 * regparse.c (parse_char_class): should match with a hyphen after a 11875 range in a character class. 11876 11877 * test/ruby/test_regexp.rb (TestRegexp#test_char_class): fixed wrong 11878 test. 11879 11880 * test/ruby/test_regexp.rb (TestRegexp#check): now can accept the 11881 error message. 11882 11883 * test/ruby/test_regexp.rb 11884 (TextRegexp#test_raw_hyphen_and_tk_char_type_after_range): renamed 11885 because the previous name was wrong. 11886 11887 * test/ruby/test_regexp.rb 11888 (TextRegexp#test_raw_hyphen_and_tk_char_type_after_range): added 11889 more test pattern. 11890 11891Sat Oct 13 03:01:53 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11892 11893 * file.c (realpath_rec): prevent link from GC while link_names refers 11894 the content. 11895 11896Sat Oct 13 01:37:48 2012 NAKAMURA Usaku <usa@ruby-lang.org> 11897 11898 * test/ruby/test_regexp.rb 11899 (TestRegexp#test_raw_hyphen_and_type_char_after_range): added new 11900 test. ref [ruby-core:47115] [Backport #6853] 11901 11902Fri Oct 12 21:55:08 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 11903 11904 * include/ruby/win32.h (rb_w32_pow): set floating point precision 11905 for mingw-w64 x86 pow(). This improves the precision of pow() on 11906 Windows XP for TestFloat#test_round_with_precision failure. 11907 [ruby-core:47911] [Bug #7142] 11908 11909Fri Oct 12 21:37:25 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 11910 11911 * test/webrick/test_cgi.rb (TestWEBrickCGI#test_cgi): skip a test 11912 depending on locale on Windows. ENV[] doesn't work properly if 11913 console code page is not equal to file system encoding. 11914 [ruby-core:47910] [Bug #7140] 11915 11916Fri Oct 12 20:40:29 2012 Tanaka Akira <akr@fsij.org> 11917 11918 * process.c (posix_sh_cmds): the command name of colon is ":". 11919 11920Fri Oct 12 18:18:03 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11921 11922 * file.c (rb_get_path_check): path name must not contain NUL bytes. 11923 11924Fri Oct 12 16:06:20 2012 NAKAMURA Usaku <usa@ruby-lang.org> 11925 11926 * tool/merger.rb: now can merge revision(s) without --ticket again. 11927 11928Fri Oct 12 14:10:41 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11929 11930 * lib/mkmf.rb (dir_config, init_mkmf): use configured libdir value as 11931 default library path. [ruby-core:43726] [Bug #6207] 11932 11933Fri Oct 12 05:25:00 2012 Zachary Scott <zzak@ruby-lang.org> 11934 11935 * lib/timeout.rb (timeout): 11936 Remove paragraph on wrong implementation detail. 11937 [ruby-core:47739] [Bug #7088] 11938 11939Thu Oct 11 23:09:46 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11940 11941 * string.c (rb_str_sub{seq,pos,str}, rb_str_each_{line,codepoint}): 11942 prevent String copies from GC. [ruby-core:47881] [Bug #7135] 11943 11944Thu Oct 11 07:40:50 2012 NARUSE, Yui <naruse@ruby-lang.org> 11945 11946 * iseq.c (insn_operand_intern): cast op to rb_call_info_t* before 11947 compare with iseq->callinfo_entries whose type is rb_call_info_t*. 11948 11949Thu Oct 11 03:37:08 2012 Koichi Sasada <ko1@atdot.net> 11950 11951 * bootstraptest/test_block.rb: add tests for block with super. 11952 11953Thu Oct 11 02:54:07 2012 Koichi Sasada <ko1@atdot.net> 11954 11955 * vm_dump.c: fix debug prints to catch up recent changes 11956 such as VM data structures. 11957 11958Thu Oct 11 02:50:34 2012 Koichi Sasada <ko1@atdot.net> 11959 11960 * iseq.c (insn_operand_intern): add support disasm TS_CALLINFO 11961 operands. 11962 11963Wed Oct 10 15:12:48 2012 NAKAMURA Usaku <usa@ruby-lang.org> 11964 11965 * test/ruby/test_process.rb (TestProcess#test_execopts_gid): skip on 11966 windows because the platform does not have Process.group method. 11967 patched by Jon Forums in [ruby-core:47878] [Bug #7133]. 11968 11969Tue Oct 9 23:18:03 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11970 11971 * test/ruby/envutil.rb (assert_file, assert_file_not): more 11972 descriptive assertions for File predicates. 11973 11974Tue Oct 9 18:01:37 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11975 11976 * array.c (rb_ary_sample): use rb_random_ulong_limited, since 11977 precision of long may be larger than double. 11978 11979 * random.c (rb_random_ulong_limited): new function to return a random 11980 value from 0 upto limit as unsigned long, similarly to 11981 rb_genrand_ulong_limited but with arbitrary RNG object. 11982 11983Tue Oct 9 17:13:27 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 11984 11985 * process.c (rb_execarg_addopt, rb_execarg_run_options): add :uid and 11986 :gid options. [ruby-core:47414] [Feature #6975] 11987 11988Tue Oct 9 14:36:11 2012 Koichi Sasada <ko1@atdot.net> 11989 11990 * iseq.c (iseq_free): fix memory leak. 11991 rb_iseq_t::callinfo_entries should be freed. 11992 11993Tue Oct 9 14:28:18 2012 Koichi Sasada <ko1@atdot.net> 11994 11995 * vm_core.h (rb_call_info_t): add new type `rb_call_info_t'. 11996 This data structure contains information including inline method 11997 cache. After that, `struct iseq_inline_cache_entry' does not 11998 need to contain inline cache for method invocation. 11999 Other information will be added to this data structure. 12000 12001 * vm_core.h (rb_iseq_t): add `callinfo_entries' and `callinfo_size' 12002 members to `rb_iseq_t'. 12003 12004 * insns.def, compile.c: Use CALL_INFO instead of IC. 12005 12006 * tool/instruction.rb: support CALL_INFO as operand type. 12007 12008 * vm_insnhelper.c, vm_insnhelper.h: ditto. 12009 12010Sun Oct 7 23:54:33 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 12011 12012 * ext/zlib/zlib.c (zstream_run_func): don't call inflate() when 12013 z->stream.avail_in == 0. it return Z_BUF_ERROR. 12014 but deflate() could be called with z->stream->avail_in == 0 because 12015 it has hidden buffer in z->stream->state (opaque structure). 12016 fix for gem install error. [ruby-dev:46149] [Bug #7040] 12017 12018Mon Oct 8 23:55:41 2012 Shugo Maeda <shugo@ruby-lang.org> 12019 12020 * eval.c (rb_mod_refinements): new method Module#refinements. 12021 12022 * test/ruby/test_refinement.rb: add new tests for the above changes. 12023 12024Mon Oct 8 23:02:19 2012 Shugo Maeda <shugo@ruby-lang.org> 12025 12026 * eval.c, gc.c, iseq.c, node.h, vm_insnhelper.c, vm_insnhelper.h, 12027 vm_method.c: rename omod and overlaid modules to refinements. 12028 12029 * eval.c (hidden_identity_hash_new): renamed from identity_hash_new. 12030 12031Sun Oct 7 04:50:00 2012 Zachary Scott <zzak@ruby-lang.org> 12032 12033 * lib/abbrev.rb: Documentation examples for Abbrev. 12034 [ruby-core:47442] [Bug #6985] 12035 12036Sun Oct 7 04:50:00 2012 Zachary Scott <zzak@ruby-lang.org> 12037 12038 * thread.c (rb_thread_aref): 12039 Grammar in Thread documentation. 12040 Patch by Steve Klabnik [ruby-core:47799] [Bug #7099] 12041 12042Sun Oct 7 04:37:00 2012 Zachary Scott <zzak@ruby-lang.org> 12043 12044 * string.c (rb_str_match): 12045 Clarify behavior for captured strings and local variable assignment 12046 Patch by Marcus Stollsteimer [ruby-core:47668] [Bug #7062] 12047 12048Sat Oct 6 18:31:36 2012 Shugo Maeda <shugo@ruby-lang.org> 12049 12050 * vm_opts.h (OPT_GLOBAL_METHOD_CACHE): new build option to 12051 enable/disable global method caching. [ruby-dev:46203] [Bug #7111] 12052 12053 * vm_method.c (rb_method_entry_get_with_omod): don't use global 12054 method cache if OPT_GLOBAL_METHOD_CACHE is 0. 12055 12056Sat Oct 6 16:32:04 2012 Shugo Maeda <shugo@ruby-lang.org> 12057 12058 * vm_method.c (search_method): check omod only once for performance. 12059 12060Sat Oct 6 09:42:04 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12061 12062 * enc/encdb.c, enc/utf_16_32.h (ENC_DUMMY_UNICODE): endian-less wide 12063 UTF encodings are dummy but Unicode. 12064 12065 * encoding.c (rb_encdb_set_unicode): set Unicode flag. 12066 12067 * template/encdb.h.tmpl: allow ENC_DUMMY variants. 12068 12069 * encoding.c (rb_enc_unicode_p): oniguruma provides Unicode flag. 12070 12071Fri Oct 5 17:18:42 JST 2012 TAKANO Mitsuhiro <tak@no32.tk> 12072 12073 * template/Doxyfile.tmpl: remove SHOW_DIRECTORIES and 12074 HTML_ALIGN_MEMBERS lines. They have been obsolete in 12075 Doxygen version 1.8.2. 12076 12077Fri Oct 5 15:26:18 2012 Koichi Sasada <ko1@atdot.net> 12078 12079 * ext/objspace/objspace.c: add ObjectSpace#reachable_objects_from. 12080 This method returns an array of objects referenced by given object. 12081 If given object is special objects such as true/false/nil/Fixnum etc 12082 then it returns nil. See rdoc for details. 12083 [ruby-core:39772] 12084 12085 * test/objspace/test_objspace.rb: add a test for this method. 12086 12087 * gc.c: add rb_objspace_reachable_objects_from(). 12088 To make this function, add several member `mark_func_data' 12089 to rb_objspace_t. If mark_func_data is not null, then 12090 gc_mark() calls mark_func_data::mark_func. 12091 12092 * gc.h: export rb_objspace_reachable_objects_from(). 12093 12094Thu Oct 4 23:40:04 2012 Narihiro Nakamura <authornari@gmail.com> 12095 12096 * gc.c (init_heap): call init_mark_stack before to allocate 12097 altstack. This change avoid the stack overflow at the signal 12098 handler on 32bit, but I don't understand reason... [Feature #7095] 12099 12100Thu Oct 4 22:39:27 2012 Koichi Sasada <ko1@atdot.net> 12101 12102 * insns.def (getlocal, setlocal): remove old getlocal/setlocal 12103 instructions and rename getdaynmic/setdynamic instructions 12104 to getlocal/setlocal. 12105 12106 * compile.c: ditto. 12107 12108 * iseq.c: remove TS_DINDEX. 12109 12110 * vm_exec.h (dindex_t): remove type definition of `dindex_t'. 12111 12112 * tool/instruction.rb: ditto. 12113 12114Thu Oct 4 21:44:17 2012 Koichi Sasada <ko1@atdot.net> 12115 12116 * vm.c (vm_analysis_insn|operand|register): use st_insert 12117 instead of using rb_hash_aset() because rb_hash_aset() 12118 check $SAFE. 12119 12120Thu Oct 4 21:15:26 2012 Koichi Sasada <ko1@atdot.net> 12121 12122 * vm.c (VM_COLLECT_USAGE_DETAILS): make new VM usage analysis 12123 hooks (old macro name is COLLECT_USAGE_ANALYSIS). 12124 This feature is only for VM developers. (I'm not sure I can use 12125 `VM developers' (the plural form) in this sentence). 12126 If VM_COLLECT_USAGE_DETAILS is not 0, VM enables the following 12127 usage collection features: 12128 (1) instruction: collect instruction usages. 12129 (2) operand: collect operand usages. 12130 (3) register: collect register usages. 12131 The results are stored in 12132 RubyVM::USAGE_ANALYSIS_INSN for (1, 2), 12133 RubyVM::USAGE_ANALYSIS_INSN_BIGRAM for (1) and 12134 RubyVM::USAGE_ANALYSIS_REGS for (3). 12135 You can stop collecting usages with 12136 RubyVM::USAGE_ANALYSIS_INSN_STOP(), 12137 RubyVM::USAGE_ANALYSIS_OPERAND_STOP(), 12138 RubyVM::USAGE_ANALYSIS_REGISTER_STOP() 12139 for (1), (2), (3) respectively. 12140 You can also change the hook functions by setting 12141 C level global variables 12142 `ruby_vm_collect_usage_func_(insn|operand|register)' 12143 for (1), (2), (3) respectively. 12144 See codes for more details. 12145 12146 * tool/instruction.rb: fix macro names. 12147 12148 * iseq.c (insn_operand_intern): make it export (used in vm.c). 12149 fix to skip several processes if not needed (pointer is 0). 12150 12151 * vm_dump.c: move codes for collection features to vm.c. 12152 12153 * vm_exec.h: rename macro and function names. 12154 12155 * vm_insnhelper.h: ditto. 12156 12157Thu Oct 4 18:59:14 2012 Koichi Sasada <ko1@atdot.net> 12158 12159 * test/ruby/test_settracefunc.rb (test_tracepoint): 12160 remove unused test case. 12161 (this test case is redefined by newer tests) 12162 12163Thu Oct 4 17:24:51 2012 Narihiro Nakamura <authornari@gmail.com> 12164 12165 * gc.c (rb_objspace_call_finalizer): call gc_mark_stacked_objects 12166 at suitable point. 12167 12168Thu Oct 4 16:31:29 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12169 12170 * gc.c (rb_objspace_call_finalizer): mark self-referencing finalizers 12171 before run finalizers, to fix SEGV from btest on 32bit. 12172 12173 * gc.c (gc_mark_stacked_objects): extract from gc_marks(). 12174 12175Thu Oct 4 11:43:28 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12176 12177 * thread_pthread.c (ruby_init_stack): round stack limit to page size 12178 boundary to calculate stack size more precisely. [ruby-dev:46174] 12179 [Bug #7084] 12180 12181Wed Oct 3 19:51:57 2012 Narihiro Nakamura <authornari@gmail.com> 12182 12183 * gc.c: Use the non-recursive marking instead of recursion. The 12184 recursion marking of CRuby needs checking stack overflow and the 12185 fail-safe system, but these systems not good at partial points, 12186 for example, marking deep tree structures. [ruby-dev:46184] 12187 [Feature #7095] 12188 12189 * configure.in (GC_MARK_STACKFRAME_WORD): removed. It's used by 12190 checking stack overflow of marking. 12191 12192 * win32/Makefile.sub (GC_MARK_STACKFRAME_WORD): ditto. 12193 12194Wed Oct 3 15:33:02 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12195 12196 * thread_pthread.c (ruby_init_stack): use getrlimit() for the main 12197 thread on Mac OS X, since pthread_get_stack{addr,size}_np() 12198 return the default value always, but not the ulimit value. 12199 [ruby-dev:46174] [Bug #7084] 12200 12201Wed Oct 3 11:43:15 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12202 12203 * io.c (rb_io_reopen): improvement to accept optional arguments. 12204 a patch by Glass_saga (Masaki Matsushita) in [ruby-core:47806]. 12205 [Feature #7103] 12206 12207Wed Oct 3 04:36:11 2012 Eric Hodel <drbrain@segment7.net> 12208 12209 * ext/openssl/ossl_x509store.c (ossl_x509store_add_file): Added 12210 documentation 12211 * ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths): 12212 ditto 12213 * ext/openssl/ossl_x509store.c (ossl_x509store_add_cert): ditto 12214 12215Wed Oct 3 02:23:37 2012 Shugo Maeda <shugo@ruby-lang.org> 12216 12217 * error.c (exc_to_s, name_err_to_s, name_err_mesg_to_str): do not 12218 taint messages. 12219 12220Tue Oct 2 16:47:06 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12221 12222 * eval.c (identity_hash_new): hide internal hashes for refinements. 12223 12224 * eval.c (rb_mod_refine): no default value. 12225 12226Mon Oct 1 22:54:02 2012 Shugo Maeda <shugo@ruby-lang.org> 12227 12228 * eval.c (identity_hash_new): new function to create a new identity 12229 hash. 12230 12231 * eval.c (rb_overlay_module, rb_mod_using, rb_mod_refine): use 12232 identity_hash_new(). 12233 12234Mon Oct 1 02:34:53 2012 Akinori MUSHA <knu@iDaemons.org> 12235 12236 * configure.in (--with-opt-dir): Make this also work on DLDFLAGS 12237 so LIBRUBY_SO links fine with libexecinfo installed in a 12238 non-system directory. 12239 12240Sun Sep 30 23:32:00 2012 Kenta Murata <mrkn@mrkn.jp> 12241 12242 * vm_dump.c (rb_vm_bugreport): add /Library/Logs/DiagnosticReports 12243 in the list of locations of crash reports. 12244 12245Sun Sep 30 21:18:03 2012 NARUSE, Yui <naruse@ruby-lang.org> 12246 12247 * string.c (rb_str_concat): use memcpy to copy a string which contains 12248 NUL characters. [ruby-core:47751] [Bug #7090] 12249 12250Sat Sep 29 19:41:53 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 12251 12252 * test/ruby/envutil.rb (EnvUtil#invoke_ruby): kill child process 12253 before Timeout::Error is raised. rmdir of mktmpdir fails with 12254 EACCES if child process is alive on Windows. 12255 12256 * test/thread/test_queue.rb (TestQueue): increase timeout. 12257 This test takes long time on Windows XP. 12258 12259Sat Sep 29 19:41:33 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 12260 12261 * test/net/http/test_http.rb (TestNetHTTP#test_proxy_address): 12262 clear environment variables. If http_proxy environment variable was 12263 set, the test failed. 12264 12265 * test/net/http/test_http.rb (TestNetHTTP#test_proxy_port): ditto. 12266 12267Sat Sep 29 19:41:11 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 12268 12269 * test/drb/drbtest.rb (DRbCore#teardown): 12270 Use Process.kill :KILL on Windows because Process.kill :INT silently 12271 fails on Windows 7 and raises EINVAL on Windows XP for spawned 12272 process with new_pgroup: false. 12273 12274 * test/drb/drbtest.rb (DRbAry#teardown): ditto. 12275 12276Sat Sep 29 19:40:32 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 12277 12278 * test/ruby/test_unicode_escape.rb (TestUnicodeEscape#test_basic): 12279 set script encoding to work with LANG=C. It would work on both 12280 Windows and Unix. Refix of r37051. 12281 12282Sat Sep 29 11:21:06 2012 Shugo Maeda <shugo@ruby-lang.org> 12283 12284 * vm_insnhelper.c (rb_vm_using_modules): use using_modules before 12285 klass to fix method lookup order, and use klass even if klass is 12286 not a module to make refinements in class_eval invoked on classes 12287 work. 12288 12289 * eval.c (rb_using_module): accept a class as the second argument. 12290 12291 * eval.c (rb_mod_using, f_using): raise a TypeError if the argument 12292 is not a module. 12293 12294 * test/ruby/test_refinement.rb: add new tests for the above changes. 12295 12296Sat Sep 29 02:18:57 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 12297 12298 * test/ruby/test_unicode_escape.rb (TestUnicodeEscape#test_basic): 12299 Use ruby only on Windows since the test fails on Unix with LANG=C. 12300 [ruby-core:47709] [Bug #7076] 12301 12302Fri Sep 28 22:19:31 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 12303 12304 * test/ruby/test_unicode_escape.rb (TestUnicodeEscape#test_basic): 12305 echo command doesn't work properly against non-ascii character on 12306 Windows with chcp 437. Instead we use ruby. 12307 [ruby-core:47709] [Bug #7076] 12308 12309Fri Sep 28 17:54:31 2012 Koichi Sasada <ko1@atdot.net> 12310 12311 * vm_insnhelper.c (vm_setup_method): refactoring. 12312 Remove src_argc and use iseq->arg_size directly. 12313 12314Fri Sep 28 17:26:27 2012 NARUSE, Yui <naruse@ruby-lang.org> 12315 12316 * lib/rubygems/installer.rb (check_that_user_bin_dir_is_in_path): 12317 test_generate_bin_bindir_with_user_install_warning(TestGemInstaller) 12318 fails on Windows with msys bash. It makes comparing paths 12319 case-insensitive. 12320 pick from upstream to fix a failure of test-all [ruby-core:47711] 12321 https://github.com/rubygems/rubygems/commit/c474edb2f3704206f04da1c8c6cf9fb079d84abe 12322 12323Fri Sep 28 15:44:45 2012 Shugo Maeda <shugo@ruby-lang.org> 12324 12325 * vm_method.c (search_method): copy refinement iclasses to search 12326 superclasses correctly. 12327 12328 * test/ruby/test_refinement.rb: related test. 12329 12330Fri Sep 28 15:15:41 2012 Koichi Sasada <ko1@atdot.net> 12331 12332 * insns.def (opt_checkenv): remove unused instruction `opt_checkenv'. 12333 12334 * compile.c (iseq_compile_each): ditto. 12335 12336 * node.h: remove unused node `NODE_OPTBLOCK'. 12337 12338 * ext/objspace/objspace.c, gc.c (gc_mark_children): ditto. 12339 12340Fri Sep 28 13:14:34 2012 Koichi Sasada <ko1@atdot.net> 12341 12342 * vm_core.h: now VM_DEBUG_BP_CHECK should be 1. 12343 12344Fri Sep 28 12:51:54 2012 Koichi Sasada <ko1@atdot.net> 12345 12346 * vm_core.h: remove rb_control_frame_t::bp (bp: base pointer). 12347 `bp' can be calculate by `sp' (stack pointer) of previous frame. 12348 Now, `bp_check' field is remained for debug. You can eliminate 12349 this field by setting VM_DEBUG_BP_CHECK as 0. 12350 12351 * vm_insnhelper.c (vm_base_ptr): add `vm_base_ptr(cfp). 12352 This function calculates base pointer from cfp. 12353 12354 * vm_insnhelper.c (vm_setup_method): push `recv' value on top of 12355 value stack (before method parameters). 12356 This change is for keeping consistency with normal method dispatch. 12357 12358 * insns.def: fix to use vm_base_ptr(). 12359 12360 * vm.c (vm_exec): ditto. 12361 12362 * vm_dump.c: remove `bp' related dumps. 12363 12364 * cont.c (fiber_init): fix to check VM_DEBUG_BP_CHECK. 12365 12366Fri Sep 28 10:40:51 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12367 12368 * io.c (rb_io_reopen): accept File::Constants as well as mode string. 12369 based on the patch by Glass_saga (Masaki Matsushita) in 12370 [ruby-core:47694]. [Feature #7067] 12371 12372Thu Sep 27 18:36:51 2012 Shugo Maeda <shugo@ruby-lang.org> 12373 12374 * eval.c (rb_overlay_module, rb_mod_refine): accept a module as the 12375 argument of Module#refine. 12376 12377 * vm_method.c (search_method): if klass is an iclass, lookup the 12378 original module of the iclass in omod in order to allow 12379 refinements of modules. 12380 12381 * test/ruby/test_refinement.rb: add tests for the above changes. 12382 12383Thu Sep 27 18:12:20 2012 Aaron Patterson <aaron@tenderlovemaking.com> 12384 12385 * ext/syslog/lib/syslog/logger.rb: add a formatter to the 12386 Syslog::Logger object. [Bug #7065] 12387 * test/syslog/test_syslog_logger.rb: ditto. 12388 12389Wed Sep 26 16:39:57 2012 Koichi Sasada <ko1@atdot.net> 12390 12391 * insns.def: add new instruction `opt_empty_p' for optimize `empty?' 12392 method. Apply a patch proposed at [ruby-dev:46120] 12393 [ruby-trunk - Feature #6972] by Glass_saga (Masaki Matsushita). 12394 12395 * compile.c (iseq_specialized_instruction), vm.c, vm_insnhelper.h: 12396 ditto. 12397 12398 * id.c, template/id.h.tmpl: ditto. 12399 12400 * test/ruby/test_optimization.rb: test for this changes. 12401 12402Tue Sep 25 09:59:26 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12403 12404 * insns.def (invokesuper): klass in cfp is not valid in at_exit and 12405 END blocks. [ruby-core:47680] [Bug #7064] 12406 12407Tue Sep 25 08:11:11 2012 NARUSE, Yui <naruse@ruby-lang.org> 12408 12409 * iseq.c (rb_iseq_defined_string): the index of defined_strings must 12410 be the value of type - 1. 12411 12412Mon Sep 24 17:36:51 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12413 12414 * compile.c (defined_expr), insns.def (defined): share single frozen 12415 strings. [EXPERIMENTAL] [ruby-core:47558][Feature #7035] 12416 12417 * iseq.c (rb_iseq_defined_string): make expression strings. 12418 12419Mon Sep 24 11:22:36 2012 NARUSE, Yui <naruse@ruby-lang.org> 12420 12421 * tool/merger.rb: add --ticket option to add ticket number. 12422 12423Sun Sep 23 21:51:59 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12424 12425 * lib/mkmf.rb (String#unspace): unescape with backslashes. normal 12426 makes need to escape spaces with backslashes. nmake is not the 12427 case. [Bug #7036] 12428 12429 * lib/mkmf.rb (create_makefile): use timestamp file dependencies for 12430 directories. 12431 12432 * lib/mkmf.rb: unexpand macros. 12433 12434 * lib/mkmf.rb (LIBPATHFLAG): no needs to escape library path here. 12435 12436 * lib/mkmf.rb (MakeMakefile#configuration): make prefix paths 12437 internal to deal with in Makefile. 12438 12439 * lib/mkmf.rb (MakeMakefile#mkintpath): not a global function now. 12440 12441Sun Sep 23 02:33:37 2012 Benoit Daloze <eregontp@gmail.com> 12442 12443 * complex.c: Fix examples of r36993. 12444 Keep the simple definition, mathematics define the result. 12445 Based on patch by Robin Dupret. Fixes #188 on github. 12446 12447Sat Sep 22 07:15:00 2012 Zachary Scott <zzak@ruby-lang.org> 12448 12449 * ext/ripper/lib/ripper.rb: 12450 Match sample output to Ripper.sexp from current trunk version. 12451 [Bug #6929] 12452 12453Thu Sep 20 23:05:11 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 12454 12455 * thread_pthread.c (native_cond_initialize): destroy condattr 12456 after using it. Patch by Stanislav Sedov. Thank you. 12457 [Bug #7041] [ruby-core:47619] 12458 12459Thu Sep 20 22:53:02 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 12460 12461 * thread_pthread.c (native_cond_initialize): clean up #ifdef condition. 12462 12463Thu Sep 20 16:42:44 2012 NARUSE, Yui <naruse@ruby-lang.org> 12464 12465 * lib/drb/ssl.rb (DRb::DRbSSLSocket::SSLConfig::DEFAULT): add 12466 SSLTmpDhCallback for configuration option. 12467 12468 * lib/drb/ssl.rb (setup_ssl_context): copy the value of tmp_dh_callback. 12469 12470 * test/drb/ut_array_drbssl.rb: set tmp_dh_callback to suppress warning. 12471 12472 * test/drb/ut_drb_drbssl.rb: ditto. 12473 12474Thu Sep 20 10:56:08 2012 NAKAMURA Usaku <usa@ruby-lang.org> 12475 12476 * test/drb/ut_drb.rb: revert a part of r36987, and get rid of a warning 12477 with another method. if the substitution is removed, the ExtSrv 12478 object will be GC'ed and some tests will be blocked. 12479 12480Thu Sep 20 07:20:00 2012 Zachary Scott <zzak@ruby-lang.org> 12481 12482 * complex.c: Examples for Complex Documentation. 12483 Patch by Robin Dupret. 12484 Fixes #184 on github. 12485 12486Thu Sep 20 07:15:00 2012 Zachary Scott <zzak@ruby-lang.org> 12487 12488 * ext/ripper/lib/ripper.rb: Documentation for Ripper. 12489 +:void_stmt+ is meaningless 12490 [Bug #6929] [ruby-core:47507] 12491 12492Thu Sep 20 07:05:00 2012 Zachary Scott <zzak@ruby-lang.org> 12493 12494 * lib/csv.rb (Object#CSV, Array#to_csv, String#parse_csv): 12495 Examples and documentation for CSV. 12496 [Bug #6880] [ruby-core:47218] 12497 12498Thu Sep 20 00:42:20 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12499 12500 * array.c (take_items), enum.c (enum_zip): raise TypeError at 12501 non-enumerable objects, not NoMethodError. [ruby-dev:46145] 12502 [Bug #7038] 12503 12504 * vm_eval.c (rb_check_block_call): check_funcall variant with block 12505 function. 12506 12507Tue Sep 18 17:51:29 2012 NARUSE, Yui <naruse@ruby-lang.org> 12508 12509 * ext/openssl/ossl_ssl.c (ossl_sslctx_attrs): add npn_select_db to 12510 suppress warning: instance variable @npn_select_cb not initialized 12511 12512Sun Sep 16 17:47:00 2012 Eric Hodel <drbrain@segment7.net> 12513 12514 * tool/change_maker.rb: Update svn detection for subversion 1.7's 12515 single .svn directory. 12516 12517Sun Sep 16 11:39:12 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12518 12519 * io.c (io_set_read_length): if the read length equals to the buffer 12520 string size then nothing to do. or ensure the string modifiable 12521 before setting the length only when the former is shorter. based on 12522 the patch in [ruby-core:47541] by Hiroshi Shirosaki. 12523 [ruby-core:46586] [Bug #6764] 12524 12525Sun Sep 16 08:57:52 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12526 12527 * configure.in (strict_warnflags): separate strict flags from 12528 warnflags only for core. [ruby-dev:46105] 12529 12530Sun Sep 16 08:16:05 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12531 12532 * .editorconfig: add. [ruby-core:47548] [Feature #7030] 12533 12534Sat Sep 15 01:56:40 2012 NARUSE, Yui <naruse@ruby-lang.org> 12535 12536 * ext/nkf/nkf-utf8/nkf.c: Merge upstream: 50a383c84. 12537 [ruby-dev:46128] [Bug #7005] 12538 12539Sat Sep 15 00:20:04 2012 NARUSE, Yui <naruse@ruby-lang.org> 12540 12541 * ext/nkf/nkf.c (rb_nkf_convert): suppress warning. 12542 12543Fri Sep 14 04:05:00 2012 Zachary Scott <zzak@ruby-lang.org> 12544 12545 * array.c (rb_ary_diff, rb_ary_uniq): 12546 Enhance documentation for array uniqueness 12547 Based on a patch by Robin Dupret 12548 [Bug #6872] [ruby-core:47209] 12549 12550Fri Sep 14 03:30:00 2012 Zachary Scott <zzak@ruby-lang.org> 12551 12552 * array.c (rb_ary_select): 12553 Update documentation for Array#select 12554 * enum.c (enum_find_all, enum_reject): 12555 Update documentation for Enumerable#find_all and Enumerable#reject 12556 Based on a patch by Jeff Saracco 12557 [Bug #6908] [ruby-core:47285] [Fixes #166 on github] 12558 12559Fri Sep 14 00:20:00 2012 Zachary Scott <zzak@ruby-lang.org> 12560 12561 * signal.c (rb_f_kill): 12562 Update documentation for Process.kill to reflect kill(2) 12563 Patch by Richo Healey 12564 12565Thu Sep 13 21:40:49 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 12566 12567 * lib/securerandom.rb (SecureRandom.random_bytes): 12568 Use 64bit value as pointer for Windows x64 to fix SystemCallError. 12569 12570 * lib/securerandom.rb (SecureRandom.lastWin32ErrorMessage): 12571 Set proper encoding to avoid invalid byte sequence error. 12572 [ruby-core:47451] [Bug #6990] 12573 12574Thu Sep 13 11:20:00 2012 Zachary Scott <zzak@ruby-lang.org> 12575 12576 * lib/optparse.rb: Remove unreachable email address from documentation 12577 [Bug #6996] [ruby-core:47459] 12578 12579Thu Sep 13 11:20:00 2012 Zachary Scott <zzak@ruby-lang.org> 12580 12581 * lib/xmlrpc.rb: Documentation for XMLRPC 12582 * lib/xmlrpc/datetime.rb: ditto. 12583 * lib/xmlrpc/parser.rb: ditto. 12584 * lib/xmlrpc/client.rb: ditto. 12585 * lib/xmlrpc/utils.rb: ditto. 12586 * lib/xmlrpc/README.rdoc: ditto. 12587 * lib/xmlrpc/create.rb: ditto. 12588 * lib/xmlrpc/base64.rb: ditto. 12589 * lib/xmlrpc/config.rb: ditto. 12590 * lib/xmlrpc/httpserver.rb: ditto. 12591 * lib/xmlrpc/server.rb: ditto. 12592 * lib/xmlrpc/marshal.rb: ditto. 12593 * lib/xmlrpc/README.txt: ditto. 12594 [Bug #6909] [ruby-core:47286] 12595 12596Thu Sep 13 10:22:11 2012 Takashi Toyoshima <toyoshim@gmail.com> 12597 12598 * configure.in: Don't use PIE on Haiku because loader support is not 12599 enough. 12600 12601Thu Sep 13 08:20:00 2012 Zachary Scott <zzak@ruby-lang.org> 12602 12603 * lib/shellwords.rb: Documentation for Shellwords. 12604 12605Thu Sep 13 08:00:00 2012 Zachary Scott <zzak@ruby-lang.org> 12606 12607 * ext/ripper/lib/ripper.rb: Documentation for Ripper. 12608 * ext/ripper/lib/ripper/lexer.rb: ditto. 12609 * ext/ripper/lib/ripper/sexp.rb: ditto. 12610 * ext/ripper/lib/ripper/filter.rb: ditto. 12611 * ext/ripper/lib/ripper/core.rb: ditto. 12612 [Bug #6929] [ruby-core:47309] 12613 12614Wed Sep 12 22:59:07 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12615 12616 * vm_insnhelper.c (vm_method_missing, vm_call_method): reuse arguments 12617 on the VM stack and get rid of ALLOCA. 12618 12619Wed Sep 12 22:45::00 2012 Zachary Scott <zzak@ruby-lang.org> 12620 12621 * ext/pathname/lib/pathname.rb: Documentation for Pathname. 12622 * ext/pathname/pathname.c: ditto. 12623 [Bug #6947] [ruby-core:47354] 12624 12625Mon Sep 10 10:19:34 2012 NAKAMURA Usaku <usa@ruby-lang.org> 12626 12627 * enc/depend: fixed wrong change in a part of r34802. 12628 12629Sun Sep 9 22:02:50 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 12630 12631 * ext/socket/basicsocket.c (rsock_bsock_send): 12632 avoid unnecessary select() calls before doing I/O 12633 Patch by Eric Wong. [Feature #4538] [ruby-core:35586] 12634 * ext/socket/init.c (rsock_s_recvfrom): ditto. 12635 * ext/socket/init.c (rsock_s_accept): ditto. 12636 * ext/socket/udpsocket.c (udp_send): ditto. 12637 * io.c (io_fflush): ditto. 12638 * io.c (io_binwrite): ditto. 12639 * io.c (rb_io_syswrite): ditto. 12640 12641Mon Sep 10 01:38:51 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 12642 12643 * io.c (nogvl_close, maygvl_close, nogvl_fclose, maygvl_fclose): 12644 suppress integer <-> pointer cast warnings. 12645 [Feature #4570] [ruby-core:35711] 12646 12647Mon Sep 10 01:36:00 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 12648 12649 * io.c (rb_io_close): notify fd close before releasing gvl. 12650 * io.c (fptr_finalize): modify fptr->mode before releasing gvl. 12651 remove unnecessary rb_thread_fd_close(). 12652 [Feature #4570] [ruby-core:35711] 12653 12654Mon Sep 10 00:16:34 2012 NARUSE, Yui <naruse@ruby-lang.org> 12655 12656 * process.c: exec() requires to be single threaded also on Haiku. 12657 by Takashi Toyoshima <toyoshim@gmail.com> 12658 https://github.com/ruby/ruby/pull/178 12659 12660Sun Sep 9 21:21:15 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 12661 12662 * lib/thread.rb (Queue#pop): Fixed double registration issue when 12663 mutex.sleep is interrupted. [Bug #5258] [ruby-dev:44448] 12664 * lib/thread.rb (SizedQueue#push): ditto. 12665 12666 * test/thread/test_queue.rb (test_sized_queue_and_wakeup, 12667 test_queue_pop_interrupt, test_sized_queue_pop_interrupt, 12668 test_sized_queue_push_interrupt): new tests. 12669 12670Sun Sep 9 20:20:31 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 12671 12672 * lib/sync.rb (Sync_m#sync_lock): Fixed wakeup/raise unsafe code. 12673 Patched by Masaki Matsushita. [Bug #5355] [ruby-dev:44521] 12674 12675 * test/thread/test_sync.rb (test_sync_lock_and_wakeup, 12676 test_sync_upgrade_and_wakeup, test_sync_lock_and_raise): 12677 new test. 12678 12679Sun Sep 9 18:39:46 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 12680 12681 * include/ruby/intern.h (rb_thread_blocking_region): Added 12682 a comment of recommended alternative way. 12683 12684Sun Sep 9 18:37:05 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 12685 12686 * lib/sync.rb (Sync_m): Removed RCS_ID. 12687 12688Sun Sep 9 18:21:03 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 12689 12690 * test/ruby/test_io.rb (test_advise_pipe): new test to check 12691 io.advise() against anonymous io object don't make crash. 12692 made by Eric Wong. [Bug #6081] [ruby-core:42880] 12693 12694Sun Sep 9 16:47:12 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 12695 12696 * io.c (nogvl_close, maygvl_close, nogvl_fclose, maygvl_fclose): 12697 new functions. 12698 * io.c (fptr_finalize): release GVL if possible. 12699 Patched by Eric Wong. [Feature #4570] [ruby-core:35711] 12700 12701Sun Sep 9 16:08:48 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 12702 12703 * io.c (io_bufread): removed unnecessary rb_thread_wait_fd(). 12704 Patch by Eric Wong. [Bug #6629] [ruby-core:45789] 12705 * io.c (rb_io_sysread): ditto. 12706 * io.c (copy_stream_fallback_body): ditto. 12707 12708Sun Sep 9 15:21:52 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 12709 12710 * thread.c (rb_mutex_lock): stop multiple threads use 12711 pthread_cond_timedwait() concurrently. [Bug #6278] [ruby-core:44275] 12712 12713Sat Sep 8 18:52:22 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12714 12715 * internal.h (struct rb_classext_struct): move allocator function into 12716 rb_classext_t from ordinary method table. [ruby-dev:46121] 12717 [Feature #6993] 12718 12719 * object.c (rb_obj_alloc): call allocator function directly. 12720 12721 * vm_method.c (rb_define_alloc_func, rb_undef_alloc_func) 12722 (rb_get_alloc_func): use allocator function in rb_classext_t. 12723 12724Fri Sep 7 01:21:51 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12725 12726 * ext/extmk.rb (extmake), lib/mkmf.rb (have_framework): fix splitting 12727 options with an argument, not using NUL as special character. 12728 [ruby-core:47447] [Bug #6987] 12729 12730Thu Sep 6 14:49:49 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12731 12732 * .gdbinit (rp): FLONUM support. 12733 12734 * include/ruby/ruby.h (ruby_special_consts): define FLONUM constants 12735 always, so that they are available from gdb. 12736 12737 * include/ruby/ruby.h (RB_FLOAT_TYPE_P): merge FLONUM and non-FLONUM 12738 versions. inline TYPE() comparison and FLONUM_P() should be 12739 optimized away on non-FLONUM. 12740 12741Thu Sep 6 08:20:55 2012 Ryan Davis <ryand-ruby@zenspider.com> 12742 12743 * lib/minitest/*: Imported minitest 3.4.0 (r7762) 12744 * test/minitest/*: ditto 12745 12746Wed Sep 5 19:20:53 2012 NAKAMURA Usaku <usa@ruby-lang.org> 12747 12748 * parse.y (rb_warn4S): renamed from rb_warn4(), because the case in 12749 r36911 takes a string. 12750 12751 * parse.y (rb_warn4S): use ripper_warnS() for ripper. 12752 12753 * parse.y (ripper_warnS): now it is used. 12754 12755Wed Sep 5 15:51:52 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 12756 12757 * .travis.yml (notifications): [experimental] update notification 12758 template. 12759 12760Wed Sep 5 15:21:12 2012 NARUSE, Yui <naruse@ruby-lang.org> 12761 12762 * parse.y (rb_warn4): added as a rb_warn variant to warn with explicit 12763 source file name and line in parse.y. 12764 12765 * parse.y (warn_unused_var): use rb_warn4 to suppress warning on ripper. 12766 12767Wed Sep 5 13:30:04 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12768 12769 * dir.c (glob_make_pattern): names under recursive need to be single 12770 basenames to match for each name. [ruby-core:47418] [Bug #6977] 12771 12772Tue Sep 4 20:55:17 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 12773 12774 * test/ruby/envutil.rb (EnvUtil#invoke_ruby): show Timeout::Error 12775 instead of IOError if the timeout has expired. 12776 12777 * test/test_pstore.rb 12778 (PStoreTest#test_pstore_files_are_accessed_as_binary_files): 12779 increase timeout because this test is slow on Windows. 12780 [ruby-core:47402] [Bug #6965] 12781 12782Tue Sep 4 11:28:57 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 12783 12784 * vm_eval.c (ruby_eval_string_from_file_protect): initializer 12785 element is not computable at load time. 12786 12787Tue Sep 4 07:48:35 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 12788 12789 * test/openssl/test_asn1_rb: 12790 test/openssl/test_ssl_session.rb: 12791 test/openssl/test_x509name.rb: 12792 test/openssl/test_buffering.rb: 12793 test/openssl/test_x509cert.rb: 12794 test/openssl/test_ssl.rb: Refactor code that leads to warnings on 12795 Ruby CI. 12796 12797Tue Sep 4 07:02:56 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 12798 12799 * test/openssl/utils.rb: Use DSS1 as DSA signature digest for all 12800 OpenSSL versions < 1.0.0. 12801 [Feature #6946] [ruby-core:47405] 12802 12803Mon Sep 3 21:22:37 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12804 12805 * include/ruby/ruby.h (rb_float_value): suppress warnings. 12806 [ruby-core:47406][Bug #6971] 12807 12808Mon Sep 3 14:49:03 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12809 12810 * lib/matrix.rb (Vector#magnitude): accumulate squares of absolute 12811 values to fix for complex vector. [ruby-dev:46100] [Bug #6966] 12812 12813Mon Sep 3 10:09:36 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 12814 12815 * ext/openssl/extconf.rb: Detect OpenSSL_FIPS macro 12816 ext/openssl/ossl.c: Expose OpenSSL::OPENSSL_FIPS constant to 12817 indicate whether OpenSSL runs in FIPS mode. 12818 test/openssl/test_pkey_dh.rb: Generate 256 bit keys for 12819 non-FIPS installations to improve test performance (e.g. for 12820 rubyci). 12821 test/openssl/utils.rb: Replace DSS1 as certificate signature 12822 digest with SHA1 for FIPS installations when using DSA by 12823 introducing TestUtils::DSA_SIGNATURE_DIGEST. 12824 test/openssl/test_x509cert.rb: 12825 test/openssl/test_x509crl.rb: 12826 test/openssl/test_x509req.rb: Use DSA_SIGNATURE_DIGEST 12827 NEWS: Introduce OpenSSL::OPENSSL_FIPS 12828 12829 These changes allow running the OpenSSL tests in FIPS mode 12830 while keeping a high performance for non-FIPS installations. 12831 Introduction of OpenSSL::OPENSSL_FIPS allows for applications 12832 to react to special requirements when using OpenSSL in FIPS mode. 12833 [Feature #6946] [ruby-core:47345] 12834 12835Sun Sep 2 21:46:28 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 12836 12837 * test/openssl/utils.rb: Use a cached DH key instead of generating a 12838 new one each time. 12839 12840Sun Sep 2 05:41:28 2012 NARUSE, Yui <naruse@ruby-lang.org> 12841 12842 * lib/webrick/ssl.rb (WEBrick::Config::SSL): add new key 12843 SSLTmpDhCallback to set SSLContext#tmp_dh_callback. 12844 12845 * lib/webrick/ssl.rb (WEBrick::GenericServer#setup_ssl_context): 12846 follow above. 12847 12848Sat Sep 1 18:50:50 2012 Akinori MUSHA <knu@iDaemons.org> 12849 12850 * lib/set.rb (#initialize_copy, #eql): Use instance_variable_get 12851 instead of instance_eval. 12852 12853Fri Aug 31 21:47:56 2012 Kouhei Sutou <kou@cozmixng.org> 12854 12855 * lib/test/unit/test-unit.gemspec: Make test/unit default gem. 12856 [Feature #6875] [ruby-dev:46051] 12857 12858Fri Aug 31 18:35:02 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 12859 12860 * ext/openssl/extconf.rb: Check existence of OPENSSL_NPN_NEGOTIATED. 12861 ext/ossl_ssl.c: Support Next Protocol Negotiation. Protocols to be 12862 advertised by the server can be set in the SSLContext by using 12863 SSLContext#npn_protocols=, protocol selection on the client is 12864 supported by providing a selection callback with 12865 SSLContext#npn_select_cb. The protocol that was finally negotiated 12866 is available through SSL#npn_protocol. 12867 test/openssl/test_ssl.rb: Add tests for Next Protocol Negotiation. 12868 NEWS: add news about NPN support. 12869 [Feature #6503] [ruby-core:45272] 12870 12871Fri Aug 31 17:38:43 2012 Akinori MUSHA <knu@iDaemons.org> 12872 12873 * lib/set.rb (Set#{each,reject!,select!}, SortedSet#each): Pass 12874 the original block through instead of creating one that only 12875 yields the passed argument. 12876 12877Fri Aug 31 16:23:20 2012 Akinori MUSHA <knu@iDaemons.org> 12878 12879 * lib/ipaddr.rb: Introduce several new error classes where only 12880 ArgumentError and StandardError were used. IPAddr::Error is 12881 their common ancestor class that inherits from ArgumentError for 12882 backward compatibility. Submitted by Jon Daniel. Fixes #173 on 12883 GitHub. 12884 12885Fri Aug 31 14:51:27 2012 NAKAMURA Usaku <usa@ruby-lang.org> 12886 12887 * test/bigdecimal/test_bigdecimal.rb (TestBigDecimal#test_to_f): added 12888 for previous commit. 12889 12890Fri Aug 31 14:32:05 2012 NAKAMURA Usaku <usa@ruby-lang.org> 12891 12892 * ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): use self's sign to 12893 determine 0.0 and Inf's sign instead of internal double value's. 12894 Reported by phasis68 (Heesob Park) at [ruby-core:47381] [Bug #6955] 12895 12896Fri Aug 31 14:31:17 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12897 12898 * template/id.h.tmpl, tool/id2token.rb: make id.h independent from 12899 parse.h, and make parse.c dependent on it instead. 12900 12901Fri Aug 31 14:27:39 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12902 12903 * lib/mkmf.rb (create_makefile): fix race conditions at install-ext. 12904 target files need to depend on destination directory timestamp 12905 files, not phony targets. 12906 12907Fri Aug 31 14:03:45 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12908 12909 * vm_trace.c (clean_hooks): do not access freed memory. 12910 12911 * vm_trace.c (rb_threadptr_exec_event_hooks): fix uninitialized state 12912 when no events is executed. 12913 12914Thu Aug 30 18:21:51 2012 Tanaka Akira <akr@fsij.org> 12915 12916 * io.c (rb_io_close): call rb_last_status_clear. 12917 12918Thu Aug 30 16:17:52 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12919 12920 * ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): check underflow since 12921 strtod() sets errno to ERANGE at underflow too. [ruby-core:47342] 12922 [Bug #6944] 12923 12924Thu Aug 30 12:44:43 2012 Akinori MUSHA <knu@iDaemons.org> 12925 12926 * lib/set.rb (Set#{<,>,<=,>=}): Define comparison operators as 12927 shorthand for the {proper_}{subset?,superset?} methods (finally). 12928 Given a push by Alexander E. Fischer. 12929 12930Thu Aug 30 09:21:01 2012 NARUSE, Yui <naruse@ruby-lang.org> 12931 12932 * lib/uri/ftp.rb (URI::FTP#initialize): raise InvalidURIError if "//" 12933 is not present [ruby-core:47344] [Bug #6945] 12934 12935Thu Aug 30 07:45:12 2012 Luis Lavena <luislavena@gmail.com> 12936 12937 * test/ruby/test_file_exhaustive.rb: fix test introduced in r36811 for 12938 posix environments where HOME is not defined. [ruby-core:47322] 12939 12940Wed Aug 29 23:42:59 2012 Tanaka Akira <akr@fsij.org> 12941 12942 * internal.h (rb_last_status_clear): declared. 12943 12944 * process.c (rb_last_status_clear): exported. 12945 (rb_f_system): call rb_last_status_clear. 12946 12947 * io.c (rb_f_backquote): call rb_last_status_clear. 12948 12949Wed Aug 29 22:01:15 2012 Tanaka Akira <akr@fsij.org> 12950 12951 * process.c (rb_f_system): check failures of waitpid. 12952 [ruby-talk:398687] 12953 12954Wed Aug 29 15:03:04 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 12955 12956 * configure.in (LIBDIR_BASENAME): use configured libdir value to fix 12957 --enable-load-relative on systems where libdir is not default value, 12958 overridden in config.site files. [ruby-core:47267] [Bug #6903] 12959 12960 * ruby.c (ruby_init_loadpath_safe): ditto. 12961 12962Wed Aug 29 14:34:41 2012 NARUSE, Yui <naruse@ruby-lang.org> 12963 12964 * addr2line.c: SIZE_MAX is defined in stdint.h, so r36755 breaks 12965 32bit FreeBSD. [ruby-core:47360] [Bug #6948] 12966 12967Wed Aug 29 04:50:04 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 12968 12969 * test/openssl/utils.rb 12970 test/openssl/test_pair.rb 12971 test/openssl/test_pkey_dh.rb: Use 1024 bit DH parameters to satisfy 12972 OpenSSL FIPS requirements. Patch by Vit Ondruch. 12973 [Bug #6938] [ruby-core:47326] 12974 12975Tue Aug 28 22:31:49 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 12976 12977 * insns.def (checkmatch): suppress warnings. [ruby-core:47339] 12978 [Bug #6930] 12979 12980Tue Aug 28 20:03:54 2012 NARUSE, Yui <naruse@ruby-lang.org> 12981 12982 * configure.in: Fixing Haiku R1/alpha3 build with gcc-4.4.4. 12983 - omit ANSI standard flags to compile socket extension where 12984 anonymous union is required. 12985 - remove redundant -be flags. 12986 by Takashi Toyoshima <toyoshim@gmail.com> 12987 https://github.com/ruby/ruby/pull/168 12988 12989Tue Aug 28 11:32:37 2012 Yuki Yugui Sonoda <yugui@google.com> 12990 12991 * nacl/GNUmakefile.in (.rbconfig.time): r36828 was incomplete. 12992 It did not run correctly on clean build. 12993 12994Tue Aug 28 09:25:20 2012 NAKAMURA Usaku <usa@ruby-lang.org> 12995 12996 * win32/Makefile.sub (Makefile): make to depend on common.mk, to 12997 stop and force to re-run make process when common.mk is changed. 12998 12999Mon Aug 27 20:19:49 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 13000 13001 * test/etc/test_etc.rb (TestEtc#test_getgrgid): fix for non unique GID. 13002 No unixen systems guarantee that GID is unique. Etc.getgrgid would 13003 not return the first entry in the order of Etc.group for shared GID. 13004 [ruby-core:47312] [Bug #6935] 13005 13006Mon Aug 27 18:19:36 2012 Koichi Sasada <ko1@atdot.net> 13007 13008 * include/ruby/ruby.h (rb_float_value): optimize it. 13009 This technique was pointed by shinichiro.hamaji 13010 <http://shinh.skr.jp/m/?date=20120825#p02>. 13011 13012Mon Aug 27 15:08:25 2012 Yuki Yugui Sonoda <yugui@google.com> 13013 13014 * common.mk (vm_trace.o): Added a missing dependency. 13015 13016Sun Aug 26 09:29:32 2012 Yuki Sonoda (Yugui) <yugui@yugui.jp> 13017 13018 * nacl/GNUmakefile.in (package): make package should install 13019 example.html for nacl build 13020 13021 Patch by Takashi Toyoshima <toyoshim AT gmail.com>. 13022 13023Sun Aug 26 09:22:33 2012 Yuki Sonoda (Yugui) <yugui@yugui.jp> 13024 13025 * nacl/GNUmakefile.in (CC, LD, NM, AR, AS, RANLIB, OBJDUMP, OBJCOPY) 13026 Rewrites these variables instead of PATH. 13027 NaCl port uses a toolchain which is specified by NACL_SDK_ROOT 13028 environment variable. Originally, NaCl build added the toolchain 13029 under the NACL_SDK_ROOT to the PATH. But updating PATH doesn't work 13030 on Mac. 13031 (RBCONFIG): Replaces configs with the variable updates above. 13032 13033 * configure.in: Thus it is no longer necessary to check $PATH. 13034 13035 Based on a patch by Takashi Toyoshima <toyoshim AT gmail.com>. 13036 13037Sun Aug 26 16:53:00 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13038 13039 * insns.def (checkmatch): suppress warnings. [ruby-core:47310] 13040 [Bug #6930] 13041 13042 * vm_core.h (VM_FRAME_TYPE_FINISH_P): ditto. 13043 13044Fri Aug 24 15:42:28 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13045 13046 * lib/mkmf.rb (create_makefile): use timestamp for destination 13047 directories to make them before making or copying files there. 13048 [ruby-dev:46067] [Bug #6904] 13049 13050Fri Aug 24 12:40:15 2012 Luis Lavena <luislavena@gmail.com> 13051 13052 * configure.in (mingw): add shlwapi to the list of dependency 13053 libs for Windows. 13054 * win32/Makefile.sub (EXTSOLIBS): ditto. 13055 13056 * internal.h: declare internal functions rb_w32_init_file, 13057 rb_file_expand_path_internal and rb_file_expand_path_fast. 13058 13059 * file.c (Init_File): invoke Windows initialization rb_w32_init_file 13060 13061 * win32/file.c (rb_file_load_path_internal): new function. 13062 Windows-specific implementation that replaces file_expand_path. 13063 [Bug #6836][ruby-core:46996] 13064 13065 * win32/file.c (rb_w32_init_file): new function. Initialize codepage 13066 cache for faster conversion encodings lookup. 13067 13068 * file.c (file_expand_path): rename to rb_file_expand_path_internal. 13069 Conditionally exclude from Windows. 13070 13071 * file.c (rb_file_expand_path_fast): new function. delegates to 13072 rb_file_expand_path_internal without performing a hit to the 13073 filesystem. 13074 13075 * file.c (file_expand_path_1): use rb_file_expand_path_internal without 13076 path expansion (used by require). 13077 * file.c (rb_find_file_ext_safe): ditto. 13078 * file.c (rb_find_file_safe): ditto. 13079 13080 * load.c (rb_get_expanded_load_path): use rb_file_expand_path_fast. 13081 * load.c (rb_feature_provided): ditto. 13082 13083 * file.c (rb_file_expand_path): use rb_file_expand_path_internal with 13084 path expansion. 13085 * file.c (rb_file_absolute_path): ditto. 13086 13087 * test/ruby/test_file_exhaustive.rb: new tests to exercise 13088 rb_file_expand_path_internal implementation and compliance with 13089 existing behaviors. 13090 13091Fri Aug 24 07:35:24 2012 Eric Hodel <drbrain@segment7.net> 13092 13093 * lib/net/http/backward.rb (class Net): Restored Net::HTTPSession to 13094 fix backwards-compatibility with ancient Net::HTTP. [Bug #6889] 13095 13096Thu Aug 23 20:58:55 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 13097 13098 * common.mk: support `make id.h` without `rm .id.h.time` after 13099 `rm id.h`. 13100 13101Thu Aug 23 20:48:45 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13102 13103 * test/ruby/test_fixnum.rb (TestFixnum#test_singleton_method): new test. 13104 13105 * test/ruby/test_bignum.rb (TestBignum#test_singleton_method): ditto. 13106 13107 * test/ruby/test_float.rb (TestFloat#test_singleton_method): ditto. 13108 13109 * test/ruby/test_symbol.rb (TestSymbol#test_singleton_method): ditto. 13110 13111Thu Aug 23 20:34:32 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13112 13113 * class.c (singleton_class_of): flonum can't have singleton class. 13114 13115 * vm.c (vm_define_method): flonum can't have singleton method. 13116 13117Thu Aug 23 19:18:33 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13118 13119 * common.mk (win32/*): macro RUBY_H_INCLUDES is not defined there, 13120 so need to move dependency rules under the definition of it. 13121 13122Thu Aug 23 19:16:20 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13123 13124 * win32/Makefile.sub: refactoring. remove unused rules, and update 13125 some rules which are not used usually to fit current macros. 13126 13127Thu Aug 23 16:46:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13128 13129 * file.c (rb_find_file_ext_safe, rb_find_file_safe): default to 13130 US-ASCII for encdb and transdb. 13131 13132 * load.c (search_required): keep encoding of feature name. set 13133 loading path to filesystem encoding. [Bug #6377][ruby-core:44750] 13134 13135 * ruby.c (add_modules, require_libraries): assume default external 13136 encoding as well as ARGV. 13137 13138Thu Aug 23 16:20:04 2012 Koichi Sasada <ko1@atdot.net> 13139 13140 * include/ruby/ruby.h: introduce flonum technique for 13141 64bit CPU environment (sizeof(double) == sizeof(VALUE)). 13142 flonum technique enables to avoid double object creation 13143 if the double value d is in range about between 13144 1.72723e-77 < |d| <= 1.15792e+77 or 0.0. 13145 flonum Float value is immediate and their lowest two bits 13146 are b10. 13147 If flonum is activated, then USE_FLONUM macro is 1. 13148 I'll write detailed in this technique on 13149 https://bugs.ruby-lang.org/projects/ruby-trunk/wiki/Flonum_tech 13150 13151 * benchmark/bmx_temp.rb: add an benchmark for simple 13152 Float calculation. 13153 13154 * gc.c (id2ref, rb_obj_id): add flonum Float support. 13155 13156 * include/ruby/intern.h: move decl of rb_float_new(double) 13157 to include/ruby/ruby.h. 13158 13159 * insns.def, vm.c, vm_insnhelper.c: add flonum optimization 13160 and simplify source code. 13161 13162 * vm_insnhelper.h (FLONUM_2_P): added. 13163 13164 * marshal.c: support flonum output. 13165 13166 * numeric.c (rb_float_new_in_heap): added. 13167 13168 * parse.y: support flonum. 13169 13170 * random.c: ditto. 13171 13172Thu Aug 23 16:12:40 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13173 13174 * lib/mkmf.rb (create_makefile): add dependency to header files when 13175 depend files don't exist. now we can remove simple (and often 13176 wrong) depend files in most cases. 13177 13178Thu Aug 23 16:02:20 2012 Koichi Sasada <ko1@atdot.net> 13179 13180 * ext/date/depend: add dependency to $(ruby_headers). 13181 13182Thu Aug 23 12:51:39 2012 Shugo Maeda <shugo@ruby-lang.org> 13183 13184 * insns.def (invokesuper): reverted r36640 partially to make super 13185 in a thread work correctly. [ruby-core:47284] [Bug #6907] 13186 13187 * test/ruby/test_super.rb: related test. 13188 13189Thu Aug 23 12:30:20 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13190 13191 * win32/configure.bat: support --with(out)?-ext(ensions) options. 13192 13193Thu Aug 23 11:52:04 2012 NARUSE, Yui <naruse@ruby-lang.org> 13194 13195 * configure.in: Fixing Haiku build. 13196 - -lbe is not required for linking 13197 - stack protector doesn't work for now because of the default gcc's 13198 bug 13199 by Takashi Toyoshima <toyoshim@gmail.com> 13200 https://github.com/ruby/ruby/pull/167 13201 13202 * signal.c (ruby_signal): haiku doesn't have SIGBUS. 13203 13204Thu Aug 23 11:32:44 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13205 13206 * test/open-uri/test_open-uri.rb (TestOpenURI#test_read_timeout): this 13207 test expects that the server thread will be killed in sleep, but 0.01 13208 sec is too short to reach there. 13209 13210Thu Aug 23 10:49:28 2012 NARUSE, Yui <naruse@ruby-lang.org> 13211 13212 * configure.in: use the value of --with-opt-dir on building ruby 13213 itself. [ruby-dev:46064] [Bug #6900] 13214 13215Thu Aug 23 10:36:35 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13216 13217 * common.mk (ID_H_TARGET): revert a part of r36724 and r36751. they 13218 break mswin build from clean source. 13219 13220Thu Aug 23 02:37:35 2012 Aaron Patterson <aaron@tenderlovemaking.com> 13221 13222 * ext/syck: removed. Fixes [ruby-core:43360] 13223 13224 * test/syck: removed. 13225 13226 * lib/yaml.rb: only require psych, show a warning if people try to set 13227 the engine to syck. 13228 13229Thu Aug 23 01:46:53 2012 Aaron Patterson <aaron@tenderlovemaking.com> 13230 13231 * insns.def: search up the cf stack for an object that is an instance 13232 of the recipient class. Fixes [ruby-core:47186] 13233 13234 * test/ruby/test_super.rb: related test. 13235 13236Wed Aug 22 19:46:24 2012 Tadayoshi Funaba <tadf@dotrb.org> 13237 13238 * ext/date/date_core.c: [ruby-core:47266]. 13239 13240Wed Aug 22 19:41:19 2012 Tadayoshi Funaba <tadf@dotrb.org> 13241 13242 * ext/date/date_core.c: [ruby-core:47226]. 13243 13244Wed Aug 22 16:57:04 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13245 13246 * lib/mkmf.rb (configuration): extract least ruby headers list as 13247 ruby_headers, so depend files can use default dependency 13248 explicitly. 13249 13250Wed Aug 22 15:27:50 2012 Koichi Sasada <ko1@atdot.net> 13251 13252 * vm_insnhelper.c (vm_setup_method): fix last commit of 13253 vm_insnhelper.c (r36771). [ruby-dev:46065] [Bug #6901] 13254 Should not disable tail call opt on FINISH_FRAME. 13255 This flag should be propagated correctly. 13256 13257Wed Aug 22 14:05:23 2012 Koichi Sasada <ko1@atdot.net> 13258 13259 * vm_trace.c: support TracePoint. [ruby-trunk - Feature #6895] 13260 13261 * test/ruby/test_settracefunc.rb: add tests for above. 13262 13263 * proc.c (rb_binding_new_with_cfp): add an internal function. 13264 13265 * vm.c (rb_vm_control_frame_id_and_class): add an internal function. 13266 13267 * vm_trace.c: add rb_add_event_hook2() and rb_thread_add_event_hook2(). 13268 Give us the good name for them! 13269 13270Wed Aug 22 11:38:16 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 13271 13272 * .travis.yml (before_script): Turned out that make -j is broken. 13273 13274Wed Aug 22 11:23:35 2012 Shugo Maeda <shugo@ruby-lang.org> 13275 13276 * vm_insnhelper.c (vm_setup_method): should not enable tail call 13277 optimization for frames with VM_FRAME_FLAG_FINISH. 13278 [ruby-dev:46065] [Bug #6901] 13279 13280Wed Aug 22 11:20:47 2012 NARUSE, Yui <naruse@ruby-lang.org> 13281 13282 * lib/rubygems/test_case.rb: run test with psych if exist. 13283 13284Thu Aug 16 12:09:51 2012 Yuki Yugui Sonoda <yugui@google.com> 13285 13286 * nacl/pepper_main.c (init_loadpath): Pushes the correct load path on 13287 other architectures than x86_64. Fixes #6873. 13288 13289Wed Aug 15 19:37:33 2012 Yuki Yugui Sonoda <yugui@google.com> 13290 13291 * configure.in (ac_cv_func_shutdown): shutdown(2) has a dummy 13292 implementation but has no declaration and does not work in 13293 NativeClient SDK pepper_20. 13294 13295Wed Aug 15 19:29:29 2012 Yuki Yugui Sonoda <yugui@google.com> 13296 13297 * common.mk (vm_backtrace.o): Added missing dependencies. 13298 13299 * ext/nkf/depend (nkf.o): ditto. 13300 13301 * ext/ripper/depend (ripper.o) ditto. 13302 13303Wed Aug 22 07:27:00 2012 NARUSE, Yui <naruse@ruby-lang.org> 13304 13305 * lib/cgi/util.rb (CGI.escapeHTML): use ' 13306 [ruby-core:47221] [Bug #6861] 13307 13308Tue Aug 21 21:59:22 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 13309 13310 * lib/observer.rb: fix typo. https://github.com/ruby/ruby/pull/162 by 13311 unsymbol (Philip Cunningham). 13312 13313Tue Aug 21 20:30:06 2012 Benoit Daloze <eregontp@gmail.com> 13314 13315 * test/fileutils/test_fileutils.rb (TestFileUtils#teardown): 13316 do not assume cwd is TMPROOT and never remove current directory. 13317 [ruby-core:47224][Bug #6884] 13318 13319Tue Aug 21 17:29:56 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13320 13321 * addr2line.c (fill_lines): need check and cast of the file size of 13322 target binary because there are some platforms which off_t > size_t. 13323 13324Tue Aug 21 17:07:58 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 13325 13326 * .travis.yml (compiler): [experimental] clang support. 13327 13328Tue Aug 21 15:44:27 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13329 13330 * ext/dl/lib/dl/func.rb (DL::Function#bind): fixes an error in 13331 test/dl/test_import.rb (DL::TestImport#test_carried_function) 13332 introduced by r36718. 13333 the instance of the anonymous class which wraps the block should have 13334 same methods and instance variables of self. 13335 13336Tue Aug 21 14:29:22 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13337 13338 * win32/Makefile.sub (scriptbin.mk): no need to include twice. 13339 13340Tue Aug 21 10:52:08 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13341 13342 * test/unit/test.rb (Test::Unit::ProxyError): new exception class to 13343 wrap exceptions raised in workers in parallel test mode. 13344 13345 * test/unit/parallel.rb (Test::Unit::Worker#puke): use above wrapper 13346 exception. 13347 [Bug #6882] [ruby-dev:46054] 13348 13349Tue Aug 21 10:40:06 2012 Koichi Sasada <ko1@atdot.net> 13350 13351 * test_continuation.rb (tracing_with_thread_set_trace_func): 13352 fix to use Thread#set_trace_func(nil), not set_trace_func(nil). 13353 13354Tue Aug 21 09:32:41 2012 Ryan Davis <ryand-ruby@zenspider.com> 13355 13356 * lib/minitest/*: Imported minitest 3.3.0 (r7676) 13357 * test/minitest/*: ditto 13358 13359Tue Aug 21 09:05:32 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13360 13361 * test/testunit/tests_for_parallel/ptest_forth.rb: added a test case 13362 which causes an error. 13363 13364 * test/testunit/test_parallel.rb: follow above change. 13365 see [Bug #6882] 13366 13367Tue Aug 21 05:43:00 2012 James Edward Gray II <james@graysoftinc.com> 13368 13369 * lib/csv.rb: Fixes #161 on github 13370 * lib/csv.rb: You can now specify a pattern for :skip_lines. 13371 Matching lines will not be passed to the CSV parser. 13372 * lib/csv.rb: Patch by Christian Schwartz. 13373 13374Tue Aug 21 05:25:41 2012 Eric Hodel <drbrain@segment7.net> 13375 13376 * re.c (rb_reg_initialize_m): Forgot to update output for or'd-options 13377 example. 13378 13379Tue Aug 21 05:18:03 2012 Eric Hodel <drbrain@segment7.net> 13380 13381 * re.c (rb_reg_initialize_m): Update example to show that regexp 13382 options use | an not || to avoid confusion. 13383 13384Mon Aug 20 23:02:27 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13385 13386 * parse.y: more descriptive token names in syntax error messages. 13387 13388Mon Aug 20 20:36:30 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13389 13390 * vm_insnhelper.c (vm_call_method): follow iclasses as klass in cfp 13391 but not included modules. [ruby-core:47241] [Bug #6891] 13392 13393 * vm_insnhelper.c (vm_call_bmethod): pass defined_class to follow 13394 proper ancestors. [ruby-core:47241] [Bug #6891] 13395 13396Mon Aug 20 11:40:27 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 13397 13398 * common.mk: fix failed to make with -j2. 13399 https://gist.github.com/3397935 13400 13401Mon Aug 20 10:51:01 2012 Shota Fukumori <sorah@tubusu.net> 13402 13403 * lib/test/unit.rb, lib/test/unit/parallel.rb: 13404 generate error message (String) in parallel.rb instead of 13405 marshalling Exception. Fixes [Bug #6882] [ruby-dev:46054] 13406 13407Sun Aug 19 01:24:32 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 13408 13409 * enum.c: fix docs. https://github.com/ruby/ruby/pull/129 by 13410 richardkmichael (Richard Michael). 13411 13412Sun Aug 19 00:47:26 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 13413 13414 * lib/fileutils.rb: fix typo. 13415 https://github.com/ruby/ruby/pull/155 by simonc (Simon COURTOIS). 13416 13417Sat Aug 18 09:57:46 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13418 13419 * enc/depend: fix inplace-build condition. enc.mk is generated with 13420 setting $srcdir to enc, but pwd is still top build directory. 13421 [ruby-core:47236] [Bug #6888] 13422 13423Fri Aug 17 23:28:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13424 13425 * object.c (rb_any_to_s, rb_obj_inspect): preserve encodings of class 13426 name and instance variable names. 13427 13428Fri Aug 17 12:39:33 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13429 13430 * ext/dl/lib/dl/func.rb (DL::Function#bind): allow to return/break from 13431 the callback method. (Fiddle already allows it.) 13432 [Bug #6389] [ruby-dev:45604] 13433 13434Thu Aug 16 19:54:24 2012 Koichi Sasada <ko1@atdot.net> 13435 13436 * vm_trace.c, vm_core.h: simplify tracing mechanism. 13437 13438 (1) add rb_hook_list_t data structure which includes 13439 hooks, events (flag) and `need_clean' flag. 13440 If the last flag is true, then clean the hooks list. 13441 In other words, deleted hooks are contained by `hooks'. 13442 Cleanup process should run before traversing the list. 13443 (2) Change check mechanism 13444 See EXEC_EVENT_HOOK() in vm_core.h. 13445 (3) Add `raw' hooks APIs 13446 Normal hooks are guarded from exception by rb_protect(). 13447 However, this protection is overhead for too simple 13448 functions which never cause exceptions. `raw' hooks 13449 are executed without protection and faster. 13450 Now, we only provide registration APIs. All `raw' 13451 hooks are kicked under protection (same as normal hooks). 13452 13453 * include/ruby/ruby.h: remove internal data definition and 13454 macros. 13455 13456 * internal.h (ruby_suppress_tracing), vm_trace.c: rename 13457 ruby_suppress_tracing() to rb_suppress_tracing() 13458 and remove unused function parameter. 13459 13460 * parse.y: fix to use renamed rb_suppress_tracing(). 13461 13462 * thread.c (thread_create_core): no need to set RUBY_VM_VM. 13463 13464 * vm.c (mark_event_hooks): move definition to vm_trace.c. 13465 13466 * vm.c (ruby_vm_event_flags): add a global variable. 13467 This global variable represents all of Threads and VM's 13468 event masks (T1#events | T2#events | ... | VM#events). 13469 You can check the possibility kick trace func or not 13470 with ruby_vm_event_flags. 13471 ruby_vm_event_flags is maintained by vm_trace.c. 13472 13473 * cont.c (fiber_switch, rb_cont_call): restore tracing status. 13474 [Feature #4347] 13475 13476 * test/ruby/test_continuation.rb: ditto. 13477 13478Thu Aug 16 19:15:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13479 13480 * object.c (rb_class_initialize): forbid inheriting uninitialized 13481 class. another class tree not based on BasicObject cannot exist. 13482 [ruby-core:47148][Bug #6863] 13483 13484Thu Aug 16 11:52:06 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13485 13486 * test/-ext-/test_printf.rb (Test_SPrintf#test_{taint,untrust}): use 13487 plain object so that the results of to_s and inspect are infected. 13488 [ruby-dev:46053] [Bug #6881] 13489 13490Thu Aug 16 09:46:07 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13491 13492 * strftime.c: remove unnecessary macros to check traditional C. 13493 https://github.com/ruby/ruby/pull/46 by lateau (Daehyub Kim). 13494 13495 * vsnprintf.c: remove K&R. 13496 13497Wed Aug 15 20:47:49 2012 Benoit Daloze <eregontp@gmail.com> 13498 13499 * object.c (rb_obj_inspect): Kernel#inspect: do not call #to_s. A class 13500 can now benefit from the nice default #inspect even if it defines #to_s. 13501 Also, there is no more unexpected change in #inspect result. 13502 13503 * NEWS: Add note about the change. 13504 13505 * bignum.c, io.c, numeric.c, object.c, proc.c, vm.c (Init_*): 13506 Adapt internal structures (by aliasing #inspect to #to_s) so they 13507 don't rely on the removed behavior (#inspect calling overridden #to_s). 13508 13509 * test/ruby/test_object.rb (test_inspect): add tests for Kernel#inspect. 13510 13511 * lib/pp.rb (class PP): do not call #to_s anymore, as #inspect 13512 no more does (mame). 13513 13514 * test/test_pp.rb (class PPInspectTest): remove related assertion (mame). 13515 [ruby-core:43238][Feature #6130] 13516 13517 * test/drb/drbtest.rb (DRbCore#teardown, DRbAry#teardown): 13518 adapt DRb tests with the new change (shirosaki). 13519 [ruby-core:47182][Bug #6866] 13520 13521Wed Aug 15 18:05:37 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13522 13523 * lib/test/unit.rb (Test::Unit::Runner#failed): need to delete the 13524 status line if the status is skipped and -q is specified. 13525 13526Wed Aug 15 16:26:52 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13527 13528 * sprintf.c (ruby__sfvextra): the result should be infected by the 13529 given strings. 13530 13531 * sprintf.c (ruby__sfvwrite): set buffer length and exclude 13532 uninitialized garbage to get correct coderange. 13533 13534Wed Aug 15 16:20:09 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13535 13536 * common.mk (ID_H_TARGET): make timestamp file of id.h so that the 13537 header will not be remade repetitively. 13538 13539Wed Aug 15 11:39:53 2012 Koichi Sasada <ko1@atdot.net> 13540 13541 * vm_trace.c: separate trace_func related functions from 13542 thread.c. 13543 13544 * thread.c: ditto. 13545 13546 * common.mk: add vm_trace.o. 13547 13548 * inits.c: call Init_vm_trace(). 13549 13550Tue Aug 14 16:25:46 2012 Shugo Maeda <shugo@ruby-lang.org> 13551 13552 * test/erb/test_erb.rb (test_html_escape): add assertions for the 13553 cases where the argument is not a String. 13554 13555Tue Aug 14 16:03:31 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13556 13557 * win32/win32.c (check_valid_dir): reject "..." as directory name. 13558 [Bug #6851] 13559 13560Tue Aug 14 16:02:51 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13561 13562 * test/ruby/test_file_exhaustive.rb 13563 (TestFileExhaustive#test_stat_dotted_prefix): added. 13564 13565Tue Aug 14 15:39:09 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13566 13567 * test/ruby/test_file_exhaustive.rb 13568 (TestFileExhaustive#test_stat_drive_root): added. 13569 13570Tue Aug 14 10:38:17 2012 NARUSE, Yui <naruse@ruby-lang.org> 13571 13572 * lib/erb.rb (ERB::Util.html_escape): fix r36687: call to_s before 13573 passing it to CGI.escapeHTML. 13574 13575Mon Aug 13 13:13:19 2012 Shugo Maeda <shugo@ruby-lang.org> 13576 13577 * lib/erb.rb (ERB::Util.html_escape): use CGI.escapeHTML to escape 13578 single quotes. [ruby-core:47138] [Bug #6861] 13579 13580Sun Aug 12 11:57:20 2012 Kazuki Tsujimoto <kazuki@callcc.net> 13581 13582 * vm.c (invoke_block_from_c): fix unintentional block passing. 13583 [ruby-dev:45071] [Bug #5832] 13584 13585Fri Aug 10 08:41:28 2012 Eric Hodel <drbrain@segment7.net> 13586 13587 * gc.c (gc_malloc_allocated_size): RDoc does not process macros, so 13588 mention this method is only available when ruby is built with 13589 CALC_EXACT_MALLOC_SIZE 13590 * gc.c (gc_malloc_allocations): ditto 13591 13592Thu Aug 9 23:46:51 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13593 13594 * tool/mkrunnable.rb: see build_os instead of target arch for 13595 cross-compiling. 13596 13597 * configure.in (MINIRUBY): use real path for include path. 13598 13599 * template/fake.rb.in (builddir): remove duplications 13600 13601Thu Aug 9 20:03:11 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 13602 13603 * test/ruby/test_file_exhaustive.rb 13604 (TestFileExhaustive#test_stat_special_file): add a test. 13605 GetFileAttributesExW fails to get attributes of special files 13606 such as pagefile.sys. 13607 13608 * win32/win32.c (check_valid_dir): for performance, check the path 13609 by FindFirstFileW only if the path contains "..." 13610 13611 * win32/win32.c (winnt_stat): use GetFileAttributesExW instead of 13612 FindFirstFileW since GetFileAttributesExW is faster. 13613 Based on the patch by Dusan D. Majkic. 13614 [ruby-core:47083] [Feature #6845] 13615 13616Thu Aug 9 18:33:46 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13617 13618 * ruby.c (proc_options): show version only once even if -v and 13619 --version are given together. 13620 http://twitter.com/d6rkaiz/status/233491797085671424 13621 13622Thu Aug 9 12:37:22 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 13623 13624 * test/openssl/test_config.rb (OpenSSL#test_constants): skip this 13625 test if platform is Mac OS X or Windows. [Bug #6830] 13626 13627Wed Aug 8 22:51:30 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13628 13629 * vm_eval.c (eval_under): singletons other than special constants 13630 don't need cref-scope hack. 13631 13632Wed Aug 8 22:45:38 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13633 13634 * common.mk (.y.h): split from .y.c rule to manage dependency on 13635 parse.h. [ruby-core:46741] [Bug #6789] 13636 13637 * common.mk (id.h): keep old file unless changed. 13638 13639Wed Aug 8 17:11:20 2012 Koichi Sasada <ko1@atdot.net> 13640 13641 * compile.c (ADD_INSNL): make ADD_INSNL as alias of ADD_INSN1. 13642 13643Wed Aug 8 17:08:14 2012 Koichi Sasada <ko1@atdot.net> 13644 13645 * bootstrap/test_exception.rb: fix a last committed test. 13646 13647Wed Aug 8 16:27:58 2012 Koichi Sasada <ko1@atdot.net> 13648 13649 * compile.c, insns.def (checkmatch): 13650 remove checkincludearray instruction and 13651 add new instruction checkmatch. 13652 This change is to solve 13653 [Bug #4438] "rescue args type check omitted". 13654 13655 * iseq.c: increment ISEQ_MAJOR_VERSION because removal of 13656 checkincludearray instruction. 13657 13658 * vm_core.h: add several definitions for 13659 the checkmatch instruction. 13660 13661 * vm_insnhelper.c (check_match): added. 13662 13663 * bootstraptest/test_exception.rb: add a test. 13664 13665 * test/ruby/test_exception.rb: ditto. 13666 13667Wed Aug 8 05:51:20 2012 Eric Hodel <drbrain@segment7.net> 13668 13669 * proc.c (method_clone): Added documentation. Patch by Robin Dupret. 13670 Fixes #152 on github. 13671 13672Tue Aug 7 20:19:29 2012 NARUSE, Yui <naruse@ruby-lang.org> 13673 13674 * ext/readline/readline.c (Init_readline): rl_catch_signals=0 returns 13675 back. Without this, on FreeBSD9 and readline 6.2 irb can't catch ^C. 13676 [Bug #5423] 13677 13678Tue Aug 7 20:12:39 2012 Koichi Sasada <ko1@atdot.net> 13679 13680 * vm_exec.c, insns.def (leave): solve problems on 13681 OPT_CALL_THREADED_CODE. 13682 Catch up finish frame structure on OPT_CALL_THREADED_CODE. 13683 13684 * vm_core.h: add rb_thread_t#retval for temporary space on 13685 OPT_CALL_THREADED_CODE. 13686 13687 * vm.c (th_init): clear rb_thread_t#retval as Qundef. 13688 13689 * vm_dump.c (rb_vmdebug_debug_print_pre): fix debug print format. 13690 13691Tue Aug 7 11:58:27 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13692 13693 * test/ruby/test_require.rb (TestRequire#test_require_twice): added. 13694 13695Tue Aug 7 11:35:37 2012 Shugo Maeda <shugo@ruby-lang.org> 13696 13697 * vm_method.c (rb_redefine_opt_method): use RCLASS_ORIGIN to avoid 13698 SEGV when a module-prepended class is refined. 13699 13700Tue Aug 7 10:46:37 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13701 13702 * test/ruby/test_file_exhaustive.rb 13703 (TestFileExhaustive#test_expand_path*): refactoring. split the method 13704 into some chunks of the same kind of tests. 13705 13706Tue Aug 7 00:31:09 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13707 13708 * class.c (rb_special_singleton_class_of): utility function. 13709 13710 * vm_eval.c (eval_under): special deal for class variable scope with 13711 instance_eval. 13712 13713 * vm_eval.c (rb_obj_instance_eval, rb_obj_instance_exec): allow method 13714 definition in instance_eval of special constants. [ruby-core:28324] 13715 [Bug #2788] 13716 13717Tue Aug 7 00:23:58 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13718 13719 * variable.c (CVAR_LOOKUP): split into helper functions. 13720 13721Mon Aug 6 19:15:11 2012 Masaki Suketa <masaki.suketa@nifty.ne.jp> 13722 13723 * test/win32ole/test_win32ole_variant.rb: setting WIN32OLE.locale 13724 to pass some assertion. Thanks to Hiroshi Shirosaki. 13725 [ruby-core:46873][Bug #6814] 13726 13727Mon Aug 6 15:54:50 2012 Shugo Maeda <shugo@ruby-lang.org> 13728 13729 * internal.h, class.c, eval.c, insns.def: find the appropriate 13730 receiver for super called in instance_eval. If such a receiver is 13731 not found, raise NoMethodError. [ruby-dev:39772] [Bug #2402] 13732 13733Mon Aug 6 14:54:38 2012 Shugo Maeda <shugo@ruby-lang.org> 13734 13735 * include/ruby/ruby.h, eval.c, vm_insnhelper.c: fix typo. 13736 13737Mon Aug 6 13:13:58 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13738 13739 * vm_eval.c (vm_call_super): since cfp->klass is always class or 13740 iclass, no search from method entry. 13741 13742 * insns.def (defined): now should use klass in the current control 13743 frame to search superclass, not me->klass. reported by naruse. 13744 13745Mon Aug 6 11:19:19 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13746 13747 * test/etc/test_etc.rb (TestEtc#test_getpwuid): `s' is never set to nil. 13748 13749Mon Aug 6 11:08:48 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13750 13751 * test/syslog/test_syslog_logger.rb: skip unless Syslog module is 13752 available. 13753 13754Mon Aug 6 00:40:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13755 13756 * ext/bigdecimal/bigdecimal.c (BigMath_s_log): fix format specifier. 13757 13758Mon Aug 6 00:39:24 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13759 13760 * include/ruby/ruby.h (NUM2ULONG): optimize by inline as well as 13761 NUM2LONG, and cast to unsigned long explicitly for the platforms 13762 where SIZEOF_VALUE is larger than SIZEOF_LONG. 13763 13764 * include/ruby/ruby.h (NUM2SSIZET): fix type to cast. 13765 13766Sun Aug 5 21:10:36 2012 Narihiro Nakamura <authornari@gmail.com> 13767 13768 * gc.c : if ENABLE_VM_OBJSPACE is 1, rest_sweep is not defined. 13769 remove unused declarations. [ruby-core:47004] [Bug #6837] 13770 13771Sun Aug 5 19:31:57 2012 Narihiro Nakamura <authornari@gmail.com> 13772 13773 * gc.c: just move functions and so on. I don't touch any internal 13774 implementation. 13775 13776Sun Aug 5 13:22:29 2012 NARUSE, Yui <naruse@ruby-lang.org> 13777 13778 * configure.in: use gcc-4.2 prior to clang, gcc, and cc if exist for 13779 the use of Snow Leopard's old clang. see also r36594, r36610, r36611. 13780 13781Sun Aug 5 06:55:10 2012 Tadayoshi Funaba <tadf@dotrb.org> 13782 13783 * ext/date/date_{core,strftime}.c: [ruby-core:46990]. 13784 13785Sat Aug 4 22:56:20 2012 Narihiro Nakamura <authornari@gmail.com> 13786 13787 * gc.c: use inline functions instead of macros, and close up 13788 related codes for the profiler. 13789 13790Sat Aug 4 20:37:56 2012 Narihiro Nakamura <authornari@gmail.com> 13791 13792 * gc.c (gc_mark_children): use gc_mark_ptr instead of marking 13793 a object directly. 13794 13795Sat Aug 4 10:02:03 2012 Shugo Maeda <shugo@ruby-lang.org> 13796 13797 * test/ruby/test_alias.rb (test_super_in_aliased_module_method): 13798 add a test case for [ruby-dev:46028], which fails in 1.8. 13799 13800Sat Aug 4 01:56:06 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13801 13802 * vm_insnhelper.c (vm_search_normal_superclass): no longer needs 13803 receiver, klass is always unique in the ancestors now. 13804 13805Sat Aug 4 01:27:40 2012 Shugo Maeda <shugo@ruby-lang.org> 13806 13807 * insns.def (invokesuper): reverted r36612 so that super in an 13808 aliased method will not call the same method. 13809 13810Fri Aug 3 19:26:10 2012 Shugo Maeda <shugo@ruby-lang.org> 13811 13812 * insns.def (invokesuper): don't skip the same class. instead, use 13813 rb_method_entry_get_with_omod() to avoid infinite loop when 13814 super is used with refinements. [ruby-core:30450] [Bug #3351] 13815 13816Fri Aug 3 19:21:19 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13817 13818 * configure.in: use clang prior to gcc only when self-compiling on 13819 darwin. search default compilers on other platforms. [Bug #6816] 13820 13821Fri Aug 3 17:25:49 2012 NARUSE, Yui <naruse@ruby-lang.org> 13822 13823 * configure.in: move RUBY_MINGW32 after AC_PROG_CC. 13824 RUBY_MINGW32 uses AC_TRY_CPP and it sets CC and CPP. [Bug #6816] 13825 13826 * configure.in: don't use AC_PROG_CC in AS_CASE. 13827 13828Fri Aug 3 17:21:52 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13829 13830 * test/runner.rb: get rid of loading previously installed gems. 13831 [ruby-dev:46025] 13832 13833Fri Aug 3 16:40:01 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 13834 13835 * .travis.yml (notifications): [experimental] IRC notifications. 13836 13837Thu Aug 2 20:32:29 2012 Shugo Maeda <shugo@ruby-lang.org> 13838 13839 * eval.c (rb_mod_using): new method Module#using. [experimental] 13840 13841 * eval.c (rb_mod_refine): new method Module#refine. [experimental] 13842 13843 * eval.c (f_using): new method Kernel#using. [experimental] 13844 13845Thu Aug 2 20:08:02 2012 Shugo Maeda <shugo@ruby-lang.org> 13846 13847 * class.c, insns.def, method.h, proc.c, vm.c, vm_core.h, vm_eval.c, 13848 vm_insnhelper.c, vm_insnhelper.h, vm_method.c: add klass to 13849 rb_control_frame_t to implement super correctly. 13850 13851Thu Aug 2 13:23:08 2012 NARUSE, Yui <naruse@ruby-lang.org> 13852 13853 * configure.in (AC_PROG_CC): AC_PROG_CC tries clang at first on 13854 darwin. [Bug #6816] 13855 13856Thu Aug 2 11:39:25 2012 Narihiro Nakamura <authornari@gmail.com> 13857 13858 * gc.c: return true or false. Patch by Dirkjan Bussink. [Bug #6821] 13859 13860 * test/ruby/test_gc.rb: add test-case for this bug. 13861 13862Thu Aug 2 10:51:12 2012 Martin Bosslet <Martin.Bosslet@gmail.com> 13863 13864 * ext/openssl/lib/openssl/digest.rb 13865 test/openssl/test_digest.rb: Add Digest module function to OpenSSL 13866 module and test it. Patch provided by Eric Hodel. 13867 [ruby-core:46908][Feature #6819] 13868 13869Wed Aug 1 22:29:12 2012 Benoit Daloze <eregontp@gmail.com> 13870 13871 * ext/digest/digest.c (hexencode_str_new): return an ASCII string 13872 13873 * test/digest: tests for all kind of digests encodings 13874 [ruby-core:46792][Bug #6799] 13875 13876Wed Aug 1 05:50:53 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 13877 13878 * test/ruby/test_rubyoptions.rb (TestRubyOptions#test_encoding): 13879 Fix test_encoding failure on Windows. 13880 With chcp 65001, 1252 and 437, test_encoding failed. Test result 13881 depends on locale because LANG environment variable doesn't affect 13882 locale on Windows. 13883 [ruby-core:46872] [Bug #6813] 13884 13885Wed Aug 1 00:33:19 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13886 13887 * class.c (include_class_new): fix duplication of prepended module. 13888 since m_tbl of prepended module is always zero, copy from its 13889 copy iclass of original. 13890 13891Tue Jul 31 18:22:34 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13892 13893 * variable.c (classname): tell if found name is permanent. search 13894 tmp_classpath only if class id is set. [ruby-core:42865][Bug #6078] 13895 13896 * variable.c (rb_class_path): duplicate found temporary path. 13897 13898 * variable.c (rb_set_class_path_string, rb_set_class_path): set class 13899 id to find classpath. 13900 13901Tue Jul 31 10:36:12 2012 Aaron Patterson <aaron@tenderlovemaking.com> 13902 13903 * ext/psych/lib/psych.rb: updated to released version. 13904 13905 * ext/psych/psych.gemspec: ditto 13906 13907Tue Jul 31 06:18:06 2012 Eric Hodel <drbrain@segment7.net> 13908 13909 * time.c (time_sec): Remove extra wording about leap seconds and refer 13910 directly to Wikipedia's leap second page for further information. 13911 [Bug #6749] 13912 13913Mon Jul 30 23:01:47 2012 NARUSE, Yui <naruse@ruby-lang.org> 13914 13915 * lib/rubygems/platform.rb (Gem::Platform#initialize): Support pattern 13916 like x86_64-netbsd6.99.7. 13917 13918Mon Jul 30 21:00:53 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13919 13920 * variable.c (find_class_path): no retry when preferred is given. 13921 13922 * variable.c (classname): if classid is set try it to find full 13923 qualified class path, and then try arbitrary class path. try 13924 tmp_classpath at last even if enclosing namespace is anonymous. 13925 fix r36574. [ruby-core:42865][Bug #6078] 13926 13927 * variable.c (rb_set_class_path_string, rb_set_class_path): set 13928 tmp_classpath instead of classpath if the name is not permanent. 13929 13930Mon Jul 30 14:24:20 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13931 13932 * variable.c: store anonymous class path in tmp_classpath but not in 13933 classpath. [ruby-core:42865][Bug #6078] 13934 13935Mon Jul 30 13:11:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13936 13937 * configure.in (DLDFLAGS): on Darwin, deprecate -flat_namespace to get 13938 rid of huge imported symbols table. 13939 13940 * configure.in (LIBRUBY_RELATIVE): libruby_so is not made when 13941 disable-shared, so no absolute path is used for it and executable 13942 file is runnable anywhere. 13943 13944Mon Jul 30 01:30:10 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 13945 13946 * common.mk: add a dependency. [ruby-core:46741] [Bug #6789] 13947 13948Sun Jul 29 15:44:47 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 13949 13950 * thread.c (thread_create_core): hide th->async_errinfo_mask_stack from 13951 ObjectSpace.each_object. refix of r36539. 13952 13953Sun Jul 29 23:57:27 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13954 13955 * ext/socket/option.c (inet_ntop): use rb_w32_inet_ntop, instead of 13956 inet_ntop directly, which is unavailable on older version Windows. 13957 13958 * win32/win32.c (rb_w32_inet_ntop): type should be const. 13959 13960Sun Jul 29 14:20:34 2012 Kazuki Tsujimoto <kazuki@callcc.net> 13961 13962 * thread.c (Init_Thread): does not need to set klass 13963 explicitly. 13964 13965Sun Jul 29 06:21:04 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 13966 13967 * win32/win32.c: suppress warning redeclared on mingw64. 13968 *_s functions are declared if MINGW_HAS_SECURE_API is defined. 13969 Follow up r36556. 13970 13971Sun Jul 29 00:28:46 2012 Narihiro Nakamura <authornari@gmail.com> 13972 13973 * gc.c: remove unused initialization. 13974 13975Sat Jul 28 16:26:09 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 13976 13977 * win32/win32.c (gmtime_r): use _gmtime64_s() with x86_64-w64-mingw32. 13978 13979 * win32/win32.c (localtime_r): use _localtime64_s() with 13980 x86_64-w64-mingw32. Since FileTimeToSystemTime() seems not work with 13981 large value under x64. Mingw-w64 doesn't have these declaration. 13982 [ruby-core:46780] [Bug #6794] 13983 13984Fri Jul 27 18:25:51 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13985 13986 * io.c (rb_io_check_io): make public. 13987 13988 * process.c (check_exec_redirect): try conversion to IO on redirect 13989 parameters. [ruby-core:44181] [Bug #6269] 13990 13991Fri Jul 27 17:58:12 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 13992 13993 * configure.in (RUBY_CPPOUTFILE): get rid of variable conflict so 13994 CPPFLAGS is not duplicated. [ruby-core:43097] [Bug #6119] 13995 13996Fri Jul 27 12:12:36 2012 NAKAMURA Usaku <usa@ruby-lang.org> 13997 13998 * win32/mkexports.rb: should not export DllMain(). 13999 reported by luis at [ruby-core:46743] [Bug #6790], solved by 14000 Heesob Park, and confirmed by nobu. 14001 14002Thu Jul 26 14:51:29 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 14003 14004 * test/net/http/test_https.rb (TestNetHTTPS#test_session_reuse): 14005 localhost is not (always) 127.0.0.1. Don't expect that. 14006 14007Thu Jul 26 07:18:38 2012 <kanemoto@ruby-lang.org> 14008 14009 * ext/json/fbuffer/fbuffer.h: avoid compilation error on AIX by 14010 -ansi -std=iso9899:199409 (r36038). [ruby-core:46744] [Bug #6791]. 14011 14012Thu Jul 26 00:42:23 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 14013 14014 * thread.c (thread_create_core, Init_Thread): hide 14015 th->async_errinfo_queue and th->async_errinfo_mask_stack from 14016 ObjectSpace.each_object. 14017 14018Wed Jul 25 17:41:05 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14019 14020 * complex.c, rational.c: compatible marshal loader for compatibilities 14021 with 1.8. [ruby-core:45775] [Bug #6625] 14022 14023Wed Jul 25 17:17:05 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14024 14025 * atomic.h: prefer GCC atomic builtins than Windows APIs, if possible, 14026 since they are generic. 14027 14028Wed Jul 25 11:16:57 2012 Eric Hodel <drbrain@segment7.net> 14029 14030 * lib/net/.document: Removed. All files in net/ should be included in 14031 RDoc. 14032 14033Wed Jul 25 10:00:23 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14034 14035 * test/testunit/test_redefinition.rb: broken class/method names. 14036 14037Wed Jul 25 09:26:32 2012 NARUSE, Yui <naruse@ruby-lang.org> 14038 14039 * lib/cgi/html.rb: Use << instead of +=. 14040 `a += b` is syntax sugar of `a = a + b`; it creates a new string 14041 object. `a << b` is concatenation and doesn't create new object. 14042 14043Wed Jul 25 09:16:26 2012 NARUSE, Yui <naruse@ruby-lang.org> 14044 14045 * lib/cgi/html.rb (element_init): suppress redefine warning. 14046 Don't define methods if they are already defined. 14047 14048Wed Jul 25 09:05:38 2012 Eric Hodel <drbrain@segment7.net> 14049 14050 * lib/net/http.rb: Added SSL session reuse across connections for a 14051 single instance to speed up connection. [Feature #5341] 14052 * NEWS: ditto 14053 * test/net/http/test_https.rb: Tests for #5341 14054 14055Wed Jul 25 06:54:24 2012 Eric Hodel <drbrain@segment7.net> 14056 14057 * doc/re.rdoc: Fix spelling 14058 14059Wed Jul 25 06:49:12 2012 Eric Hodel <drbrain@segment7.net> 14060 14061 * re.c (rb_reg_s_last_match): Update $~ to reference Regexp 14062 documentation about "special global variables". [Bug #6723] 14063 14064Wed Jul 25 06:28:56 2012 Eric Hodel <drbrain@segment7.net> 14065 14066 * iseq.c: Added documentation. Patch by David Albert. [Bug #6785] 14067 14068Wed Jul 25 03:05:06 2012 Aaron Patterson <aaron@tenderlovemaking.com> 14069 14070 * parse.y: added symbols and qsymbols productions for %i and %I 14071 support. %i{ .. } returns a list of symbols without interpolation, 14072 %I{ .. } returns a list of symbols with interpolation. Thanks to 14073 Josh Susser for inspiration of this feature. [Feature #4985] 14074 14075 * ext/ripper/eventids2.c: added ripper events for %i and %I. 14076 14077 * test/ripper/test_parser_events.rb: ripper tests 14078 14079 * test/ripper/test_scanner_events.rb: ditto 14080 14081 * test/ruby/test_array.rb: test for %i and %I behavior 14082 14083Tue Jul 24 23:34:43 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 14084 14085 * include/ruby/win32.h (rb_w32_pow): add new function. 14086 We use powl() instead of broken pow() for x64-mingw32. This workaround 14087 fixes test failures related to floating point numeric. 14088 [ruby-core:46686] [Bug #6784] 14089 14090Tue Jul 24 15:01:24 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14091 14092 * win32/win32.c (rb_w32_socket, rb_w32_socketpair): remember the family 14093 in the high word of socklist value. 14094 14095 * win32/win32.c (overlapped_socket_io, recvmsg, sendmsg, setfl): follow 14096 above changes. 14097 14098 * win32/win32.c (rb_w32_getsockname): set remembered family to the 14099 argument when OS's function fails. 14100 14101Tue Jul 24 12:35:13 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14102 14103 * test/ruby/test_dir_m17n.rb: remove a garbage. 14104 14105 * test/ruby/test_dir_m17n.rb: convert from ascii-8bit to other encoding 14106 with 8bit bytes always fails. 14107 14108Tue Jul 24 12:32:18 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14109 14110 * test/ruby/test_dir_m17n.rb: sorry, typo. 14111 14112Tue Jul 24 12:13:26 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14113 14114 * test/ruby/test_dir_m17n.rb: refactoring. RE should be in the left side 14115 of the =~ operator, and compare the result with nil is meaningless. 14116 14117Tue Jul 24 11:35:20 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14118 14119 * test/ruby/test_pack.rb (test_pack_unpack_M): was redefined 14120 accidentally. 14121 14122Tue Jul 24 09:31:18 2012 Eric Hodel <drbrain@segment7.net> 14123 14124 * lib/rubygems: Updated to RubyGems 1.8.24, a bugfix release. 14125 14126Tue Jul 24 08:30:15 2012 Luis Lavena <luislavena@gmail.com> 14127 14128 * test/ruby/test_dir_m17n.rb (create_and_check_raw_file_name): add new 14129 helper method to ease encoding testing. Patch by Oleg Sukhodolsky. 14130 [ruby-core:46589][Bug #6765] 14131 14132 * test/ruby/test_dir_m17n.rb (test_filename_extutf8): use filesystem 14133 encoding when reading entries and comparing. 14134 14135 * test/ruby/test_dir_m17n.rb (test_filename_utf8_raw_name): removed. 14136 14137 * test/ruby/test_dir_m17n.rb (test_filename_utf8_raw_jp_name): split test. 14138 14139Tue Jul 24 08:09:30 2012 Luis Lavena <luislavena@gmail.com> 14140 14141 * test/win32ole/test_win32ole_method.rb (is_ruby64?): Correct platform 14142 used to identify mingw-w64 (x64-mingw32). Patch by Hiroshi Shirosaki. 14143 [ruby-core:46651][Bug #6782] 14144 14145Tue Jul 24 07:22:58 2012 Eric Hodel <drbrain@segment7.net> 14146 14147 * time.c (time_sec): Updated description of leap seconds for accuracy. 14148 Based on patch by Marcus Stollsteimer. [Bug #6749] 14149 14150Tue Jul 24 07:03:11 2012 Eric Hodel <drbrain@segment7.net> 14151 14152 * string.c (rb_str_sub): Fixed wording of documentation to match the 14153 replacement operation. Minor cleanup of markup. [Bug #6719] 14154 * string.c (rb_str_sub_bang): Minor wording change for clarity, minor 14155 cleanup of markup. 14156 14157Mon Jul 23 23:58:40 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14158 14159 * enc/Makefile.in (TARGET_NAME, TARGET_ENTRY): needed for EXTDLDFLAGS 14160 on some platforms. [ruby-core:46600] [Bug #6768] 14161 14162 * enc/depend: no longer needs tweaking DLDFLAGS for TARGET names. 14163 14164Mon Jul 23 22:48:19 2012 Tanaka Akira <akr@fsij.org> 14165 14166 * lib/open-uri.rb: use respond_to? to test Tempfile. 14167 [ruby-dev:45995] [Bug #6781] reported by hsbt (Hiroshi SHIBATA). 14168 14169Mon Jul 23 14:43:34 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14170 14171 * configure.in (LIBPATHENV): LIBPATH is used on AIX, but not 14172 SHLIB_PATH which was carelessly copied from HP/UX. suggested by 14173 Perry Smith at [ruby-core:46397]. [Bug #6728] 14174 14175Mon Jul 23 01:55:08 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 14176 14177 * test/uri/test_generic.rb (URI#test_find_proxy): add tests with 14178 empty *_proxy env variables. 14179 14180Mon Jul 23 01:47:26 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 14181 14182 * test/uri/test_generic.rb (URI#with_env): unset proxy related env 14183 variables. [Bug #6774] 14184 14185 * test/uri/test_generic.rb (URI#test_find_proxy): fix failures 14186 when proxy related env variables already set. [Bug #6774] 14187 14188Sun Jul 22 23:58:48 2012 NARUSE, Yui <naruse@ruby-lang.org> 14189 14190 * thread.c (rb_threadptr_execute_interrupts_common): increase 14191 running_time_us on THREAD_TO_KILL like on THREAD_RUNNABLE. 14192 This cause not to switch from a thread which is to be killed 14193 on FreeBSD and Mac OS X. see also the test. 14194 This issue maybe exist for long time but happens after r36430. 14195 14196Sat Jul 21 06:21:45 2012 NARUSE, Yui <naruse@ruby-lang.org> 14197 14198 * lib/net/http.rb: fixes for r36476. [Feature #6546] 14199 http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20120720T030101Z.diff.html.gz 14200 14201 * lib/net/http.rb (Net::HTTP.newobj): return back for compatibility. 14202 14203 * lib/net/http.rb (Net::HTTP.new): set default_port if proxy port is 14204 not given. 14205 14206 * lib/net/http.rb (Net::HTTP#initialize): ditto. 14207 14208 * lib/net/http.rb (Net::HTTP#proxy?): return true or false. 14209 14210 * lib/net/http.rb (Net::HTTP#proxy_address): check proxy_uri is not nil. 14211 14212 * lib/net/http.rb (Net::HTTP#proxy_port): ditto. 14213 14214Sat Jul 21 23:12:53 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14215 14216 * thread_pthread.c (ruby_init_stack): STACK_GROW_DIR_DETECTION is 14217 necessary on platforms with unknown stack direction. [Bug #6761] 14218 14219Sat Jul 21 15:13:42 2012 Shota Fukumori <sorah@tubusu.net> 14220 14221 * lib/test/unit/testcase.rb (method_added): refactoring. 14222 14223Sat Jul 21 14:06:41 2012 Shota Fukumori <sorah@tubusu.net> 14224 14225 * lib/test/unit/testcase.rb: warn when test_* method is redefined. 14226 Patch by mame (Yusuke Endoh). [Feature #2643] [ruby-core:27790] 14227 14228 * test/testunit/test_redefinition.rb: Test for above. 14229 14230 * test/testunit/test4test_redefinition.rb: Ditto. 14231 14232Sat Jul 21 08:41:14 2012 Eric Hodel <drbrain@segment7.net> 14233 14234 * lib/logger.rb: Updated example in Logger comment to match other 14235 examples and fixed a bug. Patch by Marcus Stollsteimer. 14236 [Bug #6759] 14237 14238Fri Jul 20 17:20:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14239 14240 * random.c (rb_random_real): refine error message. 14241 14242Fri Jul 20 11:03:17 2012 Eric Hodel <drbrain@segment7.net> 14243 14244 * NEWS: Updated net/http for automatic proxy detection (#6546) and 14245 automatic gzip and deflate compression (#6492, #6494). 14246 14247Fri Jul 20 10:55:38 2012 Eric Hodel <drbrain@segment7.net> 14248 14249 * lib/net/http.rb: Net::HTTP now automatically detects and uses 14250 proxies from the environment. A proxy may also be specified as 14251 before. 14252 14253 Net::HTTP::Proxy still creates anonymous classes, but these classes 14254 are only used to store configuration information. When an HTTP 14255 instance is created the configuration is now copied. 14256 14257 Additionally, Net::HTTP::ProxyDelta is no longer used by Net::HTTP 14258 14259 [Feature #6546] 14260 * lib/open-uri.rb: Moved URI::Generic#find_proxy to uri/generic. 14261 * lib/uri/generic.rb: Imported find_proxy from open-uri. 14262 * test/open-uri/test_open-uri.rb: Moved proxy-discovery tests to URI. 14263 * test/uri/test_generic.rb: Imported proxy-discovery tests from 14264 open-uri. 14265 * test/net/http/test_http.rb: Added tests for proxy behavior. 14266 14267Fri Jul 20 09:34:11 2012 Eric Hodel <drbrain@segment7.net> 14268 14269 * test/socket/test_socket.rb: Ignore IPv6 unique local addresses on OS 14270 X (iCloud Back to my Mac addresses) for test_udp_socket since they do 14271 not act as loopback addresses. [Bug #6692] 14272 14273Fri Jul 20 09:32:14 2012 Eric Hodel <drbrain@segment7.net> 14274 14275 * ext/socket/raddrinfo.c (addrinfo_ipv6_unique_local_p): Added 14276 Addrinfo#ipv6_unique_local? to detect RFC 4193 unique local 14277 addresses. Part of #6692 14278 * ext/socket/rubysocket.h: Add IN6_IS_ADDR_UNIQUE_LOCAL macro if 14279 missing. 14280 * test/socket/test_addrinfo.rb: Test for ipv6_unique_local? 14281 14282Fri Jul 20 07:40:32 2012 Eric Hodel <drbrain@segment7.net> 14283 14284 * lib/net/http/response.rb: Automatically inflate gzip and 14285 deflate-encoded response bodies. [Feature #6942] 14286 * lib/net/http/generic_request.rb: Automatically accept gzip and 14287 deflate content-encoding for requests. [Feature #6494] 14288 * lib/net/http/request.rb: Updated documentation for #6494. 14289 * lib/net/http.rb: Updated documentation for #6492 and #6494, removed 14290 Content-Encoding handling now present in Net::HTTPResponse. 14291 * test/net/http/test_httpresponse.rb: Tests for #6492 14292 * test/net/http/test_http_request.rb: Tests for #6494 14293 * test/open-uri/test_open-uri.rb (test_content_encoding): Updated test 14294 for automatic content-encoding handling. 14295 14296Fri Jul 20 03:42:54 2012 NARUSE, Yui <naruse@ruby-lang.org> 14297 14298 * thread_pthread.c: use #ifdef, not #if. 14299 14300Thu Jul 19 15:08:40 2012 Koichi Sasada <ko1@atdot.net> 14301 14302 * thread.c (rb_thread_s_control_interrupt, 14303 rb_thread_s_check_interrupt): added for 14304 Thread.control_interrupt and Thread.check_interrupt. 14305 See details on rdoc. 14306 I'll make an ticket for this feature. 14307 14308 * test/ruby/test_thread.rb: add a test for Thread.control_interrupt. 14309 14310 * thread.c (rb_threadptr_raise): make a new exception object 14311 even if argc is 0. 14312 14313 * thread.c (rb_thread_kill): kill thread immediately if target thread 14314 is current thread. 14315 14316 * vm_core.h (RUBY_VM_CHECK_INTS_BLOCKING): added. 14317 CHECK_INTS while/after blocking operation. 14318 14319 * vm_core.h (RUBY_VM_CHECK_INTS): require rb_thread_t ptr. 14320 14321 * cont.c (fiber_switch): use replaced RUBY_VM_CHECK_INTS(). 14322 14323 * eval.c (ruby_cleanup): ditto. 14324 14325 * insns.def: ditto. 14326 14327 * process.c (rb_waitpid): ditto. 14328 14329 * vm_eval.c (vm_call0): ditto. 14330 14331 * vm_insnhelper.c (vm_call_method): ditto. 14332 14333Thu Jul 19 22:46:48 2012 Tanaka Akira <akr@fsij.org> 14334 14335 * test/ruby/test_io.rb: remove temporally files early. 14336 14337Thu Jul 19 15:38:35 2012 Shugo Maeda <shugo@ruby-lang.org> 14338 14339 * variable.c (rb_mod_class_variables): return inherited variables 14340 except when the optional argument is set to false. 14341 [ruby-dev:44034] [Bug #4971] 14342 14343 * variable.c (rb_mod_constants): fix typo in documentation. 14344 14345Thu Jul 19 14:30:43 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14346 14347 * internal.h: move mark function declarations that should be private. 14348 14349Thu Jul 19 14:18:22 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14350 14351 * ext/socket/init.c (rsock_init_sock): need to update max fd on all 14352 platforms. 14353 14354Thu Jul 19 14:15:48 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14355 14356 * thread.c (rb_gc_mark_threads): remove deprecated function. 14357 14358Thu Jul 19 13:28:03 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14359 14360 * test/net/http/test_http.rb (TestNetHTTPLocalBind#test_bind_to_local*): 14361 re-enable the tests because now it's OK on windows. 14362 14363Thu Jul 19 13:26:25 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14364 14365 * ext/socket/extconf.rb: now enable IPv6 by default on mswin. 14366 14367Thu Jul 19 09:33:46 2012 Aaron Patterson <aaron@tenderlovemaking.com> 14368 14369 * ext/psych/emitter.c (initialize): allow a configuration object to be 14370 passed to the constructor so that mutation isn't required after 14371 instantiation. 14372 14373 * ext/psych/lib/psych/handler.rb: add configuration object 14374 14375 * ext/psych/lib/psych/visitors/emitter.rb: use configuration object if 14376 extra configuration is present. 14377 14378Thu Jul 19 08:20:25 2012 Tanaka Akira <akr@fsij.org> 14379 14380 * test/ruby/test_file.rb: remove temporally files early. 14381 14382Thu Jul 19 07:37:41 2012 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp> 14383 14384 * test/drb/drbtest.rb: fixed: can't delete unix domain sockets problem. 14385 14386Thu Jul 19 03:41:20 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 14387 14388 * bignum.c: Added #include <strings.h> for ffs(). Patch by Perry 14389 Smith. Thank you. [Bug #6748] 14390 14391Thu Jul 19 01:56:02 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 14392 14393 * include/ruby/intern.h (rb_num_zerodiv): Added NORETURN. 14394 Patched by Xi Wang. [Bug #6736] 14395 14396Wed Jul 18 23:57:38 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14397 14398 * pack.c (pack_pack): round down too long uuencode width. folding 14399 width in uuencode format cannot be longer than 63 bytes. 14400 14401Wed Jul 18 23:04:18 2012 NARUSE, Yui <naruse@ruby-lang.org> 14402 14403 * ext/dbm/dbm.c (fdbm_empty_p): fix wrong condition introduced in r36438. 14404 14405 * ext/sdbm/init.c (fsdbm_empty_p): ditto. 14406 14407Wed Jul 18 23:08:57 2012 Tanaka Akira <akr@fsij.org> 14408 14409 * test/ruby/test_beginendblock.rb: remove temporally files early. 14410 14411Wed Jul 18 22:43:02 2012 Tanaka Akira <akr@fsij.org> 14412 14413 * test/ruby/test_autoload.rb: remove temporally files early. 14414 14415Wed Jul 18 21:59:46 2012 Tanaka Akira <akr@fsij.org> 14416 14417 * test/ruby/test_argf.rb: use temporally directory. 14418 14419Wed Jul 18 19:41:19 2012 Tanaka Akira <akr@fsij.org> 14420 14421 * test/openssl/test_config.rb: remove temporally files early. 14422 14423Wed Jul 18 17:45:26 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14424 14425 * error.c (rb_builtin_type_name): map by index. 14426 14427Wed Jul 18 16:17:40 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14428 14429 * lib/mkmf.rb (have_framework): get rid of separating -framework 14430 option and its argument and dealing with the argument as a library 14431 or an object name. if $LDFLAGS were an array... 14432 14433Wed Jul 18 16:09:10 2012 Shugo Maeda <shugo@ruby-lang.org> 14434 14435 * ext/curses/extconf.rb: support PDCurses. patched by Luis Lavena. 14436 [ruby-core:46485] [Feature #6735] 14437 14438Wed Jul 18 15:50:25 2012 Shugo Maeda <shugo@ruby-lang.org> 14439 14440 * parse.y (primary): allow an empty grouped expression as the 14441 operand of the not operator (e.g., not ()). 14442 [ruby-core:45976] [Bug #6674] 14443 14444 * parse.y (parser_yylex): show no warning for a grouped expression 14445 as the operand of the not operator (e.g., not (a)) or as an 14446 argument of a method call without parentheses (e.g., foo (a)). 14447 [ruby-core:39050] [Bug #5214] 14448 14449Wed Jul 18 15:33:21 2012 Koichi Sasada <ko1@atdot.net> 14450 14451 * thread.c (rb_thread_call_without_gvl2): added. 14452 it can skip last CHECK_INTS. See document for more details. 14453 Document about it was updated a bit. 14454 14455 * include/ruby/thread.h (decl. of rb_thread_call_without_gvl2): added. 14456 14457 * thread.c (rb_thread_call_with_gvl): remove "EXPERIMENTAL!" 14458 warning from a document. 14459 14460Wed Jul 18 14:53:21 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14461 14462 * configure.in (EXTDLDFLAGS): split options for each extension 14463 libraries, and unused in ruby.pc. [Bug #6734] 14464 14465 * lib/mkmf.rb (MakeMakefile#configuration): add EXTDLDFLAGS. 14466 14467Wed Jul 18 14:47:23 2012 Koichi Sasada <ko1@atdot.net> 14468 14469 * thread.c: fix last commit miss. 14470 14471Wed Jul 18 14:16:51 2012 Koichi Sasada <ko1@atdot.net> 14472 14473 * thread.c (rb_threadptr_async_errinfo_*): manage async errors queue. 14474 Async events such as an exception throwed by Thread#raise, 14475 Thread#kill and thread termination (after main thread termination) 14476 will be queued to th->async_errinfo_queue. 14477 - clear: clear the queue. 14478 - enque: enque err object into queue. 14479 - deque: deque err object from queue. 14480 - active_p: return 1 if the queue should be checked. 14481 rb_thread_t#thrown_errinfo was removed. 14482 14483 * vm_core.h: add declarations of rb_threadptr_async_errinfo_*. 14484 remove rb_thread_t#thrown_errinfo field and 14485 add rb_thread_t#async_errinfo_queue (queue body: Array), 14486 rb_thread_t#async_errinfo_queue_checked (flag), 14487 rb_thread_t#async_errinfo_mask_stack(Array, not used yet). 14488 14489 * vm.c (rb_thread_mark): fix a mark function. 14490 14491 * cont.c (rb_fiber_start): enque an error. 14492 14493 * process.c (after_fork): clear async errinfo queue. 14494 14495Wed Jul 18 14:25:55 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 14496 14497 * pack.c: (ditto) bitwise operations are not char. Apply explicit 14498 casts on them. 14499 14500Wed Jul 18 12:59:50 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 14501 14502 * encoding.c (load_encoding): explicit cast to suppress warning. 14503 Though the cast truncates some bits, from heuristic analysis I 14504 believe it is OK to do so here. 14505 14506 * bignum.c (rb_cstr_to_inum): ditto. 14507 14508Wed Jul 18 12:55:54 2012 NARUSE, Yui <naruse@ruby-lang.org> 14509 14510 * lib/benchmark.rb: Fix Benchmark.benchmark output with an empty 14511 caption. patched by Benoit Daloze. [ruby-core:45719] [Bug #6610] 14512 14513Wed Jul 18 10:00:54 2012 Eric Hodel <drbrain@segment7.net> 14514 14515 * lib/debug.rb: Added toplevel documentation. Based on patch by Oscar 14516 Del Ben. [Bug #6743], fixes #146 on github. 14517 14518Wed Jul 18 09:33:59 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14519 14520 * test/win32ole/test_win32ole_event.rb (TestWIN32OLE_EVENT): use 14521 standard skip method to skip tests. 14522 14523Wed Jul 18 09:26:45 2012 Eric Hodel <drbrain@segment7.net> 14524 14525 * lib/logger.rb: Updated typos and output to match modern Logger 14526 output. Patch by Marcus Stollsteimer. [Bug #6738] 14527 14528Wed Jul 18 07:59:29 2012 Takeyuki FUJIOKA <xibbar@ruby-lang.org> 14529 14530 * lib/cgi/util.rb (CGI.escapeHTML,unescapeHTML): Add ' for HTML5 14531 escaping. 14532 [Feature #6620] 14533 14534Tue Jul 17 22:17:13 2012 Tanaka Akira <akr@fsij.org> 14535 14536 * lib/open-uri.rb: call io.close! for Tempfile. 14537 14538Tue Jul 17 16:41:32 2012 NARUSE, Yui <naruse@ruby-lang.org> 14539 14540 * proc.c (rb_proc_arity): return normal value (not -n-1) if it is not 14541 a labmda, or it is a labmda and no arg_opts. [Bug #5694] 14542 14543Tue Jul 17 03:56:34 2012 Aaron Patterson <aaron@tenderlovemaking.com> 14544 14545 * ext/psych/lib/psych/visitors/to_ruby.rb: strings with YAML anchors 14546 are properly referenced. Patched by Joe Rafaniello via Github: 14547 https://github.com/tenderlove/psych/pull/69 14548 * ext/psych/lib/psych/visitors/yaml_tree.rb: ditto 14549 * test/psych/test_alias_and_anchor.rb: test for change 14550 14551Mon Jul 16 23:20:24 2012 Tanaka Akira <akr@fsij.org> 14552 14553 * bignum.c (rb_integer_float_cmp): use FIXNUM_MIN and FIXNUM_MAX, 14554 instead of LONG_MIN and LONG_MAX. 14555 14556Mon Jul 16 22:50:41 2012 Tanaka Akira <akr@fsij.org> 14557 14558 * numeric.c (flo_to_s): use the exponential form if the integer part 14559 is longer than or equal DBL_DIG. 14560 [ruby-dev:45960] [ruby-trunk - Bug #6741] 14561 14562Mon Jul 16 22:01:00 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 14563 14564 * ext/readline/readline.c: fixed docs. [Bug #6740][ruby-core:46501] 14565 patched by Nobuhiro IMAI. 14566 14567Mon Jul 16 19:24:01 2012 Tanaka Akira <akr@fsij.org> 14568 14569 * bignum.c (rb_integer_float_eq): new function. 14570 (rb_big_eq): use rb_integer_float_eq. 14571 14572 * internal.h (rb_integer_float_eq): declared. 14573 14574 * numeric.c (flo_eq): use rb_integer_float_eq. 14575 (fix_equal): ditto. 14576 14577Mon Jul 16 19:02:31 2012 Tanaka Akira <akr@fsij.org> 14578 14579 * bignum.c (rb_integer_float_cmp): rename a local variable. 14580 14581Mon Jul 16 18:40:26 2012 Tanaka Akira <akr@fsij.org> 14582 14583 * bignum.c (rb_integer_float_cmp): renamed from rb_big_float_cmp. 14584 14585 * internal.h: follow the above change. 14586 14587 * numeric.c: ditto. 14588 14589Mon Jul 16 17:57:54 2012 Tanaka Akira <akr@fsij.org> 14590 14591 * bignum.c (rb_big_float_cmp): compare an integer and float precisely. 14592 [ruby-core:31376] [Bug #3589] reported by Tomasz Wegrzanowski. 14593 14594Mon Jul 16 17:29:45 2012 Tanaka Akira <akr@fsij.org> 14595 14596 * bignum.c (rb_big_float_cmp): support fixnum for argument x. 14597 14598 * numeric.c (fix_equal): use rb_big_float_cmp. 14599 (fix_cmp): ditto. 14600 (fix_gt): ditto. 14601 (fix_ge): ditto. 14602 (fix_lt): ditto. 14603 (fix_le): ditto. 14604 (flo_eq): ditto. 14605 (flo_cmp): use rb_big_float_cmp for fixnum argument. 14606 (flo_gt): ditto. 14607 (flo_ge): ditto. 14608 (flo_lt): ditto. 14609 (flo_le): ditto. 14610 14611Mon Jul 16 17:05:53 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 14612 14613 * test/fileutils/test_fileutils.rb: add test for FileUtils#uptodate? 14614 14615Mon Jul 16 16:56:12 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 14616 14617 * lib/fileutils.rb (FileUtils.uptodate?): remove useless parameter. 14618 patched by Oscar Del Ben.[Bug #6708][ruby-core:46256] 14619 14620Mon Jul 16 15:37:56 2012 Tanaka Akira <akr@fsij.org> 14621 14622 * bignum.c (rb_big_eq): use rb_big_float_cmp. 14623 14624Mon Jul 16 15:00:45 2012 Tanaka Akira <akr@fsij.org> 14625 14626 * internal.h (rb_big_float_cmp): declared. 14627 14628 * bignum.c (rb_big_float_cmp): extracted from rb_big_cmp and big_op. 14629 (rb_big_cmp): use rb_big_float_cmp. 14630 (big_op): ditto. 14631 14632 * numeric.c (flo_cmp): use rb_big_float_cmp. 14633 (flo_gt): ditto. 14634 (flo_ge): ditto. 14635 (flo_lt): ditto. 14636 (flo_le): ditto. 14637 14638Mon Jul 16 14:14:21 2012 Tanaka Akira <akr@fsij.org> 14639 14640 * bignum.c (enum big_op_t): new type. 14641 (big_op): use enum big_op_t. 14642 (big_gt): ditto. 14643 (big_ge): ditto. 14644 (big_lt): ditto. 14645 (big_le): ditto. 14646 14647Sat Jul 14 18:18:48 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14648 14649 * array.c (rb_get_values_at): fill with nil out of range. 14650 [ruby-core:43678] [Bug #6203] 14651 14652Sat Jul 14 17:17:55 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 14653 14654 * cont.c (cont_restore_0): improve docs. [Bug #6706][ruby-core:46243] 14655 patched by Oscar Del Ben via https://github.com/ruby/ruby/pull/140 14656 14657Sat Jul 14 17:08:13 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14658 14659 * hash.c (rb_hash_s_create): raise an exception, when input elements 14660 are not one or two elements arrays. [ruby-core:39945] [Bug #5406] 14661 14662Sat Jul 14 16:16:48 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14663 14664 * lib/test/unit.rb (Test::Unit::Runner#_run_parallel): use 14665 Array#uniq!. 14666 14667 * lib/test/unit.rb (Test::Unit::Runner#deal): deal tasks to workers. 14668 14669 * lib/test/unit.rb (Test::Unit::Runner#quit_workers): close and kill 14670 all workers. 14671 14672 * lib/test/unit.rb (Test::Unit::Runner#delete_worker): delete dead 14673 worker from working set. 14674 14675 * lib/test/unit.rb (Test::Unit::Runner#launch_worker): add new worker 14676 to working set. 14677 14678 * lib/test/unit.rb (Test::Unit::Runner#launch_worker): extract. 14679 14680 * lib/test/unit.rb (Test::Unit::Runner#start_watchdog): extract. 14681 14682 * lib/test/unit.rb (Test::Unit::Runner#_run_parallel): move 14683 initializations with nothing to release outside begin/ensure. 14684 14685Sat Jul 14 16:04:24 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14686 14687 * array.c (rb_ary_join): should not infected by separator if it is not 14688 used. [ruby-core:42161][Bug #5902] 14689 14690Sat Jul 14 02:31:55 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14691 14692 * include/ruby/intern.h (rb_thread_blocking_region): fix declarations 14693 prototypes without arguments in C++ have different meanings than C. 14694 14695Thu Jul 12 12:32:26 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14696 14697 * test/runner.rb: skip default gems to get rid of loading old versions 14698 before installation. 14699 14700Thu Jul 12 11:44:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14701 14702 * string.c (rb_str_new_frozen): since the result object should have 14703 same tainted/untrusted bits with the original object, return new 14704 object if the shared object unmatch. [ruby-core:39745][Bug #5374] 14705 14706Thu Jul 12 10:46:39 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14707 14708 * test/net/http/test_http.rb (TestNetHTTPLocalBind#test_bind_to_local*): 14709 cannot cross between network interfaces on Windows, so skip this test 14710 until we find better test. 14711 14712Thu Jul 12 08:48:33 2012 Ryan Davis <ryand-ruby@zenspider.com> 14713 14714 * lib/minitest/*: Imported minitest 3.2.0 (r7598) 14715 * test/minitest/*: ditto 14716 14717Thu Jul 12 05:11:41 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14718 14719 * insns.def (defined): use method entry and id in cfp for proper 14720 superclass, since klass in iseq is shared by dynamically defined 14721 methods from the same block. [ruby-core:45831][Bug #6644] 14722 14723Thu Jul 12 01:49:07 2012 NARUSE, Yui <naruse@ruby-lang.org> 14724 14725 * lib/net/http.rb (Net::HTTP#connect): use local_host and local_port 14726 if specified. patched by Ricardo Amorim [Feature #6617] 14727 14728Wed Jul 11 17:36:39 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14729 14730 * ext/extmk.rb: append ENCOBJS to DLDOBJS but not EXTSOLIBS which is 14731 not a target, to compile enc/encinit.c. 14732 14733Wed Jul 11 12:38:20 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14734 14735 * ext/openssl/ossl_pkey_ec.c (ossl_ec_point_mul): nonstatic initializer 14736 of an aggregate type is a C99ism. 14737 14738 * ext/openssl/ossl_pkey_ec.c (ossl_ec_point_mul): get rid of VC++ 14739 warnings. 14740 14741Mon Jul 9 16:11:30 2012 Yuki Yugui Sonoda <yugui@google.com> 14742 14743 * vm_eval.c (rb_eval_string_from_file, 14744 rb_eval_string_from_file_protect): new functions to replace 14745 rb_compile_main_from_string() and ruby_eval_main(). 14746 14747 * nacl/pepper_ruby.c: Follows the change in vm_eval.c 14748 14749Mon Jul 9 14:05:42 2012 Yuki Yugui Sonoda <yugui@google.com> 14750 14751 Reverts a half of r36079. As we discussed on ruby-dev@ and IRC, 14752 we do not need to disclose intermediate representation of program. 14753 The program embedding CRuby should use rb_eval_string family. 14754 * include/ruby/ruby.h (ruby_opaque_t): removed. 14755 (ruby_compile_main_from_file, ruby_compile_main_from_string, 14756 ruby_eval_main): removed. 14757 14758 * eval.c (ruby_eval_main_internal): became ruby_exec_internal() again. 14759 (ruby_eval_main): removed. 14760 14761 * ruby.c (PREPARE_PARSE_MAIN) reverted. 14762 (parse_and_compile_main, ruby_compile_main_from_file, 14763 ruby_compile_main_from_string): removed 14764 14765Wed Jul 11 10:16:38 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14766 14767 * include/ruby.h (HAVE_RUBY_THREAD_H): to show ruby/thread.h to be 14768 available. fixup of r36355. 14769 14770Wed Jul 11 03:26:47 2012 Eric Hodel <drbrain@segment7.net> 14771 14772 * ext/zlib/zlib.c: Added streaming support to inflate processing. 14773 This allows zlib streams to be processed without huge memory growth. 14774 [Feature #6612] 14775 * NEWS: ditto 14776 * ext/zlib/zlib.c (zstream_expand_buffer): Uses rb_yield when a block 14777 is given for streaming support. Refactored to use 14778 zstream_expand_buffer_into to remove duplicate code. 14779 * ext/zlib/zlib.c (zstream_expand_buffer_protect): Added wrapper 14780 function to pass jump state back through GVL-free section to allow 14781 zstream clean-up before terminating the ruby call. 14782 * ext/zlib/zlib.c (zstream_expand_buffer_without_gvl): Acquire GVL to 14783 yield processed chunk of output stream. 14784 * ext/zlib/zlib.c (zstream_detach_buffer): When a block is given, 14785 returns Qnil mid-stream and yields the output buffer at the end of 14786 the stream. 14787 * test/zlib/test_zlib.rb: Updated tests 14788 14789Tue Jul 10 22:57:03 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14790 14791 * include/ruby/thread.h: new header file for thread stuff. 14792 14793 * thread.c (rb_thread_call_without_gvl): export. [Feature#4328] 14794 returns void* instead of VALUE. [Feature #5543] 14795 14796 * thread.c (rb_thread_blocking_region): deprecate. [ruby-core:46295] 14797 14798Tue Jul 10 10:48:59 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14799 14800 * include/ruby/win32.h (NT, NtInitialize): removed unused old macros. 14801 14802Tue Jul 10 10:43:37 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14803 14804 * configure.in: removed --enable/disable-win95 options. (see r36342) 14805 14806Tue Jul 10 00:44:41 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 14807 14808 * include/ruby/ruby.h: Removed RUBY_GLOBAL_SETUP completely. It is 14809 no meaning definition since r24894. 14810 * main.c: ditto. 14811 * nacl/pepper_main.c: ditto. 14812 14813Mon Jul 9 23:59:36 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 14814 14815 * dln.c: Simplify and make consistent an ifdef for Mac OS X. 14816 * ext/socket/rubysocket.h: ditto. 14817 * ext/tk/stubs.c: ditto. 14818 * io.c: ditto. 14819 * process.c: ditto. 14820 * signal.c: ditto. 14821 * vm_dump.c: ditto. 14822 14823Mon Jul 9 17:37:35 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14824 14825 * win32/win32.c (win95_stat): removed unnecessary macro. 14826 14827Mon Jul 9 17:22:16 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14828 14829 * win32/configure.bat, win32/setup.mak, win32/Makefile.sub: omitted 14830 Win9x support. removed --enable/disable-win95 options. 14831 14832 * include/ruby/win32.h, file.c, win32/win32.c: ditto. 14833 14834 * win32/README.win32: ditto. 14835 14836Mon Jul 9 13:28:34 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14837 14838 * configure.in (DLDFLAGS): use TARGET_ENTRY to specify an entry point 14839 instead of TARGET which may contain non-identifier characters. 14840 14841 * lib/mkmf.rb (create_makefile): add TARGET_NAME which is the first 14842 part consists of only word characters. [ruby-core:46248][Bug #6709] 14843 14844Sun Jul 8 07:36:19 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14845 14846 * parse.y (shadowing_lvar_gen, warn_unused_var): no warnings for 14847 variables starting with _. [ruby-core:46160][Feature #6693] 14848 14849Sat Jul 7 23:07:30 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 14850 14851 * test/csv/test_features.rb: add require for Tempfile. 14852 * test/csv/test_serialization.rb: ditto. 14853 14854Fri Jul 6 06:49:50 2012 Eric Hodel <drbrain@segment7.net> 14855 14856 * array.c (rb_ary_aref): Added a description of the behavior of 14857 index positioning. [Bug #6680] 14858 * array.c (rb_ary_aset): ditto. Reordered sentences for clarity. 14859 * string.c (rb_str_aref_m): Added a description of the behavior of 14860 index positioning 14861 14862Fri Jul 6 05:38:44 2012 Eric Hodel <drbrain@segment7.net> 14863 14864 * string.c (rb_str_bytesize): Improve documentation. Patch by Oscar 14865 Del Ben from github issue #138. 14866 * string.c (rb_str_empty): ditto. 14867 * string.c (rb_str_times): ditto. 14868 * string.c (rb_str_dump): ditto. 14869 * string.c (rb_str_center): ditto. 14870 14871Fri Jul 6 04:05:59 2012 Eric Hodel <drbrain@segment7.net> 14872 14873 * ext/zlib/zlib.c (zstream_expand_buffer_without_gvl): Use 14874 ruby_xrealloc() to avoid crash with CALC_EXACT_MALLOC_SIZE. 14875 14876Thu Jul 5 17:32:19 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14877 14878 * internal.h: move ThreadShield declarations from intern.h. 14879 14880Thu Jul 5 16:00:24 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14881 14882 * thread.c (ThreadShield): rename from Barrier. 14883 14884Thu Jul 5 15:14:50 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14885 14886 * bootstraptest/runner.rb (show_progress): refine error output. do not 14887 count non-empty error message, but just warn. 14888 14889 * bootstraptest/runner.rb (error): show errors immediately if tty. 14890 14891Thu Jul 5 12:28:11 2012 Akinori MUSHA <knu@iDaemons.org> 14892 14893 * test/net/http/test_httpresponses.rb: Add a test file for 14894 Net::HTTPResponses and put a test case for the previous bug. 14895 14896Thu Jul 5 06:33:52 2012 Mark Dodwell <mark@mkdynamic.co.uk> 14897 14898 * lib/net/http/responses.rb: Fix 4xx classes to inherit correctly 14899 from Net::HTTPClientError. [Bug #6700] 14900 14901Wed Jul 4 21:55:35 2012 NARUSE, Yui <naruse@ruby-lang.org> 14902 14903 * ruby.c (proc_options): warn only if -K and -w option is specified. 14904 see also r36274 [Feature #5206] 14905 14906Wed Jul 4 21:41:44 2012 Naohisa Goto <ngotogenome@gmail.com> 14907 14908 * gc.c, atomic.h (ATOMIC_SIZE_*): moved from gc.c to atomic.h 14909 [ruby-dev:45909] 14910 14911Wed Jul 4 19:13:15 2012 Masaki Suketa <masaki.suketa@nifty.ne.jp> 14912 14913 * test/win32ole/test_win32ole.rb (test_s_codepage_changed): 14914 FileSystemObject only supports ANSI or UTF-16LE encoding. 14915 Patch by h.shirosaki (Hiroshi Shirosaki) [ruby-trunk - Bug #6650] 14916 14917Wed Jul 4 11:52:12 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14918 14919 * gc.c (ATOMIC_SIZE_*): 64bit Windows support. 14920 14921Wed Jul 4 11:11:28 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14922 14923 * eval.c (rb_frame_callee, rb_f_callee_name): fix to return the 14924 called id. this longstanding bug has been caused and blocked by 14925 the structure of old rb_control_frame_t and rb_iseq_t. 14926 14927 * vm_insnhelper.c (vm_push_frame): set proper method entry. 14928 14929Wed Jul 4 08:29:31 2012 Eric Hodel <drbrain@segment7.net> 14930 14931 * array.c (rb_ary_aref): Updated documentation to indicate the 14932 starting index is an index into the array or string. Updated 14933 examples to show behavior of indexes at the end of an array or 14934 string. Based on patch by Marcus Stollsteimer. [Bug #6680] 14935 * array.c (rb_ary_aset): ditto. 14936 * string.c (rb_str_aref): ditto. Also added descriptive argument 14937 names to call-seq section. 14938 14939Wed Jul 4 07:05:59 2012 Eric Hodel <drbrain@segment7.net> 14940 14941 * test/zlib/test_zlib.rb (test_inflate_partial_input): Added test for 14942 inflating incomplete zlib streams. 14943 14944Tue Jul 3 23:14:16 2012 Naohisa Goto <ngotogenome@gmail.com> 14945 14946 * gc.c (ATOMIC_SIZE_EXCHANGE): fix function name on Solaris [Bug #6689] 14947 [ruby-dev:45904] 14948 14949Tue Jul 3 16:07:49 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14950 14951 * gc.c (vm_malloc_fixup, vm_xrealloc, vm_xfree, after_gc_sweep): use 14952 atomic operations to update malloc_params. 14953 14954Tue Jul 3 14:50:16 2012 Eric Hodel <drbrain@segment7.net> 14955 14956 * ext/zlib/zlib.c (zstream_run_func): Don't exit run loop for buffer 14957 error. [Feature #6615] 14958 * ext/zlib/zlib.c: Fix style to match existing functions. 14959 14960Tue Jul 3 12:05:51 2012 NAKAMURA Usaku <usa@ruby-lang.org> 14961 14962 * ext/dl/cfunc.c (rb_dlcfunc_call): also needed the workaround for VC8 14963 for x64. [ruby-dev:45875] [Bug #6676] 14964 reported by aves_ramphastos (Seigo Ishigane) 14965 14966Tue Jul 3 11:56:46 2012 Eric Hodel <drbrain@segment7.net> 14967 14968 * ext/zlib/zlib.c (zstream_detach_buffer): Refactored tainting of 14969 output string, moving it from the callee to zstream_detach_buffer. 14970 * ext/zlib/zlib.c (rb_zstream_finish): ditto 14971 * ext/zlib/zlib.c (rb_zstream_flush_next_out): ditto 14972 * ext/zlib/zlib.c (rb_deflate_deflate): ditto 14973 * ext/zlib/zlib.c (rb_deflate_flush): ditto 14974 * ext/zlib/zlib.c (rb_inflate_inflate): ditto 14975 14976Tue Jul 3 11:16:06 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 14977 14978 * common.mk (runnable): make symbolic links to run in build directory. 14979 14980Tue Jul 3 10:46:06 2012 NARUSE, Yui <naruse@ruby-lang.org> 14981 14982 * ruby.c (proc_options): warn if -K option is specified. [Feature #5206] 14983 14984Tue Jul 3 06:12:13 2012 Eric Hodel <drbrain@segment7.net> 14985 14986 * object.c (Init_Object): Added RDoc location pointers for 14987 Kernel#methods, Kernel#protected_methods, Kernel#private_methods and 14988 Kernel#public_methods. [Bug #6666] 14989 14990Tue Jul 3 06:02:54 2012 Eric Hodel <drbrain@segment7.net> 14991 14992 * ext/zlib/zlib.c (zstream_run): Process zlib streams without GVL. 14993 [Feature #6615] 14994 * NEWS: ditto. 14995 14996Mon Jul 2 22:13:04 2012 Tanaka Akira <akr@fsij.org> 14997 14998 * thread.c (rb_thread_aref): add explanation for why Thread#[] and 14999 Thread#[]= are fiber-local and not thread-local. 15000 reported by Julien A. [ruby-core:41606] [ruby-trunk - Bug #5750] 15001 15002Mon Jul 2 21:25:55 2012 Tanaka Akira <akr@fsij.org> 15003 15004 * time.c (timew_out_of_timet_range): specialization for 15005 SIZEOF_TIME_T == SIZEOF_INT64_T. 15006 15007Mon Jul 2 17:06:32 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15008 15009 * class.c (rb_include_module): include modules after the origin. 15010 15011 * class.c (include_modules_at): skip prepended modules. 15012 15013 * class.c (rb_prepend_module): now basic.klass in ICLASS refers the 15014 old original class/module. [ruby-dev:45868][Bug #6662] 15015 15016 * class.c (rb_mod_ancestors): ditto. 15017 15018 * vm_method.c (search_method): search method entry from the origin 15019 iclass. 15020 15021Mon Jul 2 05:54:58 2012 Tadayoshi Funaba <tadf@dotrb.org> 15022 15023 * ext/date/date_core.c: [ruby-core:46058]. 15024 15025Mon Jul 2 05:35:43 2012 Tadayoshi Funaba <tadf@dotrb.org> 15026 15027 * ext/date/date_core.c (d_lite_marshal_load): accepts old dump. 15028 15029Mon Jul 2 03:21:53 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 15030 15031 * README.EXT.ja: fixed args of have_struct_member() , 15032 create_makefile() same as r35977. however, mkmf.rb include 15033 no Japanese-docs, so Appendix C was not removed. [Bug #6597] 15034 15035Fri Jun 29 05:08:41 2012 NARUSE, Yui <naruse@ruby-lang.org> 15036 15037 * lib/test/unit/parallel.rb: workaround fix for rubygems. 15038 RubyGems can't find rake if the source directory is not equal to 15039 the directory which is running the test. [Bug #6604] 15040 15041Thu Jun 28 20:33:15 2012 Luis Lavena <luislavena@gmail.com> 15042 15043 * test/win32ole/test_win32ole.rb (test_s_codepage_changed): 15044 FileSystemObject only supports ANSI or UTF-16LE encoding. 15045 Patch by bosko (Bosko Ivanisevic) [ruby-trunk - Bug #6650] 15046 15047Thu Jun 28 09:27:09 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 15048 15049 * class.c (class_instance_method_list): consider prepended Class/Module 15050 when recur != 0. [ruby-dev:45863] [Bug #6660] 15051 15052 * test/ruby/test_module.rb (test_prepend_instance_methods_false): add 15053 a test for it. 15054 15055 15056Thu Jun 28 06:12:42 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15057 15058 * class.c (rb_mod_ancestors): fix ancestors order. 15059 [ruby-core:45919][Bug #6658] [ruby-dev:45861][Bug #6659] 15060 15061Wed Jun 27 21:28:59 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 15062 15063 * lib/racc/parser.rb: NotImplementError is not exist. 15064 15065 * lib/irb/output-method.rb (IRB::OutputMethod#print): ditto. 15066 15067Wed Jun 27 21:31:13 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15068 15069 * class.c (rb_prepend_module): ancestors of prepending module also 15070 should be included. [ruby-core:45914][Bug #6654] 15071 15072Wed Jun 27 21:01:32 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15073 15074 * class.c (class_instance_method_list): m_tbl in prepended 15075 class/module is NULL. [ruby-core:45915][Bug #6655] 15076 15077Wed Jun 27 16:48:48 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15078 15079 * class.c (rb_prepend_module): prepend module into another module. 15080 15081 * eval.c (rb_mod_prepend): new method Module#prepend. [Feature #1102] 15082 15083Wed Jun 27 09:15:46 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15084 15085 * io.c (is_popen_fork): check if fork and raise NotImplementedError if 15086 unavailable. 15087 15088 * io.c (rb_io_s_popen): allow environment variables hash and exec 15089 options as flat parameters, not in an array arguments. 15090 [Feature#6651] [EXPERIMENTAL] 15091 15092 * process.c (rb_execarg_extract_options): extract exec options, but no 15093 exceptions on non-exec options and returns them as a Hash. 15094 15095 * process.c (rb_execarg_setenv): set environment variables. 15096 15097Tue Jun 26 16:57:14 2012 Koichi Sasada <ko1@atdot.net> 15098 15099 * thread_pthread.c (register_cached_thread_and_wait): 15100 return immediately if malloc() failed. 15101 [ruby-core:43960] [ruby-trunk - Bug #6235] 15102 15103 * thread_pthread.c (USE_THREAD_CACHE): check already defined or not. 15104 15105Tue Jun 26 10:01:56 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15106 15107 * io.c (rb_io_s_popen): revert r36213 "popen: shell commands with 15108 envvar" because it disabled to let single command bypass shell. 15109 15110Mon Jun 25 17:49:28 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15111 15112 * class.c (rb_mix_module): revert Module#mix. 15113 15114Mon Jun 25 16:57:38 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15115 15116 * proc.c (rb_mod_define_method): allow method transplanting from a 15117 module to either class or module. [ruby-core:34267][Feature #4254] 15118 15119Mon Jun 25 11:34:45 2012 NAKAMURA Usaku <usa@ruby-lang.org> 15120 15121 * internal.h: use rb_pid_t instead of pid_t because of there is no 15122 definition of pid_t here on Windows. 15123 15124Mon Jun 25 00:25:01 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 15125 15126 * configure.in (for stack end address): remove human68k specific 15127 check. It is no longer supported. 15128 15129Sun Jun 24 23:02:17 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15130 15131 * io.c (pipe_open): merge win32 code using spawnv(). 15132 15133Sun Jun 24 22:53:42 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15134 15135 * process.c (check_exec_fds): separate check_exec_fds_1() since 15136 nonstatic initializer of an aggregate type is not allowed by C89. 15137 15138Sun Jun 24 07:47:17 2012 Tanaka Akira <akr@fsij.org> 15139 15140 * internal.h (rb_execarg): options field removed. 15141 15142 * process.c: follow the rb_execarg change. 15143 15144Sat Jun 23 23:48:21 2012 Tanaka Akira <akr@fsij.org> 15145 15146 * process.c (proc_spawn_cmd): unused variable removed to suppress a 15147 warning. 15148 (save_env): ditto. 15149 15150 [ruby-core:45797] reported by Luis Lavena. 15151 15152Sat Jun 23 23:19:31 2012 Tanaka Akira <akr@fsij.org> 15153 15154 * internal.h (rb_execarg): add new_pgroup_given and new_pgroup_flag 15155 fields. 15156 15157 * process.c (EXEC_OPTION_NEW_PGROUP): removed. 15158 (proc_spawn_cmd): take a struct rb_execarg argument. 15159 use the new fields. 15160 (rb_execarg_addopt): use the new fields. 15161 (rb_spawn_process): follow the proc_spawn_cmd change. 15162 15163 [ruby-core:45794] [ruby-trunk - Bug #6633] reported by Luis Lavena. 15164 15165Sat Jun 23 20:26:36 2012 Tanaka Akira <akr@fsij.org> 15166 15167 * internal.h (rb_execarg): add fd_dup2, fd_close, fd_open, 15168 fd_dup2_child fields. 15169 15170 * process.c (EXEC_OPTION_DUP2): removed. 15171 (EXEC_OPTION_CLOSE): removed. 15172 (EXEC_OPTION_OPEN): removed. 15173 (EXEC_OPTION_DUP2_CHILD): removed. 15174 (mark_exec_arg): mark the new fields. 15175 (check_exec_redirect1): change condition for default option. 15176 (check_exec_redirect): take a struct rb_execarg argument. 15177 use the new fields. 15178 (rb_execarg_addopt): follow the check_exec_redirect change. 15179 (check_exec_fds): use the new fields. 15180 (save_redirect_fd): ditto. 15181 15182Sat Jun 23 19:01:18 2012 Tanaka Akira <akr@fsij.org> 15183 15184 * process.c (rb_execarg_fixup): fix envopts condition. 15185 15186Sat Jun 23 18:44:13 2012 Tanaka Akira <akr@fsij.org> 15187 15188 * process.c (check_exec_redirect1): extracted from 15189 check_exec_redirect. 15190 15191Sat Jun 23 17:22:02 2012 Tanaka Akira <akr@fsij.org> 15192 15193 * process.c (save_env): don't use EXEC_OPTION_UNSETENV_OTHERS. 15194 (rb_execarg_run_options): ditto. 15195 15196Sat Jun 23 17:04:08 2012 Tanaka Akira <akr@fsij.org> 15197 15198 * internal.h (rb_execarg): add env_modification field. 15199 15200 * process.c (EXEC_OPTION_ENV): removed. 15201 (mark_exec_arg): mark env_modification field. 15202 (rb_exec_fillarg): update the new field, instead of options array. 15203 (rb_execarg_fixup): use the new field. 15204 (save_env): ditto. 15205 (rb_execarg_run_options): ditto. 15206 15207Sat Jun 23 16:27:01 2012 Tanaka Akira <akr@fsij.org> 15208 15209 * internal.h (rb_execarg): add rlimit_limits field. 15210 15211 * process.c (EXEC_OPTION_RLIMIT): removed. 15212 (mark_exec_arg): mark rlimit_limits field. 15213 (rb_execarg_addopt): update the new fields, instead of options array. 15214 (run_exec_rlimit): use the new field. 15215 (rb_execarg_run_options): clear sarg using MEMZERO. use the new 15216 field. 15217 15218Sat Jun 23 14:29:25 2012 Tanaka Akira <akr@fsij.org> 15219 15220 * internal.h (rb_execarg): add chdir_given and chdir_dir fields. 15221 15222 * process.c (EXEC_OPTION_CHDIR): removed. 15223 (mark_exec_arg): mark chdir_dir field. 15224 (rb_execarg_addopt): update the new fields, instead of options array. 15225 (rb_execarg_run_options): use the new fields. 15226 15227Sat Jun 23 13:20:47 2012 Tanaka Akira <akr@fsij.org> 15228 15229 * internal.h (rb_execarg): add close_others_given, close_others_do and 15230 close_others_maxhint fields. 15231 15232 * process.c (EXEC_OPTION_CLOSE_OTHERS): removed. 15233 (rb_execarg_addopt): update the new fields, instead of options array. 15234 (check_exec_fds): take eargp as an argument. update the 15235 close_others_maxhint field. 15236 (rb_execarg_fixup): follow the argument change of check_exec_fds. 15237 (rb_execarg_run_options): use the new fields. 15238 15239Sat Jun 23 10:41:59 2012 Tanaka Akira <akr@fsij.org> 15240 15241 * internal.h (rb_execarg): add unsetenv_others_given and 15242 unsetenv_others_do fields. 15243 15244 * process.c (EXEC_OPTION_UNSETENV_OTHERS): removed. 15245 (rb_execarg_addopt): update the new fields, instead of options array. 15246 (rb_execarg_fixup): use the new fields. 15247 15248Sat Jun 23 09:35:47 2012 Tanaka Akira <akr@fsij.org> 15249 15250 * process.c: use the variable name "soptions" for sargp->options. 15251 15252Sat Jun 23 09:17:49 2012 Tanaka Akira <akr@fsij.org> 15253 15254 * process.c: use the name "sargp" for struct rb_execarg variables 15255 consistently for saving process attributes. 15256 15257 * io.c: ditto. 15258 15259Sat Jun 23 07:59:57 2012 Tanaka Akira <akr@fsij.org> 15260 15261 * process.c: use the name "eargp" for struct rb_execarg variables 15262 consistently except for saving process attributes. 15263 15264 * io.c: ditto. 15265 15266 * ext/pty/pty.c: ditto. 15267 15268Wed Jun 20 18:27:03 2012 Yuki Yugui Sonoda <yugui@google.com> 15269 15270 * common.mk: Add missing dependencies. 15271 15272Fri Jun 22 20:27:39 2012 Tanaka Akira <akr@fsij.org> 15273 15274 * internal.h (rb_execarg): add pgroup_given and pgroup_pgid fields. 15275 15276 * process.c (EXEC_OPTION_PGROUP): removed. 15277 (rb_execarg_addopt): update the new fields, instead of options array. 15278 (run_exec_pgroup): take a struct rb_execarg argument. refer the new 15279 fields. 15280 (rb_execarg_run_options): follow run_exec_pgroup change. 15281 15282Fri Jun 22 18:48:51 2012 Kouhei Sutou <kou@cozmixng.org> 15283 15284 * README.EXT, README.EXT.ja: use "sval" for the third argument 15285 name of Data_Wrap_Struct(). 15286 Suggested by @satoh_fumiyasu. Thanks!!! 15287 15288Fri Jun 22 18:04:26 2012 Koichi Sasada <ko1@atdot.net> 15289 15290 * iseq.c, vm_eval.c: set th->base_block properly. 15291 th->base_block is information for (a) parsing, (b) compiling 15292 and (c) setting up the frame to execute the program passed by 15293 `eval' method. For example, (1) parser need to know up-level 15294 variables to detect it is variable or method without paren. 15295 Befor (a), (b) and (c), VM set th->base_block by passed bindng 15296 (or previous frame information). After execute (a), (b) and (c), 15297 VM should clear th->base_block. However, if (a), (b) or (c) 15298 raises an exception, then th->base_block is not cleared. 15299 Problem is that the uncleared value th->balo_block is used for 15300 irrelevant iseq compilation. It causes SEGV or critical error. 15301 I tried to solve this problem: to clear them before exception, 15302 but finally I found out that it is difficult to do it (Ruby 15303 program can be run in many places). 15304 Because of this background, I set th->base_block before 15305 compiling iseq and restore it after compiling. 15306 Basically, th->base_block is dirty hack (similar to global 15307 variable) and this patch is also dirty. 15308 15309 * bootstraptest/test_eval.rb: add a test for above. 15310 15311 * internal.h: remove unused decl. 15312 15313 * iseq.c (rb_iseq_compile_with_option): add base_block parameter. 15314 set th->base_block before compilation and restore it after 15315 compilation. 15316 15317 * ruby.c (require_libraries): pass 0 as base_block instead of 15318 setting th->base_block 15319 15320 * tool/compile_prelude.rb (prelude_eval): apply above changes. 15321 15322 * vm.c, vm_eval.c: ditto. 15323 15324 * vm_core.h: add comments. 15325 15326Fri Jun 22 18:19:38 2012 Tanaka Akira <akr@fsij.org> 15327 15328 * process.c: pass struct rb_execarg value instead of its options 15329 field for saving process attribute changing functions. 15330 (save_redirect_fd): take a struct rb_execarg argument. 15331 (run_exec_dup2): ditto. 15332 (run_exec_close): ditto. 15333 (run_exec_open): ditto. 15334 (run_exec_dup2_child): ditto. 15335 (run_exec_pgroup): ditto. 15336 (run_exec_rlimit): ditto. 15337 (save_env): ditto. 15338 (rb_execarg_run_options): follow the above functions change. 15339 15340Fri Jun 22 17:55:48 2012 Koichi Sasada <ko1@atdot.net> 15341 15342 * test/ruby/test_backtrace.rb: decrease recursion depth 15343 to reduce consuming stack size. 15344 15345Fri Jun 22 13:36:50 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15346 15347 * random.c (random_init, random_load): cannot initialize frozen object 15348 again, nor with tainted/untrusted object. [Bug #6540] 15349 15350Fri Jun 22 13:32:33 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15351 15352 * error.c (rb_check_copyable): new function, to ensure the target is 15353 not frozen and the source is not tainted nor untrusted. 15354 15355Fri Jun 22 05:55:20 2012 Eric Hodel <drbrain@segment7.net> 15356 15357 * eval.c (ruby_cleanup): Fixed typo. Patch by Trever Dawe. 15358 Fixes #131 (github). [ruby-trunk - Bug #6619] 15359 15360Thu Jun 21 21:16:58 2012 Tanaka Akira <akr@fsij.org> 15361 15362 * process.c (rb_execarg_addopt): take a VALUE argument instead of 15363 struct rb_execarg. 15364 (rb_exec_arg_addopt): follow the rb_execarg_addopt change. 15365 (check_exec_options_i): ditto. 15366 15367 * io.c (pipe_open): follow the rb_execarg_addopt change. 15368 15369 * internal.h (rb_execarg_addopt): follow the definition change. 15370 15371Thu Jun 21 20:34:19 2012 Tanaka Akira <akr@fsij.org> 15372 15373 * process.c (rb_exec_fillarg): take a VALUE argument instead of 15374 struct rb_execarg. 15375 (rb_check_exec_options): ditto. 15376 (check_exec_options_i): ditto. 15377 15378Thu Jun 21 19:48:05 2012 Tanaka Akira <akr@fsij.org> 15379 15380 * process.c (rb_exec_async_signal_safe): use rb_execarg_run_options 15381 instead of rb_run_exec_options_err. 15382 (rb_spawn_process): ditto. 15383 15384Thu Jun 21 19:02:43 2012 Tanaka Akira <akr@fsij.org> 15385 15386 * process.c (rb_exec_fillarg): take a VALUE argument instead of 15387 struct rb_execarg. 15388 (rb_execarg_init): follow the rb_exec_fillarg change. 15389 15390Thu Jun 21 18:36:43 2012 Tanaka Akira <akr@fsij.org> 15391 15392 * process.c (rb_execarg_init): take a VALUE argument instead of 15393 struct rb_execarg. 15394 (rb_execarg_new): follow the rb_execarg_init change. 15395 (rb_exec_arg_init): ditto. 15396 15397 * internal.h (rb_execarg_init): follow the definition change. 15398 15399Thu Jun 21 17:20:44 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15400 15401 * parse.y (new_args_tail_gen): fix GC problem of keyword rest 15402 argument. the wrapped struct should be bound to the wrapping node 15403 before assignment of child nodes, to get rid of the case the 15404 children are referred by only the struct pointer which is not a 15405 subject of GC. [ruby-core:45744] 15406 15407Thu Jun 21 07:06:52 2012 Koichi Sasada <ko1@atdot.net> 15408 15409 * error.c (err_append): rename err_append() to compile_err_append() 15410 and move definition body. err_append() is used only by compiling. 15411 15412Thu Jun 21 06:21:54 2012 Tanaka Akira <akr@fsij.org> 15413 15414 * process.c (rb_execarg_fixup): take a VALUE argument instead of 15415 struct rb_execarg. 15416 15417 * internal.h (rb_execarg_fixup): follow the definition change. 15418 15419 * io.c (pipe_open): follow rb_execarg_fixup change. 15420 15421 * ext/pty/pty.c (establishShell): ditto. 15422 15423Wed Jun 20 21:25:37 2012 Tanaka Akira <akr@fsij.org> 15424 15425 * internal.h (struct rb_execarg): add umask_given and umask_mask 15426 fields. 15427 15428 * process.c (STATIC_ASSERT): removed. 15429 (rb_execarg_addopt): follow the rb_execarg change. 15430 (rb_execarg_run_options): ditto. 15431 15432Wed Jun 20 20:38:23 2012 Tanaka Akira <akr@fsij.org> 15433 15434 * internal.h (struct rb_execarg) moved and renamed from 15435 struct rb_exec_arg in intern.h. 15436 15437 * include/ruby/intern.h (struct rb_exec_arg): refer Data object which 15438 contains struct rb_execarg. 15439 15440 * process.c: use struct rb_execarg instead of struct rb_exec_arg 15441 except functions declared in intern.h. 15442 (rb_exec_arg_addopt): extract a pointer to struct rb_execarg from 15443 struct rb_exec_arg. 15444 (rb_exec_arg_init): ditto. 15445 (rb_exec_arg_fixup): ditto. 15446 (rb_run_exec_options_err): ditto. 15447 (rb_run_exec_options): ditto. 15448 (rb_exec_err): ditto. 15449 (rb_exec): ditto. 15450 15451 * io.c: use struct rb_execarg instead of struct rb_exec_arg. 15452 15453 * ext/pty/pty.c: ditto. 15454 15455Wed Jun 20 19:13:25 2012 Tanaka Akira <akr@fsij.org> 15456 15457 * internal.h (rb_execarg_new): declared. 15458 (rb_execarg_get): ditto. 15459 15460 * process.c (mark_exec_arg): new function. 15461 (free_exec_arg): ditto. 15462 (memsize_exec_arg): ditto. 15463 (exec_arg_data_type): defined. 15464 (rb_execarg_new): new function. 15465 (rb_execarg_get): ditto. 15466 (rb_f_exec): use rb_execarg_new. 15467 (rb_spawn_internal): ditto. 15468 (rb_f_spawn): ditto. 15469 15470 * io.c (pipe_open_v): use rb_execarg_new. 15471 (pipe_open_s): ditto. 15472 15473 * ext/pty/pty.c (establishShell): use rb_execarg_new. 15474 15475Wed Jun 20 16:36:14 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15476 15477 * missing/setproctitle.c (environ): use (*_NSGetEnviron()) instead of 15478 environ on Darwin for namespace cleanness, same as [ruby-core:00537]. 15479 [ruby-core:45615] [Bug #6576] 15480 15481Wed Jun 20 11:33:04 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15482 15483 * process.c (rb_execarg_addopt): always make Fixnum, and ignore higher 15484 bits in too large umask value. 15485 15486Wed Jun 20 11:24:35 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15487 15488 * lib/test/unit.rb (Test::Unit::Runner#_run_parallel): deal with 15489 sudden-death of workers. 15490 15491Mon Jun 18 20:34:20 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 15492 15493 * time.c (init_leap_second_info): fix non-ANSI function declaration. 15494 15495Mon Jun 18 20:29:04 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 15496 15497 * ruby.c (rb_f_sub): use ansi style declaration. 15498 * ruby.c (rb_f_gsub): ditto. 15499 * ruby.c (rb_f_chomp): ditto. 15500 15501Mon Jun 18 20:26:23 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 15502 15503 * random.c (rb_random_int32): get rid of "warning: constant 0x100000000 15504 is so big it is long" warning. 15505 15506Mon Jun 18 20:07:23 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 15507 15508 * dir.c (dir_initialize): get rid of "unused return: argc = rb_scan_args()" 15509 warning. 15510 15511Mon Jun 18 19:31:20 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 15512 15513 * include/ruby/missing.h: include math.h before checking INFINITY 15514 and NAN. Otherwise, strange macro redefinition will occur. 15515 15516Mon Jun 18 19:12:37 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 15517 15518 * array.c (ary_reverse): use ansi style declaration. 15519 15520Tue Jun 19 18:43:50 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15521 15522 * include/ruby/backward/rubysig.h: fix visibility. [Bug #6607] 15523 15524Tue Jun 19 17:51:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15525 15526 * process.c (rb_execarg_run_options): do not call any methods in the 15527 async-signal-safe function. mask has been checked with NUM2MODET() 15528 already and converted with LONG2NUM(). 15529 15530Tue Jun 19 11:59:56 2012 NARUSE, Yui <naruse@ruby-lang.org> 15531 15532 * ext/readline/readline.c (Init_readline): don't set 0 to 15533 rl_catch_signals and rl_catch_sigwinch. [Bug #5423] 15534 15535Tue Jun 19 11:52:59 2012 NARUSE, Yui <naruse@ruby-lang.org> 15536 15537 * ext/readline/readline.c (readline_s_get_special_prefixes): suppress 15538 warning: uninitialized instance variable. 15539 15540Tue Jun 19 11:43:16 2012 NARUSE, Yui <naruse@ruby-lang.org> 15541 15542 * ext/readline/readline.c (readline_getc): fix editline compatibility 15543 broken by r36123. [Bug #6601] 15544 15545Mon Jun 18 17:10:08 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15546 15547 * string.c (rb_str_subpos): split from rb_str_substr. returns 15548 adjusted position for substring. 15549 15550Mon Jun 18 10:42:57 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15551 15552 * ext/readline/readline.c (readline_getc): deal with ESC just followed 15553 by ASCII as meta prefix in incremental search mode. based on the 15554 patch from rctay (Tay Ray Chuan) at [ruby-core:45682]. [Bug #6601] 15555 15556Sun Jun 17 22:23:53 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15557 15558 * dir.c (rb_file_directory_p): move documentation for Dir.exist? from 15559 file.c so that the proper description will be shown instead of the 15560 documentation of File.directory?. [ruby-core:45685] 15561 15562Sun Jun 17 16:21:01 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15563 15564 * thread_win32.h (rb_thread_lock_t): make a union for USE_WIN32_MUTEX. 15565 this internal is used only in thread_win32.c, but has to be complete 15566 to define rb_thread_t. 15567 15568 * thread_win32.c (native_mutex_lock, native_mutex_destroy): fix for 15569 USE_WIN32_MUTEX. 15570 15571 * thread_win32.c (native_cond_timedwait_ms): rename reserved pattern 15572 name. user defined symbols should not start with __. 15573 15574Sat Jun 16 19:24:01 2012 Tadayoshi Funaba <tadf@dotrb.org> 15575 15576 * ext/date/date_core.c: define date_sg_t. 15577 15578Sat Jun 16 18:46:57 2012 Tadayoshi Funaba <tadf@dotrb.org> 15579 15580 * ext/date/date_tmx.h: offset in struct tmx_funcs is now int. 15581 * ext/date/date_strftime.c: ditto. 15582 * ext/date/date_core.c: ditto. 15583 15584Sat Jun 16 18:31:46 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15585 15586 * eval.c (ruby_setup): set running state in the normal case before 15587 popping a tag. 15588 15589Sat Jun 16 07:46:03 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15590 15591 * lib/test/unit.rb (Test::Unit::Runner#_run_parallel): format workers 15592 results in the parent. 15593 15594Sat Jun 16 07:12:56 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15595 15596 * tool/runruby.rb (File.realpath): return real path of expanded path. 15597 [Bug #6598] 15598 15599Sat Jun 16 07:12:28 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15600 15601 * bootstraptest/runner.rb (main): ignore -j option for compatibility 15602 with test/unit. 15603 15604Sat Jun 16 07:11:52 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15605 15606 * lib/test/unit.rb (Test::Unit::Runner#puke): modify only result and 15607 drop useless reports, not override entirely. 15608 15609 * lib/test/unit/parallel.rb (Test::Unit::Worker#_run_suite): report 15610 unformatted results. formatting messages is not a workers task. 15611 15612 * lib/test/unit/parallel.rb (Test::Unit::Worker#puke): store raw 15613 results. 15614 15615Sat Jun 16 01:27:14 2012 Aaron Patterson <aaron@tenderlovemaking.com> 15616 15617 * ext/psych/lib/psych.rb: bumping psych to 1.3.3 15618 * ext/psych/psych.gemspec: ditto 15619 15620Fri Jun 15 20:54:28 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 15621 15622 * vm_backtrace.c (backtrace_collect): rename from backtreace_collect. 15623 15624Fri Jun 15 19:22:13 2012 Koichi Sasada <ko1@atdot.net> 15625 15626 * vm_core.h: remove VM_FRAME_MAGIC_FINISH (finish frame type). 15627 Before this commit: 15628 `finish frame' was place holder which indicates that VM loop 15629 needs to return function. 15630 If a C method calls a Ruby methods (a method written by Ruby), 15631 then VM loop will be (re-)invoked. When the Ruby method returns, 15632 then also VM loop should be escaped. `finish frame' has only 15633 one instruction `finish', which returns VM loop function. 15634 VM loop function executes `finish' instruction, then VM loop 15635 function returns itself. 15636 With such mechanism, `leave' instruction (which returns one 15637 frame from current scope) doesn't need to check that this `leave' 15638 should also return from VM loop function. 15639 Strictly, one branch can be removed from `leave' instruction. 15640 Consideration: 15641 However, pushing the `finish frame' needs costs because 15642 it needs several memory accesses. The number of pushing 15643 `finish frame' is greater than I had assumed. Of course, 15644 pushing `finish frame' consumes additional control frame. 15645 Moreover, recent processors has good branch prediction, 15646 with which we can ignore such trivial checking. 15647 After this commit: 15648 Finally, I decide to remove `finish frame' and `finish' 15649 instruction. Some parts of VM depend on `finish frame', 15650 so the new frame flag VM_FRAME_FLAG_FINISH is introduced. 15651 If this frame should escape from VM function loop, then 15652 the result of VM_FRAME_TYPE_FINISH_P(cfp) is true. 15653 `leave' instruction checks this flag every time. 15654 I measured performance on it. However on my environments, 15655 it improves some benchmarks and slows some benchmarks down. 15656 Maybe it is because of C compiler optimization parameters. 15657 I'll re-visit here if this cause problems. 15658 15659 * insns.def (leave, finish): remove finish instruction. 15660 15661 * vm.c, vm_eval.c, vm_exec.c, vm_backtrace.c, vm_dump.c: 15662 apply above changes. 15663 15664Fri Jun 15 19:11:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15665 15666 * lib/test/unit.rb (Test::Unit::Runner#puke): always add skipped 15667 results to the report for parallel test. [Bug #6595] 15668 15669Fri Jun 15 09:01:35 2012 Yuki Yugui Sonoda <yugui@google.com> 15670 15671 * nacl/pepper_main.c: Removed an unnecessary and erroneous inclusion. 15672 15673Thu Jun 14 22:59:56 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15674 15675 * configure.in (RUBY_CPPOUTFILE): check if output is really sent to 15676 specified file to tell if -o option works. [ruby-dev:45742] 15677 [Bug#6591] 15678 15679 * configure.in (RUBY_CPPOUTFILE): check if output file is actually 15680 created. [ruby-dev:45742] [Bug#6591] 15681 15682Thu Jun 14 22:10:50 2012 Tanaka Akira <akr@fsij.org> 15683 15684 * process.c (proc_exec_sh): don't strip leading spaces of the script. 15685 15686Thu Jun 14 15:54:02 2012 NAKAMURA Usaku <usa@ruby-lang.org> 15687 15688 * file.c (rb_file_s_basename, rb_file_s_dirname): documentation fix. 15689 File.basename and File.dirname support File::ALT_SEPARATOR. 15690 15691Thu Jun 14 11:10:10 2012 Yuki Yugui Sonoda <yugui@google.com> 15692 15693 * nacl/pepper_main.c: Applies the new embedding API to pepper_ruby. 15694 15695Thu Jun 14 10:44:41 2012 Yuki Yugui Sonoda <yugui@google.com> 15696 15697 * include/ruby/ruby.h: Grouped APIs for embedding CRuby interpreter. 15698 (ruby_setup, ruby_compile_main_from_file, 15699 ruby_compile_main_from_string, ruby_eval_main, 15700 ruby_set_script_name): new APIs to embed CRuby. 15701 (ruby_opaque_t) Opaque pointer to an internal data, to NODE or iseq 15702 in particular. 15703 15704 * eval.c (ruby_setup): Similar to ruby_init but returns an error code 15705 instead of exit(3) on error. 15706 (ruby_eval_main): Similar to ruby_exec_node but returns the 15707 evaluation result. 15708 (ruby_eval_main_internal): renamed from ruby_exec_internal. 15709 15710 * ruby.c (toplevel_context): new helper function. 15711 (PREPARE_EVAL_MAIN): moved. 15712 (process_options): refactored with new functions. 15713 (parse_and_compile_main) new helper function. 15714 (ruby_compile_main_from_file, ruby_compile_main_from_string) new API 15715 (ruby_set_script_name): new API. 15716 15717 15718Thu Jun 14 10:39:48 2012 Yuki Yugui Sonoda <yugui@google.com> 15719 15720 * eval.c: Add doxygen comments. 15721 15722 * ruby.c: ditto. 15723 15724 * thread_pthread.c: ditto 15725 15726 * version.c: ditto. 15727 15728 * vm_core.h: ditto. 15729 15730Thu Jun 14 10:16:07 2012 NARUSE, Yui <naruse@ruby-lang.org> 15731 15732 * configure.in: revert r36071 and add NetBSD to blacklist of -ansi. 15733 15734Thu Jun 14 07:59:12 2012 NARUSE, Yui <naruse@ruby-lang.org> 15735 15736 * thread_pthread.c (get_stack): Linux is the only OS which includes 15737 the size of guard page into the stack size. 15738 15739Thu Jun 14 06:21:00 2012 Eric Hodel <drbrain@segment7.net> 15740 15741 * lib/drb/drb.rb: Replace broken links to the English DRb book. 15742 Patch by Zachary Scott. [ruby-trunk - Bug #6544] 15743 15744Thu Jun 14 06:17:47 2012 Eric Hodel <drbrain@segment7.net> 15745 15746 * lib/observer.rb: Update broken link to the Programming Ruby book. 15747 Patch by Zachary Scott. [ruby-trunk - Bug #6536] 15748 * lib/drb/drb.rb: ditto. 15749 15750Thu Jun 14 05:23:05 2012 NARUSE, Yui <naruse@ruby-lang.org> 15751 15752 * regparse.c (PFETCH_READY): suppress Wunused-but-set-variable. 15753 15754 * regparse.c (is_onechar_cclass): restructured to clarify that c is 15755 used iff found == 1. 15756 15757Thu Jun 14 02:54:17 2012 NARUSE, Yui <naruse@ruby-lang.org> 15758 15759 * configure.in: use -fbuiltin with -ansi -std=iso9899:199409. 15760 This prevents errors introduced by disabling builtin functions, 15761 which is the sub-effect of -ansi/-std. 15762 Now NetBSD can use -ansi -std=iso9899:199409. 15763 Maybe mingw, cygwin and darwin can also. 15764 15765Thu Jun 14 02:53:30 2012 NARUSE, Yui <naruse@ruby-lang.org> 15766 15767 * Makefile.in: don't remove macros. now name2ctype uses macros. 15768 15769 * tool/enc-unicode.rb: add comment why it uses Hash#index. 15770 15771 * enc/unicode/{name2ctype.kwd,name2ctype.src,name2ctype.h.blt}: 15772 update to follow the current name2ctype.h. 15773 FYI current Unicode version is 6.1. 15774 15775Thu Jun 14 00:16:59 2012 Akinori MUSHA <knu@iDaemons.org> 15776 15777 * lib/net/http/responses.rb, lib/webrick/httpstatus.rb: Add HTTP 15778 response codes added in RFCs 2817 and 4918. [ruby-core:45547] 15779 [Feature #6569] 15780 15781 * lib/net/http/responses.rb: Rename Net::HTTPMultipleChoice to 15782 Net::HTTPMultipleChoices, leaving the former as alias to the 15783 latter for backward compatibility. [ruby-core:45547] 15784 [Feature #6569] 15785 15786 * lib/net/http/responses.rb: Add comments about unused, 15787 still-in-draft and private extension response codes. 15788 [ruby-core:45547] [Feature #6569] 15789 15790Wed Jun 13 22:44:32 2012 Naohisa Goto <ngotogenome@gmail.com> 15791 15792 * test/dl/test_func.rb (test_qsort1, test_qsort2): use TYPE_SIZE_T 15793 for size_t variables. [ruby-dev:45733] [Bug #6584] 15794 15795Wed Jun 13 22:18:01 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15796 15797 * configure.in: remove -ansi and -std options for lgamma_r() and 15798 finite(). 15799 15800Wed Jun 13 21:46:34 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15801 15802 * configure.in: cygwin does not provide some declarations in strict 15803 ANSI mode. 15804 15805Wed Jun 13 20:19:59 2012 Tanaka Akira <akr@fsij.org> 15806 15807 * process.c (rb_fork_internal): move a variable declaration. 15808 15809Wed Jun 13 17:54:38 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 15810 15811 * regparse.c (PFETCH_READY): this line was to suppress warning, 15812 but did emit warnings if -Wuninitialized was set. Assigning 15813 NULL instead if pfetch_prev should suffice the situation. 15814 15815Wed Jun 13 17:51:05 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15816 15817 * configure.in: cygwin needs C99 for some stuff, e.g., 15818 pthread_attr_setstacksize, sched_yield. 15819 15820Wed Jun 13 17:50:43 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15821 15822 * Makefile.in (.c.i): add warnflags to make the result consistent with 15823 compilation. 15824 15825Wed Jun 13 15:12:07 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 15826 15827 * configure.in: On Windows platforms, system provided headers are 15828 VC++ optimized. That is, C++ habits are often contaminated into 15829 various headers. Most frequent situation is the use of // 15830 comments. We bypass ANSI C mode for them. Otherwise extension 15831 libs cannot include those headers. 15832 15833Wed Jun 13 13:39:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15834 15835 * include/ruby/win32.h: get rid of C99 style one line comments. 15836 15837Wed Jun 13 13:39:04 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15838 15839 * encoding.c (enc_alias_internal): use strdup defined as macro. 15840 15841Wed Jun 13 10:20:27 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 15842 15843 * process.c (rb_exec_fillarg): get rid of SIZE_T_MAX which may need 15844 more headers. 15845 15846 * process.c (rb_exec_fillarg): fix array element size. "continue" and 15847 "readonly" exceeded the size. 15848 15849 * process.c (rb_exec_fillarg): use shell if the first word is reserved 15850 or special built-in name. 15851 http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html 15852 15853 * process.c (rb_exec_fillarg): treat '=' only in the first word. if 15854 the first word does not contain '=', it is the command name and 15855 environment assignments cannot be anymore. 15856 15857Tue Jun 12 23:45:36 2012 NARUSE, Yui <naruse@ruby-lang.org> 15858 15859 * lib/mkmf.rb: add dummy clean-static target to prevent errors for the 15860 case real clean-static target doesn't exist. 15861 15862Tue Jun 12 22:49:42 2012 Naohisa Goto <ngotogenome@gmail.com> 15863 15864 * process.c (rb_exec_arg_fixup): fix compile error 15865 15866Tue Jun 12 21:40:13 2012 Tanaka Akira <akr@fsij.org> 15867 15868 * process.c (rb_exec_fillarg): treat '=' character as a meta 15869 character to detect assignments preceding command name. 15870 15871Tue Jun 12 20:29:19 2012 Tanaka Akira <akr@fsij.org> 15872 15873 * include/ruby/intern.h (rb_exec_arg_init): deprecated. 15874 (rb_exec_arg_addopt): ditto. 15875 (rb_exec_arg_fixup): ditto. 15876 (rb_run_exec_options): ditto. 15877 (rb_run_exec_options_err): ditto. 15878 15879 * internal.h (rb_execarg_init): declared. 15880 (rb_execarg_addopt): ditto. 15881 (rb_execarg_fixup): ditto. 15882 (rb_execarg_run_options): ditto. 15883 15884 * process.c: call rb_execarg_addopt, rb_execarg_fixup, 15885 rb_execarg_run_options, rb_execarg_init. 15886 (rb_execarg_addopt): renamed from rb_exec_arg_addopt. 15887 (rb_exec_arg_addopt): stub to call rb_execarg_addopt. 15888 (rb_execarg_init): renamed from rb_exec_arg_init. 15889 (rb_exec_arg_init): stub to call rb_execarg_init. 15890 (rb_execarg_fixup): renamed from rb_exec_arg_fixup. 15891 (rb_exec_arg_fixup): stub to call rb_execarg_fixup. 15892 (rb_execarg_run_options): renamed from rb_run_exec_options_err. 15893 (rb_run_exec_options_err): stub to call rb_execarg_run_options. 15894 (rb_run_exec_options): call rb_execarg_run_options. 15895 15896 * io.c: call rb_execarg_addopt, rb_execarg_fixup, 15897 rb_execarg_run_options, rb_execarg_init. 15898 15899 * ext/pty/pty.c (establishShell): call rb_execarg_init and 15900 rb_execarg_fixup. 15901 15902Tue Jun 12 18:39:59 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 15903 15904 * configure.in: enable strict ANSI mode by default in case of GCC, 15905 requested by _ko1. 15906 15907Tue Jun 12 06:40:23 2012 Tanaka Akira <akr@fsij.org> 15908 15909 * process.c (rb_exec_fillarg): detect '#' as a meta character. 15910 15911Mon Jun 11 22:15:44 2012 Tanaka Akira <akr@fsij.org> 15912 15913 * include/ruby/intern.h (rb_proc_exec_n): deprecated. 15914 (rb_exec): ditto. 15915 (rb_exec_err): ditto. 15916 (rb_fork): ditto. 15917 (rb_fork_err): ditto. 15918 15919Mon Jun 11 18:49:52 2012 NARUSE, Yui <naruse@ruby-lang.org> 15920 15921 * configure.in: on checking libexecinfo, don't specify /use/local. 15922 On FreeBSD people must specify --with-opt-dir or --with-execinfo-dir. 15923 15924Mon Jun 11 12:14:37 2012 Koichi Sasada <ko1@atdot.net> 15925 15926 * vm_core.h: remove lfp (local frame pointer) and rename 15927 dfp (dynamic frame pointer) to ep (environment pointer). 15928 This change make VM `normal' (similar to other interpreters). 15929 Before this commit: 15930 Each frame has two env pointers lfp and dfp. lfp points 15931 local environment which is method/class/toplevel frame. 15932 lfp[0] is block pointer. 15933 dfp is block local frame. dfp[0] points previous (parent) 15934 environment pointer. 15935 lfp == dfp when frame is method/class/toplevel. 15936 You can get lfp from dfp by traversing previous environment 15937 pointers. 15938 After this commit: 15939 Each frame has only `ep' to point respective environment. 15940 If there is parent environment, then ep[0] points parent 15941 environment (as dfp). If there are no more environment, 15942 then ep[0] points block pointer (as lfp). We call such ep 15943 as `LEP' (local EP). We add some macros to get LEP and to 15944 detect LEP or not. 15945 In short, we replace dfp and lfp with ep and LEP. 15946 rb_block_t and rb_binding_t member `lfp' and `dfp' are removed 15947 and member `ep' is added. 15948 rename rb_thread_t's member `local_lfp' and `local_svar' to 15949 `root_lep' and `root_svar'. 15950 (VM_EP_PREV_EP(ep)): get previous environment pointer. This macro 15951 assume that ep is not LEP. 15952 (VM_EP_BLOCK_PTR(ep)): get block pointer. This macro assume 15953 that ep is LEP. 15954 (VM_EP_LEP_P(ep)): detect ep is LEP or not. 15955 (VM_ENVVAL_BLOCK_PTR(ptr)): make block pointer. 15956 (VM_ENVVAL_BLOCK_PTR_P(v)): detect v is block pointer. 15957 (VM_ENVVAL_PREV_EP_PTR(ptr)): make prev environment pointer. 15958 (VM_ENVVAL_PREV_EP_PTR_P(v)): detect v is prev env pointer. 15959 15960 * vm.c: apply above changes. 15961 (VM_EP_LEP(ep)): get LEP. 15962 (VM_CF_LEP(cfp)): get LEP of cfp->ep. 15963 (VM_CF_PREV_EP(cfp)): utility function VM_EP_PREV_EP(cfp->ep). 15964 (VM_CF_BLOCK_PTR(cfp)): utility function VM_EP_BLOCK_PTR(cfp->ep). 15965 15966 * vm.c, vm_eval.c, vm_insnhelper.c, vm_insnhelper.h, insns.def: 15967 apply above changes. 15968 15969 * cont.c: ditto. 15970 15971 * eval.c, eval_intern.h: ditto. 15972 15973 * proc.c: ditto. 15974 15975 * thread.c: ditto. 15976 15977 * vm_dump.c: ditto. 15978 15979 * vm_exec.h: fix function name (on vm debug mode). 15980 15981Mon Jun 11 11:52:18 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 15982 15983 * compile.c (iseq_set_sequence): nonstatic initializer of an 15984 aggregate type is a C99ism. 15985 15986 * compile.c (enum compile_array_type_t): comma at the end of enum 15987 list is a C99ism. 15988 15989 * vm_backtrace.c (enum LOCATION_TYPE): ditto. 15990 15991Mon Jun 11 06:31:33 2012 Tanaka Akira <akr@fsij.org> 15992 15993 * process.c (rb_proc_exec_n): revert the function removed at r35889. 15994 15995Mon Jun 11 06:20:50 2012 NARUSE, Yui <naruse@ruby-lang.org> 15996 15997 * thread_pthread.c (rb_thread_create_timer_thread): assign return 15998 value to the variable err. 15999 16000Mon Jun 11 06:17:06 2012 NARUSE, Yui <naruse@ruby-lang.org> 16001 16002 * thread_pthread.c (native_cond_initialize): fix typo in r36022. 16003 this cause a failure on FreeBSD 8.2 amd64. 16004 http://fbsd.rubyci.org/~chkbuild/ruby-trunk/log/20120610T130201Z.diff.html.gz 16005 16006Mon Jun 11 05:21:57 2012 Koichi Sasada <ko1@atdot.net> 16007 16008 * .gdbinit (SDR): add SDR function. It's only for VM debugging. 16009 16010Sun Jun 10 21:50:45 2012 Yuki Sonoda (Yugui) <yugui@yugui.jp> 16011 16012 * nacl/nacl_config.rb: Fixed for 32bit hosts. 16013 16014Sun Jun 10 20:23:14 2012 Yuki Sonoda (Yugui) <yugui@yugui.jp> 16015 16016 Fixes threading on NativeClient. 16017 16018 * thread_pthread.c (timer_thread_sleep): Extracted out a function from 16019 thread_timer(). Added an alternative implementation for platforms 16020 that lacks select(2) or pipe(2). 16021 (rb_thread_create_timer_thread, native_cond_initialize, 16022 native_cond_destroy): Replaced wrong HAVE_XXX checks. 16023 16024 * configure.in (pthread_attr_init): New check. 16025 16026Sun Jun 10 21:30:11 2012 Tanaka Akira <akr@fsij.org> 16027 16028 * process.c (rb_exec_without_timer_thread): renamed from rb_exec_err. 16029 (rb_exec_err): new stub function to call 16030 rb_exec_without_timer_thread. 16031 (rb_f_exec): call rb_exec_without_timer_thread. 16032 (rb_exec): call rb_exec_without_timer_thread. 16033 16034Sun Jun 10 21:13:10 2012 Tanaka Akira <akr@fsij.org> 16035 16036 * process.c (rb_fork): call rb_fork_internal instead of rb_fork_err. 16037 16038Sun Jun 10 20:55:59 2012 Tanaka Akira <akr@fsij.org> 16039 16040 * process.c (rb_fork_ruby): call rb_fork_internal directly. 16041 16042Sun Jun 10 20:19:40 2012 Tanaka Akira <akr@fsij.org> 16043 16044 * process.c (rb_fork_ruby): new function. 16045 (rb_f_fork): use rb_fork_ruby instead of rb_fork. 16046 (rb_daemon): ditto. 16047 16048 * io.c (pipe_open): use rb_fork_ruby instead of rb_fork. 16049 16050 * internal.h (rb_fork_ruby): declared. 16051 16052Sun Jun 10 18:58:16 2012 Akinori MUSHA <knu@iDaemons.org> 16053 16054 * lib/net/http/response.rb: Remove a duplicated rdoc and leave a 16055 pointer. 16056 16057 * lib/net/http/responses.rb: Add RFC numbers to base on. 16058 16059Sun Jun 10 18:31:42 2012 Yuki Sonoda (Yugui) <yugui@yugui.jp> 16060 16061 * configure.in (RUBY_NACL): Warns if $PATH does not contain the path 16062 to NativeClient SDK. PATH variable redefinition in GNUmakefile does 16063 not work for GNU make 3.81. 16064 16065Sun Jun 10 17:54:36 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16066 16067 * gc.h (IS_STACK_DIR_UPPER): utility macro. 16068 16069 * thread_pthread.c (get_stack): seems stack size does not include 16070 guard size on Mac OS X. 16071 16072 * thread_pthread.c (ruby_init_stack): adjust stack size for offset of 16073 addr from the bottom. 16074 16075Sun Jun 10 15:49:47 2012 Tanaka Akira <akr@fsij.org> 16076 16077 * process.c (retry_fork): call after_fork except in a child process. 16078 (rb_fork_internal): restrict after_fork call condition. 16079 16080Sun Jun 10 14:19:33 2012 NARUSE, Yui <naruse@ruby-lang.org> 16081 16082 * configure.in: NetBSD 6 adds libexecinfo but it only works on amd64. 16083 http://www.mail-archive.com/source-changes-full@netbsd.org/msg38729.html 16084 16085Sun Jun 10 12:43:23 2012 Tanaka Akira <akr@fsij.org> 16086 16087 * process.c (rb_f_exec): call rb_exec_async_signal_safe except on 16088 Mac OS X. cf. the comment in before_exec_non_async_signal_safe. 16089 16090Sun Jun 10 12:15:18 2012 Tanaka Akira <akr@fsij.org> 16091 16092 * io.c (popen_exec): don't call rb_thread_atfork_before_exec. use 16093 rb_exec_async_signal_safe instead of rb_exec_err. 16094 (pipe_open): use rb_fork_async_signal_safe instead of rb_fork_err. 16095 16096Sun Jun 10 11:44:57 2012 Tanaka Akira <akr@fsij.org> 16097 16098 * process.c (rb_fork_internal): call after_fork only unless 16099 chfunc_is_async_signal_safe. 16100 16101Sun Jun 10 11:33:01 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 16102 16103 * ext/openssl/ossl_pkey_ec.c 16104 test/openssl/test_pkey_ec.rb: Add support for EC_POINT_mul. 16105 Patch provided by Sambasiva Suda. Thanks! 16106 [ruby-core:44408][ruby-trunk - Feature #6310] 16107 16108Sun Jun 10 10:48:15 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 16109 16110 * lib/openssl/ssl.rb: Use a simple random number to generate the 16111 session id. MD5, as was used before, causes problems when 16112 using a FIPS version of OpenSSL. Issue was found by Jared 16113 Jennings, thank you! 16114 [ruby-trunk - Bug #6137] 16115 16116Sun Jun 10 10:27:34 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 16117 16118 * NEWS: Add note about the new private key export behavior. 16119 16120Sun Jun 10 10:24:51 2012 Tanaka Akira <akr@fsij.org> 16121 16122 * process.c (rb_exec_async_signal_safe): exported. 16123 16124 * ext/pty/extconf.rb: modify $INCFLAGS to include internal.h 16125 16126 * ext/pty/pty.c: include internal.h. 16127 (chfunc): don't call rb_thread_atfork_before_exec. use 16128 rb_exec_async_signal_safe instead of rb_f_exec. 16129 (establishShell): set up earg. use rb_fork_async_signal_safe 16130 instead of rb_fork_err. 16131 16132 * internal.h (rb_exec_async_signal_safe): declared. 16133 (rb_fork_async_signal_safe): declared. 16134 16135Sun Jun 10 10:21:37 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 16136 16137 * ext/openssl/ossl.c 16138 ext/openssl/ossl_pkey_rsa.c 16139 ext/openssl/ossl_pkey_dsa.c 16140 ext/openssl/ossl_pkey_ec.c: Forbid export passwords that are less 16141 than four characters long, as OpenSSL itself does not allow this. 16142 Issue found by Eric Hodel. 16143 * ext/openssl/ossl_pkey_ec.c: Add export as an alias of to_pem, 16144 following the PKey interface contract. 16145 * test/openssl/test_pkey_dsa.rb 16146 test/openssl/test_pkey_rsa.rb 16147 test/openssl/test_pkey_ec.rb: Add tests that assert correct 16148 behaviour when dealing with passwords that are less than four 16149 characters long. 16150 [ruby-core: 42281][ruby-trunk - Bug #5951] 16151 16152Sun Jun 10 10:14:26 2012 Tanaka Akira <akr@fsij.org> 16153 16154 * process.c (rb_f_exec): use rb_exec_arg_prepare. 16155 16156Sun Jun 10 06:43:51 2012 Tanaka Akira <akr@fsij.org> 16157 16158 * process.c: split after_exec into async-signal-safe part and rest. 16159 (after_exec_async_signal_safe): extracted from after_exec. 16160 (after_exec_non_async_signal_safe): ditto. 16161 (after_exec): call them. 16162 (rb_exec_async_signal_safe): call after_exec_async_signal_safe. 16163 (rb_exec_err): call after_exec_non_async_signal_safe instead of 16164 after_exec. 16165 16166Sun Jun 10 06:21:10 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 16167 16168 * NEWS: document new features of Ruby OpenSSL. 16169 16170Sun Jun 10 03:09:41 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 16171 16172 * ext/openssl/ossl.c: Fix error in example. Patch by David Albert. 16173 16174 Add/extend existing documentation. Examples now also cover RSA 16175 signatures and PBKDF2. 16176 [ruby-core: 45154][ruby-trunk - Bug #6475] 16177 16178 16179Sun Jun 10 01:41:45 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 16180 16181 * ext/openssl/ossl_ssl.c: Introduce SSLContext#renegotiation_cb and 16182 remove SSLContext#disable_client_renegotiation and related 16183 functionality introduced in r35797. The new callback approach 16184 gives clients maximum flexibility to decide on their own what to 16185 do on renegotiation attempts. 16186 Add documentation for SSL module and SSLError. 16187 * test/openssl/test_ssl.rb: Add a test for 16188 SSLContext#renegotiation_cb. 16189 16190Sun Jun 10 01:37:18 2012 Tanaka Akira <akr@fsij.org> 16191 16192 * process.c (rb_fork_internal): initialize exc. 16193 16194Sun Jun 10 00:19:25 2012 Tanaka Akira <akr@fsij.org> 16195 16196 * process.c: don't use non async-signal-safe functions in a child 16197 process before exec, for invoking a command. 16198 (rb_exec_atfork): call rb_exec_async_signal_safe only. 16199 (retry_fork): take chfunc_is_async_signal_safe argument. call 16200 before_fork and after_fork only unless chfunc_is_async_signal_safe. 16201 (send_child_error): take chfunc_is_async_signal_safe argument. 16202 send an exception only unless chfunc_is_async_signal_safe. 16203 (recv_child_error): take chfunc_is_async_signal_safe argument. 16204 receive an exception only unless chfunc_is_async_signal_safe. 16205 (rb_fork_internal): renamed from rb_fork_err and take 16206 chfunc_is_async_signal_safe argument. 16207 use rb_protect only unless chfunc_is_async_signal_safe. 16208 (rb_fork_err): call rb_fork_internal with false as 16209 chfunc_is_async_signal_safe. 16210 (rb_fork_async_signal_safe): call rb_fork_internal with true as 16211 chfunc_is_async_signal_safe. 16212 (rb_spawn_process): call rb_fork_async_signal_safe instead of 16213 rb_fork_err. 16214 16215Sat Jun 9 23:57:03 2012 Tanaka Akira <akr@fsij.org> 16216 16217 * process.c (rb_fork_err): rewrite a complex "if" statement. 16218 16219Sat Jun 9 23:44:29 2012 Tanaka Akira <akr@fsij.org> 16220 16221 * process.c (before_exec_async_signal_safe): extracted from 16222 before_exec. 16223 (before_exec_non_async_signal_safe): ditto. 16224 (before_exec): call before_exec_async_signal_safe and 16225 before_exec_non_async_signal_safe. 16226 (rb_exec_async_signal_safe): call before_exec_async_signal_safe. 16227 (rb_exec_err): call before_exec_non_async_signal_safe instead of 16228 before_exec. 16229 16230Sat Jun 9 23:36:53 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16231 16232 * iseq.c (iseq_load, insn_operand_intern, rb_iseq_disasm) 16233 (rb_iseq_parameters): use rb_id2str() instead of rb_id2name() to 16234 keep encoding. 16235 16236 * string.c (rb_str_symname_p): new function that checks if the string 16237 is valid as a symbol name. split from sym_inspect(). 16238 16239Sat Jun 9 22:27:05 2012 Tanaka Akira <akr@fsij.org> 16240 16241 * process.c (retry_fork): rewrite a complex "for" statement by 16242 simple statements. 16243 16244Sat Jun 9 21:50:04 2012 Tanaka Akira <akr@fsij.org> 16245 16246 * process.c (retry_fork): extracted from rb_fork_err. 16247 (send_child_error): ditto. 16248 (recv_child_error): ditto. 16249 16250Sat Jun 9 17:21:48 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16251 16252 * iseq.c (iseq_load): type is a symbol, and invalid as ID in common. 16253 16254Sat Jun 9 10:57:14 2012 Tanaka Akira <akr@fsij.org> 16255 16256 * process.c (rb_exec_async_signal_safe): extracted from rb_exec_err. 16257 16258Sat Jun 9 09:31:07 2012 Tanaka Akira <akr@fsij.org> 16259 16260 * process.c: simplified because close_others option is always 16261 enabled by default. 16262 (rb_f_exec): don't need to set the option. 16263 (rb_exec_arg_prepare): don't need to set the option. don't need 16264 default_close_others argument. 16265 (rb_spawn_internal): don't need to give default_close_others 16266 argument for rb_exec_arg_prepare. don't need default_close_others 16267 argument. 16268 (rb_spawn_err): don't need to give default_close_others 16269 argument for rb_spawn_internal. 16270 (rb_spawn): don't need to give default_close_others 16271 argument for rb_spawn_internal. 16272 (rb_f_system): don't need to give default_close_others argument for 16273 rb_spawn_internal. 16274 (rb_f_spawn): don't need to give default_close_others argument for 16275 rb_exec_arg_prepare. 16276 16277Sat Jun 9 09:00:58 2012 Tanaka Akira <akr@fsij.org> 16278 16279 * process.c (rb_proc_exec): call before_exec() here addition to 16280 rb_exec_err. 16281 16282Sat Jun 9 08:30:52 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16283 16284 * thread_pthread.c (ruby_init_stack): use stack info if possible. 16285 16286Sat Jun 9 08:21:32 2012 Eric Hodel <drbrain@segment7.net> 16287 16288 * README.EXT (prepare extconf.rb): Added note to see MakeMakefile for 16289 documentation of extconf.rb functions. Patch by Zachary Scott. 16290 [ruby-trunk - Feature #6522] 16291 * README.EXT (Appendix C): Removed in favor of MakeMakefile. 16292 Patch by Zachary Scott. 16293 * lib/mkmf.rb: Merged documentation from README.EXT Appendix C. Patch 16294 by Zachary Scott. 16295 16296Sat Jun 9 08:16:47 2012 Eric Hodel <drbrain@segment7.net> 16297 16298 * doc/re.rdoc: Completed wording in the description of the =~ operator. 16299 [ruby-trunk - Bug #6529] 16300 16301Sat Jun 9 08:09:38 2012 Eric Hodel <drbrain@segment7.net> 16302 16303 * string.c (rb_str_start_with): Removed "p" from start_with? examples 16304 to match other String method examples. [ruby-trunk - Bug #6553] 16305 * string.c (rb_str_end_with): Updated end_with? to use code markup 16306 instead of italic. 16307 16308Sat Jun 9 07:56:03 2012 Eric Hodel <drbrain@segment7.net> 16309 16310 * lib/benchmark.rb: Updated formatting of Benchmark documentation for 16311 consistency. [ruby-trunk - Bug #6533] 16312 16313Sat Jun 9 07:46:26 2012 Eric Hodel <drbrain@segment7.net> 16314 16315 * lib/delegate.rb: Added documentation for Delegator#!. Patch by 16316 Zachary Scott. [ruby-trunk - Feature #6534] 16317 16318Sat Jun 9 07:39:50 2012 Eric Hodel <drbrain@segment7.net> 16319 16320 * lib/net/http/responses.rb: Add RFC 6585 response codes. Patch by 16321 Sangil Jung. [ruby-trunk - Feature #6480] 16322 * lib/net/http/response.rb: ditto 16323 * lib/net/http.rb: ditto 16324 * lib/webrick/httpstatus.rb: ditto 16325 16326Sat Jun 9 01:24:28 2012 Tanaka Akira <akr@fsij.org> 16327 16328 * process.c (rb_exec_err): before_exec() call moved from proc_exec_cmd 16329 and proc_exec_sh. 16330 (rb_proc_exec): ditto. 16331 16332Sat Jun 9 01:11:07 2012 Tanaka Akira <akr@fsij.org> 16333 16334 * include/ruby/intern.h (rb_exec_arg_init): declaration changed to 16335 return a value. 16336 16337 * process.c (rb_exec_arg_init): return a value. 16338 16339Fri Jun 8 23:44:14 2012 Tanaka Akira <akr@fsij.org> 16340 16341 * process.c: don't check the availability of FD_CLOEXEC. It should 16342 be available if fork() is available. 16343 16344 * io.c: ditto. 16345 16346Fri Jun 8 22:39:32 2012 Tanaka Akira <akr@fsij.org> 16347 16348 * process.c (rb_fork_err): revert r35955. The condition needs !chfunc 16349 to close ep[0] and ep[1]. The catched exception is re-raised 16350 immediately after that if status is not NULL. 16351 16352Fri Jun 8 19:43:33 2012 Tanaka Akira <akr@fsij.org> 16353 16354 * process.c (rb_exec_err): after_exec() call moved from proc_exec_cmd 16355 and proc_exec_sh. 16356 (rb_proc_exec): ditto. 16357 16358Fri Jun 8 19:00:59 2012 Tanaka Akira <akr@fsij.org> 16359 16360 * process.c (ARGV_COUNT): unused macro removed. 16361 (ARGV_SIZE): ditto. 16362 (ALLOC_ARGV): ditto. 16363 (ALLOC_ARGV_WITH_STR): ditto. 16364 16365Fri Jun 8 16:19:33 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16366 16367 * test/runner.rb (src_testdir): expand real path so that 16368 TestGem#test_self_find_files does not fail by aliased load path when 16369 srcdir contains a symbolic link. 16370 16371 * tool/runruby.rb (srcdir): ditto. 16372 16373Fri Jun 8 12:04:39 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16374 16375 * process.c (rb_fork_err): error state in the child process is prior 16376 to exceptions in proc_syswait(). 16377 16378 * process.c (rb_fork_err): determine status on errors. 16379 16380 * ext/pty/pty.c (establishShell): reraise exception if something 16381 raised during sleep. 16382 16383 * ext/pty/pty.c (establishShell): now needs status to protect from 16384 exceptions in rb_fork_err(). 16385 16386Thu Jun 7 22:13:05 2012 Tanaka Akira <akr@fsij.org> 16387 16388 * process.c (rb_fork_err): Fix the condition to use rb_protect. 16389 16390Thu Jun 7 20:29:12 2012 Tanaka Akira <akr@fsij.org> 16391 16392 * include/ruby/intern.h: rb_exec_arg and related stuff moved back from 16393 internal.h 16394 16395Thu Jun 7 15:53:03 2012 Koichi Sasada <ko1@atdot.net> 16396 16397 * .gdbinit: add function `trace_machine_instructions' to trace 16398 in native machine assemble. 16399 See https://bugs.ruby-lang.org/projects/ruby-trunk/wiki/MachineInstructionsTraceWithGDB 16400 for more details. 16401 16402Wed Jun 6 21:31:21 2012 Tanaka Akira <akr@fsij.org> 16403 16404 * process.c (proc_exec_cmd) renamed from proc_exec_v. 16405 (proc_exec_sh): renamed from rb_proc_exec_e. 16406 (proc_spawn_cmd_internal): renamed from proc_spawn_v. 16407 (proc_spawn_cmd): renamed from proc_spawn_n. 16408 (proc_spawn_sh): renamed from proc_spawn. 16409 16410Wed Jun 6 21:18:47 2012 NAKAMURA Usaku <usa@ruby-lang.org> 16411 16412 * process.c (try_with_sh): please take care of the macro defined by 16413 you. 16414 16415Wed Jun 6 20:45:08 2012 Tanaka Akira <akr@fsij.org> 16416 16417 * process.c (proc_exec_v): don't call dln_find_exe_r here because it 16418 is not async-signal-safe and proc_exec_v is called in a child 16419 process. 16420 command_abspath field of rb_exec_arg. 16421 (rb_exec_fillarg): call dln_find_exe_r and set command_abspath. 16422 (rb_exec_err): Give the absolute path of the invoking command for 16423 proc_exec_v, instead of the command name. 16424 16425 * internal.h: add command_abspath field for rb_exec_arg. 16426 16427Wed Jun 6 20:08:01 2012 Tanaka Akira <akr@fsij.org> 16428 16429 * process.c (try_with_sh): take envp argument. 16430 (exec_with_sh): ditto. use it for execve. 16431 (proc_exec_v): provide envp for try_with_sh. 16432 16433Wed Jun 6 13:25:04 2012 NAKAMURA Usaku <usa@ruby-lang.org> 16434 16435 * win32/win32.c, include/ruby/win32.h (rb_w32_wrap_io_handle): new API. 16436 this API wraps an I/O handle (HANDLE or SOCKET) and returns fd. 16437 the second parameter should be combination of O_*, for example, 16438 O_RDWR | O_BINARY | O_NOINHERIT. 16439 16440 * win32/win32.c, include/ruby/win32.h (rb_w32_unwrap_io_handle): new 16441 API. this API unwraps an I/O handle and close the fd (not closes 16442 the handle itself). 16443 16444 [Feature #4906] [ruby-core:37227] 16445 16446Wed Jun 6 13:18:26 2012 NAKAMURA Usaku <usa@ruby-lang.org> 16447 16448 * win32/win32.c (rb_w32_close): of course, console handle is not socket. 16449 16450Wed Jun 6 12:37:43 2012 NAKAMURA Usaku <usa@ruby-lang.org> 16451 16452 * process.c (rb_run_exec_options_err): allocate a temporary buffer for 16453 run_exec_dup2() for restoring fds on non-fork environments. 16454 16455Wed Jun 6 09:45:21 2012 NAKAMURA Usaku <usa@ruby-lang.org> 16456 16457 * test/dl/test_c_{struct_entry,union_entity}.rb: sorry, typos. 16458 16459Wed Jun 6 05:27:54 2012 Tanaka Akira <akr@fsij.org> 16460 16461 * process.c (rb_exec_fillarg): check use_shell field before accessing 16462 a union field. 16463 16464Wed Jun 6 04:58:44 2012 Tanaka Akira <akr@fsij.org> 16465 16466 * process.c (rb_spawn_process): prog variable is not used for Unix. 16467 16468Wed Jun 6 00:20:37 2012 Tanaka Akira <akr@fsij.org> 16469 16470 * internal.h (rb_exec_arg_init): change return type to void. 16471 16472 * process.c (rb_exec_arg_init): don't return a value. 16473 (rb_exec_arg_prepare): ditto. 16474 (rb_spawn_process): don't take the prog argument. extract the 16475 information from earg. 16476 (rb_spawn_internal): follow rb_spawn_process change. 16477 (rb_f_spawn): ditto. 16478 16479 * io.c (pipe_open): don't take the prog argument. extract the 16480 information from eargp. 16481 (pipe_open_v): follow pipe_open change. 16482 (pipe_open_s): ditto. 16483 16484Tue Jun 5 23:51:33 2012 Tanaka Akira <akr@fsij.org> 16485 16486 * internal.h (rb_exec_arg): use union to represent command invocation 16487 with/without shell. 16488 16489 * process.c: follow the rb_exec_arg change. 16490 16491 * io.c (pipe_open): ditto. 16492 16493Tue Jun 5 22:28:46 2012 Tanaka Akira <akr@fsij.org> 16494 16495 * internal.h: rb_exec_arg and related stuff moved from intern.h 16496 16497 * include/ruby/intern.h (rb_proc_exec_n): removed. 16498 16499Tue Jun 5 21:57:22 2012 Tanaka Akira <akr@fsij.org> 16500 16501 * process.c (rb_exec_arg_fixup): allocate a temporary buffer for 16502 run_exec_dup2 here because it should be async-signal-safe. 16503 (run_exec_dup2): use the temporary buffer. 16504 (run_exec_dup2_tmpbuf_size): new function. 16505 16506 * include/ruby/intern.h (rb_exec_arg): add dup2_tmpbuf field. 16507 16508Tue Jun 5 20:13:15 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16509 16510 * object.c (rb_obj_init_copy): should check if trusted too. 16511 16512Tue Jun 5 19:59:13 2012 Tanaka Akira <akr@fsij.org> 16513 16514 * process.c (strtok): declaration removed because it is not used. 16515 16516Tue Jun 5 19:33:51 2012 Tanaka Akira <akr@fsij.org> 16517 16518 * process.c (proc_spawn): don't detect simple command line here 16519 because rb_exec_fillarg already did. 16520 16521Tue Jun 5 19:21:10 2012 Tanaka Akira <akr@fsij.org> 16522 16523 * process.c (rb_exec_fillarg): bail out a loop eagerly. 16524 16525Tue Jun 5 19:15:14 2012 Tanaka Akira <akr@fsij.org> 16526 16527 * process.c: add comments about async-signal-safe. 16528 16529 * io.c: ditto. 16530 16531Tue Jun 5 09:25:10 2012 Eric Hodel <drbrain@segment7.net> 16532 16533 * io.c: Edited documentation for IO and File open and new and 16534 Kernel#open for consistency and clarity. 16535 16536Mon Jun 4 21:53:56 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16537 16538 * win32/win32.c (rb_w32_sysinit): let the system not display the 16539 critical-error-handler message box and the Windows Error Reporting 16540 dialog. [ruby-core:45389] [Bug #6535] 16541 16542Mon Jun 4 19:36:25 2012 Tanaka Akira <akr@fsij.org> 16543 16544 * process.c (rb_exec_fillarg): allocate one more element before 16545 beginning in argv_str for try_with_sh. 16546 16547 * internal.h (ARGVSTR2ARGC): adjust for the above change. 16548 (ARGVSTR2ARGV): ditto. 16549 16550Mon Jun 4 19:17:06 2012 Tanaka Akira <akr@fsij.org> 16551 16552 * internal.h (ARGVSTR2ARGC): defined. 16553 (ARGVSTR2ARGV): defined. 16554 16555 * process.c (proc_exec_v): use ARGVSTR2ARGV. 16556 (rb_spawn_process): use ARGVSTR2ARGC and ARGVSTR2ARGV. 16557 16558 * io.c (pipe_open): use ARGVSTR2ARGV. 16559 16560Mon Jun 4 16:13:00 2012 Koichi Sasada <ko1@atdot.net> 16561 16562 * vm_insnhelper.h: remove magical code "lfp[0] & 0x02". 16563 Current VM doesn't use this bit. 16564 16565 * vm_core.h (RUBY_VM_GET_BLOCK_PTR): added. 16566 16567 * eval.c (rb_block_given_p): use RUBY_VM_GET_BLOCK_PTR(). 16568 16569 * vm_eval.c (rb_f_block_given_p): ditto. 16570 16571Mon Jun 4 15:39:33 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16572 16573 * win32/win32.c (constat_apply): apply VT100 functions. 16574 [ruby-core:44958] [Feature #6418] 16575 16576 * win32/win32.c (constat_parse): parse some VT100 escape sequence. 16577 16578Mon Jun 4 14:06:12 2012 NAKAMURA Usaku <usa@ruby-lang.org> 16579 16580 * process.c (rb_exec_err): should preserve errno. 16581 16582Mon Jun 4 13:10:11 2012 NAKAMURA Usaku <usa@ruby-lang.org> 16583 16584 * test/dl/test_c_{struct_entry,union_entity}.rb: broken require. 16585 16586Mon Jun 4 12:01:21 2012 Koichi Sasada <ko1@atdot.net> 16587 16588 * test/ruby/test_backtrace.rb: fix test. 16589 Windows path includes `:' character. 16590 16591Mon Jun 4 11:42:39 2012 Koichi Sasada <ko1@atdot.net> 16592 16593 * vm_core.h (rb_location_t): fix type and field name. 16594 (1) rename rb_location_t to rb_iseq_location_t. 16595 (2) rename field names of rb_iseq_location_t to adjust 16596 RubyVM::Backtrace::Location methods. 16597 (2-1) filename -> path 16598 (2-2) filepath -> absolute_path 16599 (2-3) basename -> base_label 16600 (2-4) name -> label 16601 (3) rename filed name rb_iseq_location_t#line_no to 16602 rb_iseq_location_t#first_lineno to clear purpose of this field. 16603 (4) The field names rb_binding_t#(filename|line_no) are also renamed 16604 to rb_binding_t#(path|first_lineno). 16605 16606 * compile.c: apply above changes. 16607 16608 * iseq.c: ditto. 16609 16610 * proc.c: ditto. 16611 16612 * vm*.c: ditto. 16613 16614Mon Jun 4 11:40:28 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16615 16616 * marshal.c (r_object0): also load TYPE_USRMARSHAL, TYPE_DATA using 16617 compatible loader. 16618 16619Mon Jun 4 11:33:42 2012 NAKAMURA Usaku <usa@ruby-lang.org> 16620 16621 * process.c (rb_run_exec_options_err): restore save_env() call for 16622 non-fork environments. 16623 16624 * process.c (rb_exec_err): restore environments after the failure of 16625 exec to fix [ruby-core:44093] [Bug #6249] on non-fork environments 16626 16627Mon Jun 4 10:42:04 2012 NAKAMURA Usaku <usa@ruby-lang.org> 16628 16629 * io.c (pipe_open): follow up changes in r35889. 16630 16631 * process.c (proc_spawn_n): now uses char ** instead of VALUE *. 16632 16633 * process.c (rb_spawn_process): prog is now VALUE of String, not char *. 16634 16635Mon Jun 4 06:12:43 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16636 16637 * marshal.c (r_object0): remove old warning for _alloc. 16638 16639Mon Jun 4 04:24:06 2012 Tadayoshi Funaba <tadf@dotrb.org> 16640 16641 * marshal.c: experimental test aborted. 16642 * complex.c: ditto. 16643 * rational.c: ditto. 16644 * include/ruby/intern.h: ditto. 16645 16646Mon Jun 4 00:45:18 2012 Tanaka Akira <akr@fsij.org> 16647 16648 * process.c (rb_spawn_process): fix for Windows. not tested. 16649 16650Mon Jun 4 00:11:51 2012 Tanaka Akira <akr@fsij.org> 16651 16652 * process.c (rb_proc_exec_e): don't use ISSPACE(). \f, \r and \v 16653 are not word separator in Bourne shell. 16654 16655Sun Jun 3 23:47:30 2012 Tanaka Akira <akr@fsij.org> 16656 16657 * include/ruby/intern.h (rb_exec_arg): remove argc and argv fields. 16658 add use_shell, argv_str and argv_buf fields. 16659 16660 * process.c (rb_proc_exec_e): don't split shell command line arguments 16661 here to avoid memory allocation in a child process. 16662 (rb_exec_fillarg): split shell command line arguments here. 16663 (proc_exec_v): takes argv_str argument instead of argv. 16664 (rb_proc_exec_ne): removed. 16665 (rb_proc_exec_n): removed. 16666 (rb_run_exec_options_err): don't initialize the removed fields. 16667 (rb_exec_err): don't initialize the removed fields. 16668 call proc_exec_v directly instead of rb_proc_exec_ne. 16669 (rb_spawn_process): use use_shell field. 16670 16671Sun Jun 3 21:53:00 2012 NARUSE, Yui <naruse@ruby-lang.org> 16672 16673 * GPL: update text of GPLv2. [ruby-core:44488] [Bug #6328] 16674 http://www.gnu.org/licenses/gpl-2.0.txt 16675 16676Sun Jun 3 21:22:52 2012 Tanaka Akira <akr@fsij.org> 16677 16678 * process.c (rb_exec_getargs): remove rb_exec_arg argument. 16679 16680Sun Jun 3 21:14:26 2012 Tadayoshi Funaba <tadf@dotrb.org> 16681 16682 * marshal.c: calls directly rb_{Complex,Rational}_marshal_load(). 16683 But now disabled. [experimental] 16684 * complex.c: followed the above. 16685 * rational.c: ditto. 16686 * include/ruby/intern.h: ditto. 16687 16688Sun Jun 3 21:18:17 2012 Tanaka Akira <akr@fsij.org> 16689 16690 * process.c (rb_check_argv): use rb_str_new_frozen instead of 16691 rb_str_new4. 16692 16693Sun Jun 3 20:10:52 2012 Tanaka Akira <akr@fsij.org> 16694 16695 * process.c (rb_proc_exec_e): extended version of rb_proc_exec() to 16696 call execle(). 16697 (rb_proc_exec): use rb_proc_exec_e(). 16698 (rb_exec_err): use rb_proc_exec_e(). 16699 16700Sun Jun 3 19:47:18 2012 NARUSE, Yui <naruse@ruby-lang.org> 16701 16702 * thread.c (vm_living_thread_num): suppress a warning. 16703 16704Sun Jun 3 17:23:52 2012 Tanaka Akira <akr@fsij.org> 16705 16706 * use execve() to preserve environment variables when exec method is 16707 failed. [ruby-core:44093] [ruby-trunk - Bug #6249] 16708 16709 * include/ruby/intern.h (rb_exec_arg): add envp_str and envp_buf field 16710 to store envp of execve(). 16711 16712 * process.c (proc_exec_v): takes envp_str as an argument and use it 16713 for execve(). 16714 (rb_proc_exec_ne): extended version of rb_proc_exec_n(). 16715 (rb_proc_exec_n): use rb_proc_exec_ne(). 16716 (rb_proc_exec): follow proc_exec_v() change. 16717 (fill_envp_buf_i): new function. 16718 (rb_exec_arg_fixup): set up envp_str and envp_buf. 16719 (save_env_i): removed. 16720 (save_env): removed. 16721 (rb_run_exec_options_err): don't modify environment variables. 16722 (rb_exec_err): use rb_proc_exec_ne(). 16723 16724Sun Jun 3 16:33:58 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16725 16726 * marshal.c: revert r35879 "now marshal_{load|dump} are external." 16727 16728 * complex.c (nucomp_marshal__{dump,load}): should use rb_marshal_{dump,load}. 16729 16730 * rational.c (nurat_marshal__{dump,load}): ditto. 16731 16732Sun Jun 3 14:13:58 2012 Tadayoshi Funaba <tadf@dotrb.org> 16733 16734 * ext/date/date_core.c: checks whether the object is frozen or not. 16735 16736Sun Jun 3 14:00:51 2012 Tadayoshi Funaba <tadf@dotrb.org> 16737 16738 * complex.c: wrote Complex#_dump and Complex::load. But now 16739 disabled (due to compatibility) [experimental]. 16740 16741 * rational.c: wrote Rational#_dump and Rational::load. ditto. 16742 16743Sun Jun 3 10:23:32 2012 Tadayoshi Funaba <tadf@dotrb.org> 16744 16745 * complex.c (nucomp_marshal_load): [ruby-core:45394] 16746 * rational.c (nurat_marshal_load): ditto. 16747 16748Sun Jun 3 03:15:46 2012 NARUSE, Yui <naruse@ruby-lang.org> 16749 16750 * regparse.c (onig_number_of_names): suppress a warning. 16751 16752Sun Jun 3 01:36:52 2012 Koichi Sasada <ko1@atdot.net> 16753 16754 * vm_backtrace.c: change names. 16755 (1) Class name: RubyVM::FrameInfo -> RubyVM::Backtrace::Location. 16756 (2) Method name: RubyVM::FrameInfo.caller -> 16757 Kernel.caller_locations. 16758 (3) Instance methods of 16759 RubyVM::FrameInfo (RubyVM::Backtrace::Location) 16760 (3-1) name -> label 16761 (3-2) basename -> base_label (basename is confusing with 16762 File.basename) 16763 (3-3) line_no -> lineno (We have already similar name 16764 File#lineno, commented by kou [ruby-dev:45686]). 16765 (3-4) filename -> path. 16766 (3-5) filepath -> absolute_path. 16767 (3-5) iseq -> removed (we will make other APIs to access iseq 16768 and other information of frame for debugging). 16769 16770 * test/ruby/test_backtrace.rb: apply above changes. 16771 And apply comment from kou [ruby-dev:45686]. 16772 16773Sun Jun 3 00:49:11 2012 Koichi Sasada <ko1@atdot.net> 16774 16775 * common.mk: fix to build vm_backtrace.c only itself (vm_backtrace.c 16776 is no longer included from vm.c). I hope this separation reduce 16777 compile time of vm.c. 16778 16779 * internal.h: ditto. 16780 16781 * vm.c, vm_core.h, vm_dump.c, vm_eval.c: ditto. 16782 16783 * vm_eval.c: some functions (callee, etc) moved to vm_backtrace.c. 16784 16785Sun Jun 3 00:20:53 2012 Koichi Sasada <ko1@atdot.net> 16786 16787 * vm_backtrace.c: added. Separate backtrace related functions to 16788 this file. 16789 16790 * vm.c, common.mk: ditto. 16791 16792Sat Jun 2 18:09:02 2012 Akinori MUSHA <knu@iDaemons.org> 16793 16794 * lib/ipaddr.rb: Inhibit zero-filled octets in an IPv4 address in 16795 all platforms. [ruby-dev:45671] 16796 16797 * lib/ipaddr.rb: Allow the x:x:x:x:x:x:d.d.d.d form not limited to 16798 IPv4 mapped/compatible addresses. This change also makes it 16799 possible for the parser to understand IPv4 mapped and compatible 16800 IPv6 addresses in non-compressed form. 16801 16802 * lib/ipaddr.rb: Stop exposing IPSocket.valid*? methods which were 16803 only usable on non-IPv6-ready platforms. 16804 16805Sat Jun 2 16:59:00 2012 NARUSE, Yui <naruse@ruby-lang.org> 16806 16807 * string.c (rb_enc_cr_str_buf_cat): don't reset coderange as unknown. 16808 the condition 'ptr_a8 && str_cr != ENC_CODERANGE_7BIT' means not 16809 unknown, str is also ASCII-8BIT because str_encindex == ptr_encindex, 16810 and nont (str_cr == ENC_CODERANGE_UNKNOWN) and 16811 str_cr != ENC_CODERANGE_7BIT means str_cr is valid because ASCII-8BIT 16812 can't be broken. [ruby-dev:45688] [Bug #6509] 16813 16814Sat Jun 2 07:04:48 2012 Eric Hodel <drbrain@segment7.net> 16815 16816 * doc/re.rdoc (Performance): Replaced incorrect example of reducing 16817 backtracking through anchoring with reduced backtracking through a 16818 range. [ruby-trunk - Bug #6525] 16819 16820Sat Jun 2 06:34:15 2012 Eric Hodel <drbrain@segment7.net> 16821 16822 * doc/re.rdoc (Performance): Removed useless sample output from final 16823 performance example and switched from #match to #=~ for consistency. 16824 [ruby-trunk - Bug #6524] 16825 16826Fri Jun 1 09:30:53 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16827 16828 * object.c (class_or_module_required): extract check for class or 16829 module. 16830 16831Fri Jun 1 08:50:47 2012 Eric Hodel <drbrain@segment7.net> 16832 16833 * array.c: Updated Array documentation formatting. Patch by Zachary 16834 Scott. [ruby-trunk - Feature #6517] 16835 16836Fri Jun 1 06:57:10 2012 Eric Hodel <drbrain@segment7.net> 16837 16838 * ext/dl/lib/dl/struct.rb (DL::CStructEntity#set_ctypes): Refactored 16839 #set_ctypes using newer ruby features to simplify its implementation. 16840 * test/dl/test_c_struct_entry.rb (class DL): Test to verify 16841 refactoring. 16842 16843Fri Jun 1 06:40:25 2012 Eric Hodel <drbrain@segment7.net> 16844 16845 * object.c (Init_Object): Restored Kernel documentation based on 16846 Pickaxe book documentation. Patch by Zachary Scott. 16847 [ruby-trunk - Feature #6521] 16848 16849Fri Jun 1 06:29:42 2012 Eric Hodel <drbrain@segment7.net> 16850 16851 * object.c (rb_equal): Let Object be a link in #=== documentation. 16852 Patch by Zachary Scott. [ruby-trunk - Feature #6518] 16853 16854Thu May 31 09:27:06 2012 Eric Hodel <drbrain@segment7.net> 16855 16856 * ext/dl/lib/dl/struct.rb (DL::CStructEntity::size): Refactored ::size 16857 to remove unused variables and simplify using newer ruby features. 16858 * test/dl/test_c_struct_entry.rb: Test to validate refactoring 16859 16860Thu May 31 08:40:34 2012 Eric Hodel <drbrain@segment7.net> 16861 16862 * ext/dl/lib/dl/struct.rb (DL::CUnionEntity#set_ctypes): Refactored 16863 #set_types to reuse DL::CUnionEntity::size 16864 * test/dl/test_c_union_entity.rb: Added test 16865 16866Thu May 31 08:20:14 2012 Eric Hodel <drbrain@segment7.net> 16867 16868 * ext/dl/lib/dl/struct.rb (DL::CUnionEntity::size): Fixed ::size to 16869 return the size of the union. 16870 * test/dl/test_c_union_entity.rb: Test for DL::CUnionEntity::size 16871 16872Thu May 31 07:45:43 2012 Eric Hodel <drbrain@segment7.net> 16873 16874 * ext/dl: Added documentation. Patch by Vincent Batts. 16875 [ruby-trunk - Bug #6496] 16876 16877Wed May 30 16:30:00 2012 Kenta Murata <mrkn@cookpad.com> 16878 16879 * ext/bigdecimal/lib/bigdecimal/jacobian.rb, 16880 ext/bigdecimal/lib/bigdecimal/newton.rb: 16881 fix documentation comments. 16882 Patch by alperakgun from github.com/shyouhei/ruby/pull/8 16883 16884Wed May 30 16:20:00 2012 Kenta Murata <mrkn@cookpad.com> 16885 16886 * ext/bigdecimal/lib/bigdecimal/jacobian.rb (Jacobian#dfdxi): 16887 fix jacobian to get stuck in an infinite loop when a solution is not 16888 found due to forget to increment nRetry counter. 16889 Patch by alperakgun from github.com/shyouhei/ruby/pull/8 16890 16891Wed May 30 10:58:31 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16892 16893 * time.c (utc_offset_arg): utc offset can be precision in seconds. 16894 e.g. old Europe/Lisbon (c.f. [ruby-dev:40066]) 16895 16896Wed May 30 06:20:29 2012 Eric Hodel <drbrain@segment7.net> 16897 16898 * error.c (exc_set_backtrace): Updated documentation to indicate 16899 set_backtrace allows a string as well as an array of strings. 16900 [ruby-trunk - Bug #6501] 16901 16902Tue May 29 17:28:20 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16903 16904 * strftime.c (rb_strftime_with_timespec): support GNU extension triple 16905 colons modifier. [EXPERIMENTAL] 16906 16907 * strftime.c (rb_strftime_with_timespec): check conversion with locale 16908 modifier. 16909 16910 * strftime.c (rb_strftime_with_timespec): colons are valid only for 16911 'z' and must come just before it. 16912 16913Mon May 28 16:56:55 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16914 16915 * lib/test/unit.rb (Test::Unit::Runner#_prepare_run): StatusLineOutput 16916 needs job_status to be :replace. 16917 16918Mon May 28 13:35:33 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16919 16920 * common.mk (do-install-*): fix dependencies. based on the patch by 16921 nagachika at [ruby-dev:45683]. [Bug #6506] 16922 16923Mon May 28 12:03:04 2012 Narihiro Nakamura <authornari@gmail.com> 16924 16925 * gc.c (obj_free): doesn't free a method table if it doesn't 16926 exist. [ruby-dev:44436] 16927 * test/ruby/test_gc.rb (class TestGc): added the test case for 16928 this issue. 16929 16930Sun May 27 23:37:48 2012 Koichi Sasada <ko1@atdot.net> 16931 16932 * benchmark/bm_vm1_lvar_init.rb: added. 16933 This benchmark measures a initialize time of non-used variable. 16934 16935 * benchmark/bm_vm1_lvar_set.rb: added. 16936 This benchmark measures a local variables initialization time. 16937 16938 * benchmark/bm_vm2_bigarray.rb: added. 16939 This benchmark mesures a big array literal creation time. 16940 16941 * benchmark/bm_vm2_bighash.rb: added. 16942 This benchmark mesures a big hash literal creation time. 16943 16944 * benchmark/bm*: change notation "i=0" to "i = 0". 16945 16946Sun May 27 13:33:26 2012 Koichi Sasada <ko1@atdot.net> 16947 16948 * benchmark/driver.rb: fix to continue benchmarks when 16949 an error is occurred. 16950 16951Sun May 27 11:27:50 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16952 16953 * lib/test/unit.rb (Test::Unit::Runner#_prepare_run): fix operator 16954 precedence, so that platform and TERM should be counted. 16955 16956Sun May 27 10:02:33 2012 Tadayoshi Funaba <tadf@dotrb.org> 16957 16958 * ext/date/date_strftime.c: allows %Ok and %Ol. 16959 16960Sun May 27 09:29:20 2012 Tadayoshi Funaba <tadf@dotrb.org> 16961 16962 * ext/date/date_core.c: modified doc. 16963 16964Sat May 26 19:04:34 2012 Tadayoshi Funaba <tadf@dotrb.org> 16965 16966 * ext/date/date_core.c: added description. 16967 16968Sat May 26 18:14:57 2012 Tadayoshi Funaba <tadf@dotrb.org> 16969 16970 * ext/date/date_strftime.c: reduced the code. 16971 16972Sat May 26 18:08:59 2012 Tadayoshi Funaba <tadf@dotrb.org> 16973 16974 * time.c: modified doc. 16975 * ext/date/date_core.c: ditto. 16976 16977Sat May 26 17:05:45 2012 Koichi Sasada <ko1@atdot.net> 16978 16979 * vm.c (backtrace_*): change type of lev and n from size_t to int. 16980 Also set type of rb_backtrace_t#backtrace_size to int. 16981 A patch from nobu. 16982 16983 * vm_eval.c: ditto. 16984 16985Sat May 26 16:26:30 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 16986 16987 * file.c (realpath_rec): UNC prefix does not end with path separator, 16988 so new separator is needed after it. 16989 16990Sat May 26 15:29:22 2012 Koichi Sasada <ko1@atdot.net> 16991 16992 * test/ruby/test_backtrace.rb (test_caller_lev): 16993 decrease recursion size. 16994 16995Sat May 26 13:50:48 2012 Koichi Sasada <ko1@atdot.net> 16996 16997 * NEWS: add Kernel#caller's second argument. 16998 16999Sat May 26 13:40:29 2012 Koichi Sasada <ko1@atdot.net> 17000 17001 * vm.c (RubyVM::FrameInfo): add a class to access each frame 17002 information. You don't need to parse strings from caller(). 17003 FrameInfo has the following methods: 17004 FrameInfo#name: method name, class name, etc with decorations. 17005 FrameInfo#basename: name without decorations. 17006 FrameInfo#line_no: line number. 17007 FrameInfo#filename: file name. 17008 FrameInfo#filepath: full filepath. 17009 FrameInfo#iseq: iseq if it is iseq frame (defined by ruby script) 17010 FrameInfo#to_s: return caller() method style string. 17011 RubyVM::FrameInfo.caller(n, lev) returns array of FrameInfo objects. 17012 The name "RubyVM::FrameInfo.caller" is long and ambiguous (it is 17013 confusing with Kernel::caller() method), we need to change the name 17014 before Ruby 2.0 release. Good names or comments are welcome. 17015 17016 * test/ruby/test_backtrace.rb: add a test for above change. 17017 17018Sat May 26 12:18:09 2012 Koichi Sasada <ko1@atdot.net> 17019 17020 * vm.c (frame_info_to_str): add `break'. 17021 17022 * vm.c (backtrace_object): remove lev and n parameter. 17023 backtrace_object always returns all of backtrace information. 17024 17025 * vm.c (rb_backtrace_to_str_ary): fix to use backtrace_object(). 17026 This change improve performance of caller(lev, n). 17027 17028 * benchmark/bm_vm3_backtrace.rb: added to check above improvement. 17029 FYI: measurement on my laptop, 1.9.3p229 needs 5.125 sec, 17030 and current trunk only needs 0.299sec. 17031 17032Sat May 26 11:05:09 2012 Koichi Sasada <ko1@atdot.net> 17033 17034 * vm.c (rb_frame_info_t): keep previous ISEQ frame info for CFUNC 17035 frame info. And fix to cache a calculated line_no of ISEQ frame 17036 info. 17037 17038Sat May 26 09:54:53 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 17039 17040 * ext/openssl/ossl_ssl.c: Allow disabling client-side renegotiation. 17041 * test/openssl/test_ssl.rb: Simple tests for this. 17042 17043 Client-side renegotiation is still considered problematic, even 17044 when used in the context of secure renegotiation (RI, RFC 5746). 17045 The changes allow users to either completely disable client 17046 renegotiation on the server, or to specify a maximum number of 17047 handshakes allowed in total. The number of total handshakes is 17048 counted in a callback set as SSL_set_info_callback. If the 17049 maximum number of handshakes is exceeded an error will be raised 17050 We do not support renegotiation in the OpenSSL extension, therefore 17051 this feature can only be tested externally. 17052 The feature is opt-in, the default setting will be to allow 17053 unlimited client renegotiation, as was the case before. 17054 17055Fri May 25 23:38:58 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 17056 17057 * test/openssl/test_ssl.rb: Clarify the intention of errors to be 17058 expected. Two errors are possible when connection is refused due 17059 to a protocol version that was explicitly disallowed, 17060 OpenSSL::SSL::SSLError or Errno::ECONNRESET, depending on the 17061 OpenSSL version in use. 17062 17063Fri May 25 22:19:40 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 17064 17065 * ext/openssl/ossl_ssl.c: Revert r35583 17066 * test/openssl/test_ssl.rb: Handle ECONNRESET in code instead to avoid 17067 the test failing in Ruby CI [1] 17068 17069 [1] http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20120507T190102Z.log.html.gz#test-all 17070 17071Fri May 25 19:51:36 2012 Koichi Sasada <ko1@atdot.net> 17072 17073 * vm_eval.c (rb_f_caller): caller() method accepts second optional 17074 argument `n' which specify how many frames should return. 17075 For example, `caller(0, 1)' returns only one frame information 17076 which calls caller() method. If there are less than n frame 17077 information, then all frame information are returned. If n is 0, 17078 then always return []. 17079 This fix is part of [ruby-dev:42345] [Ruby 1.9-Feature#3917]. 17080 However, performance and features are not enough. 17081 RDoc is also not available. 17082 17083 * test/ruby/test_backtrace.rb: add a test for above. 17084 17085Fri May 25 17:05:07 2012 Koichi Sasada <ko1@atdot.net> 17086 17087 * vm.c (oldbt_init, vm_backtrace_str_ary): arg->data should 17088 be initialized before calling `backtrace_each()'. 17089 17090Fri May 25 16:11:27 2012 NAKAMURA Usaku <usa@ruby-lang.org> 17091 17092 * trunk/ext/-test-/printf/printf.c: change function names because of 17093 conflict with msvcrt. fixed build error of mswin. 17094 17095Fri May 25 10:52:52 2012 Koichi Sasada <ko1@atdot.net> 17096 17097 * vm.c: refactoring backtrace related functions. 17098 (1) unify similar functions (rb_backtrace_each() and 17099 backtrace_object()). backtrace_each() is a unified function. 17100 variation: 17101 a) backtrace_object(): create backtrace object. 17102 b) vm_backtrace_str_ary(): create bt as an array of string. 17103 c) vm_backtrace_print(): print backtrace to specified file. 17104 d) rb_backtrace_print_as_bugreport(): print backtrace on 17105 bugreport style. 17106 (2) remove rb_backtrace_each(). Use backtrace_each() instead. 17107 (3) change the type of lev parameter to size_t. 17108 a) lev == 0 means current frame (exception, etc use it). 17109 b) lev == 1 means upper frame (caller(0) use it). 17110 17111 * vm_core.h, vm_dump.c, vm_eval.c: ditto. 17112 17113 * vm.c (backtrace_object(), vm_backtrace_str_ary()): fix to return a 17114 correct size of caller(lev) array. 17115 Let n be a "caller(0).size" then ln as caller(lev).size should be 17116 (n - lev). However, the previous implementation returns a wrong 17117 size array (ln > n - lev). [ruby-dev:45673] 17118 17119 * test/ruby/test_backtrace.rb: add tests for backtrace. 17120 17121Fri May 25 08:51:39 2012 Eric Hodel <drbrain@segment7.net> 17122 17123 * enum.c (enum_count): Enumerable#count no longer uses #size when 17124 counting elements. Patch by Nobuhiro IMAI. [ruby-trunk - Bug #6473] 17125 17126Fri May 25 01:15:39 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17127 17128 * sprintf.c (ruby__sfvextra): [EXPERIMENTAL] use inspect instead of 17129 to_s if plus flag is given. 17130 17131 * vsnprintf.c (BSD_vfprintf): pass sign flag. 17132 17133Fri May 25 00:37:22 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17134 17135 * test/rubygems/test_gem_indexer.rb (setup, teardown): save @tempdir 17136 to remove it properly. [Bug #5348] 17137 17138Thu May 24 23:36:51 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17139 17140 * vsnprintf.c (BSD_vfprintf): [EXPERIMENTAL] object representation in 17141 rb_enc_vsprintf(). [Feature #5896] 17142 17143Thu May 24 15:33:01 2012 Koichi Sasada <ko1@atdot.net> 17144 17145 * vm_method.c (rb_method_defined_by): removed. 17146 nobu pointed out that rb_method_basic_definition_p() is enough 17147 for last commit. 17148 17149 * error.c, eval_error.c: change for above. 17150 17151Thu May 24 14:30:13 2012 Koichi Sasada <ko1@atdot.net> 17152 17153 * vm.c: add RubyVM::Backtrace object (btobj). 17154 Backtrace information contains an array consists of location 17155 information for each frames by string. 17156 RubyVM::Backtrace object is lightweight backtrace information, 17157 which contains complete information to generate traditional style 17158 backtrace (an array of strings) with faster generation. 17159 If someone accesses to backtrace information via 17160 Exception#backtrace, then convert a RubyVM::Backtrace object to 17161 traditional style backtrace. 17162 This change causes incompatibility on marshal dumped binary 17163 of Exception. If you have any trouble on it, please tell us 17164 before Ruby 2.0 release. 17165 Note that RubyVM::Backtrace object should not expose Ruby level. 17166 17167 * error.c, eval.c, vm_eval.c: ditto. 17168 17169 * internal.h: ditto. 17170 17171 * eval_error.c: fix to skip "set_backtrace" method invocation in 17172 creating an exception object if it call a normal set_backtrace 17173 method (defined by core). 17174 17175 * test/ruby/test_settracefunc.rb: fix for above change. 17176 17177 * vm_method.c (rb_method_defined_by): added. This function 17178 checks that the given object responds with the given method 17179 by the given cfunc. 17180 17181 * benchmark/bm_vm2_raise1.rb, benchmark/bm_vm2_raise2.rb: 17182 add to measure exception creation speed. raise1 create 17183 exception objects from shallow stack frame. raise2 create 17184 exception objects from deep stack frame. 17185 17186Thu May 24 12:07:46 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17187 17188 * io.c (io_strip_bom): check EOF. [Bug #6487][ruby-core:45203] 17189 17190Wed May 23 22:06:14 2012 NARUSE, Yui <naruse@ruby-lang.org> 17191 17192 * lib/net/http/header.rb (Net::HTTPHeader#range): fix broken parser of 17193 HTTP Range request. Old one can't parse invalid specs and multiple 17194 specs correctly. 17195 17196Wed May 23 10:18:54 2012 NAKAMURA Usaku <usa@ruby-lang.org> 17197 17198 * win32/win32.c (finish_overlapped_socket, overlapped_socket_io): 17199 replace ECONNABORTED to EPIPE in send, sendto and sendmsg to improve 17200 BSD socket compatibility. this change removes a failure on the test 17201 of net/ftp. 17202 17203Wed May 23 05:35:58 2012 Eric Hodel <drbrain@segment7.net> 17204 17205 * lib/net/http.rb: Broke up Net::HTTP into individual files. 17206 [ruby-trunk - Feature #6435] 17207 * lib/net/http/backward.rb: ditto. 17208 * lib/net/http/response.rb: ditto. 17209 * lib/net/http/exceptions.rb: ditto. 17210 * lib/net/http/responses.rb: ditto. 17211 * lib/net/http/generic_request.rb: ditto. 17212 * lib/net/http/header.rb: ditto. 17213 * lib/net/http/request.rb: ditto. 17214 * lib/net/http/proxy_delta.rb: ditto. 17215 * lib/net/http/requests.rb: ditto. 17216 17217Wed May 23 05:15:11 2012 Eric Hodel <drbrain@segment7.net> 17218 17219 * class.c (rb_mod_init_copy): Clear the cached inspect string of a 17220 dup'd anonymous module or class. [ruby-trunk - Bug #6454] 17221 * test/ruby/test_module.rb (class TestModule): ditto 17222 17223Tue May 22 16:49:15 2012 Koichi Sasada <ko1@atdot.net> 17224 17225 * vm_core.h: add a data type rb_location_t to store iseq location 17226 information. 17227 rb_location_t#filename, filepath, name and line_no was moved from 17228 rb_iseq_t. rb_location_t#basename is a new field which is 17229 similar to `name' field without any decoration. 17230 `name' field contains some decoration such as `block in foo'. 17231 `basename' only contains `foo'. 17232 rb_iseq_t contains memory object of rb_location_t. 17233 17234 * iseq.c: setup rb_location_t for each rb_iseq_t memory objects. 17235 17236 * compile.c, proc.c, vm.c, vm_dump.c, vm_eval.c, vm_insnhelper.c, 17237 vm_method.c: support about it. 17238 17239Tue May 22 00:45:05 2012 Yusuke Endoh <mame@tsg.ne.jp> 17240 17241 * struct.c (rb_struct_members): Refactoring. As Struct#members had 17242 returned an array of String, the old code was needed to convert 17243 Symbols to Strings. But it is almost unnecessary because the 17244 method now returns an array of Symbols. A patch by Masaki 17245 Matsushita <glass.saga at gmail dot com> [Feature #6218] 17246 [ruby-dev:45451] 17247 17248Mon May 21 19:20:25 2012 NARUSE, Yui <naruse@ruby-lang.org> 17249 17250 * lib/net/ftp.rb (Net::FTP#retrbinary): close only if conn is not nil 17251 because transfercmd may fail and return nil. 17252 17253 * lib/net/ftp.rb (Net::FTP#retrlines): ditto. 17254 17255Mon May 21 15:10:28 2012 Akinori MUSHA <knu@iDaemons.org> 17256 17257 * ext/syslog/syslog.c: Classify constants and macros into several 17258 sub-modules. (Syslog::Priority, Syslog::Level, Syslog::Option 17259 and Syslog::Macros) 17260 17261 * ext/syslog/syslog.c (mSyslog_inspect): Use rb_sprintf(). 17262 17263 * ext/syslog/syslog.c (mSyslog_inspect): Make sure self is a 17264 module before calling rb_class2name(). 17265 17266Mon May 21 12:44:11 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 17267 17268 * .travis.yml (install): It seems tcl/tk is skipped in Travis 17269 CI. Trying to fix the situation. 17270 17271Mon May 21 12:11:25 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17272 17273 * enc/depend (ENCOBJS): add dependencies. 17274 17275 * enc/make_encmake.rb (target_encodings): extract dependencies. 17276 17277Mon May 21 11:26:17 2012 NARUSE, Yui <naruse@ruby-lang.org> 17278 17279 * lib/net/ftp.rb (Net::FTP#transfercmd): rescue shutdown. 17280 17281Sun May 20 23:00:11 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17282 17283 * ext/extmk.rb (extmake): reopen $stdout to NULL, since setting 17284 $stdout cannot affect child processes. 17285 17286Sun May 20 21:36:39 2012 NARUSE, Yui <naruse@ruby-lang.org> 17287 17288 * enc/shift_jis.c (code_to_mbclen): return 17289 ONIGERR_INVALID_CODE_POINT_VALUE if the code is invalid. 17290 17291 * string.c (tr_next): increment character until the code 17292 is a valid character. [ruby-dev:45652] [Bug #6450] 17293 17294Sun May 20 12:25:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17295 17296 * Makefile.in (LIBRUBY_SO): link EXTSOLIBS too. 17297 17298 * ext/extmk.rb (mf.macro): use EXTSOLIBS instead of SOLIBS to get rid 17299 of discard libraries needed by default. [Bug #6462] 17300 17301Sat May 19 19:04:38 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17302 17303 * ext/extmk.rb (command_output): ENCOBJS is needed for all linked 17304 ruby, if --disable-shared and --with-static-linked-ext. 17305 17306 * ext/extmk.rb (command_output): dmyext is needed as DLDOBJS if no 17307 static linked extensions. 17308 17309 * Makefile.in, common.mk (PROGRAM): no extension libraries. 17310 17311 * common.mk (build-ext): pass macros for libruby.so. 17312 17313 * ext/extmk.rb (command_output): link extension libraries and encoding 17314 libraries into libruby.so, not ruby executable. 17315 17316 * ext/extmk.rb (command_output): fold long macro lines. 17317 17318 * Makefile.in (LIBEXT): add macro. 17319 17320 * configure.in (ENCOBJS, EXTOBJS): use LIBEXT, not hardcoded suffix. 17321 17322 * Makefile.in (LIBRUBY_A): fix typo. re-applying r35242. 17323 17324Sat May 19 04:46:53 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 17325 17326 * ext/openssl/extconf.rb: Use Logging::message instead of message. 17327 * ext/zlib/extconf.rb: ditto. 17328 17329Fri May 18 18:13:44 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17330 17331 * lib/mkmf.rb (MakeMakefile#configuration): keep space at end of 17332 OUTFLAG and COUTFLAG. [ruby-dev:45650] 17333 17334Fri May 18 17:39:42 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 17335 17336 * thread_pthread.c (rb_thread_create_timer_thread): Added error 17337 check when failing fcntl(). [Bug #6147] [ruby-dev:45364] 17338 17339Fri May 18 17:41:00 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17340 17341 * ext/extmk.rb (extmake): link archives only, skip script only 17342 extension libraries. 17343 17344Fri May 18 17:25:33 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 17345 17346 * cont.c: bump up fiber machine stack size when running on 64bit 17347 arch. [Bug #6344] [ruby-dev:45554] 17348 17349Fri May 18 15:20:56 2012 NARUSE, Yui <naruse@ruby-lang.org> 17350 17351 * lib/uri/generic.rb (URI::Generic.build): duplicate args before adding 17352 new items. (don't change arguments) 17353 17354 * lib/uri/generic.rb (URI::Generic.build): use URI::Generic::COMPONENT 17355 if this method is called from URI::Generic. 17356 17357 * lib/uri/generic.rb (URI::Generic.build2): escape only if the item is 17358 a String. 17359 17360 * lib/uri/generic.rb (URI::Generic.build2): use DEFAULT_PARSER because 17361 it doesn't have parser method. [Bug #6420] 17362 17363Fri May 18 15:54:07 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 17364 17365 * ext/zlib/extconf.rb: Use an exception instead of bare puts. 17366 17367Fri May 18 15:53:05 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 17368 17369 * ext/psych/extconf.rb: Use an exception instead of bare abort. 17370 17371Fri May 18 15:51:32 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 17372 17373 * ext/fiddle/extconf.rb: Use an exception instead of bare abort. 17374 17375Fri May 18 15:49:35 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 17376 17377 * ext/readline/extconf.rb: Use an exception instead of bare exit. 17378 17379Fri May 18 15:38:11 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 17380 17381 * ext/ripper/extconf.rb: Use an exception instead of bare 17382 Logging.message. 17383 17384Fri May 18 15:23:06 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 17385 17386 * ext/openssl/extconf.rb: Clarify a message when hit Apple 17387 OpenSSL issue. 17388 17389Fri May 18 15:14:32 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 17390 17391 * ext/extmk.rb: Show a message when extconf.rb raised an exception. 17392 * ext/openssl/extconf.rb: Use exception raising instead of message 17393 and/or abort. We want to display error message to console _and_ 17394 logging into mkmf.log. 17395 17396Fri May 18 06:14:07 2012 Eric Hodel <drbrain@segment7.net> 17397 17398 * ext/syslog/lib/syslog/logger.rb: Added Syslog::Logger which was 17399 ported from the SyslogLogger gem. [ruby-trunk - Feature #5096] 17400 * NEWS: ditto. 17401 * test/syslog/test_syslog_logger.rb: ditto. 17402 17403Fri May 18 01:28:21 2012 Aaron Patterson <aaron@tenderlovemaking.com> 17404 17405 * ext/psych/parser.c (transcode_string): fix encoding index names. 17406 Thanks markizko for reporting. 17407 17408Thu May 17 23:03:58 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17409 17410 * configure.in: fix function name to be checked, to initialize 17411 rb_thread_cond_t properly. 17412 17413 * thread_pthread.c (native_cond_initialize, native_cond_destroy): 17414 fix macro name. 17415 17416Thu May 17 12:53:07 2012 Yuki Yugui Sonoda <yugui@google.com> 17417 17418 * thread.c, thread_pthread.c: Moved pthread-specific preprocessor 17419 hacks to thread_pthread.c 17420 17421Thu May 17 12:18:47 2012 Yuki Yugui Sonoda <yugui@google.com> 17422 17423 * io.c: Fix a mistake on merging the patch in the previous commit. 17424 17425Thu May 17 11:33:07 2012 Yuki Yugui Sonoda <yugui@google.com> 17426 17427 Imports Ruby's port to NativeClient (a.k.a NaCl). 17428 Patch by Google Inc. [ruby-core:45073]. 17429 17430 * configure.in (RUBY_NACL): New M4 func to configure variables for 17431 NaCl. 17432 (RUBY_NACL_CHECK_PEPPER_TYPES): New M4 func to check the old names 17433 of Pepper interface types. 17434 (BTESTRUBY): New variable to specify which ruby should be run on 17435 "make btest". NaCl can run the built binary by sel_ldr, but it need 17436 rbconfig.rb. So this variable is distinguished from $MINIRUBY. 17437 17438 * thread_pthread.c: Disabled some features on NaCl. 17439 17440 * io.c: ditto. 17441 17442 * process.c: ditto. 17443 17444 * signal.c: ditto. 17445 17446 * file.c: ditto. 17447 17448 * missing/flock.c: ditto. 17449 17450 * nacl/pepper_main.c: An example implementation of Pepper application 17451 that embeds Ruby. 17452 17453 * nacl/example.html: An example of web page that uses the Pepper 17454 application. 17455 17456 * nacl/nacl-config.rb: Detects variants of NaCl SDK. 17457 17458 * nacl/GNUmakefile.in: Makefile template for NaCl specific build 17459 process. 17460 17461 * nacl/package.rb: script for packaging a NaCl-Ruby embedding 17462 application. 17463 17464 * nacl/reate_nmf.rb: Wrapper script of create_nmf.py 17465 17466 * dln.c (dln_load): Added a hack to call on NaCl. 17467 17468 * util.c (ruby_getcwd): Path to the current directory is not available 17469 on NaCl. 17470 17471Thu May 17 10:54:58 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17472 17473 * ext/tk/extconf.rb: add -l options to $libs not $LDFLAGS, 17474 to be passed to EXTLIBS in exts.mk. 17475 17476 * enc/encinit.c.erb: use %-lines to adjust indent in the generated file. 17477 17478 * lib/mkmf.rb (MakeMakefile#have_framework): combine -framework option 17479 and its argument with an equal sign not to be separated in merge_libs. 17480 17481 * ext/tk/extconf.rb: ditto. 17482 17483 * ext/extmk.rb: EXTLDFLAGS also needs to be passed. 17484 17485Wed May 16 15:44:22 2012 Yuki Yugui Sonoda <yugui@google.com> 17486 17487 * configure.in: Fix an unbalanced quote. 17488 17489Wed May 16 15:43:10 2012 NAKAMURA Usaku <usa@ruby-lang.org> 17490 17491 * ext/extmk.rb (exts.mk): use double quotes instead of single quotes 17492 for commandline because it's not recognized as quotes on Windows. 17493 17494Wed May 16 15:15:55 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17495 17496 * configure.in (LD): enclose with single quotes but not double quotes 17497 not to expand command substitution. 17498 17499Wed May 16 14:19:51 2012 Yuki Yugui Sonoda <yugui@google.com> 17500 17501 Supports static linking of extensions and encodings again. 17502 Fixes --with-static-linked-ext. 17503 17504 Patch by Google Inc. [ruby-core:45073]. 17505 17506 * Makefile.in (ENCOBJS, EXTOBJS): New variables to specify static 17507 linked libraries. Also reintroduces extinit.o, introduces encinit.o 17508 introduces encinit.o 17509 17510 * common.mk: Builds static libraries rather than shared objects if 17511 specified. 17512 17513 * configure.in (LD): new substitution. 17514 17515 * enc/depend: Supports static linked libraries 17516 (libencs, libenc, libtrans): New target. 17517 17518 * enc/encinit.c.erb: new template to generate the initialization of 17519 statically linked encodings. 17520 17521 * enc/make_encmake.rb (--module): new flag to specify whether static 17522 or dynamic. 17523 17524 * transcode_data.h (TRANS_INIT): New macro to get rid of the name 17525 collision of encoding initializers and transcoder initializers. 17526 17527 * ext/extmk.rb: Fixes the behavior on $extstatic is true. 17528 17529 * lib/mkmf.rb (clean-static): new target to clean up static linked 17530 libraries. 17531 17532 * ruby.c (process_options): New initializes statically linked 17533 encodings here. 17534 17535Wed May 16 14:30:43 2012 NAKAMURA Usaku <usa@ruby-lang.org> 17536 17537 * io.c: fixed a merge mistake of r33878, reported by nobu via IRC. 17538 17539Wed May 16 06:59:41 2012 Tadayoshi Funaba <tadf@dotrb.org> 17540 17541 * ext/date/date_strftime.c: should also be aware of flags on 17542 complex specifier. 17543 17544Wed May 16 05:11:29 2012 Aaron Patterson <aaron@tenderlovemaking.com> 17545 17546 * ext/psych/lib/psych/visitors/to_ruby.rb: fix a bug with string 17547 subclass dumping and loading. 17548 17549 * test/psych/test_array.rb: pertinent tests 17550 17551 * test/psych/test_string.rb: ditto 17552 17553Wed May 16 01:31:21 2012 Aaron Patterson <aaron@tenderlovemaking.com> 17554 17555 * ext/psych/lib/psych/visitors/to_ruby.rb: convert omap tagged maps to 17556 Psych::Omap objects rather than hashes. [Bug #6425] 17557 17558 * test/psych/test_omap.rb: pertinent test. 17559 17560Wed May 16 01:15:45 2012 Aaron Patterson <aaron@tenderlovemaking.com> 17561 17562 * ext/psych/lib/psych/visitors/yaml_tree.rb: keep a reference to 17563 custom coders so that GC does not impact dumped yaml reference ids. 17564 17565Tue May 15 23:59:48 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17566 17567 * lib/test/unit.rb (Test::Unit::Options#setup_options): add --color option. 17568 17569 * lib/test/unit.rb (Test::Unit::Runner#_prepare_run): defer color code 17570 initialization to regard --color option. 17571 17572Mon May 14 16:28:36 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17573 17574 * parse.y (f_arglist): should reset lexical states after empty 17575 argument list with no parenthesis as well as parenthesized list, 17576 so that reserved name method definition work. [ruby-dev:45626] 17577 [Bug #6403] 17578 17579Mon May 14 00:14:24 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 17580 17581 * enumerator.c (lazy_take_func, lazy_take): multiple calls of 17582 force/to_a method to Enumerator::Lazy#take should return same 17583 results. [ruby-dev:45634] [Bug #6428] 17584 17585 * test/ruby/test_lazy_enumerator.rb (test_take_recycle): add test for 17586 above. 17587 17588Sun May 13 23:38:31 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 17589 17590 * test/ruby/test_io.rb (test_flush_in_finalizer1): don't use IO.for_fd 17591 to close IO objects. it create IO object with already closed fd, and 17592 cause occasional Errno::EBADF in following tests. [ruby-core:45020] 17593 [Bug #6228] 17594 17595Sun May 13 23:32:16 2012 CHIKANAGA Tomoyuki <nagachika@ruby-lang.org> 17596 17597 * test/ruby/test_io.rb (TestIO): revert r35631. it broke the intent of 17598 test_flush_in_finalizer1. [ruby-core:43951] [Bug #6228] 17599 17600Sun May 13 22:46:36 2012 Tanaka Akira <akr@fsij.org> 17601 17602 * ext/etc/etc.c (passwd_ensure): move endpwent() call from 17603 passwd_iterate to close /etc/passwd on exception. 17604 (group_ensure): move endgrent() call from group_iterate to close 17605 /etc/group on exception. 17606 17607Sun May 13 18:10:43 2012 Tadayoshi Funaba <tadf@dotrb.org> 17608 17609 * ext/date/date_strftime.c: removed unused code and changed the style. 17610 17611Sun May 13 17:37:56 2012 Tadayoshi Funaba <tadf@dotrb.org> 17612 17613 * ext/date/date_strftime.c: refactored. 17614 17615Sun May 13 06:40:12 2012 Luis Lavena <luislavena@gmail.com> 17616 17617 * test/ruby/test_io.rb (class TestIO): Disable GC during IO tests to 17618 avoid file descriptors being GC'ed. Suggestion by Tomoyuki Chikanaga 17619 [ruby-core:43951][Bug #6228] 17620 17621Sat May 12 07:00:16 2012 Eric Hodel <drbrain@segment7.net> 17622 17623 * ext/sdbm/init.c: Added documentation. Patch by Justin Collins, 17624 cleanup by Zachary Scott. [ruby-trunk - #6410] 17625 17626Sat May 12 06:02:03 2012 Eric Hodel <drbrain@segment7.net> 17627 17628 * lib/fileutils.rb (cp_r): Fixed cp_r example. Patch by TJ Koblentz 17629 from pull request #114. [ruby-trunk - Bug #6411] 17630 17631Sat May 12 05:23:06 2012 NARUSE, Yui <naruse@ruby-lang.org> 17632 17633 * thread.c (rb_threadptr_execute_interrupts_common): 17634 test_signal_requiring of test/ruby/test_signal.rb fail if the sub 17635 process is killed on waiting IO in lex_io_gets in rb_load_file in 17636 rb_load_internal in require. 17637 This is because 17638 (1) the process receive the killing signal in 17639 rb_thread_io_blocking_region in rb_read_internal in lex_io_gets. 17640 (2) set th->errinfo as INT2FIX(TAG_FATAL) at 17641 rb_threadptr_execute_interrupts_common. 17642 (3) escape rb_load_file in rb_load_internal and jump to EXEC_TAG() 17643 without set loaded as TRUE. 17644 (4) call first rb_exc_raise(GET_THREAD()->errinfo); because loaded 17645 is FALSE as above. this errinfo should be an exception object 17646 but this is INT2FIX(TAG_FATAL). 17647 Don't call first rb_exc_raise if GET_THREAD()->errinfo is Fixnum. 17648 17649Fri May 11 14:23:11 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17650 17651 * parse.y (primary): begin/end block should be isolated from outside. 17652 [ruby-dev:45631][Bug #6419] 17653 17654Fri May 11 14:09:47 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17655 17656 * ext/bigdecimal/bigdecimal.c (PUSH): to prevent VALUE from GC, 17657 must not cast it to unsigned long, which may be shorter than 17658 VALUE, and the result can be mere garbage. 17659 17660Fri May 11 09:51:07 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17661 17662 * lib/test/unit.rb (Test::Unit::Runner#failed): no unnecessary 17663 newlines if no reports to be displayed. 17664 17665Thu May 10 10:55:35 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17666 17667 * test/minitest/test_minitest_mock.rb: Correct requiring path to 17668 metametameta.rb. 17669 17670 * test/minitest/test_minitest_unit.rb: Correct requiring path to 17671 metametameta.rb. 17672 17673Thu May 10 10:18:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17674 17675 * parse.y (lex_state_name): returns name for lex_state_e, for debug 17676 use. 17677 17678Wed May 9 16:36:01 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17679 17680 * lib/mkmf.rb (MakeMakefile#pkg_config): check if libs resulted from 17681 pkg-config works actually. 17682 17683Wed May 9 16:01:38 2012 Shugo Maeda <shugo@ruby-lang.org> 17684 17685 * lib/net/imap.rb (decode_utf7, encode_utf7): refactored by 17686 Nobuyoshi Nakada, to use String#encode. 17687 17688Wed May 9 13:26:25 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17689 17690 * test/rubygems/test_gem_remote_fetcher.rb: skip OpenSSL dependent 17691 tests if not available. 17692 17693Wed May 9 08:09:38 2012 Ryan Davis <ryand-ruby@zenspider.com> 17694 17695 * lib/minitest/*: Imported minitest 3.0.0 (r7435) 17696 * test/minitest/*: ditto 17697 * test/rubygems/*: Imported fixes for buggy use of assert_match 17698 and deprecated assert_block 17699 UNBUNCH YOUR PANTIES. THE TESTS DO NOT RUN CLEAN ON OSX. 17700 17701Wed May 9 06:28:59 2012 Eric Hodel <drbrain@segment7.net> 17702 17703 * re.c (rb_reg_equal): Removed incorrect example for Regexp#== with 17704 "n" option. [ruby-talk - Bug #6415] 17705 17706Wed May 9 06:23:33 2012 Tadayoshi Funaba <tadf@dotrb.org> 17707 17708 * ext/date/date_core.c: reverted. 17709 17710Wed May 9 04:31:26 2012 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp> 17711 17712 * lib/rinda/ring.rb (lookup_ring_any): fix Rinda::RingFinger.primary 17713 hungs forever. [ruby-talk:395364] 17714 17715Tue May 8 21:09:00 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 17716 17717 * include/ruby/win32.h (FD_SET): change function to macro. 17718 To avoid buffer overflow when smaller FD_SETSIZE is used in ext 17719 libraries. 17720 17721 * win32/win32.c (rb_w32_fdset): this function is not used anymore. 17722 But we leave this for compatibility. 17723 17724 * win32/win32.c (rb_w32_select_with_thread): fix SEGV when smaller 17725 FD_SETSIZE is used in ext libraries. Dereference of fd_set pointer 17726 causes SEGV. 17727 17728 * test/-ext-/win32/test_fd_setsize.rb(TestFdSetSize): add tests for 17729 above. 17730 * ext/-test-/win32/fd_setsize/depend: ditto. 17731 * ext/-test-/win32/fd_setsize/extconf.rb: ditto. 17732 * ext/-test-/win32/fd_setsize/fd_setsize.c: ditto. 17733 17734 [ruby-core:44588] [Bug #6352] 17735 17736Tue May 8 20:44:46 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 17737 17738 * io.c (io_unread): fix IO#pos with mode 'r' bug on Windows. 17739 If the end of reading buffer is CR, io_unread() needs to unread one 17740 more byte. 17741 [ruby-core:44874] [Bug #6401] 17742 17743 * test/ruby/test_io_m17n.rb (TestIO_M17N#test_pos_with_buffer_end_cr): 17744 add a test for above. 17745 17746Tue May 8 13:38:17 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 17747 17748 * ext/date/date_core.c: improving introduction in Date/DateTime 17749 documentation. patched by Daniel Kaufman via Github. 17750 https://github.com/ruby/ruby/pull/110 17751 17752Tue May 8 13:36:02 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17753 17754 * configure.in (POSTLINK): default to : command to get rid of flag 17755 only command, since BSD make does not work with it. 17756 17757Tue May 8 13:35:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17758 17759 * lib/test/unit.rb (MiniTest#run_test): remove exact trace and get rid 17760 of IndexError, which could caused by modified $@ sometimes. 17761 17762Tue May 8 11:21:27 2012 NAKAMURA Usaku <usa@ruby-lang.org> 17763 17764 * test/minitest/metametameta.rb (MetaMetaMetaTestCase#assert_report): 17765 support drive letter on Windows. yes, the original code is metameta. 17766 17767Tue May 8 08:54:48 2012 Eric Hodel <drbrain@segment7.net> 17768 17769 * lib/abbrev.rb: Fixed typo in abbrev pattern documentation. Based on 17770 patch by Mark Rushakoff. [ruby-trunk - #6346] 17771 17772Tue May 8 07:44:18 2012 NARUSE, Yui <naruse@ruby-lang.org> 17773 17774 * ext/openssl/ossl_ssl.c (ossl_start_ssl): remove useless rb_sys_fail 17775 before ossl_raise. this cause a test failure on Linux. 17776 http://u64.rubyci.org/~chkbuild/ruby-trunk/log/20120507T190102Z.log.html.gz 17777 17778Tue May 8 05:35:18 2012 Eric Hodel <drbrain@segment7.net> 17779 17780 * object.c (Init_Object): Added reference to variable.c where 17781 public_constant and private_constant documentation lives. [#6381] 17782 17783Tue May 8 04:47:44 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17784 17785 * lib/test/unit.rb (Test::Unit::Runner#output): prefer local output to 17786 get rid of unexpected side effect in test/minitest/metametameta.rb. 17787 17788 * lib/test/unit.rb (MiniTest#run_test): show the running test in $0. 17789 17790 * lib/test/unit.rb (Test::Unit::StatusLineOutput): new class to output 17791 in status line. 17792 17793 * test/testunit/test_hideskip.rb (TestHideSkip#test_hideskip): 17794 MiniTest#puke now reports Skipped messages only if verbose mode. 17795 17796 * test/testunit/test_sorting.rb (TestTestUnitSorting#test_sorting): 17797 ditto. 17798 17799 * lib/test/unit.rb (Test::Unit::Runner#puke): modify only result and 17800 drop useless reports, not override entirely. 17801 17802 * bootstraptest/runner.rb (exec_test, show_progress): show rotators 17803 and pass/fail counts. 17804 17805 * sample/test.rb (PROGRESS): refine output. 17806 17807Tue May 8 02:34:26 2012 NARUSE, Yui <naruse@ruby-lang.org> 17808 17809 * lib/minitest/unit.rb (assert_match): refix of r35563. 17810 r35563 breaks the intention of the original change. 17811 https://github.com/seattlerb/minitest/commit/68858105b2eb11c85105ffac5f32b662c59397f3 17812 * lib/minitest/unit.rb (refute_match): ditto. 17813 17814Mon May 7 21:19:17 2012 NARUSE, Yui <naruse@ruby-lang.org> 17815 17816 * ext/json: Merge JSON 1.7.1. 17817 https://github.com/flori/json/commit/e5b9a9465c1159fae533bca320d950b772bcb4ac 17818 17819Mon May 7 22:54:22 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 17820 17821 * ext/openssl/ossl_ssl.c: add support for option flags 17822 OpenSSL::SSL::OP_NO_TLSv1_1 17823 OpenSSL::SSL::OP_NO_TLSv1_2 17824 to allow blocking specific TLS versions. Thanks to Justin Guyett for 17825 pointing this out to me. 17826 * test/openssl/test_ssl.rb: add tests to assert correct behavior when 17827 blocking certain versions of TLS/SSL both on server and client side. 17828 Also refactored tests to reduce boilerplate code a little. 17829 * test/openssl/utils.rb: rescue Errno::ECONNRESET for tests where 17830 client rejects the connection because a forbidden protocol version 17831 was used. 17832 17833Mon May 7 20:14:15 2012 Tanaka Akira <akr@fsij.org> 17834 17835 * lib/securerandom.rb (random_bytes): call to_int method for the 17836 argument at first. 17837 17838Mon May 7 17:54:12 2012 NARUSE, Yui <naruse@ruby-lang.org> 17839 17840 * lib/minitest/unit.rb (assert_match): replace matcher only if both 17841 matcher and obj are String. fix r35541. [Bug #6405] 17842 DON'T COMMIT IF YOU CAN'T RUN TEST. 17843 FIX AS SOON AS POSSIBLE YOU BREAK TESTS. 17844 patched by ayumin. 17845 https://github.com/seattlerb/minitest/pull/124 17846 17847 * lib/minitest/unit.rb (refute_match): ditto. 17848 17849Mon May 7 13:41:00 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17850 17851 * Makefile.in (PROGRAM), configure.in (POSTLINK): sign built program 17852 using RUBY_CODESIGN identity. 17853 17854Mon May 7 13:03:55 2012 Shugo Maeda <shugo@ruby-lang.org> 17855 17856 * lib/net/imap.rb (body_type_attachment): parse body type 17857 "ATTACHMENT". [ruby-core:44849] [Bug #6397] 17858 17859Mon May 7 10:49:36 2012 NARUSE, Yui <naruse@ruby-lang.org> 17860 17861 * ext/bigdecimal/bigdecimal.c (Init_bigdecimal): define IDs before 17862 they are used. [ruby-core:44900] [Bug #6406] 17863 17864Mon May 7 10:27:56 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17865 17866 * ext/digest/rmd160/rmd160.c (RMD160_Update): fix for huge data. 17867 17868Mon May 7 10:23:04 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17869 17870 * test/fileutils/fileasserts.rb: use assert_equal, assert_match, and so on. 17871 17872 * test/ruby/enc/test_utf16.rb, test/ruby/enc/test_utf32.rb, 17873 test/ruby/test_io_m17n.rb (assert_str_equal): ditto. 17874 17875 * test/rubygems/test_gem_remote_fetcher.rb 17876 (assert_data_from_{server,proxy}): ditto. 17877 17878 * test/test_pstore.rb (test_thread_safe): ditto. 17879 17880Mon May 7 10:16:30 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17881 17882 * test/rubygems/test_gem_installer.rb (TestGemInstaller#test_dir): fix 17883 argument order. expected value must come first. 17884 17885Mon May 7 09:14:11 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 17886 17887 * ext/openssl/ossl_ssl.c: support TLSv1.1 & TLSv1.2. Add 17888 SSLContext#version to inspect the version that was negotiated for 17889 a given connection. 17890 * ext/openssl/extconf.rb: detect TLS 1.1 & 1.2 support. 17891 * test/openssl/test_ssl.rb: add tests for TLS 1.1 & 1.2 given they 17892 are supported by the native OpenSSL being used. 17893 17894Sun May 6 21:34:29 2012 NARUSE, Yui <naruse@ruby-lang.org> 17895 17896 * io.c (io_encoding_set): suppress warnings. [ruby-dev:45627] 17897 this tmp1 is not required after r35538. 17898 17899 * addr2line.c: suppress warnings. 17900 17901Sun May 6 18:39:39 2012 Koichi Sasada <ko1@atdot.net> 17902 17903 * compile.c (iseq_compile_each): remove unused variable `size'. 17904 17905Sun May 6 14:50:03 2012 Tanaka Akira <akr@fsij.org> 17906 17907 * lib/securerandom.rb: show actual read length in an error message. 17908 17909Sat May 5 06:43:10 2012 Ryan Davis <ryand-ruby@zenspider.com> 17910 17911 * lib/minitest/*: Imported minitest 2.12.1 (r7323) 17912 * test/minitest/*: ditto 17913 17914Sat May 5 01:47:33 2012 NARUSE, Yui <naruse@ruby-lang.org> 17915 17916 * test/zlib/test_zlib.rb (test_inflate): add a test for Zlib.inflate. 17917 patched by headius (Charles Nutter). [ruby-core:44859] [Bug #6398] 17918 17919 * test/zlib/test_zlib.rb (test_deflate): add a test for Zlib.deflate. 17920 17921Sat May 5 00:53:55 2012 NARUSE, Yui <naruse@ruby-lang.org> 17922 17923 * io.c (parse_mode_enc): remove warnings 'Ignoring internal encoding'. 17924 [ruby-core:44455] [Bug #6324] 17925 17926 * io.c (io_encoding_set): ditto. 17927 17928Fri May 4 07:19:02 2012 NARUSE, Yui <naruse@ruby-lang.org> 17929 17930 * lib/rdoc/parser.rb (RDoc.binary?): fix wrong regexp. 17931 [ruby-core:44798] [Bug #6393] 17932 17933Fri May 4 01:33:20 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17934 17935 * lib/rdoc/parser.rb (RDoc.alias_extension): a real file is irrelevant 17936 to aliasing. [ruby-core:44796][Bug #6392] 17937 17938 * lib/rdoc/parser.rb (RDoc.zip?): non-existent file will not be a zip 17939 file. 17940 17941 * lib/rdoc/parser.rb (RDoc.can_parse_by_name): accept aliased 17942 extension file names. 17943 17944 * lib/rdoc/parser.rb (RDoc.binary?): binary read data may have 17945 incomplete multibyte sequence. [ruby-core:44798][Bug #6393] 17946 17947Wed May 2 23:55:51 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17948 17949 * lib/test/unit.rb (Test::Unit::RequireFiles#non_options): expand 17950 real path to get rid of loading same files via symlinks. 17951 17952Wed May 2 23:26:04 2012 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 17953 17954 * cont.c (rb_fiber_m_transfer): improve sample code in Fiber#transfer 17955 documentation. emphasize the difference between transfer and resume. 17956 17957Wed May 2 23:21:20 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17958 17959 * parse.y (parser_yylex): allow spaces between lambda arrow and 17960 parenthesis. [ruby-dev:45605][Feature #6390] 17961 17962Wed May 2 19:06:30 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 17963 17964 * cont.c (rb_fiber_m_transfer): Improved Fiber documentation. 17965 patched by Anuj Dutta. [ruby-core:44540][Bug #6343] 17966 17967Wed May 2 13:06:37 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17968 17969 * README, README.ja: reformatted using rdoc markup. based on the 17970 patches by zzak (Zachary Scott) in [Feature #6388]. 17971 17972 * README, README.ja: updated the author's mail address. 17973 17974Wed May 2 09:46:09 2012 Kouji Takao <kouji@takao7.net> 17975 17976 * ext/readline/readline.c (Readline.special_prefixes=) 17977 (Readline.special_prefixes): new function. An original patch was 17978 created by nagachika. [Feature #5784] 17979 17980Tue May 1 22:18:45 2012 Kouji Takao <kouji@takao7.net> 17981 17982 * ext/readline/readline.c (Readline.pre_input_hook) 17983 (Readline.insert_text, Readline.redisplay): new function. An 17984 original patch was created by nagachika. [Feature #5785] 17985 17986Tue May 1 15:46:48 2012 Koichi Sasada <ko1@atdot.net> 17987 17988 * common.mk: "$(Q)-..." doesn't work on nmake. 17989 17990Tue May 1 15:32:10 2012 Koichi Sasada <ko1@atdot.net> 17991 17992 * common.mk: replace '@' prefix to '$(Q)' to control build 17993 process outputs. 17994 17995Tue May 1 14:17:59 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 17996 17997 * ext/openssl/deprecation.rb (OpenSSL.check_func): check if header is 17998 available for macro compatibility. 17999 18000Tue May 1 10:53:54 2012 NAKAMURA Usaku <usa@ruby-lang.org> 18001 18002 * test/ruby/test_settracefunc.rb: ignore traces from another threads 18003 because Kernel.set_trace_func affects other threads. 18004 18005Tue May 1 06:04:14 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18006 18007 * ext/digest/sha2/sha2.c (REVERSE32): explicitly cast since unsigned 18008 long may be larger than sha2_word32. 18009 18010 * ext/digest/sha2/sha2.c (SHA{256,512,384}_{Final,End}): should clear 18011 whole content, not pointer size. 18012 18013 * ext/digest/*/extconf.rb: use pkg_config to use same library with 18014 openssl. [ruby-core:44755][Bug #6379] 18015 18016 * ext/openssl/deprecation.rb: extract check for broken Apple OpenSSL. 18017 18018Tue May 1 05:02:30 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18019 18020 * configure.in (optflags): disable unsafe optimizations. 18021 [ruby-core:44679][Bug #6370] 18022 18023Mon Apr 30 23:36:49 2012 Tanaka Akira <akr@fsij.org> 18024 18025 * lib/fileutils.rb (copy_metadata): use File.lchown and File.lchmod to 18026 update meta data of symlinks. 18027 18028Mon Apr 30 23:05:53 2012 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 18029 18030 * test/ruby/test_continuation.rb (tracing_with_set_trace_func): don't 18031 call Continuation from other threads. [ruby-dev:45596] [Bug #6382] 18032 18033Mon Apr 30 20:10:04 2012 Tanaka Akira <akr@fsij.org> 18034 18035 * ext/zlib/extconf.rb: detect z_crc_t type which will be defined 18036 since zlib-1.2.7. 18037 18038 * ext/zlib/zlib.c (rb_zlib_crc_table): use z_crc_t if available. 18039 18040Mon Apr 30 09:02:15 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 18041 18042 * ext/openssl/lib/openssl/ssl.rb: add hostname to "hostname does not 18043 match server cert." error. patched by Wes Morgan via Github. 18044 https://github.com/ruby/ruby/pull/122 18045 18046Mon Apr 30 04:43:53 2012 Aaron Patterson <aaron@tenderlovemaking.com> 18047 18048 * ext/psych/lib/psych/json/yaml_events.rb: implicit styles should not 18049 be changeable for JSON events. 18050 18051Sun Apr 29 06:12:02 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18052 18053 * parse.y (assoc, parser_yylex): add syntax to splat keyword hash. 18054 [ruby-core:44591][Feature #6353] 18055 18056 * compile.c (compile_array_): generate keyword splat insns. 18057 18058 * vm.c (m_core_hash_merge_kwd): merge keyword hash into intermediate 18059 hash. leftward argument is prior currently. 18060 18061Fri Apr 27 12:34:23 2012 NAKAMURA Usaku <usa@ruby-lang.org> 18062 18063 * ext/dl/cfunc.c (rb_dlcfunc_call): should convert a Bignum value to 18064 unsigned long long on Win64. 18065 [ruby-core:44636][Bug #6364] reported by raylinn@gmail.com (ray linn) 18066 18067Fri Apr 27 10:58:17 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18068 18069 * test/readline/test_readline.rb (setup): avoid affected by user's 18070 inputrc file. [ruby-dev:45584][Bug #6357] 18071 18072Fri Apr 27 01:45:05 2012 NARUSE, Yui <naruse@ruby-lang.org> 18073 18074 * thread.c (rb_threadptr_execute_interrupts_common): 18075 handle timer_interrupt only on the first loop for the case to avoid 18076 the infinite loop like following case: 18077 * there is 2 Ruby threads (3 pthreads) 18078 (1) main thread is waiting at gvl_yield:112 (native_cond_wait) 18079 (2) sub thread works 18080 (3) sub thread waits at gvl_yield:133 (native_mutex_unlock) 18081 (4) main thread works 18082 (5) main thread goes to gvl_acquire_common 18083 (6) main thread call rb_wakeup_timer_thread 18084 (7) timer thread set timer interrupt to the main thread 18085 (8) main thread works 18086 (9) main thread waits at gvl_acquire_common:64 (native_cond_wait) 18087 (10) sub tread works 18088 (11) set sub thread as the current thread 18089 (12) run Ruby thread 18090 (13) ...100ms 18091 (14) sub thread goes to rb_threadptr_execute_interrupts_common 18092 (15) sub thread call rb_thread_schedule_limits 18093 (16) sub thread call gvl_release_common 18094 (17) sub threads waits at gvl_yield:121 (native_cond_wait) 18095 (18) main threads works 18096 (19) main thread back to gvl_yield 18097 (20) set main thread as the current thread 18098 (21) main thread call gvl_yield 18099 (22) main thread waits at gvl_yield:112 (native_cond_wait) 18100 As described above, the main thread can't escape from 18101 rb_threadptr_execute_interrupts_common. 18102 See extended memo: http://bugs.ruby-lang.org/projects/ruby-trunk/wiki/R35480_ExtendedMemo 18103 18104Fri Apr 27 07:15:07 2012 Tanaka Akira <akr@fsij.org> 18105 18106 * ext/socket/socket.c (sock_s_pack_sockaddr_un): support the longest 18107 path in sockaddr_un, really. 18108 reported by nagachika. 18109 http://d.hatena.ne.jp/nagachika/20120426/ruby_trunk_changes_35474_35476 18110 18111Thu Apr 26 12:28:06 2012 Tanaka Akira <akr@fsij.org> 18112 18113 * ext/socket/raddrinfo.c (init_unix_addrinfo): support the longest 18114 path in sockaddr_un. 18115 (inspect_sockaddr): ditto. 18116 (addrinfo_mdump): ditto. 18117 (addrinfo_mload): ditto. 18118 (rsock_unixpath_str): new function. 18119 (rsock_unixpath): removed. 18120 (rsock_unixaddr): use rsock_unixpath_str. 18121 18122 * ext/socket/socket.c (sock_s_pack_sockaddr_un): support the longest 18123 path in sockaddr_un. 18124 (sock_s_unpack_sockaddr_un): ditto. 18125 (sock_s_gethostbyaddr): unused variable removed. 18126 18127 * ext/socket/unixsocket.c (rsock_init_unixsock): support the longest 18128 path in sockaddr_un. 18129 18130 * ext/socket/rubysocket.h (rsock_unixpath_str): declared. 18131 (rsock_unixpath): removed. 18132 18133 * test/socket/test_unix.rb: comment out test_nul because abstract unix 18134 sockets may contain NULs. 18135 18136Thu Apr 26 01:32:33 2012 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 18137 18138 * test/optparse/test_summary.rb (test_summary_containing_space): add 18139 test for r35467. OptionParser#to_a shouldn't split banner by spaces. 18140 18141Wed Apr 25 23:02:46 2012 Tanaka Akira <akr@fsij.org> 18142 18143 * ext/socket/raddrinfo.c (init_unix_addrinfo): refine error message 18144 format. 18145 (addrinfo_mload): show more information on "too long AF_UNIX path" 18146 error. 18147 (addrinfo_unix_path): ditto for "too short AF_UNIX address" and 18148 "too long AF_UNIX address" error. 18149 18150Wed Apr 25 05:46:12 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18151 18152 * lib/optparse.rb (OptionParser#to_a): split for each lines. 18153 [ruby-dev:45568][Bug #6348] 18154 18155Tue Apr 24 21:57:53 2012 Tanaka Akira <akr@fsij.org> 18156 18157 * ext/socket/raddrinfo.c (init_unix_addrinfo): show actual path length 18158 when it is too long for Unix socket. 18159 18160 * ext/socket/unixsocket.c (rsock_init_unixsock): ditto. 18161 18162 * ext/socket/socket.c (sock_s_pack_sockaddr_un): ditto. 18163 18164Tue Apr 24 21:43:58 2012 Yusuke Endoh <mame@tsg.ne.jp> 18165 18166 * lib/net/smtp.rb (check_continue): raise an error with an explanatory 18167 message. [ruby-core:35854] [Feature #4598] 18168 18169Tue Apr 24 21:11:31 2012 NARUSE, Yui <naruse@ruby-lang.org> 18170 18171 * lib/optparse.rb (OptionParser#to_a): should split by end-of-line, 18172 and MUST TEST IT, MUST RUN THE TEST, MUST VERIFY BEFORE BACKPORT. 18173 [ruby-dev:45568][Bug #6348] 18174 18175Tue Apr 24 19:59:31 2012 NAKAMURA Usaku <usa@ruby-lang.org> 18176 18177 * enc/euc_jp.c: added EUC-JP-2004 and its alias EUC-JISX0213. 18178 [ruby-dev:45571] [Feature #6349] 18179 Requested by Kyouhei Yanagita <yanagi@shakenbu.org>. 18180 18181 * enc/trans/japanese_euc.trans: ditto. 18182 18183 * enc/trans/JIS/JISX0213-[12]%UCS@{BMP,SIP}.src: JIS X 0213:2004 -> 18184 Unicode mapping table from NetBSD. 18185 18186 * enc/trans/JIS/UCS@{BMP,SIP}%JISX0213-[12].src: Unicode -> JIS X 18187 0213:2004 mapping table from NetBSD. 18188 18189 * tool/transcode-tblgen.rb: added SIP support. 18190 18191 * test/ruby/test_transcode.rb: tests of above changes. 18192 18193Tue Apr 24 18:12:13 2012 Koichi Sasada <ko1@atdot.net> 18194 18195 * compile.c: fix to output warning when the same literals 18196 are available as a condition of same case clause. 18197 And remove information ('#n') because we can find duplicated 18198 condition with explicit line numbers. 18199 [ruby-core:38343] [Ruby 1.9 - Bug #5068] 18200 18201 * test/ruby/test_syntax.rb: add a test for above. 18202 18203Tue Apr 24 17:03:51 2012 NAKAMURA Usaku <usa@ruby-lang.org> 18204 18205 * win32/win32.c (waitpid): need to check the return value of 18206 FindChildSlotByHandle() before passing poll_child_status(). 18207 this fixed a SEGV in test-all. reported by ko1 via IRC. 18208 18209Tue Apr 24 16:04:39 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18210 18211 * parse.y (parser_yylex): EXPR_BEG by keywords is a start point of 18212 commands. [ruby-dev:45563][Bug #6347] 18213 18214 * parse.y (superclass): ditto for superclass. 18215 18216 * parse.y (parser_parse_string, parser_here_document): ditto for 18217 string interpolation. 18218 18219 * parse.y (parser_yylex): ditto for singleton class. 18220 18221Tue Apr 24 15:51:41 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18222 18223 * lib/optparse.rb (OptionParser#to_a): should split by end-of-line 18224 [ruby-dev:45568][Bug #6348] 18225 18226 * lib/optparse.rb (OptionParser#to_a): String#to_a is no longer 18227 defined. [ruby-dev:45568][Bug #6348] 18228 18229Tue Apr 24 12:46:50 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 18230 18231 * hash.c, object.c, struct.c, lib/ostruct.rb: add to_h methods. 18232 [Feature #6276] 18233 18234Tue Apr 24 10:54:34 2012 NAKAMURA Usaku <usa@ruby-lang.org> 18235 18236 * test/drb/drbtest.rb ({DRbCore,DRbAry}#teardown): cannot pass SIGTERM 18237 to another process on Windows, so use SIGINT instead. 18238 18239Tue Apr 24 00:25:39 2012 Yusuke Endoh <mame@tsg.ne.jp> 18240 18241 * thread.c (rb_check_deadlock): refine an error message of deadlock 18242 detection. [ruby-core:44336] [Bug #6288] 18243 18244Tue Apr 24 00:14:42 2012 Yusuke Endoh <mame@tsg.ne.jp> 18245 18246 * parse.y (primary): remove wrong "fixpos" that caused incorrect 18247 source_location of blocks. [ruby-core:42232] [Bug #5930] 18248 18249 * test/ruby/test_proc.rb: add a test for above. 18250 18251Mon Apr 23 22:56:08 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18252 18253 * ext/iconv: deprecated. [Feature #6322] 18254 18255Mon Apr 23 22:07:00 2012 Tanaka Akira <akr@fsij.org> 18256 18257 * test/socket/test_unix.rb (bound_unix_socket): make temporary 18258 filename shorter for less possibility of Unix socket path over 18259 107 bytes when TMPDIR has long path. 18260 18261Mon Apr 23 20:35:49 2012 NAKAMURA Usaku <usa@ruby-lang.org> 18262 18263 * win32/win32.c (szInternalCmds, internal_match, internal_cmd_match): 18264 get rid of a segmentation fault with GCC 4.7.0. 18265 reported by raylinn@gmail.com (ray linn) at [ruby-core:44505] 18266 [Bug #6333], and patched by mame. 18267 18268 * test/ruby/test_system.rb (TestSystem#test_system): test for it. 18269 18270Mon Apr 23 20:11:02 2012 Tanaka Akira <akr@fsij.org> 18271 18272 * lib/drb/ssl.rb: generate 1024 bits RSA key instead of 512 bits. 18273 OpenSSL 1.0.1 rejects 512 bits RSA key for TLS1.2 with SHA512. 18274 http://rt.openssl.org/Ticket/Display.html?id=2769&user=guest&pass=guest 18275 reported by Bohuslav Kabrda. 18276 [ruby-core:43844] [ruby-trunk - Bug #6221] 18277 18278Mon Apr 23 19:54:33 2012 Tanaka Akira <akr@fsij.org> 18279 18280 * test/drb/drbtest.rb: rescue Errno::ESRCH for Process.kill. 18281 reported by NARUSE, Yui. [ruby-dev:45551] 18282 18283Mon Apr 23 14:16:45 2012 NARUSE, Yui <naruse@ruby-lang.org> 18284 18285 * .gdbinit (rb_ps_vm): follow st_table's packing change. 18286 18287Mon Apr 23 10:43:30 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18288 18289 * configure.in: disable rubygems not to load rbconfig.rb before 18290 fake.rb. [ruby-core:44492][Bug #6329] 18291 18292Sun Apr 22 20:26:06 2012 Tanaka Akira <akr@fsij.org> 18293 18294 * lib/drb/extservm.rb (DRb::ExtServManager): don't use /bin/sh to 18295 invoke service subprocess. mark detach threads for clean up. 18296 18297 * test/drb/drbtest.rb: clean up the service subprocess in teardown. 18298 18299 * test/drb/test_drb.rb: set @service_name for teardown. 18300 18301 * test/drb/test_drbunix.rb: ditto. 18302 18303 * test/drb/test_drbssl.rb: ditto. 18304 18305 [ruby-dev:45547] 18306 18307Sun Apr 22 07:51:29 2012 Tanaka Akira <akr@fsij.org> 18308 18309 * lib/drb/ssl.rb: close accepted TCP socket if SSL accept is failed. 18310 [ruby-dev:45541] 18311 18312Sat Apr 21 14:36:49 2012 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp> 18313 18314 * test/rinda/test_rinda.rb: fix sticks on some tests problem 18315 [Bug #6272] 18316 18317Fri Apr 20 12:24:04 2012 Eric Hodel <drbrain@segment7.net> 18318 18319 * lib/rubygems/ssl_certs/AddTrustExternalCARoot.pem: Removed to avoid 18320 conflict with ca-bundle.pem 18321 * lib/rubygems/ssl_certs/VerisignClass3PublicPrimaryCertificationAuthority-G2.pem: 18322 ditto. 18323 * lib/rubygems/ssl_certs/Entrust_net-Secure-Server-Certification-Authority.pem: 18324 ditto. 18325 18326Fri Apr 20 08:07:06 2012 Eric Hodel <drbrain@segment7.net> 18327 18328 * lib/rubygems: Update to RubyGems 1.8.23 which contains security 18329 fixes: 18330 18331 RubyGems now disallows redirection from HTTPS to HTTP. 18332 18333 RubyGems now verifies SSL connections. 18334 18335 See https://github.com/rubygems/rubygems/blob/1.8/History.txt for 18336 changes since 1.8.22. 18337 * test/rubygems: ditto. 18338 18339Thu Apr 19 16:33:53 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18340 18341 * strftime.c (rb_strftime_with_timespec): fix carry-up bug and 18342 overwrite '+' with '-' if negative offset less than a hour. 18343 [ruby-core:44447][Bug #6323] 18344 18345Thu Apr 19 09:39:57 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18346 18347 * ext/-test-/win32/dln/extconf.rb: need import library for ordinal 18348 entry even on mingw. [ruby-core:44441][Bug #6320] 18349 18350Thu Apr 19 09:35:15 2012 Eric Hodel <drbrain@segment7.net> 18351 18352 * random.c (random_init): Clarify that the default seed is 18353 Random.new_seed, not zero. Based on patch by Roger Pack. 18354 [ruby-trunk - Bug #6313] 18355 * random.c (rb_f_srand): ditto. 18356 18357Thu Apr 19 08:59:02 2012 Eric Hodel <drbrain@segment7.net> 18358 18359 * ext/curses/curses.c (window_nodelay): Fixed call-seq of nodelay to 18360 include the '='. 18361 18362 Improved description window.nodelay=. 18363 18364Thu Apr 19 08:47:54 2012 Eric Hodel <drbrain@segment7.net> 18365 18366 * io.c (io_readpartial): Document the output buffer parameter is 18367 overwritten with the read contents even when non-empty. 18368 Patch by yu nobuoka. [ruby-trunk - Bug #6285] 18369 * io.c (io_read_nonblock): ditto. 18370 * io.c (io_read): ditto. 18371 * io.c (rb_io_sysread): ditto. 18372 * io.c (argf_read): ditto. 18373 * io.c (argf_readpartial): ditto. 18374 * ext/stringio/stringio.c (strio_read): ditto. 18375 * test/ruby/test_argf.rb (class TestArgf): Add test for existing 18376 behavior of read outbuf. 18377 * test/ruby/test_io.rb (class TestIO): ditto. 18378 * test/stringio/test_stringio.rb (class TestStringIO): ditto. 18379 18380Wed Apr 18 22:58:55 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18381 18382 * configure.in (DOT, DOXYGEN): use AC_CHECK_PROGS instead of 18383 AC_CHECK_PROG which needs the third argument. [ruby-core:44433] 18384 [Bug #6316] 18385 18386 * configure.in (PKG_CONFIG): fix condition to skip older version 18387 of pkg-config. continue in backticks does not affect outside. 18388 18389Wed Apr 18 13:59:40 2012 NAKAMURA Usaku <usa@ruby-lang.org> 18390 18391 * win32/file.c (INVALID_FILE_ATTRIBUTES): define for old SDK. 18392 18393Wed Apr 18 10:22:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18394 18395 * strftime.c (rb_strftime_with_timespec): add an interim digit for 18396 the timezone offset which is less than an hour. 18397 18398Wed Apr 18 09:58:29 2012 Eric Hodel <drbrain@segment7.net> 18399 18400 * lib/rubygems/version.rb: Fixed init_with warning by calling into 18401 yaml_initialize (for syck) from psych's init_with 18402 18403Wed Apr 18 09:03:43 2012 Eric Hodel <drbrain@segment7.net> 18404 18405 * lib/rubygems: Update to RubyGems 1.8.22 plus r33517 and r35337 which 18406 were ported to the rubygems git repository. 18407 18408 See https://github.com/rubygems/rubygems/blob/1.8/History.txt for 18409 changes since 1.8.11. 18410 18411 * test/rubygems: ditto. 18412 18413Tue Apr 17 22:18:48 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18414 18415 * strftime.c (rb_strftime_with_timespec): fix padding of time zone 18416 offset. [ruby-dev:43287][Bug #4458] 18417 18418Tue Apr 17 13:11:14 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18419 18420 * dln.c (rb_w32_check_imported): skip ordinal entries. based on a 18421 patch by phasis68 (Heesob Park) at [ruby-core:44381]. 18422 [ruby-core:44371][Bug #6303] 18423 18424Mon Apr 16 18:22:14 2012 NARUSE, Yui <naruse@ruby-lang.org> 18425 18426 * spec/default.mspec: expand relative path for ruby_exe which uses 18427 them with Dir.chdir; it breaks relative paths, for example 18428 core/kernel/exec_spec.rb. 18429 18430Mon Apr 16 16:22:40 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18431 18432 * win32/win32.c (gmtime_r, localtime_r): POSIX compliant reentrant 18433 versions. 18434 18435 * configure.in (RUBY_MSVCRT_VERSION): define on mingw too. 18436 18437 * win32/Makefile.sub (config.h): prefix RT_VER with RUBY and make 18438 more descriptive to get rid of potential conflict. 18439 18440Mon Apr 16 15:19:39 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18441 18442 * configure.in (NO_RUBY_VENDOR_LIB): fix missing comma. 18443 18444Mon Apr 16 12:17:12 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 18445 18446 * lib/matrix.rb (hermitian?): Bug fix, patch by George Koehler 18447 [Bug #6290] [rubyspec:4b9573d7613] 18448 18449Mon Apr 16 09:42:50 2012 NAKAMURA Usaku <usa@ruby-lang.org> 18450 18451 * lib/rubygems/remote_fetcher.rb (Gem::RemoteFetcher#download): should 18452 use File.identical? to check the identity of the files. 18453 this fixed an error of a test on Windows. 18454 18455Sat Apr 14 12:55:03 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18456 18457 * configure.in (UNREACHABLE): gcc 4.4 eliminates unreachable code 18458 if -O3 is given. 18459 18460 * win32/win32.c (child_result): dropped colon. 18461 18462Sat Apr 14 10:45:18 2012 NARUSE, Yui <naruse@ruby-lang.org> 18463 18464 * lib/webrick/server.rb (WEBrick::GenericServer#start): 18465 partially revert r35315. 18466 18467 * test/webrick/test_server.rb (test_start_exception): 18468 received signal is delivered to the main thread, so it is needed to 18469 emulate it. patched by Eric Hodel. [ruby-core:44348] [Feature #6236] 18470 18471Sat Apr 14 09:35:45 2012 Eric Hodel <drbrain@segment7.net> 18472 18473 * variable.c (trace_ev): Removed "not reached" comment as this line is 18474 reached. 18475 * variable.c (rb_obj_remove_instance_variable): Replaced "not reached" 18476 comment with the UNREACHABLE macro. 18477 * variable.c (rb_mod_const_missing): ditto. 18478 * variable.c (rb_mod_remove_cvar): ditto. 18479 * enum.c (first_i): ditto. 18480 * string.c (rb_str_aref): ditto. 18481 * string.c (str_byte_aref): ditto. 18482 * string.c (rb_to_id): ditto. 18483 * io.c (rb_io_fmode_modestr): ditto. 18484 * io.c (rb_io_oflags_modestr): ditto. 18485 * pack.c (num2i32): ditto. 18486 * vm_eval.c (rb_method_missing): ditto. 18487 * vm_eval.c (rb_f_throw): ditto. 18488 * dir.c (dir_read): ditto. 18489 * win32/win32.c (child_result): ditto. 18490 * struct.c (rb_struct_getmember): ditto. 18491 * struct.c (rb_struct_set): ditto. 18492 * struct.c (rb_struct_aref_id): ditto. 18493 * eval.c (rb_f_raise): ditto. 18494 * process.c (rb_f_exit_bang): ditto. 18495 * process.c (rb_f_exit): ditto. 18496 * process.c (rb_f_abort): ditto. 18497 * ext/-test-/iter/break.c (iter_break_value): ditto. 18498 * ext/pty/pty.c (pty_check): ditto. 18499 * ext/openssl/ossl_pkey.c (ossl_pkey_new): ditto. 18500 * ext/readline/readline.c (rb_remove_history): ditto. 18501 * ext/stringio/stringio.c (strio_unimpl): ditto. 18502 * numeric.c (num_sadded): ditto. 18503 * numeric.c (num_init_copy): ditto. 18504 * numeric.c (rb_num2ll): ditto. 18505 * numeric.c (rb_num2ull): ditto. 18506 * vm_insnhelper.c (call_cfunc): ditto. 18507 * ruby.c (opt_W_getter): ditto. 18508 * bignum.c (rb_big_coerce): ditto. 18509 * file.c (rb_f_test): ditto. 18510 18511Sat Apr 14 08:38:20 2012 Eric Hodel <drbrain@segment7.net> 18512 18513 * encoding.c (rb_enc_codepoint_len): Use UNREACHABLE to avoid "control 18514 reaches end of non-void function" warnings. [ruby-trunk - Bug #6066] 18515 * re.c (name_to_backref_number): ditto. 18516 * object.c (rb_Float): ditto. 18517 * io.c (io_readpartial): ditto. 18518 * io.c (io_read_nonblock): ditto. 18519 * pack.c (rb_uv_to_utf8): ditto. 18520 * proc.c (rb_method_entry_arity): ditto. 18521 * vm_method.c (rb_f_notimplement): ditto. 18522 * struct.c (rb_struct_aset_id): ditto. 18523 * class.c (rb_scan_args): ditto. 18524 * process.c (rlimit_resource_type): ditto. 18525 * process.c (rlimit_resource_value): ditto. 18526 * process.c (p_uid_switch): ditto. 18527 * process.c (p_gid_switch): ditto. 18528 * ext/digest/digest.c (rb_digest_instance_update): ditto. 18529 * ext/digest/digest.c (rb_digest_instance_finish): ditto. 18530 * ext/digest/digest.c (rb_digest_instance_reset): ditto. 18531 * ext/digest/digest.c (rb_digest_instance_block_length): ditto. 18532 * ext/bigdecimal/bigdecimal.c (BigDecimalCmp): ditto. 18533 * ext/dl/handle.c (rb_dlhandle_close): ditto. 18534 * ext/tk/tcltklib.c (pending_exception_check0): ditto. 18535 * ext/tk/tcltklib.c (pending_exception_check1): ditto. 18536 * ext/tk/tcltklib.c (ip_cancel_eval_core): ditto. 18537 * ext/tk/tcltklib.c (lib_get_reltype_name): ditto. 18538 * ext/tk/tcltklib.c (create_dummy_encoding_for_tk_core): ditto. 18539 * ext/tk/tkutil/tkutil.c (tk_hash_kv): ditto. 18540 * ext/openssl/ossl_ssl.c (ossl_ssl_session_reused): ditto. 18541 * ext/openssl/ossl_pkey_ec.c (ossl_ec_key_dsa_verify_asn1): ditto. 18542 * ext/openssl/ossl_pkey_ec.c (ossl_ec_point_is_at_infinit): ditto. 18543 * ext/openssl/ossl_pkey_ec.c (ossl_ec_point_is_on_curve): ditto. 18544 * ext/fiddle/conversions.c (generic_to_value): ditto. 18545 * ext/socket/raddrinfo.c (rsock_io_socket_addrinfo): ditto. 18546 * ext/socket/socket.c (sock_s_getnameinfo): ditto. 18547 * ext/ripper/eventids2.c (ripper_token2eventid): ditto. 18548 * cont.c (return_fiber): ditto. 18549 * dmydln.c (dln_load): ditto. 18550 * vm_insnhelper.c (vm_search_normal_superclass): ditto. 18551 * bignum.c (big_fdiv): ditto. 18552 * marshal.c (r_symlink): ditto. 18553 * marshal.c (r_symbol): ditto. 18554 18555Fri Apr 13 17:12:09 2012 NARUSE, Yui <naruse@ruby-lang.org> 18556 18557 * hash.c (inspect_i): keep string's coderange. 18558 18559Fri Apr 13 15:26:51 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18560 18561 * hash.c (rb_hash_aset, rb_hash_update, rb_hash_update_by): use 18562 st_update() to reduce evaluation of hash values. 18563 18564Fri Apr 13 15:17:36 2012 NARUSE, Yui <naruse@ruby-lang.org> 18565 18566 * lib/webrick/server.rb (WEBrick::GenericServer#stop): fix r35303; 18567 this method is to deny new connections, not shutdown yet. 18568 18569 * lib/webrick/server.rb (WEBrick::GenericServer#start): 18570 re-raise exception only when the exception is Interrupt (^C). 18571 18572Thu Apr 12 19:51:45 2012 Tadayoshi Funaba <tadf@dotrb.org> 18573 18574 * ext/date/date_core.c: added some notes. 18575 18576Wed Apr 11 17:16:49 2012 Koichi Sasada <ko1@atdot.net> 18577 18578 * compile.c (compile_array, compile_array_): 18579 Divide big array (or hash) literals into several blocks and 18580 concatenate them. There was a problem that a big array (hash) 18581 literal causes SystemStackError exception (stack overflow) 18582 because VM push all contents of the literal onto VM stack to 18583 make an array (or hash). To solve this issue, we make several 18584 arrays (hashes) and concatenate them to make a big array (hash) 18585 object. [ruby-dev:37701] [Bug #982] 18586 18587 * compile.c (iseq_compile_each, setup_args): use modified 18588 compile_array. 18589 18590 * vm.c (m_core_hash_from_ary, m_core_hash_merge_ary, 18591 m_core_hash_merge_ptr): added for above change. 18592 18593 * id.c (Init_id), parse.y: add core method ids. 18594 18595 * bootstraptest/test_literal.rb: add simple tests. 18596 18597 * bootstraptest/test_eval.rb: remove rescue clause to catch 18598 SystemStackError exception. 18599 18600 * test/ruby/test_literal.rb: add tests to check no stack overflow. 18601 18602Thu Apr 12 07:10:37 2012 Eric Hodel <drbrain@segment7.net> 18603 18604 * lib/uri/generic.rb (module URI): URI now downcases the scheme to 18605 follow RFC 2396 section 3.1. [ruby-trunk - Feature #4551] 18606 * test/uri/test_generic.rb (class URI): Test for above 18607 18608Thu Apr 12 06:15:44 2012 Eric Hodel <drbrain@segment7.net> 18609 18610 * lib/net/protocol.rb (module Net): Added ReadTimeout to match 18611 OpenTimeout. ReadTimeout is now raised by rbuf_fill instead of 18612 Timeout::Error to help users distinguish what type of timeout 18613 occurred. [ruby-trunk - Feature #6088] 18614 * lib/net/pop.rb (module Net): Updated documentation for ReadTimeout 18615 and OpenTimeout. 18616 * lib/net/http.rb (module Net): ditto 18617 * lib/net/smtp.rb (module Net): ditto 18618 * lib/net/telnet.rb (module Net): Net::ReadTimeout is now raised in 18619 waitfor to match Net::Protocol. 18620 * test/net/http/test_http.rb: Updated Timeout::Error expectation to 18621 Net::ReadTimeout. 18622 * test/net/ftp/test_ftp.rb: ditto 18623 18624Thu Apr 12 05:27:01 2012 Eric Hodel <drbrain@segment7.net> 18625 18626 * lib/webrick/server.rb (module WEBrick::GenericServer): A server 18627 will now continue only when a StandardError subclass is raised. For 18628 other exception types the error will be logged at the fatal level and 18629 the server will safely stop. Based on a patch by Alex Young. 18630 [ruby-trunk - Feature #6236] 18631 * test/webrick/test_server.rb: Test for new exception handling 18632 behavior. Join the server thread instead of busy-waiting for it to 18633 shut down to remove race conditions. 18634 18635Thu Apr 12 03:50:44 2012 NARUSE, Yui <naruse@ruby-lang.org> 18636 18637 * lib/test/unit.rb (Test::Unit:Runner::Worker#_run_suites): 18638 call GC.start before running the test suites. 18639 18640Wed Apr 11 22:31:19 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18641 18642 * parse.y (rb_check_id_cstr): new function to check if ID is 18643 registered with NUL-terminated C string. 18644 18645 * sprintf.c (rb_str_format): avoid inadvertent symbol creation. 18646 18647Wed Apr 11 20:28:36 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 18648 18649 * io.c (rb_io_eof): use eof() instead of io_fillbuf(). It's because 18650 io_unread() doesn't work properly when reading CRLF with read(length) 18651 and mode 'r'. 18652 [ruby-core:44189][Bug #6271] 18653 18654 * test/ruby/test_io_m17n.rb (TestIO_M17N#test_read_crlf_and_eof): 18655 test for above. 18656 18657Wed Apr 11 07:38:33 2012 Eric Hodel <drbrain@segment7.net> 18658 18659 * ext/digest/sha2/lib/sha2.rb (Digest#block_length): Fixed method name 18660 in documentation examples. Patch by naleski via 18661 https://github.com/ruby/ruby/pull/115 18662 18663Wed Apr 11 07:33:13 2012 Eric Hodel <drbrain@segment7.net> 18664 18665 * pack.c (pack_pack): Warn when an invalid character is found in the 18666 format string when $VERBOSE is true. [ruby-trunk - Feature #5219] 18667 * pack.c (pack_unpack): ditto 18668 * test/ruby/test_pack.rb (class TestPack): Test for warnings on 18669 invalid format characters. 18670 18671Wed Apr 11 06:11:10 2012 Eric Hodel <drbrain@segment7.net> 18672 18673 * string.c (rb_str_tr): Documented use of \ to escape characters. 18674 [ruby-trunk - Bug #6161] 18675 * string.c (rb_str_count): ditto 18676 18677Wed Apr 11 05:14:51 2012 Eric Hodel <drbrain@segment7.net> 18678 18679 * lib/abbrev.rb: Clarified that Abbrev.abbrev returns a Hash instead 18680 of an Array. Patch by Andrei Bocan. [ruby-trunk - Bug #6107] 18681 18682Wed Apr 11 03:02:24 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 18683 18684 * ext/ripper/lib/ripper/sexp.rb: fix spelling. patched by 18685 Jonathan Hinkle via https://github.com/ruby/ruby/pull/116 18686 18687Tue Apr 10 19:07:04 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18688 18689 * error.c (rb_enc_raise): new function to raise an exception with 18690 the message in the given encoding. patched by now (Nikolai 18691 Weibull) at [ruby-core:41160]. [Feature #5650] 18692 18693Tue Apr 10 18:19:32 2012 NARUSE, Yui <naruse@ruby-lang.org> 18694 18695 * lib/net/http.rb (Net::HTTP#send_request_with_body_stream): 18696 use IO.copy_stream for requests using body_stream. 18697 patched by Eric Wong. [ruby-core:40898] [Feature #5605] 18698 18699Tue Apr 10 16:53:21 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18700 18701 * thread_pthread.c: add prototype declarations for older Mac OS X. 18702 [ruby-core:43376][Bug #6170] 18703 18704Tue Apr 10 15:35:21 2012 Koichi Sasada <ko1@atdot.net> 18705 18706 * compile.c (iseq_set_sequence): show a hint if there are duplicated 18707 "when" clauses. [ruby-core:41502] [ruby-trunk - Feature #5716] 18708 18709Tue Apr 10 09:57:00 2012 Eric Hodel <drbrain@segment7.net> 18710 18711 * string.c (rb_str_split_m): Documented behavior of split on the empty 18712 string. [ruby-trunk - Feature #3575] 18713 18714Tue Apr 10 09:48:31 2012 Eric Hodel <drbrain@segment7.net> 18715 18716 * ext/zlib/zlib.c (rb_deflate_s_deflate): Fixed ruby example replacing 18717 NO_FLUSH with FINISH. [ruby-trunk - Bug #6273] 18718 18719Mon Apr 9 23:10:26 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18720 18721 * win32/win32.c (isUNCRoot, winnt_stat): support long UNC. 18722 [ruby-core:30623][Feature #3399] 18723 18724Mon Apr 9 15:16:01 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18725 18726 * parse.y (string_content, parser_yylex): count brace nesting to 18727 dispatch embexpr_end. [ruby-core:43775][Bug #6211] 18728 18729Mon Apr 9 13:06:58 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 18730 18731 * hash.c (rb_hash_set_default_proc): Accept nil, patch by Run Paint 18732 [Feature #4234] 18733 18734 * test/ruby/test_hash.rb: test for above. 18735 18736Mon Apr 9 08:01:15 2012 Tadayoshi Funaba <tadf@dotrb.org> 18737 18738 * ext/date/date_strftime.c: gets the value with range() consistently. 18739 * ext/date/date_strftime.c (range): now just replaces the given item. 18740 18741Mon Apr 9 06:58:01 2012 Tadayoshi Funaba <tadf@dotrb.org> 18742 18743 * complex.c (nucomp_expt): [ruby-core:44170]. 18744 18745Mon Apr 9 02:52:03 2012 NARUSE, Yui <naruse@ruby-lang.org> 18746 18747 * complex.c (nucomp_expt): the result of f_complex_new2 may be a fixnum 18748 with mathn. [ruby-core:44170] [Bug #6267] 18749 18750Sun Apr 8 22:46:01 2012 NARUSE, Yui <naruse@ruby-lang.org> 18751 18752 * ext/json/generator/generator.c (generate_json_bignum): 18753 add RB_GC_GUARD. 18754 http://fb.rubyci.org/~chkbuild/ruby-trunk/log/20120407T210301Z.diff.html.gz 18755 18756Sun Apr 8 07:26:40 2012 NARUSE, Yui <naruse@ruby-lang.org> 18757 18758 * lib/webrick/utils.rb (WEBrick::Utils::TimeoutHandler): get keys 18759 and fetch values from it to prevent @timeout_info's error 18760 "can't add a new key into hash during iteration". 18761 18762Sun Apr 8 06:51:57 2012 NARUSE, Yui <naruse@ruby-lang.org> 18763 18764 * io.c (io_unread): cast as long the value for extra_max. 18765 [ruby-core:44137] [Bug #6257] 18766 18767Sun Apr 8 06:46:48 2012 NARUSE, Yui <naruse@ruby-lang.org> 18768 18769 * lib/webrick/httpresponse.rb (WEBrick::HTTPResponse#send_body_io): 18770 use readpartial to get data even if the response is streaming data and 18771 each data is smaller than @buffer_size. 18772 patched by yu nobuoka. [ruby-dev:45471] [Bug #6230] 18773 18774Sat Apr 7 22:35:36 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 18775 18776 * include/ruby/win32.h (rb_w32_aspawn_flags): add the declaration of 18777 new function. 18778 18779 * process.c (enum): add EXEC_OPTION_PGROUP and move the position 18780 above for the usage in proc_spawn_n(). 18781 18782 * process.c (proc_spawn_n): add an argument to pass new option 18783 `new_pgroup`. The option specifies CREATE_NEW_PROCESS_GROUP flag to 18784 CreateProcessW(). This flag is necessary for the usage of 18785 Process.kill on the subprocess on Windows. 18786 18787 * process.c (rb_exec_arg_addopt): ditto. 18788 18789 * process.c (rb_spawn_process): ditto. 18790 18791 * process.c (documentation for rb_f_spawn): add documentation for new 18792 option `new_pgroup` of spawn. 18793 18794 * test/ruby/test_process.rb (TestProcess#test_execopts_new_pgroup): 18795 add tests for option `new_pgroup`. 18796 18797 * test/ruby/test_thread.rb 18798 (TestThreadGroup#test_thread_timer_and_interrupt): 18799 add option `new_pgroup: true` to spawn on Windows. It's needed for 18800 Process.kill on a subprocess. 18801 18802 * win32/win32.c (CreateChild): add an argument to pass 18803 dwCreationFlags of CreateProcessW(). 18804 18805 * win32/win32.c (rb_w32_spawn): ditto. 18806 18807 * win32/win32.c (rb_w32_aspawn_flags): add new function to pass 18808 dwCreationFlags. 18809 18810 * win32/win32.c (rb_w32_aspawn): refactor to move the content to 18811 rb_w32_aspawn_flags(). 18812 [ruby-core:43245][Bug #6131] 18813 18814Sat Apr 7 22:32:00 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 18815 18816 * test/ruby/test_thread.rb 18817 (TestThreadGroup#test_thread_timer_and_interrupt): skip on Windows. 18818 Process.kill cannot kill a subprocess if CREATE_NEW_PROCESS_GROUP 18819 flag is not specified in a call to CreateProcessW(). 18820 18821 * win32/win32.c (CreateChild): revert the usage of 18822 CREATE_NEW_PROCESS_GROUP flag for compatibility. 18823 [ruby-core:43245][Bug #6131] 18824 18825Sat Apr 7 10:28:40 2012 Aaron Patterson <aaron@tenderlovemaking.com> 18826 18827 * ext/psych/lib/psych.rb: bumping up psych version to match release. 18828 * ext/psych/psych.gemspec: ditto 18829 18830Sat Apr 7 02:07:00 2012 Aaron Patterson <aaron@tenderlovemaking.com> 18831 18832 * ext/psych/parser.c: fall back to any encoding if the external 18833 encoding is wrong. [ruby-core:44163] 18834 * test/psych/test_encoding.rb: fix test 18835 18836Fri Apr 6 16:24:24 2012 Martin Duerst <duerst@it.aoyama.ac.jp> 18837 18838 * struct.c (documentation for rb_struct_members_m): 18839 fix 'array of strings' to 'array of symbols' 18840 [ruby-core:44152][Bug #6264] 18841 18842Fri Apr 6 14:27:04 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 18843 18844 * Makefile.in ($(LIBRUBY_A)): fix typo. 18845 18846Thu Apr 5 13:26:15 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18847 18848 * missing/alloca.c (xmalloc, xfree): use ruby version, not 18849 depending on RUBY_LIB_PREFIX. [ruby-dev:45492][Bug #6255] 18850 18851Wed Apr 4 13:06:39 2012 NARUSE, Yui <naruse@ruby-lang.org> 18852 18853 * lib/ftp/ftp.rb (Net::FTP#close): restore original read_timeout. 18854 18855Wed Apr 4 10:33:31 2012 NARUSE, Yui <naruse@ruby-lang.org> 18856 18857 * lib/ftp/ftp.rb (Net::FTP#close): ignore exceptions from shutdown and 18858 read on closing. 18859 18860Wed Apr 4 01:48:35 2012 NARUSE, Yui <naruse@ruby-lang.org> 18861 18862 * lib/ftp/ftp.rb (Net::FTP#close): close socket more gracefully. 18863 18864 * lib/ftp/ftp.rb (Net::BufferedSocket#shutdown): added. 18865 18866 * test/net/ftp/test_ftp.rb (FTPTest#create_ftp_server): wait socket 18867 with shutdown and read. 18868 18869Tue Apr 3 19:00:52 2012 NAKAMURA Usaku <usa@ruby-lang.org> 18870 18871 * test/net/ftp/test_ftp.rb (FTPTest#create_ftp_server): should wait 18872 a little before closing socket because if the client call 18873 Net::FTP#getmultiline the socket is suddenly closed by the server in 18874 the getline loop. 18875 18876Tue Apr 3 18:33:38 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18877 18878 * process.c (setreuid, setregid): suppress warnings. 18879 [ruby-core:43374][Bug #6169] 18880 18881Tue Apr 3 10:18:27 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18882 18883 * enumerator.c (inspect_enumerator): suppress uninitialized 18884 instance variable warnings. [ruby-dev:45449][Bug #6214] 18885 patched by no6v (Nobuhiro IMAI). 18886 18887Mon Apr 2 13:25:08 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18888 18889 * lib/optparse/ac.rb: autoconf-like options. 18890 18891Mon Apr 2 10:34:00 2012 eregon <eregontp@gmail.com> 18892 18893 * string.c (rb_str_start_with, rb_str_end_with): raise an error if 18894 an argument is not convertible to a String. 18895 [ruby-core:40623][Bug #5536] 18896 18897Mon Apr 2 03:35:25 2012 NARUSE, Yui <naruse@ruby-lang.org> 18898 18899 * lib/webrick/server.rb (WEBrick::GenericServer): close socket only if 18900 the socket is not closed yet. 18901 18902Sun Apr 1 23:03:18 2012 NARUSE, Yui <naruse@ruby-lang.org> 18903 18904 * lib/net/ftp.rb (Net::BufferedSocket): should delegate send() to @io 18905 for Net::FTP#abort and Net::FTP#status. 18906 18907Sun Apr 1 00:41:56 2012 Shugo Maeda <shugo@ruby-lang.org> 18908 18909 * lib/net/ftp.rb: fixed the domain name in examples. 18910 18911Sat Mar 31 21:39:45 2012 NARUSE, Yui <naruse@ruby-lang.org> 18912 18913 * lib/webrick/utils.rb (WEBrick::Utils::TimeoutHandler): dup to prevent 18914 @timeout_info's "can't add a new key into hash during iteration". 18915 18916Sat Mar 31 14:22:59 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18917 18918 * hash.c (hash_default_value): extract from rb_hash_aref(), to be 18919 shared with rb_hash_shift(), so that overriding Hash#default 18920 will be respected. 18921 18922Sat Mar 31 14:16:02 2012 Sokolov Yura (funny-falcon) <funny.falcon@gmail.com> 18923 18924 * hash.c: do not allocate st_table when it is not necessary. 18925 18926Sat Mar 31 13:42:39 2012 Shugo Maeda <shugo@ruby-lang.org> 18927 18928 * lib/net/ftp.rb (read_timeout=, open_timeout=): supported timeout. 18929 18930Sat Mar 31 13:20:40 2012 Sokolov Yura (funny-falcon) <funny.falcon@gmail.com> 18931 18932 * hash.c: remove unnecessary checks for Qundef in hash iterations. 18933 since hash use st_foreach_check for iterations, such checks are 18934 needless. 18935 18936Sat Mar 31 12:05:01 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 18937 18938 * ext/openssl/ossl_x509cert.c: Fix doc typo. 18939 18940Sat Mar 31 10:13:24 2012 Sokolov Yura (funny-falcon) <funny.falcon@gmail.com> 18941 18942 * st.c (st_foreach_check, st_foreach): remove ancient check. This 18943 check are from initial ordered hash commit when first entry were 18944 created with entry->fore = entry->back = entry. 18945 18946 * st.c (st_delete): use real_entries in st_delete for packed tables 18947 18948Sat Mar 31 07:53:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18949 18950 * st.c (st_foreach_check): remove the entry by replacing with never 18951 when ST_DELETE. 18952 18953 * hash.c (st_foreach_safe): since table is not for VALUE, Qundef is 18954 not special value, so use 0 instead. therefore this function can be 18955 applied to only st_table which 0 is invalid as keys, e.g., IDs. 18956 18957 * hash.c: Qundef cannot be passed from st_foreach_check(). 18958 18959 * hash.c, marshal.c, object.c, variable.c: fix callback argument types 18960 of iterators. 18961 18962Thu Mar 29 23:50:15 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18963 18964 * st.c (st_update): pass pointer to key to the callback function. 18965 18966Thu Mar 29 16:36:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18967 18968 * st.c (st_update): add existing parameter to the callback function. 18969 18970Thu Mar 29 16:35:32 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 18971 18972 * lib/test/unit.rb (terminal_width, del_status_line, put_status): 18973 extract as methods. 18974 18975Thu Mar 29 10:20:18 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 18976 18977 * ext/openssl/ossl_pkcs7.c: fix crash when parsing garbage data. 18978 * test/openssl/test_pkcs7.rb: assert correct behavior for it. 18979 Thanks to Matt Venables for reporting the issue. 18980 [ruby-core:43250][Bug #6134] 18981 18982Thu Mar 29 10:16:05 2012 NAKAMURA Usaku <usa@ruby-lang.org> 18983 18984 * thread_win32.c (TIME_QUANTUM_USEC): 10ms(= old setting) [experimental] 18985 cf. [Bug #6098] 18986 18987Thu Mar 29 10:12:12 2012 NAKAMURA Usaku <usa@ruby-lang.org> 18988 18989 * thread.c (rb_threadptr_execute_interrupts_common): use defined 18990 TIME_QUANTUM_USEC instead of a magic number. there is no meanings 18991 to use different values for checking interval of interruption and 18992 thread switching limits. 18993 cf. [Bug #6098] 18994 18995Thu Mar 29 09:26:17 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 18996 18997 * test/openssl/test_x509cert.rb: exclude test that fails when issuing 18998 a certificate with RSA signature and DSS1 digest for earlier 18999 OpenSSL versions when used in conjunction with OpenSSL 1.0.1. 19000 Thanks, Vit Ondruch, for reporting the issue. 19001 [ruby-core:42949][Bug #6089] 19002 19003Thu Mar 29 08:25:35 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 19004 19005 * NEWS: add note about unified behavior of encoding nil values in 19006 instances of OpenSSL::ASN1::ASN1Data. 19007 19008Thu Mar 29 07:45:36 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 19009 19010 * ext/openssl/ossl_asn1.c: raise TypeError when trying to encode nil 19011 values for Primitive instances. 19012 * test/openssl/test_asn1.rb: Assert consistent behavior when 19013 encoding nil values: Primitives raise TypeError, Constructives 19014 raise NoMethodError. 19015 Fixes [ruby-core:43009][Bug #6102] 19016 19017Wed Mar 28 16:39:59 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19018 19019 * process.c (obj2uid, obj2gid): allow strings as input user/group id. 19020 [ruby-core:40923][Feature #5610] 19021 19022Wed Mar 28 15:06:18 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19023 19024 * marshal.c (r_symreal): default to ASCII-8BIT for non-ascii symbols, 19025 otherwise it should be converted to US-ASCII in rb_intern_str() if 19026 possible. [ruby-core:43762][Bug #6209] 19027 19028Wed Mar 28 08:44:24 2012 Aaron Patterson <aaron@tenderlovemaking.com> 19029 19030 * ext/psych/lib/psych.rb: updating version to match gem 19031 * ext/psych/psych.gemspec: ditto 19032 * ext/psych/lib/psych/visitors/to_ruby.rb: fixing deprecation warning 19033 19034Tue Mar 27 23:44:11 2012 NAKAMURA Usaku <usa@ruby-lang.org> 19035 19036 * io.c (io_unread): fixed memory leak. report by nagachika via IRC. 19037 19038Tue Mar 27 22:44:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19039 19040 * configure.in (verconf.h): separate load path specific stuff from 19041 config.h. 19042 19043Tue Mar 27 22:43:40 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19044 19045 * win32/Makefile.sub: fix config.h path to include. 19046 19047Tue Mar 27 17:08:08 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 19048 19049 * win32/win32.c (check_if_dir): fix memory leak. 19050 19051Tue Mar 27 13:13:51 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19052 19053 * string.c (str_new_empty): should copy also the encoding as an 19054 empty substring. [ruby-dev:45441][Bug #6206] 19055 19056Mon Mar 26 23:43:04 2012 Shugo Maeda <shugo@ruby-lang.org> 19057 19058 * lib/net/ftp.rb (parse227, parse228, parse229): don't use $~. 19059 19060Mon Mar 26 23:34:40 2012 Shugo Maeda <shugo@ruby-lang.org> 19061 19062 * lib/net/ftp.rb (parse227, parse228, parse229): don't use local 19063 variables defined by named capture for other Ruby implementations 19064 such as Rubinius. 19065 19066Mon Mar 26 23:19:03 2012 Shugo Maeda <shugo@ruby-lang.org> 19067 19068 * lib/net/ftp.rb (parse_pasv_port): refactored. 19069 19070Mon Mar 26 19:49:49 2012 Shugo Maeda <shugo@ruby-lang.org> 19071 19072 * test/net/ftp/test_ftp.rb: add the test, which was forgotten in the 19073 previous commit. 19074 19075Mon Mar 26 19:37:27 2012 Shugo Maeda <shugo@ruby-lang.org> 19076 19077 * lib/net/ftp.rb (parse227, parse228, parse229): refactored. 19078 19079Mon Mar 26 11:46:23 2012 Shugo Maeda <shugo@ruby-lang.org> 19080 19081 * enumerator.c (inspect_enumerator): show method arguments of 19082 lazy enumerators correctly. 19083 19084Mon Mar 26 13:51:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19085 19086 * win32/win32.c (check_if_dir, check_if_wdir): fix for Visual C++ 19087 not to use S_ISDIR(). [Feature #2408][ruby-core:26925] 19088 19089 * ruby.c (load_file_internal): ditto. 19090 19091Mon Mar 26 11:46:01 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19092 19093 * ruby.c (load_file_internal): bail out if the script is a directory. 19094 [Feature #2408][ruby-core:26925] 19095 19096 * win32/win32.c (rb_w32_open, rb_w32_wopen): check if the file is a 19097 directory when access denied, to set errno to EISDIR. 19098 19099Sun Mar 25 18:13:14 2012 NARUSE, Yui <naruse@ruby-lang.org> 19100 19101 * string.c (tr_setup_table): fix multiple non latin argument for 19102 non latin (over 256 characters) tr-like methods. 19103 [ruby-core:43371] [Bug #6167] 19104 19105Sun Mar 25 00:46:06 2012 Shugo Maeda <shugo@ruby-lang.org> 19106 19107 * enumerator (lazy_initialize): set the instance variable "receiver" 19108 to include the receiver to the return value of inspect on a lazy 19109 enumerator directly created by Enumerator::Lazy.new. 19110 19111 * enumerator (RETURN_LAZY): don't set the instance variable "receiver". 19112 19113Sat Mar 24 23:59:00 2012 Shugo Maeda <shugo@ruby-lang.org> 19114 19115 * enumerator (enumerator_inspect): include the original receiver and 19116 method name of Enumerator::Lazy in the result of inspect. 19117 [ruby-core:43345] [Bug #6159] 19118 19119 * enumerator (InitVM_Enumerator): don't use rb_define_alias for 19120 some methods such as collect in order to make rb_frame_this_func() 19121 return the correct method names. 19122 19123Sat Mar 24 22:22:18 2012 Sambasiva Rao Suda <sambasivarao@gmail.org> 19124 19125 * time.c (time_init_1): Time.new will accept seconds as string or 19126 int. [ruby-core:43569][Bug #6193] 19127 19128Fri Mar 23 15:12:12 2012 Martin Duerst <duerst@it.aoyama.ac.jp> 19129 19130 * transcode.c (documentation for str_encode): Explain 19131 that transcoding to the same encoding is a no-op 19132 (i.e. no exceptions, no replacements,...). 19133 [ruby-core:43557][Bug #6190] 19134 19135Fri Mar 23 13:19:20 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19136 19137 * bignum.c (rb_str_to_inum): must be ASCII compatible encoding as 19138 well as String#hex and String#oct. [ruby-core:43566][Bug #6192] 19139 19140 * string.c (rb_must_asciicompat): check if ASCII compatible. 19141 19142Thu Mar 22 23:14:36 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19143 19144 * transcode.c (str_encode_bang, encoded_dup): if nothing was 19145 transcoded, just set encoding but leave coderange unchanged as 19146 force_encoding. [ruby-core:43557][Bug #6190] 19147 19148Thu Mar 22 22:30:44 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 19149 19150 * io.c (static int io_fflush): add the definition. 19151 Use it in set_binary_mode_with_seek_cur(). 19152 19153 * io.c (set_binary_mode_with_seek_cur): refactoring to split the 19154 content into io_unread(). Fix the possibility of buffer overflow. 19155 19156 * io.c (io_unread): add new implementation for Windows. Previous one 19157 caused invalid cursor position using IO#pos with OS text mode. New 19158 one fixes the bug. 19159 19160 * test/ruby/test_io_m17n.rb 19161 (TestIO_M17N#test_pos_dont_move_cursor_position): add a test for 19162 above bug. 19163 [ruby-core:43497] [Bug #6179] 19164 19165Thu Mar 22 19:55:08 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19166 19167 * win32/win32.c (rb_w32_fstat, rb_w32_fstati64): convert FILETIME 19168 to time_t directly, not to be affected by TZ unnecessarily. 19169 19170 * win32/win32.c (unixtime_to_filetime): convert time_t to FILETIME 19171 simply. 19172 19173Thu Mar 22 13:43:31 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19174 19175 * ext/openssl/ossl_pkey_rsa.c (rsa_generate): fix argument type. 19176 [Bug #6094] 19177 19178Thu Mar 22 11:14:10 2012 NAKAMURA Usaku <usa@ruby-lang.org> 19179 19180 * test/ruby/test_io.rb (TestIO#test_pos_with_getc): updated. 19181 see [ruby-core:43550] 19182 19183Wed Mar 21 17:57:57 2012 NARUSE, Yui <naruse@ruby-lang.org> 19184 19185 * regcomp.c: Merge Onigmo 3d855b30d574536d3ae600260208c6624ae4791c. 19186 [Bug#6143] [Bug#6144] [Bug#6145] 19187 19188Wed Mar 21 17:01:55 2012 NAKAMURA Usaku <usa@ruby-lang.org> 19189 19190 * test/ruby/test_io.rb (TestIO#test_pos_with_getc): added. 19191 see [Bug #6179][ruby-core:43518] 19192 19193Mon Mar 19 17:18:51 2012 Shugo Maeda <shugo@ruby-lang.org> 19194 19195 * enumerator.c (lazy_flat_map_func): convert the block value to 19196 Array if it doesn't respond to each. [ruby-core:43334] 19197 [Bug #6155] 19198 19199Mon Mar 19 16:34:14 2012 Shugo Maeda <shugo@ruby-lang.org> 19200 19201 * enum.c (zip_i): variadic argument needs explicit cast on the 19202 platforms where VALUE is longer than int. 19203 19204Mon Mar 19 15:36:41 2012 Shugo Maeda <shugo@ruby-lang.org> 19205 19206 * enumerator.c (enumerable_lazy): add an example of take and first 19207 to the documentation. [ruby-core:43344] [Bug #6158] 19208 add the description of the behavior when a block is given to zip 19209 or cycle. 19210 19211Mon Mar 19 15:20:53 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19212 19213 * compile.c (iseq_specialized_instruction): DRY and replace chain 19214 of if-else with switch for special instructions. based on a 19215 patch by Vasfed. https://github.com/ruby/ruby/pull/105 19216 19217Mon Mar 19 15:05:54 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 19218 19219 * test/test_pty.rb: same as r29280, skip tests when PTY allocation 19220 failed (that's not our fault). 19221 19222Sun Mar 18 23:21:17 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19223 19224 * gc.c (aligned_free): fix condition for free. memalign() and 19225 posix_memalign() are not defined together normally. 19226 19227Sun Mar 18 18:31:45 2012 Yuki Sonoda (Yugui) <yugui@yugui.jp> 19228 19229 * gc.c (aligned_malloc, aligned_free): added fallback implementations 19230 for platforms like OSX Leopard. 19231 19232Sun Mar 18 17:17:48 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19233 19234 * bignum.c (rb_big_pow): estimate result bit size more precisely. 19235 [ruby-core:30735][Feature #3429] 19236 19237Sun Mar 18 17:17:36 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19238 19239 * gc.c (free_method_entry_i): method entry may be in 19240 unlinked_method_entry_list. [ruby-core:43383][Bug #6171] 19241 19242Sun Mar 18 15:27:31 2012 Tanaka Akira <akr@fsij.org> 19243 19244 * compile.c: typo fix by Run Paint Run Run. 19245 [ruby-core:28368] [Bug #2824] 19246 19247Sun Mar 18 10:01:02 2012 Kazuki Tsujimoto <kazuki@callcc.net> 19248 19249 * lib/profiler.rb: support calling singleton methods of 19250 an instance of BasicObject. 19251 19252Sat Mar 17 06:56:58 2012 Eric Hodel <drbrain@segment7.net> 19253 19254 * object.c: Fix indentation of Class#inherited example. 19255 19256Sat Mar 17 01:46:05 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 19257 19258 * string.c (trnext): fix bug with string ending with '\\'. 19259 [ruby-dev:45374][Bug #6160] 19260 19261 * test/ruby/test_string.rb (TestString#test_delete): test for 19262 above. 19263 19264Fri Mar 16 20:06:24 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19265 19266 * string.c (trnext): should advance char-wise. 19267 [ruby-core:43335][Bug #6156] 19268 19269Fri Mar 16 17:42:05 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19270 19271 * parse.y (block_append_gen): fix unreachable warning line number. 19272 should warn at the code, not jump. 19273 19274Fri Mar 16 17:33:08 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19275 19276 * enum.c (enum_take): allocate buffer array before iteration, as well 19277 as enum_first did. 19278 19279 * enum.c (enum_first): remove duplication. 19280 19281Fri Mar 16 14:43:18 2012 Yuki Sonoda (Yugui) <yugui@yugui.jp> 19282 19283 * load.c (ruby_init_ext): don't free the given pointer itself. 19284 It is not guaranteed even that the pointer is on heap. 19285 19286Fri Mar 16 14:37:57 2012 Shugo Maeda <shugo@ruby-lang.org> 19287 19288 * vm_eval.c (rb_mod_module_eval): fix the documentation of 19289 class_eval to mention class variable lookup. [ruby-core:40649] 19290 [Bug #5544] 19291 19292Fri Mar 16 14:27:11 2012 Shugo Maeda <shugo@ruby-lang.org> 19293 19294 * vm_eval.c (rb_mod_module_eval): fix the documentation of 19295 class_eval to mention constant lookup. [ruby-core:41718] 19296 [Bug #5777] 19297 19298Fri Mar 16 14:10:45 2012 Shugo Maeda <shugo@ruby-lang.org> 19299 19300 * lib/net/imap.rb (initialize): raise Net::IMAP::Error when the 19301 connection is closed without a greeting response. 19302 [ruby-core:40938] [Bug #5616] 19303 19304Fri Mar 16 13:50:12 2012 Shugo Maeda <shugo@ruby-lang.org> 19305 19306 * lib/net/imap.rb (rfc822_text): ignore [] after RFC822. 19307 [ruby-core:40945] [Bug #5620] 19308 19309Fri Mar 16 12:00:42 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19310 19311 * vm_insnhelper.c (argument_error): use line number at the beginning 19312 of lambda, not the first code of its body. 19313 [ruby-core:43314][Bug #6151] 19314 19315 * iseq.c (rb_iseq_first_lineno): constified. 19316 19317Fri Mar 16 11:20:07 2012 Shugo Maeda <shugo@ruby-lang.org> 19318 19319 * enumerator.c (lazy_take): don't enumerate an extra value. 19320 [ruby-dev:45370] [Bug #6152] 19321 19322Fri Mar 16 06:30:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19323 19324 * enumerator.c (lazy_zip_func): variadic argument needs explicit cast 19325 on the platforms where VALUE is longer than int. 19326 19327 * enumerator.c (lazy_init_iterator): no need to check overflow twice. 19328 19329Fri Mar 16 05:47:09 2012 Eric Hodel <drbrain@segment7.net> 19330 19331 * enumerator.c (lazy_init_iterator): Fix type error (int vs long). 19332 19333Thu Mar 15 23:13:36 2012 Shugo Maeda <shugo@ruby-lang.org> 19334 19335 * enum.c (rb_enum_values_pack): rename from enum_values_pack, and 19336 remove static. 19337 19338 * enumerator.c (lazy_init_iterator, lazy_init_yielder, 19339 lazy_select_func, lazy_reject_func, lazy_grep_func): handle 19340 multiple values correctly. 19341 19342 * enumerator.c (lazy_grep): change the behavior when a block is 19343 given, to be consistent with Enumerable#grep. 19344 19345Thu Mar 15 19:12:31 2012 Shugo Maeda <shugo@ruby-lang.org> 19346 19347 * enumerator.c (lazy_zip): rescue StopIteration returned by 19348 Enumerator#next. 19349 19350Thu Mar 15 18:19:53 2012 Shugo Maeda <shugo@ruby-lang.org> 19351 19352 * enumerator.c (lazy_zip, lazy_cycle): Enumerator::Lazy#{zip,cycle} 19353 should be eager when a block is given, to be consistent with 19354 Enumerable#{zip,cycle}. 19355 19356Thu Mar 15 17:45:27 2012 Shugo Maeda <shugo@ruby-lang.org> 19357 19358 * enumerator.c (InitVM_Enumerator): renamed Enumerable::Lazy to 19359 Enumerator::Lazy. 19360 19361Thu Mar 15 16:37:38 2012 Shugo Maeda <shugo@ruby-lang.org> 19362 19363 * enumerator.c (enumerable_lazy): added cycle to the documentation. 19364 19365Thu Mar 15 15:37:42 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19366 19367 * parse.y (parser_yylex): fix warning line number. 19368 19369Thu Mar 15 15:19:38 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19370 19371 * enumerator.c (lazy_cycle): check argument number overflow before 19372 creating temporary array. 19373 19374Thu Mar 15 15:04:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19375 19376 * util.c (ruby_strtod): no need to check same digit for hexdigit 19377 twice. [ruby-dev:45363][Bug #6146] 19378 19379 * parse.y (sym_check_asciionly): check ascii compatibility before 19380 scanning for code range. 19381 19382 * parse.y (intern_str): set to us-ascii if ascii only. 19383 [ruby-dev:45363][Bug #6146] 19384 19385 * file.c (ruby_enc_find_basename): allow NULL as alllen. 19386 [ruby-dev:45363][Bug #6146] 19387 19388Thu Mar 15 14:49:31 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19389 19390 * string.c (rb_str_conv_enc_opts): default to original encoding. 19391 19392Thu Mar 15 13:47:17 2012 NAKAMURA Usaku <usa@ruby-lang.org> 19393 19394 * hash.c (env_str_new, rb_f_getenv, env_fetch): use rb_str_conv_enc() 19395 instead of rb_str_encode() to simplify the code. 19396 19397Thu Mar 15 12:44:50 2012 NAKAMURA Usaku <usa@ruby-lang.org> 19398 19399 * win32/win32.c, include/ruby/win32.h (rb_w32_ugetenv): new API to 19400 accept and to return UTF-8 strings. 19401 19402 * win32/win32.c (rb_w32_getenv): follow above change. 19403 19404 * win32/win32.c (rb_w32_get_environ): returns UTF-8 environment area. 19405 19406 * hash.c (env_str_new, rb_f_getenv, env_fetch): follow above changes. 19407 [Bug #5570] [ruby-core:40737] 19408 19409Thu Mar 15 10:57:27 2012 Shugo Maeda <shugo@ruby-lang.org> 19410 19411 * enumerator.c (lazy_cycle): add Enumerable::Lazy#cycle. 19412 19413Thu Mar 15 10:31:40 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19414 19415 * test/ruby/test_arity.rb (TestArity#err_mess): use assert_raise. 19416 19417Thu Mar 15 07:03:52 2012 Eric Hodel <drbrain@segment7.net> 19418 19419 * vm_eval.c (check_funcall): Raise ArgumentError if respond_to? 19420 requires more than three arguments. [Bug #6000] 19421 19422 * test/ruby/test_object.rb (class TestObject): Test for respond_to? 19423 requiring more than three arguments. 19424 19425Thu Mar 15 06:08:06 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 19426 19427 * include/ruby/intern.h: Add rb_check_arity, rb_error_arity [#6085] 19428 19429 * array.c: Use rb_check_arity / rb_error_arity 19430 19431 * class.c: ditto 19432 19433 * enumerator.c: ditto 19434 19435 * eval.c: ditto 19436 19437 * file.c: ditto 19438 19439 * hash.c: ditto 19440 19441 * numeric.c: ditto 19442 19443 * proc.c: ditto 19444 19445 * process.c: ditto 19446 19447 * random.c: ditto 19448 19449 * re.c: ditto 19450 19451 * signal.c: ditto 19452 19453 * string.c: ditto 19454 19455 * struct.c: ditto 19456 19457 * transcode.c: ditto 19458 19459 * vm_eval.c: ditto 19460 19461 * vm_insnhelper.c: ditto & implementation of rb_error_arity 19462 19463 * test/ruby/test_arity.rb: tests for above 19464 19465Thu Mar 15 06:08:05 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 19466 19467 * vm_insnhelper.c: improve number of arguments error in case of 19468 optional parameters (issue #6085) 19469 19470 * include/ruby/intern.h: define UNLIMITED_ARGUMENTS 19471 19472 * test/ruby/test_arity.rb: test for above 19473 19474Thu Mar 15 00:58:04 2012 Shugo Maeda <shugo@ruby-lang.org> 19475 19476 * enumerator.c (enumerable_lazy): fix the documentation of 19477 Enumerable#lazy. 19478 19479Wed Mar 14 22:01:06 2012 Shugo Maeda <shugo@ruby-lang.org> 19480 19481 * enumerator.c (lazy_init_iterator): break when Qundef is returned 19482 to make obj.drop(3).take(2) work properly. 19483 19484 * enumerator.c (lazy_take_while): add Enumerable::Lazy#take_while. 19485 19486 * enumerator.c (lazy_drop): add Enumerable::Lazy#drop. 19487 19488 * enumerator.c (lazy_drop_while): add Enumerable::Lazy#drop_while. 19489 19490 * enumerator.c (InitVM_Enumerator): add Enumerable::Lazy#force as an 19491 alias of to_a. 19492 19493Wed Mar 14 19:28:40 2012 Shugo Maeda <shugo@ruby-lang.org> 19494 19495 * enumerator.c (lazy_take): add Enumerable::Lazy#take. 19496 19497Wed Mar 14 18:40:36 2012 Shugo Maeda <shugo@ruby-lang.org> 19498 19499 * enumerator.c: use long for array indices. 19500 19501Wed Mar 14 18:25:18 2012 Shugo Maeda <shugo@ruby-lang.org> 19502 19503 * enumerator.c: moved the comment of StopIteration. 19504 19505Wed Mar 14 17:55:29 2012 NAKAMURA Usaku <usa@ruby-lang.org> 19506 19507 * numeric.c (flodivmod): must go through the same pass if HAVE_FMOD or 19508 not. this is a bugfix of r35013. 19509 19510Wed Mar 14 16:41:55 2012 NAKAMURA Usaku <usa@ruby-lang.org> 19511 19512 * test/test_tmpdir.rb (TestTmpdir#test_world_writable): skip on Windows. 19513 19514Wed Mar 14 15:09:23 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 19515 19516 * numeric.c: fix flodivmod for cornercases [Bug #6044] 19517 add ruby_float_mod 19518 19519 * insns.def (opt_mod): use ruby_float_mod 19520 19521 * internal.h: declare ruby_float_mod 19522 19523 * test/ruby/test_float.rb: tests for above 19524 19525 * test/ruby/envutil.rb: create helper assert_is_minus_zero 19526 19527Wed Mar 14 10:44:35 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19528 19529 * enumerator.c (lazy_grep_func): should use === instead of =~, as 19530 well as Enumerable#grep 19531 19532Wed Mar 14 08:15:54 2012 Shugo Maeda <shugo@ruby-lang.org> 19533 19534 * enumerator.c (lazy_flat_map_func): use each for non-Array objects. 19535 19536Wed Mar 14 08:06:35 2012 Shugo Maeda <shugo@ruby-lang.org> 19537 19538 * enumerator.c (lazy_zip): add Enumerable::Lazy#zip. 19539 19540 * enumerator.c (lazy_lazy): just returns self. 19541 19542Wed Mar 14 07:48:36 2012 Tadayoshi Funaba <tadf@dotrb.org> 19543 19544 * ext/date/date_core.c (datetime_s_now): [ruby-core:43256]. 19545 19546Tue Mar 13 22:00:14 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19547 19548 * compile.c (iseq_set_arguments): keyword rest arg without keyword args. 19549 19550 * node.c (dump_node): dump kw_rest_arg too. 19551 19552 * parse.y (block_param, f_arg): more kwrest patterns. 19553 [ruby-core:42455][Bug #5989] 19554 19555 * parse.y (new_args_gen): no extra kw_rest_arg if no keyword rest arg. 19556 19557Tue Mar 13 15:17:03 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19558 19559 * parse.y (block_param, f_args): add rules for the case arguments 19560 begin with kwrest. [ruby-core:42455][Bug #5989] 19561 19562Tue Mar 13 12:37:53 2012 NARUSE, Yui <naruse@ruby-lang.org> 19563 19564 * io.c (io_encoding_set): always warn if external encoding and internal 19565 encoding are identical. [ruby-core:40727] [Bug #5568] 19566 19567Tue Mar 13 12:37:03 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19568 19569 * gc.c: add ObjectSpace::WeakMap. [ruby-dev:44565][Bug #5350] 19570 19571 * lib/weakref.rb: use WeakMap instead of _id2ref. 19572 19573Tue Mar 13 10:59:48 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19574 19575 * tool/rbinstall.rb (prepare): skip if basedir is not defined. 19576 [ruby-core:39135][Bug #5238] 19577 19578 * tool/rbinstall.rb (CONFIG.[]): check for mandatory 19579 configurations. 19580 19581Tue Mar 13 00:09:18 2012 Shugo Maeda <shugo@ruby-lang.org> 19582 19583 * enumerator.c (enumerable_lazy): added documentation. 19584 19585Mon Mar 12 20:19:25 2012 Tanaka Akira <akr@fsij.org> 19586 19587 * lib/tmpdir.rb (Dir::tmpdir): test the current directory suitable for 19588 temporary directory. 19589 19590Mon Mar 12 20:08:16 2012 Tanaka Akira <akr@fsij.org> 19591 19592 * lib/fileutils.rb (fu_have_symlink?): specify TypeError for rescue 19593 clause. 19594 19595Mon Mar 12 19:23:13 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19596 19597 * encoding.c (rb_find_encoding): new function find encoding from 19598 arbitrary object as a pointer to rb_encoding, and return NULL if 19599 not found. 19600 19601 * io.c (io_encoding_set): just warn unsupported encodings, but not 19602 exception. [ruby-core:40726] [Bug #5567] 19603 19604Mon Mar 12 19:03:32 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19605 19606 * vm_method.c (Init_eval_method): respond_to? and 19607 respond_to_missing? are public. 19608 19609Mon Mar 12 14:56:52 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19610 19611 * node.h (NEW_YIELD), parse.y (new_yield_gen): array-values flags 19612 has been already obsolete. patch by Thomas Enebo. 19613 [ruby-core:41929][Bug #5847] 19614 19615Mon Mar 12 12:44:33 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19616 19617 * vm_method.c (Init_eval_method): copy basic methods to Exception. 19618 [ruby-core:40287][Bug #5473] 19619 19620Mon Mar 12 10:13:36 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19621 19622 * eval_jump.c (rb_exec_end_proc): remember the latest exit status. 19623 [ruby-core:43173][Bug #5218] 19624 19625Mon Mar 12 07:33:12 2012 Tanaka Akira <akr@fsij.org> 19626 19627 * lib/tmpdir.rb: update document for changing 19628 FileUtils.remove_entry_secure to FileUtils.remove_entry. 19629 19630 * NEWS: add incompatibility note for lib/tmpdir.rb. 19631 19632Mon Mar 12 07:19:03 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19633 19634 * lib/tmpdir.rb (Dir.tmpdir): should not use world-writable but 19635 non-sticky directory. 19636 19637 * lib/tmpdir.rb (Dir.mktmpdir): check the parent directory. 19638 19639Mon Mar 12 07:04:11 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19640 19641 * random.c (Init_Random): removed rb_Random_DEFAULT and register as 19642 mark-object instead of global variable. 19643 19644Mon Mar 12 07:03:32 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19645 19646 * random.c (random_s_rand): ensure default PRNG is re-initialized 19647 after fork. patched by Eric Wong. [ruby-core:41209][Bug #5661] 19648 19649Sun Mar 11 23:57:29 2012 NARUSE, Yui <naruse@ruby-lang.org> 19650 19651 * pack.c (pack_unpack): when unpack('M') occurs an illegal byte 19652 sequence, output the "=" character and the following character in 19653 the decoded data without any transformation. 19654 [ruby-dev:44875] [Bug #5635] 19655 19656Sun Mar 11 22:32:43 2012 NARUSE, Yui <naruse@ruby-lang.org> 19657 19658 * ext/json: Merge 164a75c8bd2007d32c4d7665d53140d8fc126dcd. 19659 [ruby-core:41917] [Bug #5846] 19660 19661Sun Mar 11 17:10:04 2012 Shota Fukumori <sorah@tubusu.net> 19662 19663 * lib/test/unit.rb: Put error message into STDERR if failed to launch 19664 worker (job) process. [ruby-dev:44802] [Bug #5577] 19665 19666 * lib/test/unit/parallel.rb: If failed to increment_io, exit with code 19667 2. [ruby-dev:44802] [Bug #5577] 19668 19669Sun Mar 11 15:46:45 2012 Shota Fukumori <sorah@tubusu.net> 19670 19671 * io.c: fix rdoc of `IO.binwrite` to show same as `IO.write` except 19672 it opens file with mode "wb:ASCII-8BIT". [Bug #5782] [ruby-core:42592] 19673 19674Sat Mar 10 23:52:28 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19675 19676 * st.c: pack tables also generic keys. patched by Sokolov Yura at 19677 https://github.com/ruby/ruby/pull/84 19678 19679 * st.c: add st_foreach_check for fixing iteration over packed table 19680 and st_delete_safe. patched by Sokolov Yura at 19681 https://github.com/ruby/ruby/pull/84 19682 19683 * st.c: fix packed num_entries on delete_safe. patched by Sokolov 19684 Yura at https://github.com/ruby/ruby/pull/84 19685 19686Fri Mar 9 14:29:32 2012 Shugo Maeda <shugo@ruby-lang.org> 19687 19688 * enumerator.c (lazy_flat_map): add Enumerable::Lazy#flat_map. 19689 19690Fri Mar 9 06:29:22 2012 Aaron Patterson <aaron@tenderlovemaking.com> 19691 19692 * ext/psych/lib/psych.rb (load, parse): stop parsing or loading after 19693 the first document has been parsed. 19694 19695 * test/psych/test_stream.rb: pertinent tests. 19696 19697Fri Mar 9 06:17:05 2012 Aaron Patterson <aaron@tenderlovemaking.com> 19698 19699 * ext/psych/lib/psych.rb (parse_stream, load_stream): if a block is 19700 given, documents will be yielded to the block as they are parsed. 19701 [ruby-core:42404] [Bug #5978] 19702 19703 * ext/psych/lib/psych/handlers/document_stream.rb: add a handler that 19704 yields documents as they are parsed 19705 19706 * test/psych/test_stream.rb: corresponding tests. 19707 19708Fri Mar 9 00:35:03 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19709 19710 * enumerator.c (lazy_initialize, enumerable_lazy): no additional 19711 arguments. 19712 19713Fri Mar 9 00:30:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19714 19715 * enumerator.c: add Enumerable#lazy. based on the patch by 19716 Innokenty Mikhailov at <https://github.com/ruby/ruby/pull/101> 19717 [ruby-core:37164] [Feature #4890] 19718 19719Fri Mar 9 00:25:59 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19720 19721 * enumerator.c (enumerator_each, generator_each): pass arguments to 19722 the block with yielder. 19723 19724Fri Mar 9 00:25:02 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19725 19726 * array.c (rb_ary_cat): new function to concat objects into array. 19727 19728Thu Mar 8 16:44:02 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19729 19730 * .gdbinit (rb_numtable_entry): update for recent refactoring of 19731 st_table. 19732 19733Wed Mar 7 22:41:50 2012 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 19734 19735 * lib/xmlrpc/client.rb (module XMLRPC): fix typo. 19736 19737 * test/xmlrpc/test_client.rb (test_async_call): add test for 19738 XMLRPC::Client#call_async to check above fix. 19739 19740Wed Mar 7 16:30:24 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19741 19742 * error.c (rb_load_fail): should honor encoding. 19743 19744 * load.c (load_failed): ditto. 19745 19746Wed Mar 7 12:26:25 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19747 19748 * error.c (rb_load_fail): use path as a string, not char*. 19749 19750 * internal.h: (rb_load_fail): moved from ruby/intern.h. 19751 19752 * ruby.c (load_file_internal): fname cannot be NULL. 19753 19754Wed Mar 7 08:32:43 2012 Aaron Patterson <aaron@tenderlovemaking.com> 19755 19756 * error.c (rb_loaderror_with_path): Adding the missing file as an 19757 instance variable to the LoadError exception. 19758 [ruby-core:39079] 19759 19760 * load.c: call rb_loaderror_with_path so that the missing path is 19761 added to the exception. 19762 19763 * ruby.c: call rb_loaderror rather than raising our own LoadError 19764 exception. 19765 19766 * include/ruby/intern.h: add declaration for rb_loaderror_with_path. 19767 19768 * test/ruby/test_require.rb: add supporting test for LoadError#path 19769 method. 19770 19771Wed Mar 7 08:28:00 2012 Aaron Patterson <aaron@tenderlovemaking.com> 19772 19773 * lib/xmlrpc/parser.rb: support i8 types. Thanks Stas Kelvich! 19774 [ruby-core:29246] [Feature #3090] 19775 19776 * test/xmlrpc/test_client.rb: supporting test 19777 19778Wed Mar 7 07:43:29 2012 Aaron Patterson <aaron@tenderlovemaking.com> 19779 19780 * lib/xmlrpc/client.rb: assume servers that do not send a Content-Type 19781 header are sending 'text/xml'. Thanks Nathan Leavitt! 19782 [ruby-core:41204] [Bug #5660] 19783 19784 * test/xmlrpc/test_client.rb: supporting test 19785 19786Wed Mar 7 07:39:28 2012 Aaron Patterson <aaron@tenderlovemaking.com> 19787 19788 * test/xmlrpc/test_client.rb: adding a test for performing an XMLRPC 19789 call. 19790 * test/xmlrpc/data/blog.xml: supporting XML document for the response. 19791 19792Tue Mar 6 16:24:01 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19793 19794 * parse.y (parser_tokadd_string): escape simple regexp meta 19795 character terminators. 19796 19797Tue Mar 6 10:11:43 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19798 19799 * ext/io/console/console.c (set_rawmode): clear ECHOE and ECHOK 19800 bits too. 19801 19802 * ext/io/console/console.c (echo_p): ignore ECHOE and ECHOK bits. 19803 [ruby-dev:45309] [Bug #6116] 19804 19805 * ext/io/console/console.c (console_raw): fix rdoc. 19806 19807 * ext/io/console/console.c (console_set_echo): mentioned about 19808 platform dependency. 19809 19810Tue Mar 6 07:18:10 2012 Aaron Patterson <aaron@tenderlovemaking.com> 19811 19812 * lib/xmlrpc/client.rb: switch net/http post2 calls to modern 19813 `request_post` methods. 19814 19815Tue Mar 6 02:31:20 2012 Aaron Patterson <aaron@tenderlovemaking.com> 19816 19817 * ext/psych/lib/psych/core_ext.rb: only extend Kernel if IRB is loaded 19818 in order to stop method pollution. 19819 19820Tue Mar 6 01:34:19 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19821 19822 * parse.y (block_call): rules for block_call after block_call. 19823 based on a patch by pasberth https://github.com/ruby/ruby/pull/102 19824 [ruby-dev:45308][Bug #6115] 19825 19826Tue Mar 6 01:24:13 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19827 19828 * parse.y (block_command, block_call): simplified rules. 19829 19830Mon Mar 5 18:28:35 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 19831 19832 * test/ruby/test_regexp.rb (TestRegexp#test_source): fix typo. 19833 * test/ruby/test_regexp.rb (TestRegexp#test_equal): ditto. 19834 19835Mon Mar 5 17:11:44 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19836 19837 * ext/syck/lib/syck/rubytypes.rb (Exception.yaml_new): fix bug 19838 that causes YAML serialization problem for Exception. 19839 Exception#initialize doesn't use visible instance variable for 19840 the exception message, so call the method with the message. 19841 patched by Jingwen Owen Ou <jingweno AT gmail.com>. 19842 http://github.com/ruby/ruby/pull/41 19843 19844Mon Mar 5 16:50:22 2012 NAKAMURA Usaku <usa@ruby-lang.org> 19845 19846 * test/ruby/test_sleep.rb (TestSleep#test_sleep_5sec): syntax error. 19847 19848 * test/ruby/test_sleep.rb (TestSleep#test_sleep_5sec): call uname 19849 only on linux because it's a workaround for linux only. 19850 19851Mon Mar 5 12:44:12 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19852 19853 * st.c (unpack_entries): chain entries directly. based on a patch 19854 by Sokolov Yura <funny.falcon AT gmail.com>. 19855 19856 * st.c (unpack_entries): use union instead of casted pointer. 19857 patched by Sokolov Yura <funny.falcon AT gmail.com>. 19858 19859 * st.c: use PACKED_ENT and FIND_ENTRY. patched by Sokolov 19860 Yura <funny.falcon AT gmail.com>. 19861 19862 * st.c (unpack_entries): reallocate bins if packed array size 19863 is not same as initial bins size. based on a patch by 19864 Sokolov Yura <funny.falcon AT gmail.com>. 19865 19866Mon Mar 5 11:51:48 2012 NARUSE, Yui <naruse@ruby-lang.org> 19867 19868 * ext/bigdecimal/lib/bigdecimal/math.rb: remove description about 19869 BigMath#log. patched by Sho Hashimoto [ruby-dev:45307] [Bug #6112] 19870 19871 * string.c (str_byteslice): fix typo. 19872 19873Sun Mar 4 23:21:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19874 19875 * parse.y (parser_tokadd_string): regexp engine doesn't need 19876 terminators to be escaped. [ruby-core:40364][Bug #5484] 19877 19878Sat Mar 3 22:51:46 2012 Tanaka Akira <akr@fsij.org> 19879 19880 * process.c (rb_run_exec_options_err): chdir at last to interpret 19881 relative pathnames from the current directory of the parent process. 19882 19883Sat Mar 3 12:20:44 2012 Tadayoshi Funaba <tadf@dotrb.org> 19884 19885 * ext/date/date_strftime.c: reassigned some variables. 19886 19887Sat Mar 3 12:12:16 2012 Tadayoshi Funaba <tadf@dotrb.org> 19888 19889 * ext/date/date_{parse,strptime}.c: [ruby-dev:45303]. 19890 19891Sat Mar 3 10:09:21 2012 Aaron Patterson <aaron@tenderlovemaking.com> 19892 19893 * lib/xmlrpc/client.rb (initialize): net/http defaults to 1_2 in 1.8+, 19894 so we can safely remove the call to enable it. 19895 19896Sat Mar 3 08:42:25 2012 Aaron Patterson <aaron@tenderlovemaking.com> 19897 19898 * lib/xmlrpc/client.rb (new2): use URI for uri parsing. 19899 * test/xmlrpc/test_client.rb: test that query params are passed to the 19900 client constructor. 19901 19902Sat Mar 3 08:20:10 2012 Aaron Patterson <aaron@tenderlovemaking.com> 19903 19904 * lib/xmlrpc/client.rb (new2): raises an ArgumentError on bad 19905 arguments. 19906 * test/xmlrpc/test_client.rb: tests for bad uris 19907 19908Sat Mar 3 08:08:11 2012 Aaron Patterson <aaron@tenderlovemaking.com> 19909 19910 * lib/xmlrpc/client.rb (new2): fix custom port specification when an 19911 SSL uri is used. 19912 * test/xmlrpc/test_client.rb: tests for XMLRPC::Client.new2 19913 19914Sat Mar 3 08:03:29 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19915 19916 * ext/syck/rubyext.c (mktime_do): use ISDIGIT(). 19917 [ruby-core:43060] [Bug #6108] 19918 19919 * ext/syck/token.c (sycklex_yaml_utf8): cast as unsigned char. 19920 [ruby-core:43060] [Bug #6108] 19921 19922Sat Mar 3 06:57:14 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19923 19924 * configure.in (ruby_pc): make configurable. [Bug #6051] 19925 19926Fri Mar 2 17:49:03 2012 Hiroshi Nakamura <nahi@ruby-lang.org> 19927 19928 * .travis.yml (branches): Enable TravisCI for ruby_1_9_3. 19929 19930Fri Mar 2 17:13:33 2012 Hiroshi Nakamura <nahi@ruby-lang.org> 19931 19932 * test/ruby/test_array.rb (test_combination2): Make the test case for 19933 [ruby-core:29240] more descriptive. 19934 cf. http://bugs.jruby.org/6518 19935 19936Fri Mar 2 16:37:11 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19937 19938 * file.c (file_expand_path): use wcscasecmp(). 19939 19940Fri Mar 2 16:36:31 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19941 19942 * thread_pthread.c (native_cond_timeout): cast explicitly to suppress 19943 a warning. 19944 19945Fri Mar 2 16:35:56 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19946 19947 * io.c (pipe_open): cmd is no longer used if fork is available. 19948 19949Thu Mar 1 16:13:18 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19950 19951 * internal.h (rb_file_const, rb_file_load_ok): moved functions for 19952 internal use only. 19953 19954Thu Mar 1 15:40:05 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19955 19956 * win32/makedirs.bat: new command to make intermediate 19957 directories, and not to report any errors if the directory 19958 already exists. 19959 19960 * win32/Makefile.sub (MAKEDIRS): enable command extensions. 19961 19962Thu Mar 1 01:25:43 2012 NARUSE, Yui <naruse@ruby-lang.org> 19963 19964 * regparse.c (is_onechar_cclass): optimize character class 19965 Merge Onigmo 27278c12e6674043cc8affca6507e20e119a86ee. 19966 19967 * regparse.c (is_onechar_cclass): [bug] unexpected match occurs when a 19968 char class contains no char 19969 19970 * enc/unicode.c (init_case_fold_table): define the sizes of case 19971 folding tables in casefold.h 19972 19973Wed Feb 29 16:11:34 2012 NAKAMURA Usaku <usa@ruby-lang.org> 19974 19975 * win32/Makefile.sub (MAKEDIRS): use mkdir of cmd.exe instead of ruby. 19976 [Bug #6103] [ruby-core:43012] 19977 19978 * win32/README.win32: added a notice about command extension of cmd.exe. 19979 19980Wed Feb 29 15:39:39 2012 NAKAMURA Usaku <usa@ruby-lang.org> 19981 19982 * test/ruby/test_io.rb (TestIO#test_readpartial_locktmp): skip on 19983 windows because of the platform restriction. 19984 19985Wed Feb 29 15:38:50 2012 NAKAMURA Usaku <usa@ruby-lang.org> 19986 19987 * test/ruby/memory_status.rb (Memory): syntax error. 19988 19989Wed Feb 29 13:06:42 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 19990 19991 * test/ruby/memory_status.rb: use /proc/self/status if it is in 19992 the expected format. 19993 19994Wed Feb 29 06:14:51 2012 Tadayoshi Funaba <tadf@dotrb.org> 19995 19996 * ext/date/date_core.c: reverted r34825. 19997 19998Tue Feb 28 23:20:01 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 19999 20000 * Makefile.in (PLATFORM_DIR): add a variable for `win32` directory. 20001 * Makefile.in (clean-platform): add new target. 20002 It cleans `win32` directory. 20003 20004 * common.mk (clean): add a dependency for `win32` directory. 20005 * common.mk (distclean): ditto. 20006 * common.mk (distclean-platform): add new target. 20007 It cleans `win32` directory. 20008 * common.mk ($(PLATFORM_D)): add new target to make `win32` directory. 20009 * common.mk (win32/win32.$(OBJEXT)): move win32.o into `win32` 20010 directory. 20011 * common.mk (win32/file.$(OBJEXT)): add new target for win32/file.c. 20012 20013 * configure.in: move win32.o into `win32` directory and add 20014 win32/file.o to MISSING. 20015 20016 * file.c (file_load_ok, rb_file_load_ok): replace static 20017 file_load_ok() with public rb_file_load_ok(). 20018 It's to link Windows implementation in win32/file.c. 20019 * file.c (rb_find_file_ext_safe): ditto. 20020 * file.c (rb_find_file_safe): ditto. 20021 20022 * win32/file.c (rb_file_load_ok): new file. Add Windows specific 20023 optimized implementation of rb_file_load_ok(). We created a 20024 separated file to avoid too many #ifdef macro which is unreadable. 20025 20026 * win32/Makefile.sub (PLATFORM_DIR): add a variable for `win32` 20027 directory. 20028 * win32/Makefile.sub (MISSING): move win32.obj into `win32` 20029 directory and add win32/file.obj to MISSING. 20030 * win32/Makefile.sub (MAKEDIRS): replace MINIRUBY with BASERUBY. 20031 It's because miniruby doesn't exist when making `win32` directory. 20032 * win32/Makefile.sub (clean-platform): add new target to clean `win32` 20033 directory. 20034 * win32/Makefile.sub ({$(srcdir)}.c{}.obj): make it not match 20035 win32/file.c to build properly. 20036 * win32/Makefile.sub (win32/win32.$(OBJEXT)): move win32.obj into 20037 `win32` directory. 20038 20039 Patch created with Luis Lavena. 20040 [ruby-core:42480] [Feature #5999] 20041 20042Tue Feb 28 20:27:25 2012 Tadayoshi Funaba <tadf@dotrb.org> 20043 20044 * ext/date/date_core.c: [ruby-core:42998] 20045 20046Tue Feb 28 18:47:44 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20047 20048 * io.c (io_binwrite, rb_io_syswrite): use shared frozen source 20049 strings. 20050 20051 * io.c (io_fread, io_getpartial, rb_io_sysread): set buffer size 20052 after check if readable, which can cause thread switch. 20053 [ruby-dev:45297][Bug #6099] 20054 20055Tue Feb 28 17:16:01 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20056 20057 * lib/time.rb (Time#xmlschema): use strftime specifiers instead of 20058 fractional exponential calculation which yields undesirable 20059 result. [ruby-core:42997][Bug #6100] 20060 20061Tue Feb 28 14:15:29 2012 Eric Hodel <drbrain@segment7.net> 20062 20063 * lib/net/protocol.rb: Add OpenTimeout subclass of Timeout::Error 20064 * lib/net/pop.rb: Modernize Timeout usage. Patch by Eric Wong. 20065 Use Net::OpenTimeout instead of Timeout::Error. [Bug #5765] 20066 * lib/net/http.rb: ditto 20067 * lib/net/smtp.rb: ditto 20068 * lib/net/telnet.rb: ditto 20069 20070Tue Feb 28 13:51:12 2012 Eric Hodel <drbrain@segment7.net> 20071 20072 * lib/net/http.rb: Retry HTTP requests for additional network errors. 20073 Introduce OpenTimeout subclass of Timeout::Error. [Bug #6001] 20074 * test/net/http/test_http.rb: Reduce timeout to 0.01s for faster test 20075 * test/net/http/test_https.rb: ditto 20076 20077Tue Feb 28 11:44:49 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20078 20079 * configure.in (debugflags): check if -ggdb is accepted. 20080 [ruby-core:42875][Bug #6080] 20081 20082Tue Feb 28 10:28:51 2012 Aaron Patterson <aaron@tenderlovemaking.com> 20083 20084 * ext/psych/lib/psych.rb: default open YAML files with utf8 external 20085 encoding. [ruby-core:42967] 20086 * test/psych/test_tainted.rb: ditto 20087 20088Mon Feb 27 23:46:09 2012 Yukihiro Matsumoto <matz@ruby-lang.org> 20089 20090 * parse.y (opt_bv_decl): allow newline at the end. [ruby-dev:45292] 20091 20092Mon Feb 27 20:43:05 2012 NAKAMURA Usaku <usa@ruby-lang.org> 20093 20094 * io.c (rb_io_set_pos): add rdoc about textmode. 20095 20096 * test/ruby/test_io.rb (TestIO#test_setpos): use binmode. 20097 20098Mon Feb 27 17:00:15 2012 Akinori MUSHA <knu@iDaemons.org> 20099 20100 * string.c (rb_str_crypt): Update rdoc and state that this 20101 function is system dependent. Reviewed by nobu, thanks to 20102 @takai. 20103 20104Mon Feb 27 17:03:20 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20105 20106 * ext/bigdecimal/bigdecimal.c (GetVpValueWithPrec): since methods 20107 can be overridden, so should not make an assumption on the type 20108 of results. [ruby-core:42969][Bug #6093] 20109 20110Mon Feb 27 10:54:20 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20111 20112 * lib/mkmf.rb (try_cppflags, try_cflags, try_ldflags): replace the 20113 target flags if the given flag is accepted. 20114 20115Mon Feb 27 10:53:44 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20116 20117 * test/rubygems/test_gem_specification.rb (test_self_from_yaml_syck_default_key_bug): 20118 ignore the test for too old versions. 20119 20120Mon Feb 27 10:53:12 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20121 20122 * lib/test/unit.rb (Test::Unit::Runner#puke): skips with no 20123 messages should be trivial. 20124 20125Mon Feb 27 10:50:23 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20126 20127 * io.c, process.c, time.c, ext: use rb_sys_fail_str instead of 20128 rb_sys_fail. 20129 20130Mon Feb 27 10:48:49 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20131 20132 * ext/openssl/extconf.rb: suppress useless deprecation warnings 20133 from OpenSSL added by Apple. 20134 20135Sun Feb 26 23:29:49 2012 NARUSE, Yui <naruse@ruby-lang.org> 20136 20137 * regparse.c (add_code_range_to_buf0): wrong condition of duplicated 20138 warnings. 20139 20140Sun Feb 26 11:26:44 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20141 20142 * compile.c (iseq_compile_each): call on special object instead of 20143 self. since stabby lambda is a syntax, so it should not be 20144 affected by the context. [ruby-core:42349][Bug #5966] 20145 20146 * insns.def (send): no special deal for FCALL. self should be put 20147 on TOS instead. 20148 20149Sun Feb 26 05:35:43 2012 NARUSE, Yui <naruse@ruby-lang.org> 20150 20151 * error.c (report_bug): use buf and snprintf to avoid consuming stack. 20152 [ruby-dev:45272] [Bug #6058] 20153 20154Sat Feb 25 17:41:19 2012 Tanaka Akira <akr@fsij.org> 20155 20156 * ext/dbm/extconf.rb (headers): try ambiguous headers at last. 20157 20158Sat Feb 25 17:07:15 2012 NARUSE, Yui <naruse@ruby-lang.org> 20159 20160 * lib/fileutils.rb: use chomp(?/) instead of sub to optimize and avoid 20161 to regexping invalid string. 20162 20163Sat Feb 25 16:18:24 2012 NARUSE, Yui <naruse@ruby-lang.org> 20164 20165 * complex.c (nucomp_marshal_load): raise error on invalid data. 20166 reported by John Firebaugh [ruby-core:42860] [Bug #6076] 20167 20168Sat Feb 25 14:46:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20169 20170 * ext/dl/dl.c (Init_dl): support intrinsic types, size_t, ptrdiff_t 20171 and intptr_t. [ruby-core:42460][Feature #5992] 20172 20173 * ext/fiddle/fiddle.c (Init_fiddle): ditto. 20174 20175 * ext/dl/lib/dl/cparser.rb (DL::CParser#parse_ctype): ditto. 20176 20177Sat Feb 25 11:08:28 2012 Tanaka Akira <akr@fsij.org> 20178 20179 * ext/curses/curses.c (Init_curses): use rb_define_const once for 20180 Curses::VERSION. 20181 20182 * ext/dbm/dbm.c (Init_dbm): ditto for DBM::VERSION. 20183 20184Sat Feb 25 10:34:22 2012 Tanaka Akira <akr@fsij.org> 20185 20186 * ext/curses/curses.c (Init_curses): make Curses::VERSION 20187 understandable without context. 20188 20189 * ext/dbm/dbm.c (Init_dbm): ditto for DBM::VERSION. 20190 20191Sat Feb 25 07:53:58 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20192 20193 * parse.y (parser_tokadd_string): insert a backslash only if 20194 quoted by single quotes. [ruby-dev:45281] [Bug #6069] 20195 20196Sat Feb 25 07:53:49 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20197 20198 * dir.c (dir_inspect), io.c (rb_io_inspect): keep encoding of path. 20199 [Bug #6072] 20200 20201Sat Feb 25 07:53:40 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20202 20203 * dir.c (dir_initialize): keep path in original encoding. 20204 20205 * error.c (syserr_initialize): prefer the encoding of message over 20206 locale. [ruby-dev:45279][Bug #6071] 20207 20208Sat Feb 25 06:55:29 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20209 20210 * file.c (utime_internal): fix a variable missed to replace. 20211 [ruby-core:42864] [Bug #6077] 20212 20213Fri Feb 24 18:21:55 2012 Hiroshi Nakamura <nahi@ruby-lang.org> 20214 20215 * test/zlib/test_zlib.rb (TestZlibGzipReader#test_encoding): Add 20216 encoding testcases for GzipReader#read. read() emits 20217 Encoding.default_external in contrast to read(size) emits BINARY. 20218 See also: http://bugs.jruby.org/6208 20219 20220Fri Feb 24 17:56:39 2012 URABE Shyouhei <shyouhei@ruby-lang.org> 20221 20222 * test/ruby/test_literal.rb (TestRubyLiteral#test_special_const): 20223 test for https://bugs.php.net/bug.php?id=61095 20224 20225Fri Feb 24 16:48:29 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20226 20227 * dir.c, file.c, io.c (rb_sys_fail_path): use rb_sys_fail_str. 20228 20229 * error.c: new functions to deal exceptions with string instances. 20230 20231 * dir.c, file.c, io.c: use rb_sys_fail_path. 20232 20233Fri Feb 24 15:49:07 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20234 20235 * configure.in (__builtin_unreachable): check for clang. 20236 [ruby-core:42849] 20237 20238 * include/ruby/ruby.h (UNREACHABLE): fallback definition. 20239 20240Fri Feb 24 13:54:33 2012 Aaron Patterson <aaron@tenderlovemaking.com> 20241 20242 * ext/psych/parser.c: prevent a memory leak by protecting calls to 20243 handler callbacks. 20244 * test/psych/test_parser.rb: test to demonstrate leak. 20245 20246Fri Feb 24 12:07:34 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 20247 20248 * lib/net/http.rb: Fix documentation. Patched from Florian Mhun 20249 via http://github.com/ruby/ruby/pull/96 20250 20251Fri Feb 24 11:48:07 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 20252 20253 * string.c (rb_str_prepend): Fix documentation for String#prepend. 20254 Patched from Franck Verrot via http://github.com/ruby/ruby/pull/98 20255 and Andrew Horsman via http://github.com/ruby/ruby/pull/55 20256 20257Fri Feb 24 10:08:33 2012 Eric Hodel <drbrain@segment7.net> 20258 20259 * lib/net/http.rb (Net::HTTP#transport_request): Fix infinite loop 20260 upon EOFError or Errno::ECONNRESET where count is reset to 0. 20261 * test/net/http/test_http.rb (class TestNetHTTPKeepAlive): Test for 20262 above. 20263 20264Fri Feb 24 09:05:40 2012 Eric Hodel <drbrain@segment7.net> 20265 20266 * complex.c (Init_Complex): Document Complex::I. Patch by Sylvain 20267 Daubert. [Feature #5623] 20268 20269Fri Feb 24 08:52:09 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20270 20271 * parse.y (parser_tokadd_string, parser_yylex): insert a backslash 20272 if the next character is non-ascii. [ruby-dev:45278] [Bug #6069] 20273 20274Fri Feb 24 08:13:20 2012 Eric Hodel <drbrain@segment7.net> 20275 20276 * lib/profiler.rb: Add Profiler documentation by Gonzalo Rodriguez. 20277 [Bug #5816] 20278 20279Fri Feb 24 08:08:38 2012 Aaron Patterson <aaron@tenderlovemaking.com> 20280 20281 * ext/psych/parser.c: set parser encoding based on the YAML input 20282 rather than user configuration. 20283 * test/psych/test_encoding.rb: corresponding tests. 20284 * test/psych/test_parser.rb: ditto 20285 * test/psych/test_tainted.rb: ditto 20286 20287Fri Feb 24 08:02:52 2012 Eric Hodel <drbrain@segment7.net> 20288 20289 * hash.c (Init_Hash): Add section on how objects are used as Hash keys 20290 and how to use custom classes as Hash keys. 20291 20292Fri Feb 24 07:36:11 2012 Eric Hodel <drbrain@segment7.net> 20293 20294 * object.c (rb_obj_eql): Improve equality documentation by adding an 20295 example of equal? vs == and recommending eql? be aliased to == when 20296 overridden. 20297 20298Fri Feb 24 07:21:15 2012 Eric Hodel <drbrain@segment7.net> 20299 20300 * object.c (rb_obj_hash): Added note that the hash value is not 20301 deterministic on Marc-Andre's suggestion. Expanded description of 20302 the purpose of the hash method. [Bug #6068] 20303 20304Thu Feb 23 23:01:21 2012 Tanaka Akira <akr@fsij.org> 20305 20306 * ext/dbm/extconf.rb: unused macro removed. 20307 20308Thu Feb 23 22:26:53 2012 Tanaka Akira <akr@fsij.org> 20309 20310 * test/test_curses.rb: new file. 20311 20312Thu Feb 23 19:57:56 2012 Tanaka Akira <akr@fsij.org> 20313 20314 * ext/curses/rain.rb: trap SIGHUP, SIGINT, SIGQUIT and SIGTERM only. 20315 20316Thu Feb 23 19:56:48 2012 Tanaka Akira <akr@fsij.org> 20317 20318 * signal.c (sig_trap): show signal name on error. 20319 20320Thu Feb 23 12:21:48 2012 Tanaka Akira <akr@fsij.org> 20321 20322 * ext/dbm/extconf.rb: use DBM_SUFFIX only to detect header of 20323 Berkeley DB. 20324 20325Thu Feb 23 10:00:18 2012 Eric Hodel <drbrain@segment7.net> 20326 20327 * io.c (rb_io_f_sync): Fix double-negative typo. [ruby-trunk - #5837] 20328 20329Thu Feb 23 09:57:21 2012 Eric Hodel <drbrain@segment7.net> 20330 20331 * load.c (rb_f_require): Add note to require for scope of items in the 20332 loaded file. [ruby-trunk - #5910] 20333 20334Thu Feb 23 03:58:08 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 20335 20336 * lib/ostruct.rb (delete_field): Bug fix so previous value is 20337 returned. Patch by Nick Recobra [Bug #6063] 20338 20339Thu Feb 23 02:33:00 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20340 20341 * io.c (rb_io_extract_modeenc): fail only if conflicting 20342 text/binary modes given explicitly. [ruby-dev:45268][Bug #6055] 20343 20344Wed Feb 22 23:27:08 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20345 20346 * test/iconv/test_option.rb: enabled. [ruby-core:42802][Bug #6061] 20347 20348Wed Feb 22 21:45:56 2012 Tanaka Akira <akr@fsij.org> 20349 20350 * ext/curses/curses.c: use defined() to suppress a warning. 20351 20352Wed Feb 22 21:44:29 2012 Tanaka Akira <akr@fsij.org> 20353 20354 * ext/curses/extconf.rb: refactored. 20355 20356Wed Feb 22 20:42:28 2012 Tanaka Akira <akr@fsij.org> 20357 20358 * ext/curses/extconf.rb: try to distinguish curses_version is a 20359 function or variable. 20360 20361 * ext/curses/curses.c (Init_curses): refine Curses::VERSION. 20362 20363Wed Feb 22 19:47:03 2012 Tanaka Akira <akr@fsij.org> 20364 20365 * ext/curses/extconf.rb: show the chosen header and library. 20366 20367Wed Feb 22 19:22:31 2012 Tadayoshi Funaba <tadf@dotrb.org> 20368 20369 * reverted 34739 for test/date. 20370 20371Wed Feb 22 19:08:55 2012 Tanaka Akira <akr@fsij.org> 20372 20373 * ext/curses/extconf.rb: refactored. 20374 20375Wed Feb 22 18:44:41 2012 Shota Fukumori <sorah@tubusu.net> 20376 20377 * lib/test/unit.rb (setup_options): add option "--retry" as opposite 20378 for "--no-retry" 20379 20380Wed Feb 22 18:34:02 2012 Shota Fukumori <sorah@tubusu.net> 20381 20382 * lib/test/unit.rb (setup_options): add option "--show-skip" to 20383 cancel "--hide-skip" (-q) 20384 20385Wed Feb 22 17:36:22 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20386 20387 * io.c (rb_io_s_foreach): argument check before making Enumerator. 20388 [ruby-dev:31525] 20389 20390Wed Feb 22 17:07:35 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20391 20392 * io.c (rb_io_s_foreach): return enumerator including keyword 20393 arguments. [ruby-dev:45267][Bug #6054] 20394 20395Wed Feb 22 12:15:16 2012 NARUSE, Yui <naruse@ruby-lang.org> 20396 20397 * configure.in: allow llvm-gcc because it work fine with r34278. 20398 20399Wed Feb 22 10:57:08 2012 NARUSE, Yui <naruse@ruby-lang.org> 20400 20401 * regparse.c (fetch_token): don't use // comment. 20402 20403Wed Feb 22 10:32:11 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20404 20405 * test/mkmf/test_framework.rb: try CoreFoundation framework, than 20406 Cocoa which is dependent on QuickTime SDK which has separated 20407 since Xcode 4.3. 20408 20409Wed Feb 22 10:18:05 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20410 20411 * common.mk (test-all, test-ruby): more dependencies. 20412 20413Wed Feb 22 06:48:55 2012 Eric Hodel <drbrain@segment7.net> 20414 20415 * file.c (rb_f_test): Fix formatting of Kernel#test rdoc. 20416 20417Wed Feb 22 06:12:15 2012 Tanaka Akira <akr@fsij.org> 20418 20419 * ext/dbm/extconf.rb: check DBM_SUFFIX for Mac OS X. 20420 Its ndbm.h doesn't include db.h. 20421 20422Wed Feb 22 06:02:42 2012 Tanaka Akira <akr@fsij.org> 20423 20424 * ext/dbm/dbm.c (fdbm_initialize): disable Berkeley DB error messages. 20425 20426 * ext/dbm/extconf.rb: check DBC type for above. 20427 20428 [ruby-dev:45269] 20429 20430Tue Feb 21 20:23:47 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20431 20432 * hash.c (rb_any_hash): treat Qundef like as other special constants. 20433 20434 * hash.c (hash_foreach_iter): fix signature. 20435 20436Tue Feb 21 19:39:34 2012 Tanaka Akira <akr@fsij.org> 20437 20438 * ext/curses/curses.c (Init_curses): use curses_version() for 20439 Curses::VERSION. 20440 20441Tue Feb 21 18:21:25 2012 Narihiro Nakamura <authornari@gmail.com> 20442 20443 * gc.c : remove gc_clear_mark_on_sweep_slots() and use 20444 rest_sweep() instead of it, because some dead objects might be 20445 marked in next the mark phase by false pointers. 20446 [ruby-core:42672] 20447 20448Tue Feb 21 16:08:17 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20449 20450 * proc.c (rb_hash_proc): get wrapped pointer properly. [Bug #6048] 20451 20452Tue Feb 21 14:41:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20453 20454 * template/ruby.pc.in: added rubylibprefix, {rubylib,vendor,site}dir 20455 and {ruby,vendor,site}archdir. [ruby-core:42766][Feature #6052] 20456 20457Tue Feb 21 09:13:25 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 20458 20459 * proc.c (method_hash, proc_hash): Fix {Unbound}Method#hash 20460 [Bug #6048]. Isolate hash computation for proc 20461 20462 * internal.h: Declaration for above 20463 20464 * vm_method.c (rb_method_definition_hash): Computation for 20465 hash part of a method definition 20466 20467 * method.h: Declaration for above 20468 20469 * test/ruby/test_method.rb: Test for above 20470 20471Tue Feb 21 02:56:15 2012 Yukihiro Matsumoto <matz@ruby-lang.org> 20472 20473 * enumerator.c (enumerator_rewind): update the documentation. 20474 fixed: #6053 20475 20476Mon Feb 20 23:38:35 2012 NAKAMURA Usaku <usa@ruby-lang.org> 20477 20478 * enc/depend: ignore mktable.c because it's not encoding library. 20479 [ruby-core:42760] [Bug #6049] 20480 20481Mon Feb 20 21:40:53 2012 Tanaka Akira <akr@fsij.org> 20482 20483 * ext/curses/extconf.rb: fold too long lines. 20484 20485Mon Feb 20 21:16:48 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 20486 20487 * lib/fileutils.rb: revert a line modified accidentally at r34669. 20488 This fixes mingw test errors in TestDir_M17N. 20489 [ruby-core:42728] [Feature #4970] 20490 20491Mon Feb 20 21:09:27 2012 Tanaka Akira <akr@fsij.org> 20492 20493 * ext/curses/curses.c (Init_curses): define Curses::VERSION. 20494 20495Mon Feb 20 21:08:00 2012 Tanaka Akira <akr@fsij.org> 20496 20497 * ext/curses/extconf.rb: restore $libs and $defs for each 20498 header/library choice. 20499 20500Mon Feb 20 19:57:26 2012 Tanaka Akira <akr@fsij.org> 20501 20502 * ext/dbm/extconf.rb: weaken header/library consistency check if db is 20503 "ndbm". It seems several (possibly historical) distributions 20504 provide libndbm. However the content of libndbm vary: Berkeley DB, 20505 GDBM or even 4.3BSD NDBM. (Mandriva, Tru64 UNIX, OpenSuSE, 20506 SCO OpenServer, ...) 20507 "ndbm" is not searched automatically now (dblib doesn't contain it) 20508 but configure --with-dbm-type=ndbm choose libndbm and ndbm.h. 20509 20510Mon Feb 20 19:15:57 2012 Tanaka Akira <akr@fsij.org> 20511 20512 * ext/dbm/extconf.rb: refine variable names. 20513 20514Mon Feb 20 15:50:33 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20515 20516 * configure.in: check if -fstack-protector is really available. 20517 20518Sun Feb 19 23:43:38 2012 Tanaka Akira <akr@fsij.org> 20519 20520 * ext/dbm/extconf.rb: show header and library found. 20521 20522Sun Feb 19 23:01:01 2012 Tanaka Akira <akr@fsij.org> 20523 20524 * ext/dbm/dbm.c (Init_dbm): refine DBM::VERSION definition. 20525 20526 * ext/dbm/extconf.rb: provide RUBYDBM_GDBM_HEADER macro. 20527 20528Sun Feb 19 17:07:27 2012 Tanaka Akira <akr@fsij.org> 20529 20530 * test/dbm/test_dbm.rb (test_dbmfile_suffix): check pag and dir is 20531 empty for 4.3BSD ndbm. 20532 20533Sun Feb 19 03:00:30 2012 Tanaka Akira <akr@fsij.org> 20534 20535 * test/dbm/test_dbm.rb (test_dbmfile_suffix): check magic numbers. 20536 20537Sun Feb 19 01:05:41 2012 Tanaka Akira <akr@fsij.org> 20538 20539 * ext/dbm/extconf.rb: detect GDBM's ndbm.h by testing dbm_clearerr is 20540 an empty macro. 20541 20542Sun Feb 19 00:25:55 2012 Tanaka Akira <akr@fsij.org> 20543 20544 * ext/dbm/extconf.rb: don't choose 'dbm' if _GDB_H_ is defined which 20545 is available since GDBM 1.9 because 'gdbm_compat' is appropriate 20546 choice since GDBM 1.8.1. 20547 20548Sat Feb 18 23:27:00 2012 Kenta Murata <mrkn@mrkn.jp> 20549 20550 * random.c: remove a duplicated comment. 20551 20552Sat Feb 18 18:43:13 2012 Tanaka Akira <akr@fsij.org> 20553 20554 * ext/dbm/extconf.rb (dblib): prefer recent GDBM over older GDBM. 20555 (have_declared_libvar): new function to check a declared variable 20556 exists in a library. 20557 (have_undeclared_libvar): renamed from renamed from have_libvar. 20558 (headers.db_check2): check that GDBM version variable if GDBM header 20559 is chosen. 20560 20561 * ext/dbm/dbm.c (Init_dbm): use HAVE_DECLARED_LIBVAR_GDBM_VERSION and 20562 HAVE_UNDECLARED_LIBVAR_GDBM_VERSION macro. 20563 20564Sat Feb 18 13:53:01 2012 Tanaka Akira <akr@fsij.org> 20565 20566 * test/dbm/test_dbm.rb (test_dbmfile_suffix): DBM::VERSION should 20567 be Berkeley DB if foo.db is created by DBM.open. 20568 20569Sat Feb 18 13:40:37 2012 Tanaka Akira <akr@fsij.org> 20570 20571 * test/dbm/test_dbm.rb (test_dbmfile_suffix): test dbm file suffix. 20572 20573Sat Feb 18 12:50:59 2012 Tanaka Akira <akr@fsij.org> 20574 20575 * ext/dbm/dbm.c (DBM::VERSION): define it by detecting _GDBM_H_ or 20576 _DBM_IOERR. 20577 20578Sat Feb 18 07:52:45 2012 NARUSE, Yui <naruse@ruby-lang.org> 20579 20580 * tool/enc-unicode.rb: don't use 1.9 feature on tools. 20581 20582Sat Feb 18 02:48:39 2012 Aaron Patterson <aaron@tenderlovemaking.com> 20583 20584 * lib/fileutils.rb: refactored FileUtil methods to use the 20585 `define_command` API. Patch from 7rans <transfire@gmail.com> 20586 * test/fileutils/test_dryrun.rb: corresponding test refactoring 20587 * test/fileutils/test_nowrite.rb: ditto 20588 * test/fileutils/test_verbose.rb: ditto 20589 20590Fri Feb 17 21:39:36 2012 Tanaka Akira <akr@fsij.org> 20591 20592 * ext/dbm/extconf.rb: remove dbm. 20593 20594Fri Feb 17 21:18:39 2012 Tanaka Akira <akr@fsij.org> 20595 20596 * ext/dbm/extconf.rb: refine header/library mismatch detection. 20597 check only for ndbm.h except libc. check _GDBM_H_ for gdbm. 20598 check _DBM_IOERR for the original ndbm. 20599 20600Fri Feb 17 20:30:44 2012 Tanaka Akira <akr@fsij.org> 20601 20602 * ext/dbm/extconf.rb: don't check libdbm. It is not a ndbm 20603 implementation. (libdbm in Version 7 Unix is database library 20604 for single database per process.) 20605 20606Fri Feb 17 15:38:53 2012 NARUSE, Yui <naruse@ruby-lang.org> 20607 20608 * Merge Onigmo-5.13.1. [ruby-dev:45057] [Feature #5820] 20609 https://github.com/k-takata/Onigmo 20610 cp reg{comp,enc,error,exec,parse,syntax}.c reg{enc,int,parse}.h 20611 cp oniguruma.h 20612 cp tool/enc-unicode.rb 20613 cp -r enc/ 20614 20615Fri Feb 17 15:20:30 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20616 20617 * enum.c (enum_each_slice): arrays to be yielded can be newly 20618 created in the block. 20619 20620 * enum.c: move work variables to objects not to let called blocks 20621 access stack area out of scope. [Bug #5801] 20622 20623Fri Feb 17 12:35:55 2012 NARUSE, Yui <naruse@ruby-lang.org> 20624 20625 * tool/merger.rb: remove borders from the commit message which is used 20626 when the commit doesn't change ChangeLog. 20627 20628Fri Feb 17 11:50:11 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20629 20630 * common.mk (btest, btest-ruby, test-sample test-knownbugs) 20631 (test-all, test-ruby): depend on prog. 20632 20633Fri Feb 17 09:56:22 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20634 20635 * lib/mkmf.rb (create_header): log the content of header. 20636 20637Fri Feb 17 09:44:55 2012 NARUSE, Yui <naruse@ruby-lang.org> 20638 20639 * tool/transcode-tblgen.rb (import_ucm): don't use \h because the 20640 script should work with ruby 1.8. 20641 20642 * tool/enc-unicode.rb: ditto. 20643 20644Fri Feb 17 07:33:29 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20645 20646 * enum.c (id_lshift): use constant ID. 20647 20648Fri Feb 17 07:30:53 2012 Tanaka Akira <akr@fsij.org> 20649 20650 * ext/dbm/extconf.rb: refactored to split too long conditions. 20651 20652Fri Feb 17 00:23:25 2012 Tanaka Akira <akr@fsij.org> 20653 20654 * test/dbm/test_dbm.rb: fix skip condition for libgdbm 1.8.0 or prior. 20655 reported by Bohuslav Kabrda. 20656 [ruby-core:42685] [ruby-trunk - Bug #6036] 20657 20658Fri Feb 17 00:04:21 2012 Tanaka Akira <akr@fsij.org> 20659 20660 * ext/dbm/extconf.rb: check _DB_H_ macro unavailable except 20661 Berkeley DB library. 20662 20663Thu Feb 16 05:41:35 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20664 20665 * insns.def (splatarray): make new array if flag is set. 20666 20667 * compile.c (iseq_compile_each): make new array with 20668 splat. [ruby-core:21901][Feature #1125] 20669 20670Thu Feb 16 00:14:04 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 20671 20672 * lib/abbrev.rb (Array#abbrev): add missing '"' in documentation. 20673 20674Wed Feb 15 22:20:19 2012 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 20675 20676 * cont.c (rb_fiber_reset_root_local_storage): add a new function to 20677 restore rb_thread_t::local_storage. 20678 20679 * cont.c (rb_obj_is_fiber): add a new function to tell finalizer to 20680 prevent fibers from destroy. 20681 20682 * gc.c (rb_objspace_call_finalizer): don't sweep fibers at finalizing 20683 objspace. 20684 20685 * internal.h (rb_fiber_reset_root_local_storage, rb_obj_is_fiber): 20686 add prototypes. 20687 20688 * vm.c (ruby_vm_destruct): reset main thread's local_storage before 20689 free main thread. rb_thread_t::local_storage is replaced by fiber's 20690 local storage when forked from fiber, and it should be already freed 20691 when the fiber was destroyed. [ruby-core:41456] [Bug #5700] 20692 20693 * test/ruby/test_fiber.rb (test_fork_from_fiber): add test for fork 20694 from fiber. 20695 20696Wed Feb 15 19:57:02 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20697 20698 * ext/fiddle/closure.c (callback): deal with unsigned integers. 20699 [ruby-core:42458][Bug #5991][Bug #6022] 20700 20701 * ext/fiddle/conversions.c (value_to_generic, generic_to_value): 20702 ditto. 20703 20704 * ext/fiddle/closure.c (callback): same as r34506. 20705 20706Wed Feb 15 17:41:31 2012 NARUSE, Yui <naruse@ruby-lang.org> 20707 20708 * io.c (io_strsetbuf): call rb_str_modify to make str independent 20709 before calling rb_str_set_len for r34580. 20710 20711Wed Feb 15 12:30:10 2012 Eric Hodel <drbrain@segment7.net> 20712 20713 * ext/zlib/zlib.c (Init_zlib): Added Zlib::TEXT and note that 20714 Zlib::ASCII is deprecated in zlib 1.2.3 and newer. 20715 20716Wed Feb 15 12:24:40 2012 Eric Hodel <drbrain@segment7.net> 20717 20718 * ext/zlib/zlib.c: Move constant descriptions to constants. Remove 20719 extra comment block at the top of Init_zlib(). 20720 20721Wed Feb 15 12:30:46 2012 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 20722 20723 * lib/ostruct.rb: Create getters and setters after dup. 20724 [Bug #6028] [rubyspecs:0380bcc] 20725 20726Wed Feb 15 10:59:52 2012 Narihiro Nakamura <authornari@gmail.com> 20727 20728 * gc.c (HEAP_BITMAP_LIMIT): HEAP_BITMAP_LIMIT is computed on the 20729 basis of HEAP_SIZE because it must covers a whole heap block. 20730 [ruby-trunk - Bug #6006] 20731 20732Wed Feb 15 09:27:45 2012 Eric Hodel <drbrain@segment7.net> 20733 20734 * ext/zlib/zlib.c (Init_zlib): Added Zlib::FIXED and Zlib::RLE 20735 strategies. 20736 * NEWS: Add note about the new Zlib constants. 20737 20738Wed Feb 15 09:11:36 2012 Eric Hodel <drbrain@segment7.net> 20739 20740 * ext/zlib/zlib.c: Improve documentation. [ruby-trunk - Bug #5948] 20741 20742Wed Feb 15 07:28:54 2012 Eric Hodel <drbrain@segment7.net> 20743 20744 * encoding.c (Init_Encoding): Add IO example of internal and external 20745 encoding. Fixed a typo in the force_encoding example. [#5949] 20746 20747Wed Feb 15 06:58:21 2012 Eric Hodel <drbrain@segment7.net> 20748 20749 * encoding.c (Init_Encoding): Add Encoding documentation. 20750 [ruby-trunk - Bug #5949] 20751 * encoding.c (rb_set_default_external): Fix typo in documentation. 20752 20753Tue Feb 14 20:22:11 2012 Narihiro Nakamura <authornari@gmail.com> 20754 20755 * gc.c (CEILDIV): rename to a appropriate name. 20756 20757Tue Feb 14 18:07:20 2012 Narihiro Nakamura <authornari@gmail.com> 20758 20759 * gc.c (assign_heap_slot): SEGV happens cause on 64-bit platform 20760 sometime there should be `objs-=2` instead of `objs--`. 20761 [Bug #6006] 20762 patched by Sokolov Yura. https://github.com/ruby/ruby/pull/92 20763 20764Tue Feb 14 16:00:30 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20765 20766 * io.c (io_setstrbuf): cut down the buffer if longer. 20767 20768Tue Feb 14 15:06:37 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20769 20770 * lib/test/unit/assertions.rb (build_message): skip escaped 20771 question marks. 20772 20773Tue Feb 14 12:10:04 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20774 20775 * variable.c (autoload_const_set, autoload_require): fix 20776 signatures. 20777 20778Tue Feb 14 05:23:40 2012 Eric Hodel <drbrain@segment7.net> 20779 20780 * process.c (proc_wait): Change typo "SystemError" to 20781 "SystemCallError". [ruby-trunk - Bug #5962] 20782 * process.c (proc_wait2): ditto 20783 20784Tue Feb 14 05:18:24 2012 Eric Hodel <drbrain@segment7.net> 20785 20786 * enumerator.c: Document use of Enumerator.new for creating a lazy 20787 enumeration for filtering/chaining. [ruby-trunk - Feature #707] 20788 20789Mon Feb 13 23:01:50 2012 Akinori MUSHA <knu@iDaemons.org> 20790 20791 * vm_method.c (rb_method_boundp): 20792 obj.respond_to?(:a_protected_method) should return false because 20793 calling a protected method may cause NoMethodError if called 20794 from outside the class inheritance tree. Kernel#respond_to? is 20795 mostly used to test if it is safe to call a method, so the false 20796 positive should be avoided. [ruby-dev:40461] [ruby-dev:41739] 20797 [ruby-dev:41837] 20798 20799Mon Feb 13 21:52:06 2012 Narihiro Nakamura <authornari@gmail.com> 20800 20801 * gc.c (HEAP_OBJ_LIMIT, HEAP_BITMAP_LIMIT): HEAP_OBJ_LIMIT used 20802 `sizeof(struct heaps_slot)` while heap is currently allocated 20803 with `struct heaps_header`. 20804 HEAP_BITMAP_LIMIT were calculated from 20805 `HEAP_OBJ_LIMIT/sizeof(uintptr_t)` - one Byte for each object, 20806 not one Bit. [Bug #6006] 20807 patched by Sokolov Yura. https://github.com/ruby/ruby/pull/92 20808 20809Mon Feb 13 18:30:32 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20810 20811 * io.c (io_setstrbuf): defer resizing buffer string until data is 20812 read actually. 20813 20814Mon Feb 13 10:24:39 2012 Loren Segal <lsegal@soen.ca> 20815 20816 * io.c (Init_IO): use directive hack to make ARGF documentable 20817 in other tools. [ruby-core:42515][Bug #6007] 20818 20819Sun Feb 12 20:43:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20820 20821 * include/ruby/ruby.h (rb_event_hook_func_t): add argument names. 20822 20823Sun Feb 12 16:30:23 2012 Akinori MUSHA <knu@iDaemons.org> 20824 20825 * tool/merger.rb (#default_merge_branch): Add support for 20826 Subversion 1.7 which adopted a whole new working directory 20827 structure. 20828 20829Sun Feb 12 15:14:41 2012 Kazuki Tsujimoto <kazuki@callcc.net> 20830 20831 * benchmark/driver.rb: suppress unused/shadowing variable warnings. 20832 20833Sun Feb 12 03:14:40 2012 Eric Hodel <drbrain@segment7.net> 20834 20835 * vm_eval.c (check_funcall): Call respond_to? with matching arity for 20836 legacy single-argument implementations. [ruby-trunk - Bug #6000] 20837 20838Sat Feb 11 12:04:05 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20839 20840 * compile.c (defined_expr): guard the whole expression. 20841 [ruby-dev:45021][Bug#5786] 20842 20843Sat Feb 11 08:34:42 2012 Eric Hodel <drbrain@segment7.net> 20844 20845 * ext/zlib/zlib.c (rb_inflate_add_dictionary): Added 20846 Zlib::Inflate#add_dictionary to allow users to pre-specify 20847 for using during #inflate. [ruby-trunk - Feature #5937] 20848 20849Sat Feb 11 08:23:02 2012 Eric Hodel <drbrain@segment7.net> 20850 20851 * ext/zlib/zlib.c (do_inflate): Inflate more data if buffered data 20852 exists. Allows Zlib::Inflate#set_dictionary to work. 20853 [ruby-trunk - Bug #5929] 20854 20855Sat Feb 11 06:00:48 2012 NARUSE, Yui <naruse@ruby-lang.org> 20856 20857 * dir.c (fnmatch): The * needs to be escaped to avoid formatting in 20858 fnmatch comment. 20859 patched by @dalton. https://github.com/ruby/ruby/pull/91 20860 20861Fri Feb 10 03:41:31 2012 Aaron Patterson <aaron@tenderlovemaking.com> 20862 20863 * ext/psych/parser.c: removed external encoding setter, allow parser 20864 to be reused. 20865 * ext/psych/lib/psych/parser.rb: added external encoding setter. 20866 * test/psych/test_parser.rb: test parser reuse 20867 20868Fri Feb 10 01:30:41 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20869 20870 * ext/dl/dl.h (ALIGN_OF): use offsetof(). 20871 20872 * ext/dl/dl.h (DLALIGN): round up at once and get rid of overflow. 20873 20874Fri Feb 10 00:47:07 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20875 20876 * test/ruby/envutil.rb (assert_no_memory_leak): new assertion to 20877 check memory leak by invoking child ruby process and watch its 20878 memory size. 20879 20880Thu Feb 9 23:41:44 2012 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 20881 20882 * test/pathname/test_pathname.rb (test_binread): add assertion to 20883 check encoding. 20884 20885Thu Feb 9 16:48:19 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20886 20887 * ext/dl/dl.c (Init_dl): fix mangled document. 20888 20889Thu Feb 9 16:10:34 2012 NAKAMURA Usaku <usa@ruby-lang.org> 20890 20891 * test/ruby/memory_status.rb (Memory::Win32): 64bit support. 20892 20893Thu Feb 9 16:08:55 2012 NAKAMURA Usaku <usa@ruby-lang.org> 20894 20895 * ext/dl/lib/value.rb (DL::ValueUtil.{unsigned_value,signed_value}): 20896 currently pack/unpack does not accept "q!" and "Q!". 20897 20898Thu Feb 9 16:01:29 2012 NAKAMURA Usaku <usa@ruby-lang.org> 20899 20900 * ext/fiddle/conversions.c (value_to_generic): src is not guaranteed as 20901 a Bignum if the type is LONG_LONG. it may be a Fixnum if the value 20902 is small. 20903 20904Thu Feb 9 11:32:36 2012 NAKAMURA Usaku <usa@ruby-lang.org> 20905 20906 * ext/dl/lib/types.rb: Win64 support. 20907 20908Thu Feb 9 04:12:29 2012 NARUSE, Yui <naruse@ruby-lang.org> 20909 20910 * test/pathname/test_pathname.rb: not read but binread. 20911 patched by Benoit Daloze, [ruby-core:42440] [Bug #5984] 20912 20913Wed Feb 8 22:29:59 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20914 20915 * string.c (rb_str_modify_expand): fix memory leak. 20916 20917Wed Feb 8 14:06:59 2012 Hiroshi Nakamura <nahi@ruby-lang.org> 20918 20919 * ext/openssl/ossl_ssl.c: Add SSL constants and allow to unset SSL 20920 option to prevent BEAST attack. See [Bug #5353]. 20921 20922 In OpenSSL, OP_DONT_INSERT_EMPTY_FRAGMENTS is used to prevent 20923 TLS-CBC-IV vulnerability described at 20924 http://www.openssl.org/~bodo/tls-cbc.txt 20925 It's known issue of TLSv1/SSLv3 but it attracts lots of attention 20926 these days as BEAST attack. (CVE-2011-3389) 20927 20928 Until now ossl sets OP_ALL at SSLContext allocation and call 20929 SSL_CTX_set_options at connection. SSL_CTX_set_options updates the 20930 value by using |= so bits set by OP_ALL cannot be unset afterwards. 20931 20932 This commit changes to call SSL_CTX_set_options only 1 time for each 20933 SSLContext. It sets the specified value if SSLContext#options= are 20934 called and sets OP_ALL if not. 20935 20936 To help users to unset bits in OP_ALL, this commit also adds several 20937 constant to SSL such as 20938 OpenSSL::SSL::OP_DONT_INSERT_EMPTY_FRAGMENTS. These constants were 20939 not exposed in Ruby because there's no way to unset bits in OP_ALL 20940 before. 20941 20942 Following is an example to enable 0/n split for BEAST prevention. 20943 20944 ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS 20945 20946 * test/openssl/test_ssl.rb: Test above option exists. 20947 20948Wed Feb 8 13:12:02 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 20949 20950 * ext/openssl/ossl_x509name.c: Use the numerical representation of 20951 unrecognized OIDs instead of the sn "UNDEF". 20952 20953 * test/openssl/test_x509name.rb: Add tests for the fixed behavior. 20954 20955 Patch provided by Paul Kehrer, thank you! 20956 [ruby-core:41769] [Feature #5787] 20957 20958Wed Feb 8 09:49:58 2012 NARUSE, Yui <naruse@ruby-lang.org> 20959 20960 * tool/merger.rb: don't abort, update first. 20961 20962Wed Feb 8 09:47:33 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 20963 20964 * ext/openssl/ossl_asn1.c: Call INT2NUM only once for GeneralString. 20965 Thanks to Mantas Mikulenas for noticing and providing a patch! 20966 [ruby-core:42358] [Bug #5972] 20967 20968Wed Feb 8 09:19:00 2012 Martin Bosslet <Martin.Bosslet@googlemail.com> 20969 20970 * ext/openssl/ossl_cipher.c: Add warning about key as IV. 20971 20972Tue Feb 7 20:08:12 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 20973 20974 * error.c (exc_inspect): Fix typo. patch from Trent Ogren 20975 via https://github.com/ruby/ruby/pull/90 20976 20977Tue Feb 7 19:37:35 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20978 20979 * st.c: refactor packed entries using structs. 20980 20981Tue Feb 7 14:52:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 20982 20983 * st.c (st_update): table can be unpacked in the callback. 20984 20985 * st.c (st_foreach): should not yield same pair when checking 20986 after unpacking. 20987 20988Mon Feb 6 21:55:13 2012 NARUSE, Yui <naruse@ruby-lang.org> 20989 20990 * tool/merger.rb: abort if the working directory is dirty. 20991 20992 * tool/merger.rb: update the working directory after commit. 20993 20994Mon Feb 6 00:16:27 2012 NARUSE, Yui <naruse@ruby-lang.org> 20995 20996 * encoding.c (rb_enc_compatible): return ASCII-8BIT even if 2nd string 20997 is ascii only string. [ruby-core:42354] [Bug #5968] 20998 20999Fri Feb 3 07:16:47 2012 Eric Hodel <drbrain@segment7.net> 21000 21001 * lib/webrick.rb: Moved proxy rewriting to WEBrick::HTTPProxy. 21002 * lib/webrick/httpproxy.rb: Add examples of creating a proxy server 21003 and response rewriting using HTTPProxy. 21004 21005Fri Feb 3 06:53:22 2012 Eric Hodel <drbrain@segment7.net> 21006 21007 * ext/openssl/ossl_x509store.c: Add class documentation for 21008 OpenSSL::X509::Store 21009 21010Thu Feb 2 22:28:13 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 21011 21012 * test/net/http/test_https_proxy.rb 21013 (HTTPSProxyTest#test_https_proxy_authentication): 21014 add workaround to avoid to hang up without openssl. 21015 see [ruby-dev:45021][Bug #5786] 21016 21017 * test/resolv/test_dns.rb (TestResolvDNS#test_query_ipv4_address): 21018 ditto. 21019 21020Thu Feb 2 21:48:18 2012 Kouhei Sutou <kou@cozmixng.org> 21021 21022 * lib/rexml/parsers/baseparser.rb: use meaningful names. 21023 21024Thu Feb 2 21:38:52 2012 Kouhei Sutou <kou@cozmixng.org> 21025 21026 * lib/rexml/parsers/baseparser.rb, test/rexml/test_namespace.rb: 21027 fix the default xml namespace URI validation. 21028 [ruby-dev:45169] [Bug #5956] 21029 Reported by Miho Hiramatsu. Thanks!!! 21030 21031Thu Feb 2 17:51:02 2012 NARUSE, Yui <naruse@ruby-lang.org> 21032 21033 * io.c (argf_next_argv): reset ARGF.next_p on ARGV.replace. 21034 r34409 breaks replacing ARGV. 21035 [ruby-dev:45160] [Bug #5952] 21036 21037Thu Feb 2 16:21:01 2012 NAKAMURA Usaku <usa@ruby-lang.org> 21038 21039 * test/net/http/test_http.rb (TestNetHTTPKeepAlive#*): remove debug 21040 output. 21041 21042Thu Feb 2 01:24:34 2012 Yusuke Endoh <mame@tsg.ne.jp> 21043 21044 * parse.y (debug_lines, coverage): set file path encoding for coverage 21045 result. [ruby-dev:44950] 21046 21047Wed Feb 1 14:38:31 2012 Akinori MUSHA <knu@iDaemons.org> 21048 21049 * lib/tempfile.rb (Tempfile#unlink, Tempfile::Remover#call): Just 21050 call File.unlink and ignore ENOENT because existence check 21051 before unlinking does not help in terms of race condition. 21052 21053 * lib/tempfile.rb (Tempfile#unlink, Tempfile::Remover#call): My 21054 comment about thread safeness is obsolete. 21055 21056Wed Feb 1 09:50:10 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21057 21058 * doc/re.rdoc (Repetition): fix typo. reported by Ori Avtalion 21059 and patched by Zachary Scott. [Bug #5947] 21060 21061Wed Feb 1 06:38:54 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21062 21063 * io.c (argf_close): skip stdin, which should be readable again. 21064 [ruby-dev:45160] [Bug #5952] 21065 21066 * io.c (argf_readlines): reinitialize after all read to be 21067 readable again. 21068 21069Tue Jan 31 21:27:43 2012 Narihiro Nakamura <authornari@gmail.com> 21070 21071 * configure.in (HEAP_ALIGN_LOG): HEAP_ALIGN_LOG should be page 21072 size in OpenBSD. [ruby-core:42158][Bug #5901] 21073 21074 * gc.c : avoid to redefine. 21075 21076Tue Jan 31 14:27:22 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21077 21078 * test/ruby/envutil.rb (EnvUtil.invoke_ruby): yield also child pid 21079 in block form. 21080 21081Mon Jan 30 19:08:19 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21082 21083 * vm_eval.c (vm_call0): should pass block to enumerators. patched 21084 by Kazuki Tsujimoto. [ruby-dev:44961][Bug #5731] 21085 21086 * vm_eval.c (method_missing), vm_insnhelper.c (vm_call_method): 21087 ditto. patched by satoshi shiba. 21088 21089Mon Jan 30 12:31:05 2012 NAKAMURA Usaku <usa@ruby-lang.org> 21090 21091 * file.c (append_fspath): need to set the encoding to result always. 21092 21093Mon Jan 30 10:38:37 2012 NAKAMURA Usaku <usa@ruby-lang.org> 21094 21095 * test/irb/test_completion.rb: skip if cannot load irb/completion 21096 (maybe readline does not exist). 21097 21098Sun Jan 29 22:47:19 2012 Yutaka Kanemoto <kanemoto@ruby-lang.org> 21099 21100 * tool/config.{guess,sub}: updated to automake-1.11.2. 21101 21102Sun Jan 29 12:17:56 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21103 21104 * ext/readline/readline.c (readline_attempted_completion_function): 21105 respect encodings. [Bug #5941] 21106 21107Sat Jan 28 09:33:33 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 21108 21109 * win32/win32.c (rb_w32_read): fix an issue that $stdin.read doesn't 21110 terminate by CTRL-C on Windows. 21111 [ruby-dev:45149] [Bug #5812] 21112 21113Sat Jan 28 08:18:11 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 21114 21115 * test/ruby/test_thread.rb 21116 (TestThreadGroup#test_thread_timer_and_interrupt): skip exit status 21117 assertion because we cannot get signal status on Windows. 21118 21119 * win32/win32.c (CreateChild): create process group to receive the 21120 signal by GenerateConsoleCtrlEvent(). 21121 21122 * win32/win32.c (kill): use CTRL_BREAK_EVENT instead of CTRL_C_EVENT 21123 if a process group is specified. CTRL_C_EVENT signal cannot be 21124 generated for process groups for the specification. 21125 [ruby-dev:45149] [Bug #5812] 21126 21127Sat Jan 28 07:46:03 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 21128 21129 * thread_win32.c (rb_w32_wait_events_blocking): use 21130 ruby_thread_from_native() instead of GET_THREAD() because 21131 GET_THREAD() doesn't always return the current thread and 21132 WaitForMultipleObjects() at rb_w32_read() doesn't return by 21133 Thread#kill. This fixes TestQueue#test_thr_kill failure on 21134 Windows. 21135 21136 * thread_win32.c (rb_w32_wait_events): use ruby_thread_from_native() 21137 instead of GET_THREAD() for consistency with the above change. 21138 21139 * thread_win32.c (rb_w32_sleep): ditto. 21140 21141 * thread_win32.c (rb_w32_Sleep): ditto. 21142 [ruby-dev:45149] [Bug #5812] 21143 21144Sat Jan 28 07:28:48 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 21145 21146 * test/zlib/test_zlib.rb (TestZlibGzipReader#test_reader_wrap): set 21147 binmode explicitly for fixing test error on Windows. This is consistent 21148 with r34243. 21149 [ruby-dev:45149] [Bug #5812] 21150 21151Sat Jan 28 05:53:34 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21152 21153 * lib/irb/completion.rb (IRB::InputCompletor::CompletionProc): 21154 ignore non-string name modules. [ruby-core:42244][Bug #5938] 21155 21156Fri Jan 27 16:31:45 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21157 21158 * gc.c (HEAP_ALIGN, HEAP_ALIGN_MASK): DRY, let compiler calculate 21159 from HEAP_ALIGN_LOG. 21160 21161Thu Jan 26 11:03:37 2012 Eric Hodel <drbrain@segment7.net> 21162 21163 * lib/matrix.rb: Clean up extra whitespace in output documentation. 21164 21165Thu Jan 26 03:24:02 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21166 21167 * ext/io/console/console.c (io_getch): default delegating method 21168 for StringIO. https://github.com/nobu/io-console/issues/4 21169 21170 * ext/stringio/stringio.c: moved some methods to hidden modules. 21171 21172Wed Jan 25 13:27:42 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21173 21174 * file.c (rb_file_s_basename): ignore non-ascii extension in 21175 different encoding, which cannot match. 21176 21177 * file.c (rmext): no extension to strip if empty string. 21178 21179 * file.c (rb_enc_path_next, rb_enc_path_skip_prefix) 21180 (rb_enc_path_last_separator, rb_enc_path_end) 21181 (ruby_enc_find_basename, ruby_enc_find_extname): encoding-aware 21182 path handling functions. 21183 21184 * file.c (rb_home_dir, file_expand_path, rb_realpath_internal) 21185 (rb_file_s_basename, rb_file_dirname, rb_file_s_extname) 21186 (rb_file_join): should respect the encodings of arguments than 21187 file system encoding. [ruby-dev:45145] [Bug #5919] 21188 21189 * dir.c (check_dirname, ruby_glob0): ditto. 21190 21191 * ext/pathname/pathname.c (path_sub_ext): ditto. 21192 21193Tue Jan 24 14:20:42 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21194 21195 * vm.c (rb_iter_break_value): new function to break a block with 21196 the value. [ruby-dev:45132] [Feature #5895] 21197 21198Tue Jan 24 12:58:41 2012 Yukihiro Matsumoto <matz@ruby-lang.org> 21199 21200 * object.c (rb_Hash): add Kernel#Hash conversion method like 21201 Array() or Float(). a patch from Run Paint Run Run. Fix #3131 21202 21203Tue Jan 24 11:38:05 2012 NARUSE, Yui <naruse@ruby-lang.org> 21204 21205 * lib/uri/common.rb (URI.encode_www_form_component): initialize on 21206 requiring to support JRuby, which runs parallel multithreads. 21207 [ruby-core:42222] [Bug #5925] 21208 21209 * lib/uri/common.rb (URI.decode_www_form_component): initialize on 21210 21211Mon Jan 23 20:33:11 2012 Jason Kay <geniture@me.com> 21212 21213 * lib/net/http.rb (Net::HTTP#connect): Writing entire packet at 21214 once to avoid incomplete transmission. Current code using 21215 writeline was causing sub-optimal conversing with a proxy due to 21216 the connect tunnel request headers being split over multiple 21217 packets. The modification I made allows the connect request to 21218 be written as one packet, avoiding problems and optimizing the 21219 conversation. 21220 21221 https://github.com/ruby/ruby/pull/72 21222 [Feature #5460] 21223 21224Mon Jan 23 17:06:17 2012 NARUSE, Yui <naruse@ruby-lang.org> 21225 21226 * lib/uri/mailto.rb (URI::MailTo.build): follow Array#to_s change of 21227 Ruby 1.9; use Array#join. [Bug #5840] 21228 21229Mon Jan 23 16:42:28 2012 NARUSE, Yui <naruse@ruby-lang.org> 21230 21231 * io.c (extract_binmode): raise an exception if binmode/textmode 21232 is specified with both vmode and opthash. 21233 [ruby-core:42199] [Bug #5918] 21234 21235Mon Jan 23 16:35:27 2012 NARUSE, Yui <naruse@ruby-lang.org> 21236 21237 * io.c (rb_io_extract_modeenc): set ASCII-8BIT if binmode is specified 21238 with opthash. [ruby-core:42197] [Bug #5917] 21239 21240Mon Jan 23 10:08:00 2012 Kenta Murata <mrkn@cookpad.com> 21241 21242 * test/cgi/test_cgi_util.rb (test_cgi_escape_preserve_encoding): 21243 add a test for CGI::escape to preserve encoding. 21244 21245 * test/cgi/test_cgi_util.rb (test_cgi_unescape_preserve_encoding): 21246 add a test for CGI::unescape to preserve encoding. 21247 21248Mon Jan 23 00:45:34 2012 Akinori MUSHA <knu@iDaemons.org> 21249 21250 * misc/rdoc-mode.el (rdoc-imenu-create-index): Add imenu support 21251 to rdoc-mode. 21252 21253 * misc/rdoc-mode.el (rdoc-mode): Fix regexp patterns containing 21254 "\s " where CR/LF is not supposed to match. 21255 21256Sun Jan 22 15:41:26 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21257 21258 * parse.y (rb_intern3): split to registration check and new 21259 registration. 21260 21261 * parse.y (rb_intern_str): make interned string shared with the 21262 given string. 21263 21264 * parse.y (rb_intern3, rb_intern_str): check the coderange first. 21265 21266Sat Jan 21 22:21:07 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21267 21268 * include/ruby/ruby.h (FIXNUM_P): simple flag should be int. 21269 21270Sat Jan 21 21:51:19 2012 NARUSE, Yui <naruse@ruby-lang.org> 21271 21272 * encoding.c (rb_enc_compatible): fix segv on symbols. 21273 [ruby-core:42204] [Bug #5921] 21274 21275Sat Jan 21 11:43:45 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21276 21277 * dir.c (dir_chdir, check_dirname): get rid of optimization-out. 21278 21279Fri Jan 20 20:47:37 2012 Kenta Murata <mrkn@cookpad.com> 21280 21281 * lib/cgi/util.rb (CGI.escape): support a string with invalid byte 21282 sequence. [Bug #5913] 21283 21284 * test/cgi/test_cgi_util.rb 21285 (test_cgi_escape_with_invalid_byte_sequence): test for the above 21286 change. 21287 21288Fri Jan 20 17:37:37 2012 NARUSE, Yui <naruse@ruby-lang.org> 21289 21290 * vm.c (vm_exec): remove workaround for LLVM because r34278 fixes it. 21291 21292 * vm_insnhelper.c (vm_call_cfunc): ditto. 21293 21294Fri Jan 20 14:31:43 2012 NARUSE, Yui <naruse@ruby-lang.org> 21295 21296 * lib/net/http.rb (Net::HTTP#transport_request): retry a idempotent 21297 request automatically. [ruby-dev:45030] [Bug #5790] 21298 [ruby-core:41821] [Bug #5813] 21299 21300 * lib/net/http.rb (Net::HTTP#keep_alive_timeout=): added to specify 21301 the second to reconnect the TCP connection on Keep-Alive. 21302 The default value is 2 second because current servers uses 2 sec. 21303 http://ftp-admin.blogspot.com/2009/09/keepalivetimeout2.html 21304 21305 * lib/net/http.rb (Net::HTTP#begin_transport): reconnect TCP 21306 connection on keep-alive timeout. 21307 21308Thu Jan 19 07:53:09 2012 Tadayoshi Funaba <tadf@dotrb.org> 21309 21310 * ext/date/date_strptime.c: moved detector of leftover. 21311 21312Thu Jan 19 07:10:47 2012 Tadayoshi Funaba <tadf@dotrb.org> 21313 21314 * ext/date/date_parse.c: [ruby-core:42173]. 21315 21316Wed Jan 18 18:11:02 2012 Akinori MUSHA <knu@iDaemons.org> 21317 21318 * misc/rdoc-mode.el (rdoc-mode): Add provide so that requiring 21319 this library succeeds. 21320 21321Wed Jan 18 18:06:45 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21322 21323 * ext/curses/curses.c (cWindow, cMouseEvent): made typed data. 21324 21325Wed Jan 18 12:49:15 2012 Aaron Patterson <aaron@tenderlovemaking.com> 21326 21327 * ext/psych/lib/psych/visitors/to_ruby.rb: Added support for loading 21328 subclasses of String with ivars 21329 * ext/psych/lib/psych/visitors/yaml_tree.rb: Added support for dumping 21330 subclasses of String with ivars 21331 * test/psych/test_string.rb: corresponding tests 21332 21333Wed Jan 18 10:39:47 2012 Aaron Patterson <aaron@tenderlovemaking.com> 21334 21335 * ext/psych/lib/psych/visitors/to_ruby.rb: Added ability to load array 21336 subclasses with ivars. 21337 * ext/psych/lib/psych/visitors/yaml_tree.rb: Added ability to dump 21338 array subclasses with ivars. 21339 * test/psych/test_array.rb: corresponding tests 21340 21341Tue Jan 17 17:18:41 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21342 21343 * configure.in (SPT_TYPE): enable as SPT_REUSEARGV on Darwin. 21344 21345 * missing/setproctitle.c (ruby_init_setproctitle): changed prefix. 21346 21347Tue Jan 17 12:32:46 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21348 21349 * gc.c (aligned_malloc, aligned_free): covered missing defined 21350 operators and fixes for cygwin. 21351 21352Tue Jan 17 10:54:46 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21353 21354 * st.c (do_hash): it's the time to remove cast to unsigned int. 21355 21356Tue Jan 17 07:30:12 2012 NARUSE, Yui <naruse@ruby-lang.org> 21357 21358 * st.c (unpack_entries): Fix r34310: on unpacking, the position of 21359 a hash must be do_hash-ed value. 21360 21361 * st.c (add_packed_direct): ditto. 21362 21363Mon Jan 16 16:41:53 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21364 21365 * lib/optparse.rb (Regexp): fix incorrect options when casting to 21366 a Regexp, and suppress encoding option warnings. 21367 https://github.com/ruby/ruby/pull/82 21368 21369Mon Jan 16 11:22:38 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21370 21371 * win32/win32.c (rb_chsize): no need to get the current file size. 21372 21373Mon Jan 16 00:41:33 2012 Sokolov Yura <funny.falcon@gmail.com> 21374 21375 * st.c: st use function instead of macro. In my current 21376 environment (Ubuntu 11.04 32bit gcc-4.5.2) it gives 4% 21377 performance improvement. 21378 21379 https://github.com/ruby/ruby/pull/77 21380 21381Sun Jan 15 14:09:48 2012 NARUSE, Yui <naruse@ruby-lang.org> 21382 21383 * object.c (rb_inspect): raise the result is not compatible with 21384 the default external encoding. [ruby-core:42095] [Bug #5848] 21385 If the default external encoding is ASCII compatible, the encoding of 21386 inspected result must be compatible with it. 21387 If the default external encoding is ASCII incompatible, 21388 the result must be ASCII only. 21389 21390Sun Jan 15 13:21:50 2012 NARUSE, Yui <naruse@ruby-lang.org> 21391 21392 * ext/json/parser/parser.rl (json_string_unescape): workaround fix 21393 for over optimization of GCC 4.7. [ruby-core:42085] [Bug #5888] 21394 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51862 21395 21396Sat Jan 14 22:24:09 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21397 21398 * ext/dl/callback/mkcallback.rb (gencallback): suppress unused 21399 variables. 21400 21401Sat Jan 14 21:56:43 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21402 21403 * iseq.c (iseq_data_to_ary): check line info table boundary. line 21404 number 0 means no line number info is needed. [ruby-dev:45130] 21405 [Bug #5894] 21406 21407Sat Jan 14 18:24:13 2012 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 21408 21409 * error.c (exc_equal): clear rb_thread_t::errinfo when ignore 21410 an exception under rb_protect(). [ruby-core:41979] [Bug #5865] 21411 21412Sat Jan 14 12:02:55 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21413 21414 * sprintf.c (rb_enc_vsprintf): relaxed the restriction. since the 21415 implementation deeply depends on plain char, so wchar_t based 21416 encodings are not supported. 21417 21418Sat Jan 14 12:00:20 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21419 21420 * error.c (exc_equal): ignore exceptions during implicit 21421 conversion. [ruby-core:41979] [Bug #5865] 21422 21423Sat Jan 14 05:58:54 2012 Eric Hodel <drbrain@segment7.net> 21424 21425 * io.c (rb_io_s_read): Fix formatting of open_args comment. Reported 21426 by Adam Prescott. 21427 21428Fri Jan 13 18:41:19 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21429 21430 * sprintf.c (rb_enc_vsprintf): can be used for ASCII compatible 21431 encodings only. 21432 21433Fri Jan 13 18:29:06 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21434 21435 * thread.c (rb_mutex_unlock_th): simplified. 21436 21437 * thread.c (rb_barrier_waiting): fix potential overflows. 21438 21439Fri Jan 13 17:23:38 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21440 21441 * load.c (load_unlock): update loading table at once. 21442 21443Fri Jan 13 16:44:45 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21444 21445 * error.c (exc_equal): try implicit conversion for delegator. 21446 [ruby-core:41979] [Bug #5865] 21447 21448Fri Jan 13 03:46:53 2012 Akinori MUSHA <knu@iDaemons.org> 21449 21450 * lib/shellwords.rb (Shellwords#shellescape): shellescape() now 21451 stringifies the given object using to_s. 21452 21453 * lib/shellwords.rb (Shellwords#shelljoin): shelljoin() accepts 21454 non-string objects in the given array, each of which is 21455 stringified using to_s. 21456 21457 * lib/shellwords.rb: Fix rdoc markups. 21458 21459Fri Jan 13 03:38:36 2012 Akinori MUSHA <knu@iDaemons.org> 21460 21461 * lib/shellwords.rb (Shellwords#shellsplit): Fix a bug where 21462 consecutive backslashes in double quotes are all removed except 21463 the one at the tail. 21464 21465Fri Jan 13 03:28:00 2012 Luis Lavena <luislavena@gmail.com> 21466 21467 * ext/socket/extconf.rb (if ipv6): only define _WIN32_WINNT if was not 21468 previously defined. This solve warnings with multiple defines in 21469 command line with GCC 4.6.1 21470 21471Thu Jan 12 18:44:31 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21472 21473 * lib/mkmf.rb: fix r33904 and revert r33905. initialize global 21474 variables with init_mkmf before initializing constants. 21475 [ruby-dev:45124] [Bug #5879] 21476 21477Thu Jan 12 13:51:00 2012 NARUSE, Yui <naruse@ruby-lang.org> 21478 21479 * cont.c (cont_restore_0): prevent optimizing out `sp'. sp is used for 21480 reserving a memory space with ALLOCA_N for restoring machine stack 21481 stored in cont->machine_stack, but clang optimized out it (and 21482 maybe #5851 is also caused by this). 21483 This affected TestContinuation#test_check_localvars. 21484 21485 * cont.c (cont_restore_1): revert workaround introduced in r32201. 21486 21487Thu Jan 12 02:14:43 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 21488 21489 * object.c: Added examples for Object#is_a? and 21490 Object#instance_of? patched from Manoj Kumar. 21491 [Bug #5880] [ruby-core:42057] 21492 21493Thu Jan 12 00:57:48 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 21494 21495 * lib/mkmf.rb: verbose-mode can use by RM, RMDIRS, etc. 21496 (e.g. make V=1 realclean) 21497 21498Wed Jan 11 23:40:21 2012 Naohisa Goto <ngoto@gen-info.osaka-u.ac.jp> 21499 21500 * string.c (rb_str_concat): set array element after definition 21501 to fix compile error with Fujitsu C Compiler 5.6 on Solaris 10 21502 on Sparc. [Bug #5878] [ruby-dev:45123] 21503 21504Wed Jan 11 22:52:51 2012 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 21505 21506 * gc.c (ruby_mimmalloc): don't set allocated size to header. 21507 ruby_mimmalloc() doesn't increment allocated_size/allocations and 21508 decrement them in ruby_xfree() cause inconsistency. 21509 21510 * gc.c (ruby_xfree): don't decrement allocated_size/allocations if 21511 allocated size record is 0. 21512 21513Wed Jan 11 22:36:43 2012 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 21514 21515 * test/readline/test_readline.rb (test_completion_proc_empty_result): 21516 ensure clearance of Readline's line_buffer after the test. 21517 21518Tue Jan 10 21:57:38 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> 21519 21520 * ext/dbm/dbm.c (Init_dbm): fix a build error on mswin32. 21521 use `extern __declspec(dllimport)` for dll link with VC. 21522 [ruby-core:41996] [Bug #5869] 21523 21524Tue Jan 10 15:31:55 2012 NARUSE, Yui <naruse@ruby-lang.org> 21525 21526 * vm.c (vm_exec): refix r34162; suppress warning and add description. 21527 21528Tue Jan 10 15:13:58 2012 NARUSE, Yui <naruse@ruby-lang.org> 21529 21530 * ext/readline/readline.c (readline_attempted_completion_function): 21531 use rb_memerror(). 21532 21533Tue Jan 10 12:49:42 2012 NARUSE, Yui <naruse@ruby-lang.org> 21534 21535 * gc.c: in fact, i686-linux doesn't need to define _XOPEN_SOURCE 600. 21536 21537Tue Jan 10 12:44:11 2012 NARUSE, Yui <naruse@ruby-lang.org> 21538 21539 * gc.c (ruby_mimmalloc): defined for objects need not rb_objspace, 21540 but should return pointer suitable for ruby_xfree; 21541 main vm and main thread. 21542 patched by Sokolov Yura. https://github.com/ruby/ruby/pull/79 21543 21544 * internal.h: ditto. 21545 21546 * vm.c (Init_BareVM): use ruby_mimmalloc. 21547 21548 * ext/dl/cfunc.c: #include <ruby/util.h>. 21549 21550 * ext/syslog/syslog.c: use xfree because it is allocated by 21551 ruby_strdup. 21552 21553Tue Jan 10 12:13:56 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 21554 21555 * ext/readline/readline.c (readline_attempted_completion_function): 21556 fix compile error. 21557 21558Tue Jan 10 10:41:11 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21559 21560 * ext/readline/readline.c (readline_attempted_completion_function): 21561 empty completion result does not mean memory error. 21562 21563Tue Jan 10 02:19:22 2012 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 21564 21565 * test/ruby/test_io.rb (test_autoclose_true_closed_by_finalizer, 21566 test_autoclose_true_closed_by_finalizer): skip if IO objects are 21567 not recycled yet. [ruby-dev:45098] [Bug #5850] 21568 21569Tue Jan 10 00:41:28 2012 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 21570 21571 * lib/tempfile.rb (Tempfile#_close): clear @tempfile and @data[1] even 21572 when exception is raised at @tempfile.close. [ruby-dev:45113] 21573 21574 * lib/tempfile.rb (Tempfile#unlink): fix a typo. 21575 21576Tue Jan 10 00:32:17 2012 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 21577 21578 * gc.c (run_finalizer): clear rb_thread_t::errinfo when ignore 21579 an exception under rb_protect(). [ruby-dev:45113] 21580 21581Mon Jan 9 23:37:43 2012 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 21582 21583 * ext/readline/readline.c (readline_attempted_completion_function): 21584 fix typos. 21585 21586Mon Jan 9 20:55:34 2012 Narihiro Nakamura <authornari@gmail.com> 21587 21588 * gc.c : don't embed struct heaps_slot to a heap block because it 21589 can causes copy-on-write of memory page on heap block when its 21590 free_next is rewritten. 21591 21592Mon Jan 9 20:26:33 2012 Tanaka Akira <akr@fsij.org> 21593 21594 * ext/pathname/pathname.c (path_entries): add document suggested by 21595 the thread [ruby-core:41959] [Bug #5859]. 21596 21597Mon Jan 9 20:14:13 2012 Tanaka Akira <akr@fsij.org> 21598 21599 * ext/socket/lib/socket.rb (family_addrinfo): don't require protocol 21600 equality. For example, protocol 0 and IPPROTO_TCP is not problem 21601 for TCP. 21602 21603Mon Jan 9 20:08:52 2012 Tanaka Akira <akr@fsij.org> 21604 21605 * ext/socket/lib/socket.rb (family_addrinfo): return the given 21606 addrinfo object. 21607 Patch by Ippei Obayashi. [ruby-dev:45095] [Bug #5845] 21608 21609Mon Jan 9 19:40:20 2012 NAKAMURA Usaku <usa@ruby-lang.org> 21610 21611 * test/zlib/test_zlib.rb (TestZlibGzipWriter#test_writer_wrap): set 21612 binmode explicitly. 21613 21614Mon Jan 9 14:42:41 2012 Narihiro Nakamura <authornari@gmail.com> 21615 21616 * gc.c: free_slots is changed Singly linked list. clear 21617 free_slots before sweep. 21618 21619Mon Jan 9 07:46:17 2012 NARUSE, Yui <naruse@ruby-lang.org> 21620 21621 * gc.c: i686-linux needs to define _XOPEN_SOURCE 600 for posix_memalign. 21622 21623Mon Jan 9 04:24:59 2012 NARUSE, Yui <naruse@ruby-lang.org> 21624 21625 * gc.c (rb_objspace_free): global_List is allocated with xmalloc. 21626 patched by Sokolov Yura. https://github.com/ruby/ruby/pull/78 21627 21628 * dln_find.c: remove useless replacement of free. 21629 21630 * ext/readline/readline.c (readline_attempted_completion_function): 21631 strings for readline must allocated with malloc. 21632 21633 * process.c (run_exec_dup2): use free; see also r20950. 21634 21635 * re.c (onig_new_with_source): use malloc for oniguruma. 21636 21637 * vm.c (ruby_vm_destruct): use free for VMs. 21638 21639 * vm.c (thread_free): use free for threads. 21640 21641Mon Jan 9 04:24:59 2012 NARUSE, Yui <naruse@ruby-lang.org> 21642 21643 * dln_find.c: remove useless replacement of free. 21644 21645 * ext/readline/readline.c (filename_completion_proc_call): 21646 matches should use xfree. 21647 21648 * ext/readline/readline.c (username_completion_proc_call): ditto. 21649 21650Mon Jan 9 01:12:35 2012 NARUSE, Yui <naruse@ruby-lang.org> 21651 21652 * numeric.c (rb_enc_uint_char): raise RangeError when added codepoint 21653 is invalid. [Feature #5855] [Bug #5863] [Bug #5864] 21654 21655 * string.c (rb_str_concat): ditto. 21656 21657 * string.c (rb_str_concat): set encoding as ASCII-8BIT when the string 21658 is US-ASCII and the argument is an integer greater than 127. 21659 21660 * regenc.c (onigenc_mb2_code_to_mbclen): rearrange error code. 21661 21662 * enc/euc_jp.c (code_to_mbclen): ditto. 21663 21664 * enc/shift_jis.c (code_to_mbclen): ditto. 21665 21666Sun Jan 8 20:31:45 2012 Narihiro Nakamura <narihiro@netlab.jp> 21667 21668 * gc.c : consider header bytes which are used by malloc. 21669 21670Sun Jan 8 11:54:43 2012 Narihiro Nakamura <authornari@gmail.com> 21671 21672 * gc.c (aligned_free): support MinGW. Patch by Hiroshi Shirosaki. 21673 21674Sun Jan 8 11:43:05 2012 Narihiro Nakamura <authornari@gmail.com> 21675 21676 * gc.c (slot_sweep): add a assertion instead of a debug print. 21677 21678Sun Jan 8 01:18:19 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 21679 21680 * test/-ext-/old_thread_select/test_old_thread_select.rb: 21681 avoid platform bug. [Bug #5858] [ruby-dev:45108] 21682 21683Sun Jan 8 00:46:34 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 21684 21685 * gc.c: get rid of implicit narrowing conversion. 21686 21687Sun Jan 8 00:10:10 2012 NARUSE, Yui <naruse@ruby-lang.org> 21688 21689 * configure.in: check posix_memalign(3) and memalign(3). 21690 21691 * gc.c (aligned_malloc): use configure's result instead of 21692 _POSIX_C_SOURCE and _XOPEN_SOURCE because they can't be used 21693 to check availability at least on FreeBSD. 21694 21695Sat Jan 7 22:25:50 2012 Narihiro Nakamura <authornari@gmail.com> 21696 21697 * gc.c: use Bitmap Marking algorithm to avoid copy-on-write of 21698 memory pages. See [ruby-dev:45085] [Feature #5839] 21699 [ruby-core:41916]. 21700 21701 * include/ruby/ruby.h : FL_MARK rename to FL_RESERVED1. 21702 21703 * node.h : ditto. 21704 21705 * debug.c : ditto. 21706 21707 * object.c (rb_obj_clone): FL_MARK move to a bitmap. 21708 21709 * class.c (rb_singleton_class_clone): ditto. 21710 21711Sat Jan 7 00:47:07 2012 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 21712 21713 * configure.in: always define CANONICALIZATION_FOR_MATHN. 21714 [ruby-dev:45100] [Bug #5852] 21715 21716Fri Jan 6 23:11:20 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 21717 21718 * include/ruby/version.h: RUBY_API_VERSION 2.0.0 21719 21720Fri Jan 6 12:24:11 2012 NARUSE, Yui <naruse@ruby-lang.org> 21721 21722 * object.c (rb_inspect): raises Encoding::CompatibilityError if the 21723 result is incompatible with the default external encoding. 21724 [ruby-core:41931] [Bug #5848] 21725 21726Thu Jan 5 15:26:15 2012 NAKAMURA Usaku <usa@ruby-lang.org> 21727 21728 * win32/win32.c (check_valid_dir): strict checking of root. 21729 GetDriveType() succeeds with non root directory as the argument, 21730 even if MSDN says that the API needs the root directory. 21731 this patch fixes a failure of test/ruby/test_file_exhaustive.rb. 21732 21733Thu Jan 5 12:15:55 2012 NARUSE, Yui <naruse@ruby-lang.org> 21734 21735 * file.c (rb_file_join): separator is appended by array length - 1 21736 times. patched by Benoit Daloze [ruby-core:41901] [Bug #5841] 21737 21738Thu Jan 5 11:47:54 2012 NARUSE, Yui <naruse@ruby-lang.org> 21739 21740 * lib/uri/common.rb (URI::Parser#initialize_regexp): 21741 use \A \z instead of ^ $. [Bug #5843] 21742 21743Wed Jan 4 17:55:53 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 21744 21745 * array.c (rb_ary_sample): add example for Array#sample 21746 based on patch from https://github.com/ruby/ruby/pull/74 21747 21748Wed Jan 4 14:24:33 2012 Nobuyoshi Nakada <nobu@ruby-lang.org> 21749 21750 * string.c (str_nth_len): count ascii-only run at the end. this 21751 bug appears only when single-byte-optimization is disabled due 21752 to unknown coderange. [ruby-core:41896] [Bug #5836] 21753 21754Wed Jan 4 11:32:07 2012 NAKAMURA Usaku <usa@ruby-lang.org> 21755 21756 * win32/win32.c (check_valid_dir): special case for a root directory. 21757 Reported by Masateru OKAMOTO at [Bug #5819]. 21758 21759Wed Jan 4 00:19:54 2012 Kouhei Sutou <kou@cozmixng.org> 21760 21761 * lib/rexml/parsers/baseparser.rb: use private instead of _xxx 21762 method name. This is Ruby code not Python code. 21763 refs #5696 21764 21765Tue Jan 3 23:57:37 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 21766 21767 * lib/rexml/parsers/baseparser.rb: rexml BaseParser uses 21768 instance_eval unnecessarily on listener add. 21769 patch from Charles Nutter. [Bug #5696] [ruby-core:41437] 21770 21771Tue Jan 3 20:44:13 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 21772 21773 * README: add comment for Git user. patch from Arun Agrawal. 21774 * README.ja: ditto. 21775 21776Tue Jan 3 15:58:22 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 21777 21778 * thread.c: changed documentation for "thread-local" variables. 21779 patch from Julien Ammous. 21780 21781Tue Jan 3 15:50:12 2012 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 21782 21783 * process.c: Fix typo. patch from Aviv Ben-Yosef. 21784 21785Tue Jan 3 13:43:37 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 21786 21787 * tool/merger.rb: allow r0123 style revision number. 21788 21789Tue Jan 3 11:17:55 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 21790 21791 * tool/merger.rb (#version_up): version.h date should be Japanese 21792 locale date. 21793 21794Mon Jan 2 22:08:00 2012 Akinori MUSHA <knu@iDaemons.org> 21795 21796 * tool/file2lastrev.rb (VCS::detect): Add support for Subversion 21797 1.7 which adopted a whole new working directory structure. 21798 21799 * tool/file2lastrev.rb (VCS::detect): Simply use .each instead of 21800 .sort.reverse_each which looks too arbitrary. If you want SVN 21801 to be tried first, then you just have to register it first as it 21802 is right now. 21803 21804Mon Jan 2 20:53:36 2012 Tanaka Akira <akr@fsij.org> 21805 21806 * lib/securerandom.rb (random_bytes): use IO#read instead of 21807 IO#readpartial to make the intent more clear. 21808 21809Mon Jan 2 15:26:39 2012 Kazuki Tsujimoto <kazuki@callcc.net> 21810 21811 * test/ruby/test_object.rb (test_send_with_block): add a normal case. 21812 21813Mon Jan 2 15:18:54 2012 Kazuki Tsujimoto <kazuki@callcc.net> 21814 21815 * test/ruby/test_object.rb (test_send_with_block): moved from 21816 bootstraptest/test_flow.rb. 21817 21818Mon Jan 2 15:10:11 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 21819 21820 * lib/test/unit/parallel.rb: use pack("m0") instead of 21821 pack("m").gsub("\n",""). 21822 * lib/test/unit.rb (Test::Unit::Runner::Worker#run): ditto. 21823 21824Mon Jan 2 15:05:09 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 21825 21826 * lib/test/unit.rb (Test::Unit::Runner::Worker#run): use 21827 File.basename with suffix instead of gsub. 21828 21829Mon Jan 2 14:55:28 2012 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 21830 21831 * lib/test/unit.rb (Test::Unit::Runner#_run_parallel): find may 21832 return nil and nil can not dup. 21833 21834Sun Jan 1 12:23:10 2012 Akinori MUSHA <knu@iDaemons.org> 21835 21836 * lib/shellwords.rb (Shellwords#shellescape): Drop the //n flag 21837 that only causes warnings with no real effect. [Bug #5637] 21838 21839Sat Dec 31 06:28:37 2011 NARUSE, Yui <naruse@ruby-lang.org> 21840 21841 * thread.c (rb_barrier_waiting): save the number of waiting threads 21842 in RBASIC()->flags. [ruby-dev:45002] [Bug #5768] 21843 21844 * thread.c (rb_barrier_wait): increment and decrement around 21845 rb_mutex_lock, and use rb_barrier_waiting(). 21846 21847 * thread.c (rb_barrier_release): use rb_barrier_waiting(). 21848 21849 * thread.c (rb_barrier_destroy): ditto. 21850 21851Mon Dec 26 17:20:10 2011 NARUSE, Yui <naruse@ruby-lang.org> 21852 21853 * vm.c (vm_exec): add guard to prevent optimization for LLVM clang. 21854 21855Fri Dec 30 17:01:12 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 21856 21857 * vm_eval.c (rb_f_send): fix obj.send() documentation issue. 21858 [Bug #5125] [ruby-core:38633] 21859 21860Thu Dec 29 22:36:16 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 21861 21862 * lib/test/unit.rb (Test::Unit::Runner::Worker#_run_parallels): fix 21863 premature exit when all workers' status are :ready or :prepare. 21864 [ruby-dev:45061] [Bug #5822] 21865 21866Thu Dec 29 01:51:13 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 21867 21868 * include/ruby/ruby.h: fix #error pragma. LLP64 platform is supported. 21869 21870 * include/ruby/st.h: ditto. 21871 21872Wed Dec 28 11:22:45 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 21873 21874 * lib/fileutils.rb (FileUtils::Entry_#entries): use utility method 21875 instead of typoed regexp. [ruby-core:41829] [Bug #5817] 21876 21877Wed Dec 28 02:08:04 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 21878 21879 * vm_insnhelper.c (unknown_keyword_error): add GC guard to prevent 21880 intermediate object from GC. 21881 21882Tue Dec 27 22:34:54 2011 Shota Fukumori <sorah@tubusu.net> 21883 21884 * lib/test/unit.rb (Worker#close): "closing IO if IO is closed" 21885 should be "closing IO if IO isn't closed" 21886 21887Tue Dec 27 22:04:27 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 21888 21889 * st.c (st_update): new function to lookup the given key and 21890 update the value. [ruby-dev:44998] 21891 21892Tue Dec 27 21:17:33 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 21893 21894 * node.h (rb_args_info): change pre_args_num and post_args_num as 21895 int, to match with rb_iseq_t. 21896 21897 * parse.y (new_args_gen): check overflow. 21898 21899Mon Dec 26 22:38:35 2011 Yusuke Endoh <mame@tsg.ne.jp> 21900 21901 * vm_insnhelper.c (unknown_keyword_error): make it kind a error 21902 message when unknown keyword is given. It require more work. 21903 See [ruby-core:40518] and [ruby-core:40541] in detail. 21904 21905Mon Dec 26 22:31:07 2011 Yusuke Endoh <mame@tsg.ne.jp> 21906 21907 * vm_core.h (struct rb_iseq_struct), compile.c (iseq_set_arguments), 21908 iseq.c (rb_iseq_parameters), vm_insnhelper.c 21909 (vm_callee_setup_arg_complex): support Method#parameters for keyword 21910 arguments. The provisional spec is what Benoit Daloze proposed. 21911 [ruby-core:40541] 21912 21913 * test/ruby/test_keyword.rb: add a test for above. 21914 21915Mon Dec 26 22:15:27 2011 Yusuke Endoh <mame@tsg.ne.jp> 21916 21917 * vm_core.h (struct rb_iseq_struct), compile.c (iseq_set_arguments, 21918 iseq_compile_each), vm_insnhelper.c (vm_callee_setup_arg_complex): 21919 implement keyword arguments. See [ruby-core:40290] 21920 The feature is promised to be included in 2.0, but the detail spec 21921 is still under discussion; this commit is a springboard for further 21922 discussion. Please try it and give us feedback. 21923 This commit includes fixes for some problems reported by Benoit 21924 Daloze <eregontp AT gmail.com> [ruby-core:40518] and Marc-Andre 21925 Lafortune <ruby-core-mailing-list AT marc-andre.ca> 21926 [ruby-core:41772]. 21927 21928 * iseq.c (iseq_free, prepare_iseq_build): bookkeeping. 21929 21930 * test/ruby/test_keyword.rb: add tests for keyword arguments. 21931 21932 * test/ripper/dummyparser.rb (class DummyParser): temporal fix for 21933 ripper test. 21934 21935Mon Dec 26 22:00:17 2011 Yusuke Endoh <mame@tsg.ne.jp> 21936 21937 * node.h, node.c, parse.y: implement a parser part for keyword 21938 arguments. 21939 This is a preparation for keyword argument (see [ruby-core:40290]). 21940 21941 * gc.c (gc_mark_children): bookkeeping. 21942 21943Mon Dec 26 21:03:18 2011 Yusuke Endoh <mame@tsg.ne.jp> 21944 21945 * node.h, parse.y (new_args_gen), compile.c (iseq_set_arguments): use 21946 struct rb_args_info instead of NODEs. 21947 This is a preparation for keyword argument (see [ruby-core:40290]). 21948 21949 * node.c (dump_node), gc.c (gc_mark_children, obj_free): bookkeeping. 21950 21951Mon Dec 26 20:59:51 2011 Yusuke Endoh <mame@tsg.ne.jp> 21952 21953 * node.h, parse.y (lambda, f_larglist): remove NEW_LAMBDA hack. 21954 This is a preparation for keyword argument (see [ruby-core:40290]). 21955 21956Mon Dec 26 22:01:19 2011 Hiroshi Shirosaki <h.shirosaki@gmail.com> 21957 21958 * io.c (rb_sys_fail_path): move the definition. 21959 Move above for using it in set_binary_mode_with_seek_cur(). 21960 21961 * io.c (set_binary_mode_with_seek_cur): fix improper seek cursor. 21962 Seeking file cursor with setting binary mode has possibility to 21963 cause infinite loop. Fixed the bug and refined error handling. 21964 Introduced at r34043. 21965 21966 And cleanups as below. 21967 Remove unnecessary parentheses of `fptr`. 21968 Use return value of setmode(). 21969 21970 * test/ruby/test_io_m17n.rb 21971 (TestIO_M17N#test_seek_with_setting_binmode): add a test for above. 21972 [ruby-core:41671] [Bug #5714] 21973 21974Mon Dec 26 17:01:14 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 21975 21976 * common.mk (LIBRUBY_A): depends on main.o since r33774. 21977 [ruby-core:41786] [Bug #5796] 21978 21979Mon Dec 26 13:07:08 2011 NAKAMURA Usaku <usa@ruby-lang.org> 21980 21981 * test/ruby/test_io.rb (TestIO#test_autoclose): Tempfile.new doesn't 21982 accept the block argument. 21983 21984Mon Dec 26 13:06:52 2011 Shota Fukumori <sorah@tubusu.net> 21985 21986 * lib/test/unit.rb: Avoid zombie processes on "--separate" option 21987 added at r34121. 21988 21989Mon Dec 26 04:01:23 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 21990 21991 * ext/openssl/ossl_cipher.c: Update and complete documentation. 21992 21993Sun Dec 25 23:16:11 2011 Shota Fukumori <sorah@tubusu.net> 21994 21995 * test/testunit/test_parallel.rb (test_separate): Test for "--separate" 21996 option (r34121) 21997 21998Sun Dec 25 22:39:49 2011 Shota Fukumori <sorah@tubusu.net> 21999 22000 * lib/test/unit.rb (_run_parallel): 22001 New option "--separate" for test/unit; when running tests with this 22002 option, a job process will be restarted after one test file has done. 22003 This means all test files will run with separated process. 22004 22005 * lib/test/unit/parallel.rb: Fix for above. Now parallel.rb puts 22006 "ready!" for first ready, "ready" for afters. 22007 22008Sun Dec 25 00:02:15 2011 Luis Lavena <luislavena@gmail.com> 22009 22010 * configure.in: change --with-ntver to --with-winnt-ver to be more 22011 descriptive in the context. [ruby-core:41794] 22012 22013Sat Dec 24 23:25:15 2011 Luis Lavena <luislavena@gmail.com> 22014 22015 * configure.in: add --with-ntver option to match win32/configure.bat 22016 functionality. Set 0x0501 as default. [ruby-core:35010] 22017 [ruby-core:35035] 22018 22019Sat Dec 24 12:38:53 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22020 22021 * proc.c (proc_call): get rid of optimization-out by clang. 22022 22023 * proc.c (rb_proc_call, rb_proc_call_with_block): ditto. 22024 22025Sat Dec 24 10:56:32 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22026 22027 * ext/readline/readline.c (readline_readline): check if outstream 22028 is closed to get rid of a bug of readline 6. [ruby-dev:45043] 22029 [Bug #5803] 22030 22031Sat Dec 24 06:59:49 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22032 22033 * test/readline/test_readline.rb (test_line_buffer__point): use 22034 lambda not to exit entire method by "return". or "next" for 22035 proc. [ruby-dev:45042] [Bug #5802] 22036 22037Sat Dec 24 01:20:39 2011 Kazuki Tsujimoto <kazuki@callcc.net> 22038 22039 * vm_eval.c (send_internal): PASS_PASSED_BLOCK_TH must be placed 22040 just before calling rb_call0. 22041 22042 * bootstraptest/test_flow.rb: add a test for above. 22043 22044Sat Dec 24 00:55:16 2011 Tanaka Akira <akr@fsij.org> 22045 22046 * lib/tempfile.rb (Tempfile#initialize): warn if a block is given. 22047 22048Fri Dec 23 16:14:30 2011 TAKAO Kouji <kouji@takao7.net> 22049 22050 * ext/readline/readline.c (readline_attempted_completion_function): 22051 in Readline module with GNU Readline 6 case, Readline module 22052 resets completion_append_character to " ", after it executes 22053 completion. So, Readline module stores 22054 completion_append_character, and Readline module always sets it 22055 after Readline module executes completion. [ruby-dev:43456] 22056 [Feature #4635] 22057 22058Fri Dec 23 15:59:05 2011 TAKAO Kouji <kouji@takao7.net> 22059 22060 * ext/readline/readline.c (Init_readline): libedit check 22061 rl_getc_function only when rl_initialize() is called, and 22062 using_history() call rl_initialize(). This assignment should be 22063 placed before using_history(). [ruby-core:40641] [Bug #5539] 22064 22065Fri Dec 23 10:14:47 2011 Tanaka Akira <akr@fsij.org> 22066 22067 * test/thread/test_queue.rb (test_thr_kill): show the number of loop 22068 run when the test failed. 22069 22070Fri Dec 23 09:23:48 2011 Tanaka Akira <akr@fsij.org> 22071 22072 * test/test_pty.rb (test_pty_check_default): call PTY.check until 22073 "cat" command is finished. 22074 22075Fri Dec 23 06:03:00 2011 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 22076 22077 * common.mk: add "check succeeded" message. 22078 22079 * README, README.ja: follow above change. 22080 22081Fri Dec 23 06:00:39 2011 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 22082 22083 * ext/bigdecimal/bigdecimal.h: add satisfy cc-mode comment. 22084 * util.c: ditto. 22085 22086Fri Dec 23 00:08:25 2011 Tanaka Akira <akr@fsij.org> 22087 22088 * test/test_pty.rb (test_pty_check_default): "cat" may not terminated 22089 in the 0.1 second. 22090 22091Thu Dec 22 23:37:25 2011 Tanaka Akira <akr@fsij.org> 22092 22093 * test/ruby/test_thread.rb (test_condvar_timed_wait): don't test the 22094 maximum sleep time. Ruby is not a real-time system. 22095 22096Thu Dec 22 22:37:45 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 22097 22098 * thread_pthread.c (ping_signal_thread_list): remove return value. 22099 * thread_pthread.c (check_signal_thread_list): add a new function to 22100 check if signal thread list is empty. 22101 * thread_pthread.c (thread_timer): check signal thread list after 22102 timer_thread_function(). main thread might be added into signal thread 22103 list during timer_thread_function(). 22104 22105Thu Dec 22 00:40:24 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 22106 22107 * ext/bigdecimal/bigdecimal.c (VpMult, VpCtoV, VpSqrt): remove assigned 22108 but unused variables. 22109 22110Wed Dec 21 18:28:22 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22111 22112 * common.mk (newline.c, miniprelude.c): revert r33949 because the change 22113 broke mswin build, and the changer said no reason about the change. 22114 [ruby-dev:45016] [Bug #5783] 22115 22116Wed Dec 21 12:35:24 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22117 22118 * ext/bigdecimal/bigdecimal.c (BigDecimal_s_allocate): follow 22119 Allocation Framework. [Bug #5775] 22120 22121Wed Dec 21 02:25:36 2011 Aaron Patterson <aaron@tenderlovemaking.com> 22122 22123 * ext/psych/emitter.c: fixing clang warnings. Thanks Joey! 22124 22125Wed Dec 21 01:06:00 2011 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 22126 22127 * ext/bigdecimal/README: Update redmine.ruby-lang.org to bugs.ruby-lang.org 22128 * ext/socket/ancdata.c: ditto 22129 * test/-ext-/wait_for_single_fd/test_wait_for_single_fd.rb: ditto 22130 * test/syck/test_yaml.rb: ditto 22131 * doc/ChangeLog-1.9.3: ditto 22132 22133Tue Dec 20 23:50:12 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 22134 22135 * PStore content update perf optimization. Patch by Masaki Matsushita. 22136 See #5248. 22137 22138 * lib/pstore.rb (save_data): 22139 22140 * Delete inadequate Marshal check. 22141 22142 * Deferred file truncation: when writing the new content, truncate 22143 the saved file to the data size after writing the data, instead of 22144 truncating whole bytes before writing data. 22145 22146 * Deferred MD5 calculation: when comparing MD5 hash to check the 22147 content modification, calculate MD5 hash of new data iif the 22148 content length is differ from the old one. 22149 22150 * Compare content size with String#bytesize instead of String#size. 22151 22152Tue Dec 20 21:00:30 2011 Tadayoshi Funaba <tadf@dotrb.org> 22153 22154 * ext/date/date_core.c: uses to_integer instead. 22155 * test/date/test_switch_hitter.rb: added a test. 22156 22157Tue Dec 20 15:04:18 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 22158 22159 * Make sure to clear $! when ignoring an exception 22160 22161 * ext/openssl/ossl.c (ossl_pem_passwd_cb0, ossl_verify_cb): 22162 pem_passwd_cb and verify_cb ignores the exception raised in a 22163 callback proc so it should clear $! for subsequent execution. 22164 22165 That's said, both subsequent processes for pem_passwd_cb and 22166 verify_cb raises another exception before leaking $! to Ruby world. 22167 We cannot test this fix in Ruby land. 22168 22169 * test/openssl/test_pkey_rsa.rb 22170 (test_read_private_key_pem_pw_exception): Test for pem_passwd_cb + 22171 exception. 22172 22173Tue Dec 20 11:49:13 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22174 22175 * test/date/test_date_base.rb (test_jd): tests for 22176 [ruby-dev:45008]. 22177 22178Tue Dec 20 10:20:48 2011 NARUSE, Yui <naruse@ruby-lang.org> 22179 22180 * ext/date/date_core.c (wholenum): fix the type of the return value. 22181 22182Tue Dec 20 05:03:24 2011 Eric Hodel <drbrain@segment7.net> 22183 22184 * README.ja: Update redmine.ruby-lang.org to bugs.ruby-lang.org 22185 * README: ditto 22186 * common.mk: ditto 22187 * man/erb.1: ditto 22188 * man/irb.1: ditto 22189 * man/ri.1: ditto 22190 * man/ruby.1: ditto 22191 * sparc.c: ditto 22192 * tool/install-sh: ditto 22193 22194Tue Dec 20 02:15:18 2011 Tadayoshi Funaba <tadf@dotrb.org> 22195 22196 * ext/date/date_core.c: [ruby-dev:45008]. 22197 22198Sun Dec 18 18:52:37 2011 Naohisa Goto <ngotogenome@gmail.com> 22199 22200 * vm.c (vm_define_method): improve guard of iseq from GC. Fix 22201 failure or segmentation fault in test_singleton_method(TestGc) 22202 on sparc Solaris10 compiled with Oracle Solaris Studio 12.2. 22203 [Bug #5762] [ruby-dev:45000] [Bug #4178] 22204 22205Sun Dec 18 14:34:31 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22206 22207 * ext/bigdecimal/bigdecimal.c (Init_bigdecimal): does not follow 22208 allocation framework right now. [ruby-core:41710] [Bug #5773] 22209 22210Sun Dec 18 12:42:48 2011 Aaron Patterson <aaron@tenderlovemaking.com> 22211 22212 * ext/psych/lib/psych/visitors/to_ruby.rb: BigDecimals can be restored 22213 from YAML. 22214 * ext/psych/lib/psych/visitors/yaml_tree.rb: BigDecimals can be dumped 22215 to YAML. 22216 * test/psych/test_numeric.rb: tests for BigDecimal serialization 22217 22218Sun Dec 18 12:03:13 2011 Aaron Patterson <aaron@tenderlovemaking.com> 22219 22220 * ext/psych/lib/psych/scalar_scanner.rb: Strings that look like dates 22221 should be treated as strings and not dates. 22222 22223 * test/psych/test_scalar_scanner.rb: corresponding tests. 22224 22225Sun Dec 18 09:43:21 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 22226 22227 * test/thread/test_queue.rb (test_thr_kill): extend timeout. 22228 this test takes a long time at slow machine. 22229 22230Sun Dec 18 09:36:51 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 22231 22232 * test/ruby/envutil.rb (invoke_ruby): remove :timeout option before 22233 pass it to Kernel#spawn. 22234 22235Fri Dec 16 17:18:38 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22236 22237 * README, README.ja: 'make check' is preferable to 'make test'. 22238 22239Thu Dec 15 23:16:13 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 22240 22241 * error.c (builtin_type_name): don't return pointer to the buffer of 22242 temporary String object. 22243 22244Thu Dec 15 17:56:58 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22245 22246 * io.c (argf_type): make typed data. 22247 22248Thu Dec 15 17:40:28 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22249 22250 * error.c (rb_check_type): fix typo. 22251 22252Thu Dec 15 14:48:35 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22253 22254 * ext/strscan/strscan.c: use typed data with 22255 onig_region_memsize(). 22256 22257Thu Dec 15 14:33:33 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22258 22259 * error.c (rb_check_typeddata): refine error message with 22260 including expected struct name. 22261 22262Thu Dec 15 13:15:51 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22263 22264 * regcomp.c (onig_region_memsize): implemented for memsize_of(). 22265 22266 * ext/objspace/objspace.c (memsize_of): use it. 22267 22268Thu Dec 15 10:44:54 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22269 22270 * array.c (rb_ary_reject_bang, rb_ary_delete_if): update rdoc. 22271 documentation from Thomas Leitner <t_leitner AT gmx.at> in 22272 [ruby-core:41616]. [Bug #5752] 22273 22274Thu Dec 15 10:10:43 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22275 22276 * test/ruby/test_require.rb (test_race_exception): get rid of 22277 not-guaranteed timing issue. [ruby-core:41655] [Bug #5754] 22278 22279Wed Dec 14 21:58:42 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22280 22281 * test/ruby/test_io_m17n.rb 22282 (TestIO_M17N#test_{read_with_binmode_and_get[cs]}): only for Windows. 22283 22284Wed Dec 14 19:57:23 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22285 22286 * common.mk,Makefile.in,win32/Makefile.sub (ECHO1): move platform 22287 specific hack from common.mk to Makefile.in (and win32/Makefile.sub). 22288 [Bug #5711] 22289 22290 * lib/mkmf.rb: we can generate Makefile as we like. 22291 22292Wed Dec 14 19:22:33 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22293 22294 * win32/win32.c, include/ruby/win32.h (rb_w32_fd_is_text): new function. 22295 22296 * win32/win32.c (init_stdhandle): set default mode of stdin as binmode. 22297 22298 * io.c (set_binary_mode_with_seek_cur): new function to replace 22299 SET_BINARY_MODE_WITH_SEEK_CUR macro. now returns previous mode of the 22300 fd and take care of LF in rbuf. 22301 22302 * io.c (do_writeconv): set text mode when needed. 22303 22304 * io.c (io_read): need to change the mode of the IO to binmode 22305 temporally when the length for IO#read, because IO#read with length 22306 must behave so. 22307 22308 * test/ruby/test_io_m17n.rb (TestIO_M17N#test_{read_with_length, 22309 read_with_length_binmode,get[cs]_and_read_with_binmode, 22310 read_with_binmode_and_get[cs],read_write_with_binmode}): tests for 22311 above changes. 22312 22313 all patches are written by Hiroshi Shirosaki. [ruby-core:41496] 22314 [Feature #5714] 22315 22316Wed Dec 14 15:28:31 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22317 22318 * transcode.c (str_encode): about the extension of :fallback 22319 option since 1.9.3. 22320 22321Wed Dec 14 12:19:59 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22322 22323 * load.c (load_unlock): release loading barrier and then remove it 22324 from loading_table if it is not in-use. [Bug #5754] 22325 22326 * thread.c (rb_barrier_release, rb_barrier_destroy): return 22327 whether any other threads are waiting on it. 22328 22329Wed Dec 14 11:23:45 2011 NARUSE, Yui <naruse@ruby-lang.org> 22330 22331 * thread_pthread.c (ubf_select): call rb_thread_wakeup_timer_thread() 22332 only when it is not timer_thread. [Bug #5757] [ruby-dev:44985] 22333 patched by Tomoyuki Chikanaga. 22334 22335Wed Dec 14 10:20:08 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22336 22337 * load.c (load_lock): delete the loading barrier if it has been 22338 destroyed. 22339 22340 * thread.c (rb_barrier_wait): return nil for recursive lock 22341 instead of false, to distinguish it from destroyed barrier. 22342 22343Wed Dec 14 01:24:55 2011 okkez <okkez000@gmail.com> 22344 22345 * thread_pthread.c (rb_thread_create_timer_thread): fix memory 22346 leak. [ruby-dev:44904] [Bug #5688] 22347 22348Wed Dec 14 00:01:15 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22349 22350 * parse.y (primary): point method name line. [ruby-core:40936] 22351 [Bug #5614] 22352 22353Tue Dec 13 23:43:48 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 22354 22355 * error.c (name_err_mesg_to_str): clear rb_thread_t::errinfo when 22356 ignore exception under rb_protect(). [ruby-core:41612] [Bug #5755] 22357 22358 * test/ruby/test_exception.rb (test_exception_in_name_error_to_str): 22359 add a corresponding test. 22360 22361Tue Dec 13 16:13:29 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22362 22363 * load.c (load_unlock): all threads requiring one file should 22364 share same loading barrier, so it must be kept alive while those 22365 are waiting on it. [ruby-core:41618] [Bug #5754] 22366 22367Tue Dec 13 07:30:14 2011 Aaron Patterson <aaron@tenderlovemaking.com> 22368 22369 * lib/webrick/httpresponse.rb (setup_header): 1xx responses 22370 are allowed to have Keep-Alive connections. 22371 22372 * test/webrick/test_httpresponse.rb: corresponding test. 22373 22374Tue Dec 13 07:13:28 2011 Aaron Patterson <aaron@tenderlovemaking.com> 22375 22376 * lib/webrick/httpresponse.rb (setup_header): 204 and 304 responses 22377 are allowed to have a Keep-Alive connection. [ruby-core:41581] 22378 22379 * test/webrick/test_httpresponse.rb: corresponding test. 22380 22381Tue Dec 13 06:29:39 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22382 22383 * parse.y (parser_magic_comment): should pass the proper value. 22384 [ruby-dev:44984][Bug #5753] 22385 22386Tue Dec 13 05:50:07 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22387 22388 * vm_insnhelper.c (vm_yield_setup_block_args): splat single 22389 argument if optional arguments are defined not only mandatory or 22390 post arguments. [ruby-core:41557] [Bug #5730] 22391 22392Mon Dec 12 22:35:39 2011 Shugo Maeda <shugo@ruby-lang.org> 22393 22394 * parse.y (stmt_or_begin): changed the error message for BEGIN not 22395 at toplevel. [ruby-dev:44963] [Bug #5738] 22396 22397Mon Dec 12 17:29:01 2011 NARUSE, Yui <naruse@ruby-lang.org> 22398 22399 * README: Fixed SupportedPlatforms URL in the README. 22400 patched by eMxyzptlk. https://github.com/ruby/ruby/pull/62 22401 22402Mon Dec 12 17:26:51 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22403 22404 * load.c (rb_feature_p): lazy assigned load_path searched in 22405 loading_table were not expanded, but all features, pushed to 22406 loading table, are expanded. a patch by Yura Sokolov 22407 <funny.falcon AT gmail.com> in [ruby-core:41545]. [Bug #5727] 22408 22409Mon Dec 12 15:41:03 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22410 22411 * ext/stringio/stringio.c (strio_truncate): fix typo. patched by 22412 Nick Howard <ndh AT baroquebobcat.com>. 22413 https://github.com/ruby/ruby/pull/65 22414 22415Sun Dec 11 12:19:17 2011 Shugo Maeda <shugo@ruby-lang.org> 22416 22417 * lib/net/imap.rb: includes the sequence number of UID in a error 22418 message. suggested by art lussos. 22419 [ruby-core:41413] [Feature #5692] 22420 22421Sun Dec 11 11:42:10 2011 Kazuki Tsujimoto <kazuki@callcc.net> 22422 22423 * ext/syslog/syslog.c: fix a typo. [ruby-core:41585] [Bug #5740] 22424 22425Sun Dec 11 10:48:16 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22426 22427 * error.c (exit_initialize): deal with true and false as well as 22428 Kernel#exit. [ruby-dev:44951] [Bug #5728] 22429 22430Sun Dec 11 10:37:47 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22431 22432 * object.c (rb_check_to_int): new function to convert a VALUE to 22433 an Integer if possible, but returns nil instead of raising an 22434 exception otherwise. 22435 22436Sun Dec 11 10:34:39 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22437 22438 * process.c (rb_exit_status_code): extract from rb_f_exit_bang and 22439 rb_f_exit. assume 0 to be success in Kernel#exit! too. 22440 22441Fri Dec 9 19:24:31 2011 NARUSE, Yui <naruse@ruby-lang.org> 22442 22443 * enc/trans/iso-8859-16-tbl.rb: add ISO-8859-16 converter. 22444 22445 * enc/trans/single_byte.trans: ditto. 22446 22447Fri Dec 9 14:28:40 2011 NARUSE, Yui <naruse@ruby-lang.org> 22448 22449 * file.c (file_path_convert): don't convert it when the path string is 22450 ascii only. [ruby-core:41556] [Bug #5733] 22451 tests are contributed by nobu. 22452 22453Fri Dec 9 08:00:15 2011 Luis Lavena <luislavena@gmail.com> 22454 22455 * include/ruby/win32.h: undef stat to silence mingw-w64 stat 22456 redefinition warnings (GCC 4.6.3). 22457 22458Thu Dec 8 23:38:24 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 22459 22460 * variable.c (set_const_visibility): clear inline-cache when constant's 22461 visibility is modified. [ruby-dev:44929] 22462 22463 * test/ruby/test_module.rb (test_private_constants_clear_inlinecache): 22464 add test for it. 22465 22466Thu Dec 8 23:26:11 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22467 22468 * ext/extmk.rb (extract_makefile): should sort after map, not before 22469 it. in this case there is no difference, but we should write better 22470 code. this bad smell was caught by nagachika. 22471 22472Thu Dec 8 22:31:13 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22473 22474 * ext/extmk.rb (extract_makefile): need to sort the array of current 22475 srcs before comparing to the sorted old srcs. 22476 fixed the problem that the configuring stage of exts were always 22477 run, introduced at r33801. 22478 22479Thu Dec 8 13:26:24 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22480 22481 * test/rexml/test_order.rb (OrderTester#test_more_ordering): use 22482 Zlib::GzipReader.open instead of Zlib::GzipReader.new with File.new. 22483 fixed a test error on Windows introduced at r33946. 22484 22485Thu Dec 8 13:11:26 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22486 22487 * test/ruby/test_process.rb (TestProcess#test_sete[gu]id): silently 22488 skip if not implemented such functions (such as, on Windows). 22489 fixed test errors on Windows introduced at r33953. 22490 22491Thu Dec 8 12:57:50 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22492 22493 * ext/socket/extconf.rb: forgotten to define HAVE_SOCKETPAIR for 22494 windows. 22495 fixed test errors on Windows introduced at r33947. 22496 22497Thu Dec 8 12:11:06 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22498 22499 * configure.in (RUBY_WERROR_FLAG): append all warning flags which 22500 are enabled to compile, so that printf format modifiers properly 22501 fail. [ruby-core:41351] [Bug #5679] 22502 22503Thu Dec 8 07:20:15 2011 Eric Hodel <drbrain@segment7.net> 22504 22505 * doc/re.rdoc: Document difference between match and =~, options with 22506 Regexp.new and global variables. Patch by Sylvain Daubert. 22507 [Ruby 1.9 - Bug #5709] 22508 22509Thu Dec 8 06:53:10 2011 Eric Hodel <drbrain@segment7.net> 22510 22511 * doc/re.rdoc: Fix example code to match documentation. Patch by 22512 Jarno Lamberg. [Ruby 1.9 - Bug #5624] 22513 22514Wed Dec 7 19:04:22 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22515 22516 * configure.in (rpath): fix typo in the help string. a patch from 22517 Yuji Yamano <yyamano AT kt.rim.or.jp> in [ruby-list:48568]. 22518 22519Wed Dec 7 18:55:56 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22520 22521 * vm.c (vm_set_top_stack, vm_set_eval_stack): check for stack 22522 overflow with stack_max before push new frame. [ruby-core:41520] 22523 [Bug #5720] 22524 22525 * vm.c (vm_set_main_stack): no stack overflow chances after 22526 vm_set_eval_stack(). 22527 22528Wed Dec 7 09:58:15 2011 Eric Hodel <drbrain@segment7.net> 22529 22530 * ext/bigdecimal/bigdecimal.c: Document +@, -@, hash, INFINITY, Nan. 22531 Patch by Sylvain Daubert. [Ruby 1.9 - Feature #5622] 22532 22533Wed Dec 7 09:48:00 2011 Eric Hodel <drbrain@segment7.net> 22534 22535 * io.c (Init_IO): Mention io/console methods. [Ruby 1.9 - Bug #5602] 22536 * ext/io/console/console.c: Mention that io/console must be required 22537 similar to lib/time.rb 22538 22539Wed Dec 7 08:04:31 2011 Aaron Patterson <aaron@tenderlovemaking.com> 22540 22541 * ext/psych/lib/psych.rb (module Psych): parse and load methods take 22542 an optional file name that is used when raising Psych::SyntaxError 22543 exceptions 22544 * ext/psych/lib/psych/syntax_error.rb (module Psych): allow nil file 22545 names and handle nil file names in the exception message 22546 * test/psych/test_exception.rb (module Psych): Tests for changes. 22547 22548Tue Dec 6 18:26:33 2011 Tanaka Akira <akr@fsij.org> 22549 22550 * ext/dbm/dbm.c: use db_version() instead of DB_VERSION_STRING to 22551 detect runtime Berkeley DB version. 22552 use dpversion instead of _QDBM_VERSION to detect runtime QDBM 22553 version. 22554 [ruby-dev:44948] 22555 22556Tue Dec 6 12:30:41 2011 Tanaka Akira <akr@fsij.org> 22557 22558 * ext/dbm/extconf.rb: detect gdbm_version in libgdbm. 22559 22560 * ext/dbm/dbm.c: make DBM::VERSION more informative for gdbm, qdbm and 22561 Berkeley DB 1.x. [ruby-dev:44944] 22562 22563Tue Dec 6 07:26:37 2011 Eric Hodel <drbrain@segment7.net> 22564 22565 * range.c: Improve documentation for Range. Patch by Chris Zetter. 22566 [Ruby 1.9 - Bug #5656] 22567 22568Mon Dec 5 19:08:04 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22569 22570 * regparse.c (PFETCH_READY): separate gcc specific trick. 22571 22572Mon Dec 5 19:01:59 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22573 22574 * process.c (proc_seteuid_m): fix argument. 22575 22576 * test/ruby/test_process.rb (test_geteuid): fix typo. 22577 22578 * test/ruby/test_process.rb (test_getegid, test_set[eg]uid): add. 22579 22580Mon Dec 5 18:56:55 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22581 22582 * bignum.c (big_rshift), compile.c (validate_label, 22583 iseq_build_from_ary_exception), cont.c (cont_capture), dir.c 22584 (dir_open_dir), gc.c (objspace_each_objects), io.c (pipe_open) 22585 (rb_io_advise), parse.y (parser_compile_string) 22586 (rb_parser_compile_file), proc.c (binding_free), process.c 22587 (rb_proc_exec_n, rb_seteuid_core, proc_setegid, rb_setegid_core) 22588 (p_uid_exchange, p_gid_exchange), regparse.c (strdup_with_null), 22589 signal.c (sig_dfl), vm.c (rb_iseq_eval, rb_iseq_eval_main), 22590 vm_insnhelper.c (vm_expandarray): suppress 22591 unused-but-set-variable warnings. 22592 22593 * class.c (rb_obj_methods), compile.c (iseq_compile_each), 22594 iseq.c(iseq_load, rb_iseq_parameters), pack.c (pack_pack), 22595 regcomp.c (is_not_included, update_string_node_case_fold), 22596 transcode.c (rb_econv_open0, make_replacement), 22597 vm_eval.c (raise_method_missing): remove unused variable. 22598 22599 * signal.c (reserved_signal_p): static. 22600 22601Mon Dec 5 14:27:23 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22602 22603 * include/ruby/{subst.h,win32.h}, ext/socket/rubysocket.h: revert 22604 r33876. [ruby-core:41475] [Bug #5706] 22605 22606 * ext/socket/extconf.rb: the alternative hack for [Bug #5675]. 22607 22608Mon Dec 5 10:18:45 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22609 22610 * ext/zlib/zlib.c (rb_gzreader_initialize): revert a part of r33937. 22611 1st, to change the mode of an IO is very sensitive problem, so 22612 the maintainer of this library should judge it. 22613 2nd, usually Zlib::GzipReader.new is not called directly. #initialize 22614 is called via .open, and in the method the I/O is opened in binary 22615 mode, so there is no problem without changing the mode in #initialize. 22616 22617Sun Dec 4 22:53:12 2011 Tanaka Akira <akr@fsij.org> 22618 22619 * lib/tempfile.rb: don't use lock directory. [ruby-dev:39197] 22620 22621Sun Dec 4 22:34:43 2011 Tanaka Akira <akr@fsij.org> 22622 22623 * lib/tempfile.rb (Tempfile::MAX_TRY): remove unused constant. 22624 22625Sun Dec 4 12:11:28 2011 Kazuki Tsujimoto <kazuki@callcc.net> 22626 22627 * lib/pp.rb: fix rdoc. 22628 22629Sun Dec 4 12:03:16 2011 NARUSE, Yui <naruse@ruby-lang.org> 22630 22631 * lib/delegate.rb (Delegator#methods): Kernel#methods receives 22632 zero or one argument. [ruby-core:37118] [Bug #4882] 22633 22634Sun Dec 4 10:15:00 2011 Luis Lavena <luislavena@gmail.com> 22635 22636 * ext/zlib/zlib.c (rb_gzreader_initialize): use binary mode by default 22637 under Windows. Patch by Hiroshi Shirosaki. [ruby-core:40706] 22638 [Feature #5562] 22639 22640 * include/ruby/encoding.h (void rb_econv_binmode): define NEWLINE 22641 decorator. 22642 22643 * io.c (rb_cloexec_fcntl_dupfd): Introduce NEED_READCONV and 22644 NEED_WRITECONV to replace universal newline decorator by CRLF only 22645 when required to improve file reading and writing under Windows. 22646 Patch by Hiroshi Shirosaki. [ruby-core:40706] [Feature #5562] 22647 * io.c (do_writeconv): adjust binary mode if required. 22648 * io.c (read_all, appendline, swallow, rb_io_getline_1): ditto. 22649 * io.c (io_getc, rb_io_each_codepoint, rb_io_ungetc): ditto. 22650 * io.c (rb_io_binmode, rb_io_ascii8bit_binmode): ditto. 22651 * io.c (rb_io_extract_modeenc, rb_sysopen): ditto. 22652 * io.c (pipe_open, prep_stdio, io_encoding_set): ditto. 22653 * io.c (rb_io_s_pipe, copy_stream_body): ditto. 22654 22655 * test/ruby/test_io_m17n.rb (EOT): add test for pipe and stdin in 22656 binary mode. 22657 22658 * win32/win32.c (init_stdhandle): remove O_BINARY from stdhandle 22659 initialization. 22660 * win32/win32.c (rb_w32_write): use FTEXT mode accordingly. 22661 22662Sat Dec 3 20:49:16 2011 Yusuke Endoh <mame@tsg.ne.jp> 22663 22664 * variable.c (set_const_visibility): print a warning when no argument 22665 is passwd to Module#private_constant. [ruby-list:48558] 22666 22667 * vm_method.c (set_method_visibility): ditto for 22668 Module#private_class_method. 22669 22670Sat Dec 3 20:43:14 2011 Yusuke Endoh <mame@tsg.ne.jp> 22671 22672 * variable.c (set_const_visibility): Module#private_constant has 22673 changed the visibility of only the first argument. Now it changes 22674 all of them. [ruby-list:48558] 22675 22676 * test/ruby/test_module.rb: add a test for above. 22677 22678Sat Dec 3 07:17:29 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22679 22680 * Makefile.in (CFLAGS): append ARCH_FLAG. 22681 22682 * configure.in (ARCH_FLAG): exclude from CFLAGS. 22683 22684 * configure.in (UNIVERSAL_INTS): include short int. fix for 22685 test/mkmf. 22686 22687Fri Dec 2 15:48:08 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22688 22689 * ext/bigdecimal/bigdecimal.c (VpAllocReal): reduce extra frac. 22690 22691Fri Dec 2 15:41:24 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22692 22693 * configure.in: check whether -pie or -Wl,-pie is valid as 22694 LDFLAGS. [ruby-core:41438] [Bug#5697] 22695 22696 * configure.in: use $linker_flag for LDFLAGS option which is not 22697 limited to particular platforms. 22698 22699Thu Dec 1 23:21:58 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 22700 22701 * thread_pthread.c (thread_timer): call prctl(PR_SET_NAME) only if 22702 PR_SET_NAME is available. 22703 22704Thu Dec 1 22:31:16 2011 Tanaka Akira <akr@fsij.org> 22705 22706 * io.c (linux_get_maxfd): change local variable name. 22707 22708Thu Dec 1 16:59:24 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22709 22710 * ext/socket/extconf.rb: add arguments for macro calls. 22711 [ruby-core:41370] [Bug#5681] 22712 22713Thu Dec 1 16:20:16 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22714 22715 * lib/mkmf.rb (MakeMakefile#try_func): fix broken patch at r33834. 22716 22717Thu Dec 1 14:43:17 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22718 22719 * ext/bigdecimal/bigdecimal.h (Real): suppress false warning from 22720 clang. [ruby-core:41418] [Bug#5693] 22721 22722Thu Dec 1 10:31:55 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22723 22724 * configure.in (LDFLAGS): -fstack-protector is always needed to 22725 link static library created with it. [ruby-core:41387] 22726 [Bug#5686] 22727 22728Thu Dec 1 07:03:51 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 22729 22730 * configure.in: add sys/prctl.h test. 22731 * thread_pthread.c (thread_timer): call prctl(PR_SET_NAME) to change 22732 thread name. It may help to debug. 22733 22734Wed Nov 30 23:35:45 2011 NARUSE, Yui <naruse@ruby-lang.org> 22735 22736 * variable.c (rb_path2class): don't raise NameError when the middle 22737 constant of the path is not defined but defined on toplevel. 22738 [ruby-core:41410] [Bug #5691] 22739 22740Wed Nov 30 20:02:02 2011 Martin Duerst <duerst@it.aoyama.ac.jp> 22741 22742 * transcode.c: Simplified rb_econv_binmode, avoided a warning on cygwin. 22743 22744Wed Nov 30 08:57:07 2011 Eric Hodel <drbrain@segment7.net> 22745 22746 * lib/mkmf.rb: Use MakeMakefile's rm_f to avoid conflict with Rake or 22747 FileUtils. 22748 * test/ruby/test_module.rb: Hide MakeMakefile's inclusion in Object 22749 22750Wed Nov 30 09:12:43 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22751 22752 * lib/rdoc/encoding.rb (RDoc::Encoding.read_file): fixup newline chars 22753 on Windows. 22754 see https://github.com/rdoc/rdoc/issues/87 22755 22756 * test/rdoc/test_rdoc_markup_pre_process.rb 22757 (TestRDocMarkupPreProcess#test_include_file, 22758 TestRDocMarkupPreProcess#test_include_file_encoding_incompatible): 22759 follow above change. 22760 22761Wed Nov 30 09:09:37 2011 Aaron Patterson <aaron@tenderlovemaking.com> 22762 22763 * ext/psych/parser.c (parse): parse method can take an option file 22764 name for use in exception messages. 22765 * test/psych/test_parser.rb: corresponding tests. 22766 22767Tue Nov 29 09:07:59 2011 Eric Hodel <drbrain@segment7.net> 22768 22769 * lib/mkmf.rb: Fix indentations of constants at end of module. 22770 Document some constants. 22771 22772Tue Nov 29 09:58:23 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22773 22774 * io.c (rb_write_error2): suppress unused variable warning. 22775 22776Tue Nov 29 07:45:26 2011 Eric Hodel <drbrain@segment7.net> 22777 22778 * lib/mkmf.rb: Wrap comments to 78 columns and clean up formatting. 22779 22780Tue Nov 29 05:54:18 2011 Eric Hodel <drbrain@segment7.net> 22781 22782 * lib/mkmf.rb: Wrap mkmf.rb in module MakeMakefile to clean up Object 22783 documentation. [Ruby 1.9 - Feature #5658] 22784 * ext/extmk.rb: Use MakeMakefile::CONFIG instead of Object::CONFIG 22785 * test/mkmf/base.rb: ditto 22786 22787Tue Nov 29 00:08:57 2011 Yuki Sonoda (Yugui) <yugui@yugui.jp> 22788 22789 * common.mk (INSTRUBY_ARGS): added --mantype to apply mdoc2man.rb 22790 to man pages. Fixes #5598. 22791 (do-install-nodoc, do-install-local, do-install-man, 22792 dont-install-nodoc, dont-install-local, dont-install-man): 22793 No longer needs --mantype. 22794 22795 Reported by Rainer Orth <ro AT cebitec.uni-bielefeld.de>, 22796 patch by George Koehler <xkernigh AT netscape.net>. 22797 22798Mon Nov 28 22:26:31 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22799 22800 * test/rake/test_rake_directory_task.rb 22801 (TestRakeDirectoryTask#test_directory_win32): shouldn't create any 22802 file/directory on root directory. create on @tempdir (= Dir.pwd). 22803 see https://github.com/jimweirich/rake/issues/91 22804 22805Mon Nov 28 12:57:29 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22806 22807 * io.c (rb_write_error2): fwrite() returns ssize_t. 22808 22809Mon Nov 28 12:47:19 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22810 22811 * parse.y (nodetype, nodeline): static. these functions are for 22812 debugging, and not intend to be public. 22813 22814Mon Nov 28 12:37:54 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22815 22816 * gc.c (initial_params): static. it seems to be forgotten at r33501. 22817 22818Mon Nov 28 12:32:24 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22819 22820 * include/ruby/win32.h, win32/win32.c (GetCurrentThreadHandle): remove 22821 unused old API. 22822 22823Mon Nov 28 12:29:20 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22824 22825 * win32/mkexports.rb (Exports#initialize): remove old symbol name. 22826 22827Mon Nov 28 12:15:28 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22828 22829 * win32/mkexports.rb (Exports#read_substitution): need to read 22830 from subst.h too. [Bug #5675] 22831 22832Mon Nov 28 11:46:35 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22833 22834 * io.c (rb_io_flush): release GVL during fsync() on Windows. 22835 22836Mon Nov 28 11:00:25 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22837 22838 * include/ruby/subst.h: typo of r33876. 22839 22840Mon Nov 28 10:36:00 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22841 22842 * include/ruby/subst.h: moved Windows specific substitutions from 22843 win32.h. 22844 22845 * ext/socket/rubysocket.h: include ruby/subst.h. [Bug #5675] 22846 22847Mon Nov 28 10:20:58 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22848 22849 * win32/{Makeilfe.sub,win32.c} (FILE_COUNT, FILE_READPTR): move the 22850 definitions from config.h to win32.c. I dared to have left such 22851 macros, for other future compiler support. 22852 [ruby-core:41313] [Bug #5674] 22853 22854Mon Nov 28 09:28:30 2011 NAKAMURA Usaku <usa@ruby-lang.org> 22855 22856 * win32/win32.c (rb_w32_uchmod): typo. [Bug#5671] [ruby-dev:44898] 22857 22858 * test/ruby/test_file.rb (TestFile#test_chmod_m17n): test of above bug. 22859 22860Sun Nov 27 21:25:33 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 22861 22862 * configure.in: added -fno-strict-overflow. it suppress annoying 22863 -Wstrict-overflow warning. 22864 22865Sun Nov 27 20:58:02 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 22866 22867 * io.c (rb_write_error2): get rid of warning on linux. fwrite 22868 of glibc is tagged __attribute__ ((__warn_unused_result__)) 22869 if _FORTIFY_SOURCE != 0. 22870 * vm_dump.c (rb_vm_bugreport): ditto. 22871 22872Sun Nov 27 19:09:02 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22873 22874 * configure.in (stack_protector): disable on mingw. [Bug#5676] 22875 22876 * Makefile.in (DLDFLAGS): also needs -fstack-protector. 22877 [Bug#5676] 22878 22879Sun Nov 27 14:13:33 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 22880 22881 * configure.in: add -fstack-protector into XLDFLAGS as well as 22882 XCFLAGS if stack-protector is used. 22883 22884Sun Nov 27 13:09:25 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 22885 22886 * configure.in: workaround to avoid MacOS X build error. 22887 Maybe autoconf 2.61 is slightly buggy. [ruby-core:41316] 22888 22889Sun Nov 27 04:57:11 2011 NARUSE, Yui <naruse@ruby-lang.org> 22890 22891 * configure.in (--no-undefined): r33840 breaks FreeBSD and DragonFly 22892 with gcc 4.4 or later. Their environ is in /usr/libexec/ld-elf.so.1, 22893 so it will be false negative. 22894 22895Sun Nov 27 04:55:45 2011 NARUSE, Yui <naruse@ruby-lang.org> 22896 22897 * lib/net/http.rb (Net::HTTP::SSL_IVNAMES): rerefix 33701. 22898 SSL_ATTRIBUTES stores names for set_params, they are symbol. 22899 SSL_IVNAMES stores instance variable names. 22900 22901Sun Nov 27 00:16:07 2011 Tanaka Akira <akr@fsij.org> 22902 22903 * io.c (copy_stream_body): use 0666 for permission argument for open. 22904 [ruby-core:40865] 22905 22906Sat Nov 26 23:01:38 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 22907 22908 * test/openssl/test_engine.rb: remove side effect of generic engine 22909 load by explicitly loading software-based "openssl" engine for 22910 all tests. 22911 22912Sat Nov 26 20:41:48 2011 NARUSE, Yui <naruse@ruby-lang.org> 22913 22914 * lib/net/http.rb (Net::HTTP.get_response): enable use_ssl 22915 if given URI object is https. 22916 patched by Mark Ferlatte [ruby-core:40665] [Bug #5545] 22917 22918 * lib/net/http.rb (Net::HTTP.post_form): ditto. 22919 22920Sat Nov 26 20:01:18 2011 NARUSE, Yui <naruse@ruby-lang.org> 22921 22922 * lib/net/http.rb (Net::HTTP::SSL_ATTRIBUTES): refix 33701. 22923 store instance variable symbol names. 22924 22925Sat Nov 26 15:40:25 2011 URABE Shyouhei <shyouhei@ruby-lang.org> 22926 22927 * .travis.yml (script): should be ./configure 22928 22929Sat Nov 26 15:39:18 2011 URABE Shyouhei <shyouhei@ruby-lang.org> 22930 22931 * .travis.yml (before_script): wrong name, sorry. 22932 22933Sat Nov 26 15:31:34 2011 URABE Shyouhei <shyouhei@ruby-lang.org> 22934 22935 * .travis.yml (before-script): autoconf required. 22936 22937Sat Nov 26 15:24:05 2011 URABE Shyouhei <shyouhei@ruby-lang.org> 22938 22939 * .travis.yml: Travis enable. 22940 22941Sat Nov 26 10:47:50 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 22942 22943 * ext/openssl/extconf.rb: remove checks for available functions. 22944 * ext/openssl/missing.h: ditto. 22945 Thanks, Tim Mooney for reporting this! 22946 [Bug #5432] [ruby-core:40088] 22947 22948Sat Nov 26 10:22:28 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 22949 22950 * ext/openssl/ossl_ssl.c: add comment on where to find implementation 22951 of OpenSSL::SSL::SSLSocket#session. 22952 22953Sat Nov 26 05:00:25 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 22954 22955 * configure.in (--no-undefined): RUBY_TRY_CFLAGS does nothing for 22956 linker flags. use RUBY_TRY_LDFLAGS. 22957 22958Fri Nov 25 11:37:07 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 22959 22960 * io.c (ioctl_narg_len, linux_iocparm_len): reinstantiate linux 22961 specific narg length calculation. 22962 * test/ruby/test_io.rb (test_ioctl_linux2): add new test for old and 22963 unstructured ioctl. 22964 22965Fri Nov 25 10:39:14 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 22966 22967 * Makefile.in (EXTLDFLAGS): export it. 22968 * configure.in: add --no-undefined if --enable-shared is specified. 22969 Gentoo enabled this option long time. Also, export EXTLDFALGS. 22970 22971Fri Nov 25 08:48:35 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 22972 22973 * configure.in: turn on PIE if --enable-shared is not specified. 22974 22975Fri Nov 25 08:05:07 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 22976 22977 * configure.in: add -fstack-protector. It help to protect us from 22978 stack smashing attack. 22979 22980Fri Nov 25 08:03:28 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 22981 22982 * configure.in: add -D_FORTIFY_SOURCE=2. It provide some compile 22983 time and runtime check for security. 22984 22985Fri Nov 25 08:00:23 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 22986 22987 * lib/mkmf.rb: get rid of warnings of mkmf.rb if -Wmissing-declarations 22988 and/or -Wold-style-definition warnings if specified. 22989 Patch by Nikolai Weibull. Thank you! [Bug #5459] [ruby-core:40200] 22990 22991Fri Nov 25 07:46:09 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 22992 22993 * configure.in: add -Wall always. 22994 22995Thu Nov 24 20:02:40 2011 Tanaka Akira <akr@fsij.org> 22996 22997 * test/openssl/test_engine.rb: use IO#reopen to restore stderr. 22998 22999Thu Nov 24 19:59:56 2011 Tanaka Akira <akr@fsij.org> 23000 23001 * io.c (rb_io_reopen): re-initialize buffering mode for stdout and 23002 stderr. 23003 23004Thu Nov 24 11:12:48 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23005 23006 * io.c (rb_io_fsync,rb_io_fdatasync): release GVL during fsync(). 23007 fsync() and fdatasync() may take a long time on slow disks and/or 23008 if there is much dirty data. 23009 Patch by Eric Wong. [Feature #5665] [ruby-core:41247] 23010 23011Thu Nov 24 10:05:02 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 23012 23013 * test/openssl/test_engine.rb: Suppress output from 'openssl' 23014 engine's RC4 cipher. 23015 [Bug #5633] [ruby-core:41026] 23016 23017Thu Nov 24 08:05:02 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 23018 23019 * ext/openssl/ossl_pkey_dsa.c: remove redundant colon from error 23020 message. 23021 * ext/openssl/ossl_ssl.c: ditto. 23022 * ext/openssl/ossl_pkey_rsa: ditto. 23023 patched by Eric Hodel [Bug #5604] [ruby-core:40896] 23024 23025Wed Nov 23 20:03:43 2011 NARUSE, Yui <naruse@ruby-lang.org> 23026 23027 * io.c (ioctl_narg_len): don't use _IOC_SIZE macro on Linux. 23028 On Linux some constants for ioctl(2) doesn't include the size of 23029 its return value and 16bit value; for example FIONREAD 0x541B. 23030 Moreover the manual, ioctl_list(2), says "Note that the size 23031 bits are very unreliable: in lots of cases they are wrong, 23032 either because of buggy macros using sizeof(sizeof(struct)), 23033 or because of legacy values." 23034 So we shouldn't use it. 23035 23036Tue Nov 22 18:07:32 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23037 23038 * win32/win32.c (_pioinfo): need to declare _pioinfo() before using 23039 _osfhnd and other macros which uses _pioinfo() internally. 23040 23041Tue Nov 22 17:49:45 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23042 23043 * win32/win32.c (_pioinfo): make an inline function. 23044 23045Tue Nov 22 11:26:08 2011 NARUSE, Yui <naruse@ruby-lang.org> 23046 23047Tue Nov 22 11:33:58 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23048 23049 * win32/win32.c (dupfd): argument of _osfhnd and so on should not 23050 have side effect. 23051 23052Tue Nov 22 11:26:08 2011 NARUSE, Yui <naruse@ruby-lang.org> 23053 23054 * bignum.c (rb_big_divide): refix of r33536. Don't change behavior of Bignum#/. 23055 [ruby-core:40429] [Bug #5490] 23056 23057Tue Nov 22 10:46:57 2011 NARUSE, Yui <naruse@ruby-lang.org> 23058 23059 * numeric.c (ruby_float_step): improve floating point calculations. 23060 [ruby-core:35753] [Bug #4576] 23061 23062 * numeric.c (ruby_float_step): correct the error of floating point 23063 numbers on the excluding case. 23064 patched by Masahiro Tanaka [ruby-core:39608] 23065 23066 * numeric.c (ruby_float_step): use the end value when the current 23067 value is greater than or equal to the end value. 23068 patched by Akira Tanaka [ruby-core:39612] 23069 23070Tue Nov 22 06:59:21 2011 Tanaka Akira <akr@fsij.org> 23071 23072 * test/ruby/test_io.rb (test_fcntl_dupfd): there is no known platform 23073 which don't have F_DUPFD. [ruby-dev:44874] 23074 23075Tue Nov 22 04:46:22 2011 Aaron Patterson <aaron@tenderlovemaking.com> 23076 23077 * ext/psych/lib/psych.rb: remove autoload from psych 23078 * ext/psych/lib/psych/json.rb: ditto 23079 23080Tue Nov 22 00:44:59 2011 Tanaka Akira <akr@fsij.org> 23081 23082 * test/ruby/test_io.rb (test_fcntl_dupfd): the argument of F_DUPFD is 23083 minimum file descriptor. 23084 23085Tue Nov 22 00:25:17 2011 Tanaka Akira <akr@fsij.org> 23086 23087 * io.c (linux_get_maxfd): get rid of a warning. 23088 23089Mon Nov 21 23:39:14 2011 Tanaka Akira <akr@fsij.org> 23090 23091 * io.c (linux_get_maxfd): new function to find maximum fd on Linux. 23092 (rb_close_before_exec): use linux_get_maxfd. 23093 23094Mon Nov 21 06:16:24 2011 NARUSE, Yui <naruse@ruby-lang.org> 23095 23096 * cont.c (fiber_switch): ignore fiber context switch 23097 because destination fiber is same as current fiber. 23098 With out this, it may segv on FreeBSD 9. 23099 patched by Koichi Sasada. 23100 23101Sun Nov 20 23:22:42 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23102 23103 * ext/extmk.rb (extract_makefile, extmake): regenerate makefiles 23104 if globbed source file list is changed. 23105 23106 * lib/mkmf.rb (create_makefile): store ORIG_SRCS. 23107 23108Sun Nov 20 22:43:03 2011 NARUSE, Yui <naruse@ruby-lang.org> 23109 23110 * enc/unicode.c (PROPERTY_NAME_MAX_SIZE): +1. 23111 reported by Ken Takata. [ruby-dev:44894][Bug #5652] 23112 23113Sun Nov 20 11:01:28 2011 Tanaka Akira <akr@fsij.org> 23114 23115 * lib/set.rb (SortedSet.setup): remove old_init after initialize 23116 method is redefined. The remove before redefinition makes the 23117 warning prevention fragile. [ruby-dev:44892] 23118 23119Sun Nov 20 04:01:45 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23120 23121 * Makefile.in (enc/unicode/name2ctype.h): remove duplicated 23122 ifdefs. 23123 23124Sat Nov 19 19:31:47 2011 Tanaka Akira <akr@fsij.org> 23125 23126 * time.c (TIME_COPY_GMT): copy vtm.utc_offset and vtm.zone too. 23127 patch by Tomoyuki Chikanaga. 23128 [ruby-dev:44827] [Bug #5586] 23129 23130Sat Nov 19 16:36:57 2011 Tanaka Akira <akr@fsij.org> 23131 23132 * test/net/http/test_http.rb: remove temporally files in ensure clause. 23133 23134Sat Nov 19 08:18:41 2011 Tanaka Akira <akr@fsij.org> 23135 23136 * test/net/http/test_http.rb: remove temporally files. 23137 23138Fri Nov 18 17:18:16 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23139 23140 * ext/io/console/console.c (console_raw, console_set_raw) 23141 (console_getch): optional parameters. [EXPERIMENTAL] 23142 23143Fri Nov 18 16:12:11 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23144 23145 * ext/io/console/console.c (console_cooked, console_set_cooked): 23146 new methods to reset cooked mode. [EXPERIMENTAL] 23147 23148Fri Nov 18 13:20:26 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23149 23150 * test/unit/assertions.rb (MINI_DIR): quick dirty hack to get rid of 23151 warnings when using assert/assert_respond_to. 23152 23153Fri Nov 18 13:03:38 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23154 23155 * io.c (rb_cloexec_open): set O_NOINHERIT instead of O_CLOEXEC if it is 23156 available (for Windows). 23157 23158 * win32/win32.c (fcntl): on F_DUPFD, determine the inheritance of the 23159 new handle by O_NOINHERIT flag of original fd. 23160 23161Fri Nov 18 08:00:41 2011 Ryan Davis <ryand-ruby@zenspider.com> 23162 23163 * lib/minitest/*: Imported minitest 2.8.1 (r6750) 23164 * test/minitest/*: ditto 23165 * configure.in: Improved gcc-llvm error message to help people migrate. 23166 23167Thu Nov 17 20:43:34 2011 Tanaka Akira <akr@fsij.org> 23168 23169 * ext/dbm/extconf.rb: revert a part of the patch in [ruby-dev:41531]. 23170 don't use db.h with other headers. [ruby-dev:44884]. 23171 23172Thu Nov 17 20:23:03 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23173 23174 * benchmark/bm_io_select[23].rb: use Process::RLIMIT_NOFILE only when 23175 it is defined. if it is not defined, assume 64 as the max of fds. 23176 23177Thu Nov 17 10:36:46 2011 Aaron Patterson <aaron@tenderlovemaking.com> 23178 23179 * ext/psych/lib/psych.rb (load_file): make sure opened yaml files are 23180 also closed. [ruby-core:41088] 23181 23182Wed Nov 16 18:13:52 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23183 23184 * Makefile.in (LIBRUBY_A): check if generated linked library is 23185 valid for extconf. 23186 23187Wed Nov 16 13:51:40 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23188 23189 * bignum.c (rb_big2ulong): need to calc in unsigned long, because 23190 the range of VALUE is larger than it on LLP64 platform, such as Win64. 23191 this change fixes the failures of test/-ext-/num2int. 23192 23193Wed Nov 16 12:02:47 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23194 23195 * test/webrick/test_cgi.rb (TestWEBrickCGI#start_cgi_server): there are 23196 no guarantee of existence of RbConfig::CONFIG['LIBPATHENV']. 23197 it only exists in Unix-like environments. 23198 23199 * test/webrick/test_filehandler.rb 23200 (WEBrick::TestFileHandler#test_script_disclosure): ditto. 23201 23202Wed Nov 16 11:34:20 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23203 23204 * io.c (argf_next_argv): wrong timing of setting ecflags. 23205 fixed the failure of TestArgf#test_textmode introduced at r33662. 23206 23207Wed Nov 16 10:45:00 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23208 23209 * ext/-test-/num2int/num2int.c: remove an unnecessary and wrong decl 23210 of rb_stdout. it's declared in ruby.h correctly. 23211 23212Wed Nov 16 10:26:41 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23213 23214 * bignum.c (rb_big2ull): add a cast to get rid of a VC++ warning. 23215 23216Wed Nov 16 09:39:27 2011 NARUSE, Yui <naruse@ruby-lang.org> 23217 23218 * lib/minitest/unit.rb (assert_raises): experimental fix to run 23219 correctly on chkbuild over 64bit linux. call exception_details only 23220 when the detail is really needed to avoid create needless inspect 23221 under ulimit-ed environment. 23222 23223Wed Nov 16 06:34:30 2011 Tanaka Akira <akr@fsij.org> 23224 23225 * test/ruby/test_thread.rb (test_condvar_timed_wait): use 23226 assert_operator. 23227 23228Tue Nov 15 21:56:25 2011 Tanaka Akira <akr@fsij.org> 23229 23230 * test/ruby/test_sleep.rb (test_sleep_5sec): 0.1sec tolerance is too 23231 small for busy environment. 23232 23233Tue Nov 15 20:08:55 2011 Tanaka Akira <akr@fsij.org> 23234 23235 * io.c, thread.c, ext/pty/pty.c, ext/fiddle/closure.c: use 23236 __linux__ macro for consistency. 23237 23238Tue Nov 15 14:45:15 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23239 23240 * include/ruby/ruby.h(NUM2LONG, NUM2INT, NUM2SHORT, NUM2LL, 23241 INT2NUM, UINT2NUM, LONG2NUM, ULONG2NUM, NUM2CHR): wrap by 23242 macros. 23243 23244Tue Nov 15 13:38:14 2011 Naohisa Goto <ngotogenome@gmail.com> 23245 23246 * include/ruby/defines.h (FLUSH_REGISTER_WINDOWS): move sparc asm code 23247 to a separate file sparc.c for preventing inlining optimization. 23248 Patched by Jurij Smakov. [Bug #5244] [ruby-core:40685] 23249 * sparc.c (rb_sparc_flush_register_windows): ditto. 23250 * configure.in: ditto. 23251 23252Tue Nov 15 13:11:35 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23253 23254 * include/ruby/ruby.h: get rid of gcc specific rb_long2int(), 23255 NUM2LONG(), NUM2INT(), NUM2SHORT(), NUM2LL(), INT2NUM(), 23256 UINT2NUM(), LONG2NUM(), ULONG2NUM() and NUM2CHR() 23257 implementation. Because 1) They don't make any better code 23258 at all. 2) Inline function have a better debugger supoort. 23259 23260Tue Nov 15 09:58:25 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23261 23262 * test/ruby/test_io.rb (TestIO#test_fcntl_dupfd): fix OpenBSD test 23263 failure. [ruby-dev:44872] 23264 23265Tue Nov 15 09:50:21 2011 NARUSE, Yui <naruse@ruby-lang.org> 23266 23267 * regcomp.c (print_indent_tree): fix double printing of ENCLOSE_OPTION 23268 children bug. patched by Suraj Kurapati. [ruby-core:40964] 23269 23270Tue Nov 15 01:53:48 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 23271 23272 * test/ruby/test_io.rb (test_fcntl_dupfd): fix test error on 23273 SnowLeopard. Pointed out by CHIKANAGA Tomoyuki. [ruby-dev:44866] 23274 23275Mon Nov 14 22:06:02 2011 Tanaka Akira <akr@fsij.org> 23276 23277 * ext/openssl/ossl_pkey.c (ossl_pkey_new_from_file): set close-on-exec 23278 flag. 23279 23280 * ext/openssl/ossl_x509cert.c (rb_fd_fix_cloexec): ditto. 23281 23282Mon Nov 14 14:54:17 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23283 23284 * bignum.c (rb_big2ull): fix 32bit platform breakage. we must 23285 not assume sizeof(VALUE) == sizeof(LONG_LONG). 23286 * test/-ext-/num2int/test_num2int.rb (class TestNum2int): 23287 fix false assumption on 32bit platform. 23288 23289Mon Nov 14 14:52:54 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23290 23291 * numeric.c (rb_fix2ushort): fix typo. use num rb_num2ushort() 23292 instead of num2uint(). 23293 23294Sun Nov 13 10:31:03 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23295 23296 * include/ruby/ruby.h: add #ifdef comment. 23297 23298Sun Nov 13 10:28:18 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23299 23300 * include/ruby/ruby.h: add NUM2SHORT(), NUM2USHORT() macros. 23301 * numeric.c: ditto. 23302 23303 * test/-ext-/num2int/test_num2int.rb: add testcases for NUM2SHORT(). 23304 * ext/-test-/num2int/num2int.c: ditto. 23305 23306Sun Nov 13 10:23:48 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23307 23308 * bignum.c (rb_big2ull): fix off-by-twice bug of NUM2ULL. 23309 * test/-ext-/num2int/test_num2int.rb (class TestNum2int): 23310 fix a testcase too. 23311 23312Sun Nov 13 10:22:44 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23313 23314 * test/-ext-/num2int/test_num2int.rb (class TestNum2int): 23315 add FIXNUM tests. 23316 23317Sun Nov 13 09:57:29 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23318 23319 * numeric.c (check_uint): fix off-by-one bug of NUM2UINT. 23320 * bignum.c (rb_big2ulong): fix off-by-one bug of NUM2ULONG. 23321 23322 * test/-ext-/num2int/test_num2int.rb: add a testcase for NUM2INT() 23323 NUM2UINT(), NUM2LONG(), NUM2ULONG(), NUM2LL and NUM2ULL(). 23324 * ext/-test-/num2int/depend: ditto. 23325 * ext/-test-/num2int/extconf.rb: ditto. 23326 * ext/-test-/num2int/num2int.c: ditto. 23327 23328Sun Nov 13 23:47:29 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23329 23330 * ext/dbm/extconf.rb: use convertible_int. 23331 23332Sun Nov 13 23:45:57 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23333 23334 * lib/mkmf.rb (checking_for): should not modify the result. 23335 23336 * lib/mkmf.rb (have_struct_member): accept compiler options. 23337 23338 * lib/mkmf.rb (convertible_int): add restricted support of struct 23339 member, and TYPEOF_ macro. 23340 23341Sun Nov 13 23:21:24 2011 Tanaka Akira <akr@fsij.org> 23342 23343 * ext/gdbm/gdbm.c (fgdbm_reorganize): set close-on-exec flag after 23344 gdbm_reorganize(). gdbm_reorganize() opens a new database internally. 23345 23346Sun Nov 13 19:57:18 2011 Tanaka Akira <akr@fsij.org> 23347 23348 * ext/dbm/extconf.rb: rollback for each headers for each libraries. 23349 23350Sun Nov 13 16:24:48 2011 Tanaka Akira <akr@fsij.org> 23351 23352 * ext/dbm/extconf.rb: treat libc as a choice for a library which 23353 provide ndbm API. 23354 23355Sun Nov 13 15:40:43 2011 Tanaka Akira <akr@fsij.org> 23356 23357 * ext/dbm/extconf.rb: duplicate $libs and $defs when save them. 23358 23359Sun Nov 13 12:43:48 2011 Tanaka Akira <akr@fsij.org> 23360 23361 * ext/dbm/extconf.rb: rollback $libs and $defs when db detection is 23362 failed. It fixes -lgdbm -lqdbm when the system has qdbm and gdbm 23363 without gdbm_compat. 23364 23365Sat Nov 12 21:14:51 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23366 23367 * test/webrick/test_cgi.rb (class TestWEBrickCGI): respect 23368 RbConfig::CONFIG["LIBPATHENV"]. [Bug #5135] [ruby-core:38653] 23369 * test/webrick/test_filehandler.rb (class WEBrick): ditto. 23370 23371Sat Nov 12 20:57:29 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23372 23373 * test/ruby/test_io.rb (test_fcntl_dupfd): skip if Fcntl::DUPFD 23374 is not defined. Pointed out by CHIKANAGA Tomoyuki. Thanks. 23375 23376Sat Nov 12 17:26:10 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23377 23378 * io.c (do_ioctl, ioctl_narg_len, setup_narg, rb_ioctl): use 23379 ioctl_req_t. 23380 23381Sat Nov 12 17:01:49 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23382 23383 * ext/dbm/extconf.rb (headers.db_check): reduce duplicated code. 23384 23385Sat Nov 12 15:59:42 2011 Tanaka Akira <akr@fsij.org> 23386 23387 * ext/dbm/extconf.rb: dbm_clearerr should be available in all ndbm 23388 implementation. If it is not available, it is caused by 23389 header/library mismatch such that Berkeley DB header & gdbm library. 23390 23391 * ext/dbm/dbm.c (fdbm_store): use dbm_clearerr() unconditionally. 23392 gdbm 1.9 provides it as a real function instead of a empty macro. 23393 23394Sat Nov 12 13:35:33 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23395 23396 * bootstraptest/runner.rb: don't suppress SIGINT. 23397 [Feature #5612] [ruby-dev:44856] 23398 23399Sat Nov 12 11:20:36 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23400 23401 * io.c (fcntl_narg_len): introduce narg calculation for fcntl instead 23402 of hard coded 256. 23403 * io.c (setup_narg): ditto. 23404 23405Sat Nov 12 11:19:35 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23406 23407 * test/ruby/test_io.rb (test_fcntl_dupfd): add another fcntl test. 23408 23409Sat Nov 12 11:18:17 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23410 23411 * test/ruby/test_io.rb (test_fcntl_lock_freebsd): add a testcase 23412 of fcntl lock for freebsd. 23413 23414Sat Nov 12 11:16:32 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23415 23416 * io.c (ioctl_narg_len): Linux doesn't have IOCPARM_LEN macro, but 23417 has _IOC_SIZE. support it. 23418 23419Sat Nov 12 11:13:18 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23420 23421 * io.c (rb_ioctl): don't expose our sanity check value to ruby script. 23422 It may change string value meaning if the value is string. 23423 (e.g. MacOS X has F_GETPATH ioctl) 23424 * io.c (rb_fcntl): ditto. 23425 23426Sat Nov 12 11:06:02 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23427 23428 * io.c (ioctl_req_t): Type of req argument of ioctl() depend on platform. 23429 Moreover almost all linux ioctl can't be represented by 32bit integer 23430 (i.e. MSB is 1). We need wrap ioctl argument type. 23431 [Bug #5429] [ruby-dev:44589] 23432 * io.c (struct ioctl_arg): ditto. 23433 * io.c (rb_ioctl): ditto. 23434 * test/ruby/test_io.rb (test_ioctl_linux): add a testcase for ioctl 23435 23436Sat Nov 12 11:00:42 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23437 23438 * io.c (struct io_cntl_arg): remove io_p member. 23439 * io.c (nogvl_fcntl, do_fcntl, rb_fcntl): separated from ioctl functions. 23440 * io.c (nogvl_io_cntl): remove fcntl depended logic. 23441 * io.c (io_cntl): ditto. 23442 * io.c (rb_io_ctl): ditto. 23443 * io.c (rb_io_ioctl): ditto. 23444 23445Sat Nov 12 10:59:49 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23446 23447 * io.c (setup_narg): fix off by one bug. 23448 23449Sat Nov 12 10:56:43 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23450 23451 * io.c (+setup_narg): factor out length calculation logic. 23452 * io.c (rb_io_ctl): ditto. 23453 23454Sat Nov 12 10:52:17 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23455 23456 * io.c (+ioctl_narg_len) new helper function. 23457 * io.c (rb_io_ctl): don't use ioctl specific length check 23458 if caller is fcntl. 23459 23460Fri Nov 11 23:00:46 2011 Tanaka Akira <akr@fsij.org> 23461 23462 * ext/dbm/extconf.rb: db_prefix is not required now. 23463 23464Fri Nov 11 21:13:30 2011 Tanaka Akira <akr@fsij.org> 23465 23466 * ext/gdbm/gdbm.c (fgdbm_initialize): use GDBM_CLOEXEC if available. 23467 23468Fri Nov 11 21:00:05 2011 Tanaka Akira <akr@fsij.org> 23469 23470 * ext/dbm/extconf.rb: fix dbm_pagfno and dbm_dirfno detection with 23471 Berkeley DB. Macro definitions needs arguments to detect correctly. 23472 SIZEOF_DSIZE needs -DDB_DBM_HSEARCH because db.h defines datum type 23473 only if DB_DBM_HSEARCH is defined. 23474 23475Fri Nov 11 18:41:57 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23476 23477 * process.c (proc_seteuid): separate an internal wrapper function 23478 from the method implementation. 23479 23480Fri Nov 11 17:21:15 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23481 23482 * lib/mkmf.rb (have_library, find_library, have_func): allow 23483 arguments of function to be checked. 23484 23485Fri Nov 11 17:09:45 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23486 23487 * vm_dump.c (HAVE_BACKTRACE): fallback to 0. 23488 23489 * vm_dump.c (rb_vm_bugreport): show "Other runtime information" 23490 header only when available. 23491 23492 * vm_dump.c (rb_vm_bugreport): get rid of modifying the content of 23493 VM directly. 23494 23495 * vm_dump.c (rb_vm_bugreport): check if vm is non-null. 23496 Pointed out by Ikegami Daisuke <ikegami.da@gmail.com>. 23497 Thank you. 23498 23499Fri Nov 11 12:36:37 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23500 23501 * io.c (pipe_open): Remove fflush(stdin). it's no effect. 23502 Pointed out by Ikegami Daisuke <ikegami.da@gmail.com>. 23503 Thank you. 23504 23505Fri Nov 11 07:33:30 2011 Eric Hodel <drbrain@segment7.net> 23506 23507 * lib/net/http.rb (Net::HTTP::SSL_ATTRIBUTES): Use symbol keys instead 23508 of string keys to avoid duplicating parameters in 23509 OpenSSL::SSL:SSLContext#set_params. 23510 23511Thu Nov 10 15:02:37 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23512 23513 * lib/mkmf.rb (have_library, have_func, have_var, have_header): 23514 add compiler option parameter. 23515 23516Thu Nov 10 07:45:16 2011 Eric Hodel <drbrain@segment7.net> 23517 23518 * ext/openssl/lib/openssl/ssl.rb (class OpenSSL::SSL::SSLContext): 23519 Document #set_params. 23520 23521Wed Nov 9 11:36:53 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 23522 23523 * thread_pthread.c (gvl_yield): don't prevent concurrent sched_yield(). 23524 [Bug #5130] [ruby-core:38647] 23525 23526Wed Nov 9 23:20:22 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23527 23528 * io.c (rb_update_max_fd): fstat(2) can fail with other than 23529 EBADF. [ruby-dev:44837] [Bug #5593]. Cf. 23530 http://pubs.opengroup.org/onlinepubs/9699919799/functions/fstat.html 23531 23532 * io.c (rb_sysopen): max fd is updated in rb_sysopen_internal() 23533 already. 23534 23535Wed Nov 9 22:13:38 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23536 23537 * test/ruby/test_file.rb (TestFile#test_utime_with_minus_time_segv): 23538 fixed previous commit. 23539 23540Wed Nov 9 19:53:45 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23541 23542 * test/ruby/test_file.rb (TestFile#test_utime_with_minus_time_segv): 23543 add test for r33685. 23544 23545Wed Nov 9 19:00:44 2011 Koichi Sasada <ko1@atdot.net> 23546 23547 * test/ruby/test_fiber.rb: add tests for r33684 (Fiber#resume). 23548 23549Wed Nov 9 16:40:49 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23550 23551 * win32/win32.c (unixtime_to_filetime): should check the return value 23552 of localtime(). reported by snowjail at gmail.com. 23553 [ruby-dev:44838] [Bug #5596] 23554 23555Thu Nov 9 13:17:25 2011 Koichi Sasada <ko1@atdot.net> 23556 23557 * cont.c (rb_fiber_m_transfer, rb_fiber_resume): prohibit using 23558 "resume" after "transfer" method are used. You should not mix 23559 "resume" fiber and "transfer" fiber. 23560 [Bug #5526] 23561 23562 * NEWS: add information about this change. 23563 23564Wed Nov 9 11:40:37 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23565 23566 * template/Doxyfile.tmpl (INCLUDE_PATH): add srcdir and include. 23567 [ruby-core:40843] [Bug #5597] 23568 23569Wed Nov 9 11:02:54 2011 NARUSE, Yui <naruse@ruby-lang.org> 23570 23571 * thread.c (do_select): fix cast, tv_sec is time_t. 23572 23573Wed Nov 9 10:32:20 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23574 23575 * configure.in: should not use test -e for portability. 23576 [ruby-core:40841] [Bug #5594] 23577 23578Wed Nov 9 04:52:16 2011 Aaron Patterson <aaron@tenderlovemaking.com> 23579 23580 * ext/psych/lib/psych/tree_builder.rb: dump complex numbers, 23581 rationals, etc with reference ids. 23582 * ext/psych/lib/psych/visitors/yaml_tree.rb: ditto 23583 * ext/psych/lib/psych/visitors/to_ruby.rb: loading complex numbers, 23584 rationals, etc with reference ids. 23585 * test/psych/test_object_references.rb: corresponding tests 23586 23587Tue Nov 8 23:34:37 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23588 23589 * ext/dbm/dbm.c (fdbm_fetch, fdbm_key, fdbm_delete, fdbm_store) 23590 (fdbm_has_key, fdbm_has_value): get rid of overflow. 23591 23592 * ext/gdbm/gdbm.c (rb_gdbm_fetch2, rb_gdbm_nextkey) 23593 (rb_gdbm_delete, fgdbm_store, fgdbm_has_key): ditto. 23594 23595 * ext/dbm/dbm.c (fdbm_delete_if): hide intermediate objects. 23596 23597 * ext/gdbm/gdbm.c (fgdbm_delete_if): ditto. 23598 23599 * ext/dbm/extconf.rb: check size of datum.dsize to get rid of 23600 overflow. 23601 23602Tue Nov 8 23:30:21 2011 NARUSE, Yui <naruse@ruby-lang.org> 23603 23604 * addr2line.c (PATH_MAX): define if not defined. [ruby-core:40840] 23605 23606Tue Nov 8 23:26:49 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23607 23608 * ext/tk/tcltklib.c (rb_thread_critical): fix type. 23609 23610 * ext/tk/tcltklib.c (eventloop_sleep, lib_eventloop_core): int is 23611 enough for micro seconds. may need to check overflow in the 23612 setter though. 23613 23614 * ext/tk/tcltklib.c (RSTRING_LENINT): check overflow if necessary. 23615 23616 * ext/tk/tcltklib.c (RbTk_ALLOC_N): wrapper for ckalloc() which 23617 takes an int. 23618 23619 * ext/tk/tcltklib.c (ip_ruby_cmd_receiver_get, tcltklib_compile_info): 23620 get rid overflow. 23621 23622 * ext/tk/tcltklib.c (tcltklib_compile_info): constified. 23623 23624Tue Nov 8 20:50:45 2011 Tanaka Akira <akr@fsij.org> 23625 23626 * test/dbm/test_dbm.rb: split tests for read only database. 23627 23628 * test/gdbm/test_gdbm.rb: ditto. 23629 23630Tue Nov 8 18:59:07 2011 Tanaka Akira <akr@fsij.org> 23631 23632 * ext/pty/pty.c (MasterDevice): define only when used. 23633 (SlaveDevice): ditto. 23634 (deviceNo): ditto. 23635 23636Tue Nov 8 17:59:24 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23637 23638 * include/ruby/ruby.h (rb_long2int): define as a macro always, so 23639 that cpp conditionals can tell if it is provided. 23640 23641Tue Nov 8 17:30:50 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23642 23643 * lib/mkmf.rb (cpp_command): remove multiple -arch flags since cpp 23644 cannot work. 23645 23646Tue Nov 8 14:50:55 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23647 23648 * io.c (io_fwrite): call rb_w32_write_console() only if FMODE_TTY is 23649 set. this is the one of the reason of IO writing slowness of Windows 23650 in 1.9.3 or later. 23651 23652Tue Nov 8 11:01:04 2011 NARUSE, Yui <naruse@ruby-lang.org> 23653 23654 * ext/pty/pty.c (get_device_once): FreeBSD 8 supported O_CLOEXEC flag 23655 for posix_openpt, but FreeBSD 9's posix_openpt doesn't support 23656 O_CLOEXEC and fails if specified. 23657 23658Tue Nov 8 02:36:45 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23659 23660 * include/ruby/encoding.h (ECONV_NEWLINE_DECORATOR_READ_MASK, 23661 ECONV_NEWLINE_DECORATOR_WRITE_MASK): new macro. 23662 23663 * io.c (rb_io_extract_modeenc, pipe_open, prep_stdio, argf_next_argv): 23664 set TEXTMODE_NEWLINE_DECORATOR_ON_WRITE for textmode on creating IO 23665 if the flag is available. 23666 23667 * io.c (make_writeconv): drop decorators for reading. 23668 23669 * io.c (make_readconv): drop decorators for writing. 23670 23671 * io.c (do_writeconv): existing writeconv is not the condition to raise 23672 ArgumentError. should check textmode or not. 23673 23674 * test/ruby/test_io_m17n.rb 23675 (TestIO_M17N#test_{cr,lf,crlf}_decorator_on_stdout): test above 23676 changes. 23677 23678Mon Nov 7 22:03:47 2011 Tanaka Akira <akr@fsij.org> 23679 23680 * ext/gdbm/gdbm.c (fgdbm_initialize): set close-on-exec flag. 23681 23682Mon Nov 7 20:31:52 2011 Aaron Patterson <aaron@tenderlovemaking.com> 23683 23684 * ext/psych/lib/psych/scalar_scanner.rb: make sure strings that look 23685 like base 60 numbers are serialized as quoted strings. 23686 * test/psych/test_string.rb: test for change. 23687 23688Mon Nov 7 20:26:37 2011 Aaron Patterson <aaron@tenderlovemaking.com> 23689 23690 * test/psych/test_yamlstore.rb: make test case inherit from MiniTest, 23691 load psych/helper so that psych is loaded. 23692 23693Mon Nov 7 20:18:29 2011 Aaron Patterson <aaron@tenderlovemaking.com> 23694 23695 * test/psych/test_yamldbm.rb: Test case should inherit from MiniTest, 23696 load psych/helper so that psych and friends are loaded. 23697 23698Mon Nov 7 20:15:44 2011 Tanaka Akira <akr@fsij.org> 23699 23700 * ext/dbm/extconf.rb: check dbm_pagfno() and dbm_dirfno(). 23701 23702 * ext/dbm/dbm.c: use above to set close-on-exec flag. 23703 23704Mon Nov 7 20:05:16 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23705 23706 * io.c (io_fflush): remove fsync(). 23707 23708 * io.c (rb_io_flush, rb_io_rewind): fsync() here. 23709 23710 these changes reduces fsync() calls to improve performance. 23711 first reported at [ruby-list:48515] by ak7 at mail.goo.ne.jp . 23712 [Bug #5585] 23713 23714Mon Nov 7 19:43:10 2011 Tanaka Akira <akr@fsij.org> 23715 23716 * io.c (rb_close_before_exec): use F_MAXFD if available. 23717 F_MAXFD is available on NetBSD since NetBSD 2.0. 23718 23719Mon Nov 7 19:25:16 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23720 23721 * test/ruby/test_io_m17n.rb 23722 (TestIO_M17N#test_default_stdout_stderr_mode): new test for 23723 r33627-33629. see [backport #5565] 23724 23725Mon Nov 7 01:14:22 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 23726 23727 * lib/debug.rb: add help for 'pp' and 'r[estart]'. patch 23728 from Sho Hashimoto. [Bug #5093] [ruby-dev:44222] 23729 23730Sun Nov 6 14:49:58 2011 Tanaka Akira <akr@fsij.org> 23731 23732 * ext/socket/rubysocket.h (rsock_recvmsg): declared. 23733 23734 * ext/socket/ancdata.c (rsock_recvmsg): extracted from 23735 nogvl_recvmsg_func. 23736 (nogvl_recvmsg_func): use rsock_recvmsg. 23737 23738 * ext/socket/unixsocket.c (recvmsg_blocking): use rsock_recvmsg. 23739 23740Sun Nov 6 03:22:36 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 23741 23742 * test/openssl/test_engine.rb: add test for engine cipher. RC4 is used 23743 because AES is not supported by the "openssl" engine currently. 23744 23745Sun Nov 6 00:11:52 2011 Tanaka Akira <akr@fsij.org> 23746 23747 * lib/test/unit.rb (Test::Unit::Options#non_options): options[:ruby] 23748 should be an array. This fixes 23749 "./ruby test/runner.rb test/testunit/test_parallel.rb" 23750 [ruby-dev:44782] 23751 23752Sat Nov 5 20:30:30 2011 Martin Duerst <duerst@it.aoyama.ac.jp> 23753 23754 * insns.def: Some fixes and tweaks to English explanations 23755 23756Sat Nov 5 19:11:50 2011 Tanaka Akira <akr@fsij.org> 23757 23758 * io.c (rb_cloexec_fcntl_dupfd): don't clear try_dupfd_cloexec if 23759 fcntl(F_DUPFD) failed as fcntl(F_DUPFD_CLOEXEC). 23760 23761Sat Nov 5 18:05:12 2011 Tanaka Akira <akr@fsij.org> 23762 23763 * ext/socket/socket.c (rsock_socketpair0): refactored. 23764 23765Sat Nov 5 17:55:52 2011 Tanaka Akira <akr@fsij.org> 23766 23767 * ext/socket/init.c (rsock_socket0): don't clear try_sock_cloexec if 23768 SOCK_CLOEXEC is not a reason for EINVAL. 23769 23770Sat Nov 5 16:27:52 2011 Kazuki Tsujimoto <kazuki@callcc.net> 23771 23772 * ext/pathname/lib/pathname.rb, ext/tk/lib/multi-tk.rb, 23773 ext/tk/sample/demos-en/widget, lib/benchmark.rb, lib/irb/cmd/fork.rb, 23774 lib/mkmf.rb, lib/net/ftp.rb, lib/net/smtp.rb, lib/open3.rb, 23775 lib/pstore.rb, lib/rexml/element.rb, lib/rexml/light/node.rb, 23776 lib/rinda/tuplespace.rb, lib/rss/maker/base.rb, 23777 lib/rss/maker/entry.rb, lib/scanf.rb, lib/set.rb, lib/shell.rb, 23778 lib/shell/command-processor.rb, lib/shell/process-controller.rb, 23779 lib/shell/system-command.rb, lib/uri/common.rb: remove unused block 23780 arguments to avoid creating Proc objects. 23781 23782Sat Nov 5 15:45:04 2011 Tanaka Akira <akr@fsij.org> 23783 23784 * ext/socket/init.c (rsock_socket0): extract single socket() call with 23785 CLOEXEC handling from rsock_socket. 23786 23787Sat Nov 5 13:49:40 2011 Kazuki Tsujimoto <kazuki@callcc.net> 23788 23789 * lib/pathname.rb (Pathname#find): return an enumerator if 23790 no block is given. 23791 23792 * test/pathname/test_pathname.rb: add tests for above. 23793 23794 [ruby-dev:44797] [Feature #5572] 23795 23796Sat Nov 5 11:18:12 2011 Tanaka Akira <akr@fsij.org> 23797 23798 * ext/socket/socket.c (rsock_socketpair0): don't clear 23799 try_sock_cloexec if SOCK_CLOEXEC is not a reason for EINVAL. 23800 23801Fri Nov 4 14:08:19 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 23802 23803 * ext/openssl/ossl_pkey_rsa.c (rsa_generate): [SECURITY] Set RSA 23804 exponent value correctly. Awful bug. This bug caused exponent of 23805 generated key to be always '1'. By default, and regardless of e 23806 given as a parameter. 23807 23808 !!! Keys generated by this code (trunk after 2011-09-01) must be 23809 re-generated !!! (ruby_1_9_3 is safe) 23810 23811 * test/openssl/test_pkey_rsa.rb: Add tests for default exponent and 23812 specifying exponent by a parameter. 23813 23814Fri Nov 4 01:31:25 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 23815 23816 * test/openssl/test_engine.rb: add first tests for builtin "openssl" 23817 engine. 23818 23819Fri Nov 4 08:41:26 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 23820 23821 * ext/openssl/extconf.rb: 23822 * ext/openssl/ossl_engine.c: add some missing OpenSSL engines. 23823 Thanks, Yui Naruse, for providing the patch! 23824 [Bug #5548] [ruby-core:40670] 23825 23826Fri Nov 4 04:54:10 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23827 23828 * win32/configure.bat: disable delayed expansion of enironment variable. 23829 [Bug #5517] [ruby-core:40531] 23830 23831Fri Nov 4 03:45:22 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23832 23833 * io.c (make_writeconv): fixed typo of previous commit. 23834 23835Fri Nov 4 01:56:30 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23836 23837 * io.c (make_writeconv): unversal_newline converter is for reading. 23838 so, if the io is text mode and has ECONV_UNIVERSAL_NEWLINE_DECORATOR 23839 flag, use crlf_newline converter for writing. 23840 this change fixes the problem about the luck of CR up Kernel.p and 23841 Kernel.puts to stdout/stderr on Windows. 23842 23843Fri Nov 4 01:04:48 2011 NARUSE, Yui <naruse@ruby-lang.org> 23844 23845 * ext/readline/readline.c (Init_readline): like r18313, libedit's 23846 replace_history_entry may use offset instead of which. 23847 so introduce history_replace_offset_func and initialize it. 23848 23849 * ext/readline/readline.c (hist_set): use history_replace_offset_func. 23850 23851Fri Nov 4 00:53:35 2011 NARUSE, Yui <naruse@ruby-lang.org> 23852 23853 * ext/readline/readline.c (Init_readline): fix wrong condition. 23854 23855Thu Nov 3 23:53:04 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23856 23857 * encoding.c (rb_locale_charmap): ignore calling nl_langinfo_codeset() 23858 on Windows except cygwin. [experimental] 23859 23860Thu Nov 3 22:45:09 2011 Tanaka Akira <akr@fsij.org> 23861 23862 * ext/socket/socket.c (rsock_socketpair0): extracted from 23863 rsock_socketpair to set close-on-exec flag for each socketpair() 23864 call. 23865 23866Thu Nov 3 22:12:41 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 23867 23868 * ext/socket/init.c (rsock_socket): set close-on-exec flag when 23869 SOCK_CLOEXEC is not available. 23870 23871Thu Nov 3 08:36:00 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 23872 23873 * test/openssl/test_engine.rb: call Engine::cleanup on exit. 23874 Patch provided by Yui Naruse, thanks! 23875 [Bug #5547] [ruby-core:40669] 23876 23877Wed Nov 2 21:36:00 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23878 23879 * complex.c (nucomp_rationalize): fix function. [ruby-core:40667] 23880 [Bug #5546] 23881 23882Wed Nov 2 08:16:45 2011 Tanaka Akira <akr@fsij.org> 23883 23884 * lib/webrick/utils.rb: fix fcntl call. 23885 23886 * lib/drb/unix.rb: ditto. 23887 23888Wed Nov 2 00:43:59 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 23889 23890 * test/psych/test_yamldbm.rb: avoid platform dependency. 23891 patch by Naohisa Goto. [ruby-dev:44763] [Bug #5535] 23892 * test/syck/test_yamldbm.rb: ditto. 23893 23894Wed Nov 2 00:14:15 2011 Shugo Maeda <shugo@ruby-lang.org> 23895 23896 * test/ruby/test_marshal.rb: renamed methods duplicated with those 23897 of marshaltestlib.rb. 23898 23899Tue Nov 1 22:08:27 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 23900 23901 * configure.in: reject llvm-gcc. 23902 23903Tue Nov 1 21:39:00 2011 NARUSE, Yui <naruse@ruby-lang.org> 23904 23905 * io.c (rb_cloexec_pipe): remove workaround of r33587. 23906 The bug of NetBSD is fixed on Mon Oct 31 21:31:29 UTC 2011. 23907 http://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=45545 23908 23909Tue Nov 1 19:49:08 2011 Tanaka Akira <akr@fsij.org> 23910 23911 * io.c (rb_io_reopen): call rb_fd_fix_cloexec instead of 23912 rb_maygvl_fd_fix_cloexec. 23913 23914Tue Nov 1 19:00:30 2011 Tanaka Akira <akr@fsij.org> 23915 23916 * io.c (rb_io_reopen): call rb_maygvl_fd_fix_cloexec after freopen(). 23917 23918Tue Nov 1 17:17:26 2011 NARUSE, Yui <naruse@ruby-lang.org> 23919 23920 * file.c (file_expand_path): reset coderange after expanding path. 23921 23922Tue Nov 1 14:55:29 2011 NARUSE, Yui <naruse@ruby-lang.org> 23923 23924 * io.c (nogvl_io_cntl): rb_cloexec_fcntl_dupfd's 2nd argument is int. 23925 23926 * process.c (move_fds_to_avoid_crash): ditto. 23927 23928Tue Nov 1 13:14:33 2011 NARUSE, Yui <naruse@ruby-lang.org> 23929 23930 * vsnprintf.c (BSD_vfprintf): support 'll' prefix. 23931 23932 * vsnprintf.c (__sfeof): rename to avoid the collision with NetBSD's 23933 one. 23934 23935 * vsnprintf.c (__sferror): ditto. 23936 23937 * vsnprintf.c (__sclearerr): ditto. 23938 23939 * vsnprintf.c (__sfileno): ditto. 23940 23941Tue Nov 1 12:36:16 2011 Tanaka Akira <akr@fsij.org> 23942 23943 * internal.h (rb_maygvl_fd_fix_cloexec): change the visibility for 23944 ext/socket. 23945 23946Tue Nov 1 12:00:53 2011 Tanaka Akira <akr@fsij.org> 23947 23948 * io.c (rb_maygvl_fd_fix_cloexec): renamed from fd_set_cloexec. 23949 23950 * internal.h (rb_maygvl_fd_fix_cloexec): declared. 23951 23952 * ext/socket/init.c (cloexec_accept): use rb_maygvl_fd_fix_cloexec. 23953 (rsock_s_accept_nonblock): use rb_update_max_fd. 23954 (rsock_s_accept): use rb_update_max_fd. 23955 23956Tue Nov 1 08:24:40 2011 Tanaka Akira <akr@fsij.org> 23957 23958 * ext/socket/init.c (cloexec_accept): new function to use accept4 if 23959 available. 23960 (rsock_s_accept_nonblock): use cloexec_accept. 23961 (accept_blocking): ditto. 23962 23963 * ext/socket/extconf.rb: check accept4. 23964 23965Tue Nov 1 07:31:55 2011 Tanaka Akira <akr@fsij.org> 23966 23967 * ext/socket/ancdata.c (nogvl_recvmsg_func): use MSG_CMSG_CLOEXEC if 23968 available. 23969 23970 * ext/socket/unixsocket.c (recvmsg_blocking): ditto. 23971 23972Tue Nov 1 05:59:41 2011 Tanaka Akira <akr@fsij.org> 23973 23974 * ext/socket/socket.c (rsock_socketpair): use SOCK_CLOEXEC if 23975 available. 23976 23977Tue Nov 1 02:56:17 2011 NAKAMURA Usaku <usa@ruby-lang.org> 23978 23979 * ruby.c (load_file_internal): convert the encoding of load path if 23980 needed by platform. calling open() was replaced by rb_cloexec_open() 23981 at r33549, but the function expected UTF-8 pathname on Windows. 23982 (open() expected "locale" pathname.) 23983 reported by taco via IRC. 23984 23985 * ruby.c (load_file): change the type of the 2nd parameter to pass its 23986 encoding to load_file_internal(). 23987 23988 * ruby.c (process_options, rb_load_file): follow above change. 23989 NOTE: we should pass encoding information to rb_load_file(). 23990 23991Mon Oct 31 23:49:38 2011 Tanaka Akira <akr@fsij.org> 23992 23993 * ext/socket/socket.c (rsock_socketpair): extracted from 23994 rsock_sock_s_socketpair. 23995 23996Mon Oct 31 23:31:53 2011 Tanaka Akira <akr@fsij.org> 23997 23998 * ext/socket/init.c (rsock_socket): use SOCK_CLOEXEC if available. 23999 24000Mon Oct 31 21:47:44 2011 NARUSE, Yui <naruse@ruby-lang.org> 24001 24002 * io.c (rb_cloexec_pipe): NetBSD 6.0 will support pipe2(2), 24003 but its return value is -1 or larger than 0. 24004 24005Mon Oct 31 22:04:54 2011 Tanaka Akira <akr@fsij.org> 24006 24007 * ext/dbm/dbm.c (fdbm_initialize): use O_CLOEXEC if available. 24008 24009Mon Oct 31 21:47:48 2011 Tanaka Akira <akr@fsij.org> 24010 24011 * include/ruby/intern.h (rb_fd_fix_cloexec): renamed from 24012 rb_fd_set_cloexec. 24013 24014 * io.c: follow the above renaming. 24015 24016 * ext/pty/pty.c: ditto. 24017 24018 * ext/socket/init.c: ditto. 24019 24020 * ext/socket/socket.c: ditto. 24021 24022 * ext/socket/ancdata.c: ditto. 24023 24024 * ext/socket/unixsocket.c: ditto. 24025 24026Mon Oct 31 21:02:43 2011 Tanaka Akira <akr@fsij.org> 24027 24028 * lib/resolv.rb (Resolv::DNS): retry IO.select for premature wakeup. 24029 24030Mon Oct 31 20:14:22 2011 Tanaka Akira <akr@fsij.org> 24031 24032 * io.c (fd_set_cloexec): clear CLOEXEC flag for standard file 24033 descriptors. 24034 (rb_cloexec_dup): use rb_cloexec_fcntl_dupfd. 24035 (rb_cloexec_fcntl_dupfd): use F_DUPFD_CLOEXEC if available. 24036 24037Mon Oct 31 19:14:11 2011 Tanaka Akira <akr@fsij.org> 24038 24039 * test/resolv/test_dns.rb: don't check maximum slept time. 24040 ruby doesn't guarantee the maximum time because it is not a 24041 realtime application. 24042 24043Mon Oct 31 13:10:06 2011 NAKAMURA Usaku <usa@ruby-lang.org> 24044 24045 * win32/win32.c (setfl): extract from fcntl(). 24046 24047 * win32/win32.c (dupfd): new function to support F_DUPFD. based on a 24048 patch written by akr. 24049 24050 * win32/win32.c (fcntl): use above functions. 24051 24052 * include/ruby/win32.h (F_DUPFD): define. [experimental] 24053 24054 * include/ruby/win32.h (F_SETFL): change the value to correspond with 24055 other platforms. 24056 24057Mon Oct 31 12:37:50 2011 Tanaka Akira <akr@fsij.org> 24058 24059 * ext/pty/pty.c (get_device_once): use O_CLOEXEC for posix_openpt if 24060 available. 24061 24062Mon Oct 31 12:05:24 2011 Tanaka Akira <akr@fsij.org> 24063 24064 * io.c (rb_cloexec_dup2): check oldfd == newfd at first. 24065 pointed by KOSAKI Motohiro. [ruby-dev:44713] 24066 24067Mon Oct 31 10:50:26 2011 NAKAMURA Usaku <usa@ruby-lang.org> 24068 24069 * io.c (rb_cloexec_fcntl_dupfd): this function needs F_DUPFD. 24070 24071 * io.c (nogvl_io_cntl): use rb_cloexec_fcntl_dupfd() only if the 24072 platform has F_DUPFD. 24073 24074Mon Oct 31 00:50:00 2011 Luis Lavena <luislavena@gmail.com> 24075 24076 * configure.in: check -fno-omit-frame-pointer acceptance and usage 24077 under MinGW. [ruby-core:39957] [Bug #5407] 24078 24079Mon Oct 31 00:16:11 2011 Tanaka Akira <akr@fsij.org> 24080 24081 * include/ruby/intern.h (rb_cloexec_fcntl_dupfd): declared. 24082 24083 * io.c (rb_cloexec_fcntl_dupfd): new function. 24084 (nogvl_io_cntl): use rb_cloexec_fcntl_dupfd. 24085 24086 * process.c (move_fds_to_avoid_crash): use rb_cloexec_fcntl_dupfd. 24087 24088Sun Oct 30 22:46:46 2011 Tanaka Akira <akr@fsij.org> 24089 24090 * configure.in: check pipe2. 24091 24092 * io.c (rb_cloexec_pipe): use pipe2 if available. 24093 24094Sun Oct 30 22:32:44 2011 Tanaka Akira <akr@fsij.org> 24095 24096 * ruby.c (fill_standard_fds): use fstat() instead of fcntl(F_GETFD) 24097 for MinGW. reported by Luis Lavena. [ruby-core:40526] [Bug #5516] 24098 24099Sun Oct 30 21:12:47 2011 Tanaka Akira <akr@fsij.org> 24100 24101 * include/ruby/intern.h (rb_cloexec_pipe): declared. 24102 24103 * io.c (rb_cloexec_pipe): new function. 24104 (rb_pipe): use rb_cloexec_pipe. 24105 24106 * thread_pthread.c (rb_thread_create_timer_thread): use 24107 rb_cloexec_pipe. 24108 24109Sun Oct 30 20:06:07 2011 Tanaka Akira <akr@fsij.org> 24110 24111 * io.c (rb_cloexec_dup): refine control flow. 24112 (rb_cloexec_dup2): ditto. 24113 24114Sun Oct 30 18:45:50 2011 Tanaka Akira <akr@fsij.org> 24115 24116 * ruby.c (fill_standard_fds): new function to open closed standard 24117 file descriptors. 24118 (ruby_sysinit): call fill_standard_fds. 24119 24120Sun Oct 30 10:50:36 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24121 24122 * tool/rbinstall.rb (install_recursive, bin-comm): split mere 24123 string not path name. [ruby-core:40462] [Bug #5492] 24124 24125Sun Oct 30 10:47:20 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24126 24127 * io.c (rb_cloexec_dup, rb_cloexec_dup2): CLOEXEC has been set if 24128 dup3 succeeded. 24129 24130Sun Oct 30 09:58:48 2011 Tanaka Akira <akr@fsij.org> 24131 24132 * io.c (rb_cloexec_dup): don't allocate standard file descriptors. 24133 24134Sun Oct 30 08:29:51 2011 Tanaka Akira <akr@fsij.org> 24135 24136 * io.c (rb_cloexec_dup2): don't set CLOEXEC for standard file 24137 descriptors. 24138 24139Sun Oct 30 07:47:10 2011 Tanaka Akira <akr@fsij.org> 24140 24141 * configure.in: check dup3. 24142 24143 * io.c (rb_cloexec_dup2): use dup3 if available. 24144 24145Sat Oct 29 22:06:37 2011 Tanaka Akira <akr@fsij.org> 24146 24147 * include/ruby/intern.h (rb_cloexec_dup2): declared. 24148 24149 * io.c (rb_cloexec_dup2): new function. 24150 (io_reopen): use rb_cloexec_dup2. 24151 24152Sat Oct 20 21:08:18 2011 Tajima Akio <artonx@yahoo.co.jp> 24153 24154 * win32/Makefile.sub (CONFIG_H): have stdint.h if VC2010. 24155 [Bug #5243] 24156 24157Sat Oct 29 20:59:08 2011 Tanaka Akira <akr@fsij.org> 24158 24159 * io.c (rb_cloexec_dup): use F_DUPFD_CLOEXEC if available. 24160 24161Sat Oct 29 20:00:26 2011 Tanaka Akira <akr@fsij.org> 24162 24163 * include/ruby/intern.h (rb_cloexec_dup): declared. 24164 24165 * io.c (rb_cloexec_dup): new function. 24166 (ruby_dup): use rb_cloexec_dup. 24167 24168 * ext/pty/pty.c (pty_getpty): use rb_cloexec_dup. 24169 24170 * ext/openssl/ossl_bio.c (ossl_obj2bio): ditto. 24171 24172Sat Oct 29 16:11:34 2011 Tanaka Akira <akr@fsij.org> 24173 24174 * ext/sdbm/_sdbm.c (sdbm_prep): use O_CLOEXEC if available. 24175 24176Sat Oct 29 14:26:56 2011 Tanaka Akira <akr@fsij.org> 24177 24178 * io.c (rb_cloexec_open): use O_CLOEXEC if available. 24179 24180Sat Oct 29 12:57:15 2011 Tanaka Akira <akr@fsij.org> 24181 24182 * process.c (ruby_setsid): use rb_cloexec_open. 24183 (rb_daemon): ditto. 24184 24185 * ruby.c (load_file_internal): ditto. 24186 24187 * file.c (rb_file_s_truncate): ditto. 24188 (file_load_ok): ditto. 24189 24190 * random.c (fill_random_seed): ditto. 24191 24192 * ext/pty/pty.c (chfunc): ditto. 24193 (get_device_once): ditto. 24194 24195 * ext/io/console/console.c (console_dev): ditto. 24196 24197Sat Oct 29 10:40:19 2011 Tanaka Akira <akr@fsij.org> 24198 24199 * include/ruby/intern.h (rb_cloexec_open): declared. 24200 24201 * io.c (fd_set_cloexec): extracted from rb_fd_set_cloexec. 24202 (rb_cloexec_open): new function. 24203 (sysopen_func): use rb_cloexec_open. 24204 (rb_sysopen_internal): use rb_update_max_fd instead of 24205 rb_fd_set_cloexec. 24206 24207Sat Oct 29 09:05:07 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24208 24209 * thread_pthread.h: no Structured Exception Handling like macros. 24210 [ruby-core:40432] [Bug #5491] 24211 24212Fri Oct 28 22:05:34 2011 Tanaka Akira <akr@fsij.org> 24213 24214 * ext/sdbm/_sdbm.c: RCS $Id$ removed. 24215 24216Thu Oct 27 18:58:00 2011 NARUSE, Yui <naruse@ruby-lang.org> 24217 24218 * parse.y (parser_nextc): set encoding for the buffer of ripper. 24219 24220Fri Oct 28 06:06:08 2011 Tanaka Akira <akr@fsij.org> 24221 24222 * ext/sdbm/_sdbm.c (sdbm_prep): set FD_CLOEXEC flags for file 24223 descriptors. 24224 (fd_set_cloexec): new function. 24225 24226Fri Oct 28 03:01:27 2011 Aaron Patterson <aaron@tenderlovemaking.com> 24227 24228 * vm_insnhelper.c (vm_call_cfunc): adding back useless hack. For some 24229 reason, this fixes CFP errors on OS X 10.7. 24230 24231Fri Oct 28 00:09:31 2011 Tanaka Akira <akr@fsij.org> 24232 24233 * ext/sdbm/_sdbm.c (sdbm_prep): refactored for less nesting. 24234 24235Thu Oct 27 18:28:18 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24236 24237 * configure.in (RUBY_DEFINE_IF): revert r33534 partially to get 24238 rid of AS_ECHO which is not available in autoconf 2.61. 24239 [ruby-dev:44702] 24240 24241Thu Oct 27 16:10:46 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24242 24243 * bignum.c (rb_big_divide): raise ZeroDivisionError if divisor is 24244 zero, as well as Fixnum. [ruby-core:40429] [Bug #5490] 24245 24246Thu Oct 27 14:56:22 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24247 24248 * configure.in (RUBY_FUNC_ATTRIBUTE): unset temporary variable. 24249 24250 * configure.in (RUBY_STACK_GROW_DIRECTION): substitute CPU name as 24251 shell variable name. based on the patch by The Written Word Inc. at 24252 [ruby-core:40421]. [Bug #5488] 24253 24254Thu Oct 27 09:57:56 2011 NARUSE, Yui <naruse@ruby-lang.org> 24255 24256 * include/ruby/ruby.h (SIZE_MAX): define SIZE_MAX if not defined. 24257 patched by The Written Word Inc. [ruby-core:40422] [Bug #5489] 24258 24259Thu Oct 27 08:47:38 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 24260 24261 * ext/psych/parser.c: remove unused variable. 24262 24263Thu Oct 27 08:38:41 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 24264 24265 * ext/openssl/extconf.rb: add -Wall flag by default when compiler is 24266 GCC. 24267 24268Wed Oct 26 15:24:25 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24269 24270 * file.c (rb_file_join): honor input encodings than ASCII-8BIT. 24271 [ruby-core:40338] [Bug #5483] 24272 24273Tue Oct 25 21:52:31 2011 Tanaka Akira <akr@fsij.org> 24274 24275 * include/ruby/defines.h: use "__sparc" instead of "sparc" and 24276 "__sparc__". 24277 24278 * dln.c: ditto. 24279 24280 [ruby-dev:44694] 24281 24282Tue Oct 25 06:34:39 2011 Eric Hodel <drbrain@segment7.net> 24283 24284 * re.c (match_aref): Use <code> around indexing examples to prevent 24285 hyperlinks. [ruby-talk:389396] 24286 24287Mon Oct 24 23:55:31 2011 Tanaka Akira <akr@fsij.org> 24288 24289 * complex.c: use "__sun" instead of "__sun__" to detect SunOS. 24290 24291 * math.c: ditto. 24292 24293 * hash.c: ditto. 24294 24295 * atomic.h: ditto. 24296 24297 * ext/io/wait/wait.c: ditto. 24298 24299 [ruby-dev:44693] 24300 24301Mon Oct 24 22:45:37 2011 Tanaka Akira <akr@fsij.org> 24302 24303 * io.c: use "__sun" instead of "sun" to detect SunOS. 24304 24305 * dln.c: ditto. 24306 24307 * cont.c: ditto. 24308 24309 * ext/sdbm/_sdbm.c: ditto. 24310 24311 [ruby-dev:44693] 24312 24313Mon Oct 24 22:38:08 2011 Tanaka Akira <akr@fsij.org> 24314 24315 * ext/pty/pty.c (get_device_once): delay rb_fd_set_cloexec() until 24316 grantpt() on Solaris. grantpt() doesn't work with CLOEXEC on 24317 Solaris 10. 24318 reported by Naohisa GOTO. [ruby-dev:44688] [Bug #5475] 24319 24320Mon Oct 24 08:18:14 2011 Tanaka Akira <akr@fsij.org> 24321 24322 * io.c (copy_stream_fallback_body): check nil for EOF of read method. 24323 patch by Eric Wong. [ruby-core:39134] [Bug #5237] 24324 24325Sun Oct 23 18:21:23 2011 Kazuki Tsujimoto <kazuki@callcc.net> 24326 24327 * ext/tk/MANUAL_tcltklib.eng: fix typo. 24328 24329Sun Oct 23 18:03:31 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24330 24331 * numeric.c (rb_infinity, rb_nan): aggregated member initializers 24332 need braces. 24333 24334Sun Oct 23 16:43:43 2011 Naohisa Goto <ngotogenome@gmail.com> 24335 24336 * ext/io/wait/wait.c: ioctl(2) is declared in unistd.h on Solaris. 24337 24338Sun Oct 23 16:33:35 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 24339 24340 * ext/tk/MANUAL_tcltklib.eng: fix typo. reported by Mimura-san. 24341 [ruby-dev:44683] [Bug #5471] 24342 24343Sun Oct 23 08:01:29 2011 Tanaka Akira <akr@fsij.org> 24344 24345 * io.c (rb_fd_set_cloexec): set close-on-exec flag only if F_GETFD is 24346 defined. reported by Luis Lavena. [ruby-core:40281] [Bug #5470] 24347 24348Sat Oct 22 19:48:50 2011 Tanaka Akira <akr@fsij.org> 24349 24350 * test/openssl/test_ssl.rb (test_multibyte_read_write): start server 24351 for each length to avoid race condition. 24352 24353Sat Oct 22 18:49:24 2011 Tanaka Akira <akr@fsij.org> 24354 24355 * include/ruby/intern.h (rb_fd_set_cloexec): declared. 24356 24357 * io.c (rb_fd_set_cloexec): new function. 24358 (ruby_dup): call rb_fd_set_cloexec to set close-on-exec flag. 24359 (rb_sysopen_internal): ditto. 24360 (rb_pipe): ditto. 24361 (io_reopen): ditto. 24362 (io_cntl): ditto. 24363 24364 * process.c (rb_f_exec): change the default :close_others option to 24365 true. 24366 (rb_f_system): ditto. 24367 (move_fds_to_avoid_crash): call rb_fd_set_cloexec to set 24368 close-on-exec flag. 24369 (ruby_setsid): ditto. 24370 (rb_daemon): ditto. 24371 24372 * thread_pthread.c (rb_thread_create_timer_thread): call 24373 rb_fd_set_cloexec to set close-on-exec flag. 24374 24375 * ruby.c (load_file_internal): ditto. 24376 24377 * file.c (rb_file_s_truncate): ditto. 24378 (file_load_ok): ditto. 24379 24380 * random.c (fill_random_seed): ditto. 24381 24382 * ext/pty/pty.c (chfunc): ditto. 24383 (get_device_once): ditto. 24384 24385 * ext/openssl/ossl_bio.c (ossl_obj2bio): ditto. 24386 24387 * ext/socket/init.c (rsock_socket): ditto. 24388 (rsock_s_accept_nonblock): ditto. 24389 (rsock_s_accept): ditto. 24390 24391 * ext/socket/socket.c (rsock_sock_s_socketpair): ditto. 24392 24393 * ext/socket/ancdata.c (discard_cmsg): ditto. 24394 (make_io_for_unix_rights): ditto. 24395 24396 * ext/socket/unixsocket.c (unix_recv_io): ditto. 24397 24398 * ext/io/console/console.c (console_dev): ditto. 24399 24400 [ruby-core:38140] [Feature #5041] 24401 24402Sat Oct 22 17:46:27 2011 Tanaka Akira <akr@fsij.org> 24403 24404 * lib/resolv.rb: fix a exception name in previous patch. 24405 24406Sat Oct 22 17:43:33 2011 Tanaka Akira <akr@fsij.org> 24407 24408 * lib/resolv.rb: make timeout configurable for DNS query. 24409 patch by Eric Wong. [ruby-core:38533] [Feature #5100] 24410 24411Sat Oct 22 02:07:48 2011 Naohisa Goto <ngotogenome@gmail.com> 24412 24413 * numeric.c (rb_infinity, rb_nan): use union to prevent bus error 24414 caused by misalignment. [Bug #5469] [ruby-dev:44657] 24415 24416 * include/ruby/missing.h (INFINITY, NAN): ditto 24417 24418Fri Oct 21 22:02:17 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24419 24420 * gc.c (initial_params): pack in a struct. 24421 24422 * gc.c (rb_gc_set_params): set parameters always. 24423 [ruby-dev:44648] [Bug #5467] 24424 24425Fri Oct 21 12:10:20 2011 Naohisa Goto <ngotogenome@gmail.com> 24426 24427 * atomic.h: change Solaris checking macro because atomic_ops can work 24428 not only with Sun Studio but also with Fujitsu C Compiler. 24429 24430Fri Oct 21 02:11:00 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 24431 24432 * ext/openssl/ossl_ns_spki.c: Complete documentation. 24433 * test/openssl/test_ns_spki.rb: Integrate SPKI#to_text. 24434 24435Thu Oct 20 22:47:28 2011 NAKAMURA Usaku <usa@ruby-lang.org> 24436 24437 * win32/win32.c (socklist_insert, socklist_lookup, socklist_delete): 24438 new functions to wrap of st_insert(), st_lookup() and st_delete() to 24439 socklist. 24440 allocating socklist is deferred until it is really needed. 24441 24442 * win32/win32.c (exit_handler): delete socklist only if it is 24443 initialized. 24444 24445 * win32/win32.c (rb_w32_sysinit, StartSockets): refactoring: move 24446 initialization of select_mutex to StartSockets(). 24447 24448 * win32/win32.c (exit_handler): refactoring: delete select_mutex only 24449 if winsock is used. 24450 24451Thu Oct 20 22:38:53 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 24452 24453 * ext/openssl/ossl_pkcs5.c: add note on timing attacks and general 24454 documentation. 24455 24456Thu Oct 20 21:19:15 2011 Naohisa Goto <ngotogenome@gmail.com> 24457 24458 * vm_eval.c (check_funcall): set array elements one-by-one to fix 24459 compile error with Fujitsu C Compiler 5.6 on Solaris 10 on Sparc. 24460 [Bug #5464] [ruby-dev:44632] 24461 24462Thu Oct 20 13:09:35 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24463 24464 * include/ruby/defines.h (flush_register_windows): use software 24465 trap on Debian Sparc 32-bit userspace. [Bug #5244] 24466 24467Thu Oct 20 12:28:22 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 24468 24469 * test/openssl/test_pkcs5.rb: add RFC 6070 tests for PBKDF2 with 24470 HMAC-SHA1 24471 24472Thu Oct 20 11:42:23 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24473 24474 * util.c (mmprepare): fix for fragmental size. 24475 24476 * util.c (mmswap_, mmrot3_): portability improvement. 24477 24478Thu Oct 20 05:58:02 2011 Eric Hodel <drbrain@segment7.net> 24479 24480 * ext/openssl/ossl_ns_spki.c (Init_ossl_ns_spki): Stub documentation 24481 for Netscape SPKI. 24482 24483Thu Oct 20 05:13:39 2011 Ryan Davis <ryand-ruby@zenspider.com> 24484 24485 * lib/minitest/*: Imported minitest 2.6.2 (r6712) 24486 * test/minitest/*: ditto 24487 24488Thu Oct 20 06:55:32 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 24489 24490 * lib/openssl/buffering.rb: Force multi-byte strings to be treated as 24491 binary data. 24492 * test/openssl/test_ssl.rb: Add test for it. 24493 24494 Thanks to Niklas Baumstark for reporting the issue! 24495 24496 [Ruby 1.9 - Bug #5233] [ruby-core:39120] 24497 24498Wed Oct 19 17:06:54 2011 Yukihiro Matsumoto <matz@ruby-lang.org> 24499 24500 * version.h (RUBY_VERSION): finally declare start of 2.0 work! 24501 24502Wed Oct 19 11:48:44 2011 Eric Hodel <drbrain@segment7.net> 24503 24504 * error.c (Init_Exception): Document $! and $@. Provide 24505 recommendations for creating exceptions for a library. 24506 24507Wed Oct 19 11:25:46 2011 Eric Hodel <drbrain@segment7.net> 24508 24509 * error.c (Init_Exception): Add hierarchy of Exception subclasses. 24510 Based on patch by Sylvain Daubert. [Ruby 1.9 - Bug #5438] 24511 24512Wed Oct 19 11:04:47 2011 Eric Hodel <drbrain@segment7.net> 24513 24514 * enum.c: Reformat block args to a single standard, { |args| ... }. 24515 Patch by b t. [Ruby 1.9 - Bug #5393] 24516 24517Wed Oct 19 12:11:26 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 24518 24519 * ext/openssl/ossl_ssl.c: Remove set, but unused variables. 24520 ext/openssl/ossl_pkey.c: ditto 24521 24522 * ext/openssl/ossl_pkey_dh.c: Make functions passed to 24523 rb_thread_blocking_region return VALUE instead of void. 24524 ext/openssl/ossl_pkey_dsa.c: ditto 24525 ext/openssl/ossl_pkey_rsa.c: ditto 24526 24527Tue Oct 18 23:28:53 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24528 24529 * hash.c (identhash): share with type_numhash. 24530 24531 * st.c (st_hashtype_num): rename from type_numhash. 24532 24533Tue Oct 18 23:07:30 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24534 24535 * vm_core.h (ruby_current_thread): probeprofiler has been removed 24536 long ago. 24537 24538Tue Oct 18 23:05:49 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24539 24540 * ext/ripper/eventids2.c (ripper_init_eventids2): separate 24541 initializations of IDs and objects. 24542 24543 * ext/ripper/tools/generate.rb (generate_eventids1): ditto. 24544 24545 * parse.y (Init_ripper, InitVM_ripper): fix inversed roles. 24546 24547Sun Oct 16 19:46:16 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24548 24549 * ext/bigdecimal/bigdecimal.gemspec (files): fixed typo, and 24550 removed nonexistent file. 24551 24552 * ext/bigdecimal/bigdecimal.gemspec (homepage): added. 24553 24554 * ext/io/console/io-console.gemspec (homepage): ditto. 24555 24556Fri Oct 14 12:13:57 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24557 24558 * ext/pty/pty.c (pty_check): should return nil until the child 24559 terminates or stops. [ruby-dev:44600] [Bug #2642] 24560 24561Fri Oct 14 11:19:37 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24562 24563 * include/ruby/intern.h (rb_ary_rotate): export. 24564 24565Fri Oct 14 05:58:05 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24566 24567 * atomic.h (ATOMIC_INC, ATOMIC_DEC): return old values. 24568 [ruby-dev:44596] [Bug #5439] 24569 24570 * signal.c (ruby_atomic_exchange): no needs to define on the 24571 platforms where atomic.h is available. 24572 24573Thu Oct 13 19:29:40 2011 Naohisa Goto <ngotogenome@gmail.com> 24574 24575 * atomic.h (ATOMIC_*): use atomic_ops(3C) when SunStudio on Solaris. 24576 [ruby-dev:44596] [Bug #5439] 24577 24578Thu Oct 13 18:13:04 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 24579 24580 * atomic.h(ATOMIC_SET): add cast to void to prevent misuse. 24581 [ruby-dev:44596] [Bug #5439] 24582 24583Thu Oct 13 18:04:27 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24584 24585 * gc.c (rb_gc_finalize_deferred, rb_objspace_call_finalizer): 24586 should use ATOMIC_EXCHANGE() to check the previous value. 24587 [ruby-dev:44596] [Bug #5439] 24588 24589Wed Oct 12 23:39:58 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 24590 24591 * test/openssl/test_ssl.rb: Move duplicated tests for SSL::Session to 24592 test_ssl_session.rb 24593 24594Tue Oct 11 08:49:40 2011 Eric Hodel <drbrain@segment7.net> 24595 24596 * array.c (rb_ary_initialize): Improve explanation of Array.new 24597 parameters. Patch by Alvaro Pereyra Rabanal. [Ruby 1.9 - Bug #5425] 24598 * array.c (rb_ary_s_try_convert): Fix typo (try => tries) 24599 * array.c (rb_ary_rindex): Add spacing for block. 24600 * array.c (rb_ary_uniq_bang): Describe block 24601 * array.c (rb_ary_uniq): ditto 24602 24603Tue Oct 11 07:55:38 2011 Eric Hodel <drbrain@segment7.net> 24604 24605 * array.c: Add a description to Array, minor cleanups. Patch by 24606 Andrea Singh. [Ruby 1.9 - Bug #5412] 24607 24608Tue Oct 11 06:09:52 2011 Eric Hodel <drbrain@segment7.net> 24609 24610 * lib/pp.rb: Move PP documentation to top of class PP. Patch by 24611 Sylvain Daubert. [Ruby 1.9 - Bug #5430] 24612 24613Tue Oct 11 06:06:29 2011 Eric Hodel <drbrain@segment7.net> 24614 24615 * ext/coverage/coverage.c (Init_coverage): Change list format and 24616 describe Coverage.result output. Patch by Sylvain Daubert. 24617 [Ruby 1.9 - Bug #5428] 24618 24619Tue Oct 11 05:53:23 2011 Eric Hodel <drbrain@segment7.net> 24620 24621 * object.c (Init_Object): Add reference to BasicObject, brief 24622 explanation of constant lookup. Based on patch by Alvaro Pereyra 24623 Rabanal. 24624 [Ruby 1.9 - Bug #5426] 24625 24626Sun Oct 9 11:06:52 2011 Kazuki Tsujimoto <kazuki@callcc.net> 24627 24628 * test/psych/test_yamldbm.rb: don't run test if the system 24629 don't support yaml/dbm. 24630 24631 * test/syck/test_yamldbm.rb: ditto. 24632 24633Sat Oct 8 08:54:56 2011 Eric Hodel <drbrain@segment7.net> 24634 24635 * enum.c (group_by): Improve group_by description. Patch by b t. 24636 [#5411] 24637 24638Sat Oct 8 03:17:51 2011 Eric Hodel <drbrain@segment7.net> 24639 24640 * lib/shell.rb: Document some methods of Shell. Patch by Carol 24641 Nichols. [Ruby 1.9 - Bug #5417] 24642 24643Fri Oct 7 17:54:28 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24644 24645 * lib/test/unit/assertions.rb (assert_send, assert_not_send): 24646 parenthesize non-empty arguments. 24647 24648Fri Oct 7 06:35:50 2011 Eric Hodel <drbrain@segment7.net> 24649 24650 * array.c: Use + for arguments described in documentation to allow 24651 rdoc -C2 to work better. Remove <code> from method references to 24652 allow cross-references in HTML documentation. 24653 24654Thu Oct 6 18:46:23 2011 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 24655 24656 * vm_eval.c (make_no_method_exception): fix typo. 24657 24658 * vm_insnhelper.c, vm_insnhelper.h: ditto. 24659 24660Thu Oct 6 16:29:30 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24661 24662 * vm_eval.c (make_no_method_execption): extract from 24663 raise_method_missing(). 24664 24665 * vm_eval.c (send_internal): remove inadvertent symbol creation 24666 from public_send. based on a patch by Jeremy Evans <code AT 24667 jeremyevans.net> in [ruby-core:38576]. [Feature #5112] 24668 24669 * vm_insnhelper.c (vm_call_method): remove inadvertent symbol 24670 creation from send and __send__, too. 24671 24672Thu Oct 6 14:59:11 2011 Eric Hodel <drbrain@segment7.net> 24673 24674 * lib/time.rb: Clean up Time documentation. Patch by Jake Goulding. 24675 [Ruby 1.9 - Bug #5416] 24676 24677Thu Oct 6 10:00:54 2011 Eric Hodel <drbrain@segment7.net> 24678 24679 * enum.c (group_by): Improve documentation based on patch by b t. 24680 24681Thu Oct 6 09:56:30 2011 Eric Hodel <drbrain@segment7.net> 24682 24683 * enum.c: Clean up wording in Enumerable documentation. Patch by b t. 24684 [Ruby 1.9 - Bug #5411] 24685 24686Thu Oct 6 09:17:18 2011 Eric Hodel <drbrain@segment7.net> 24687 24688 * time.c (Init_Time): Remove editorial comments from Time 24689 documentation, fix link. 24690 24691Thu Oct 6 09:14:20 2011 Eric Hodel <drbrain@segment7.net> 24692 24693 * time.c (Init_Time): Improve Time documentation. Patch by Shane 24694 Emmons. [Ruby 1.9 - Bug #5404] 24695 * lib/time.rb: Improve time.rb documentation including Time.strptime. 24696 Patch by Shane Emmons. [Ruby 1.9 - Bug #5402] 24697 24698Thu Oct 6 08:54:05 2011 Eric Hodel <drbrain@segment7.net> 24699 24700 * random.c: Improve documentation of Random. Patch by Gregory 24701 Parkhurst. [Ruby 1.9 - Bug #5410] 24702 24703Thu Oct 6 01:44:51 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 24704 24705 * cont.c (cont_mark): mark original Thread object from saved_thread. 24706 [ruby-dev:44571] [Bug #5386] 24707 24708Wed Oct 5 16:33:04 2011 NARUSE, Yui <naruse@ruby-lang.org> 24709 24710 * vm_insnhelper.c (vm_call_cfunc): remove useless hack. 24711 24712Wed Oct 5 05:56:39 2011 Eric Hodel <drbrain@segment7.net> 24713 24714 * hash.c (Init_Hash): Improve Hash documentation. Patch by Alvaro 24715 Pereyra Rabanal. [Ruby 1.9 - Bug #5405] 24716 24717Wed Oct 5 05:47:59 2011 Eric Hodel <drbrain@segment7.net> 24718 24719 * random.c (Init_Random): Add a top-level comment for Random. Patch 24720 by Brett Bim. [Ruby 1.9 - Bug #5403] 24721 24722Wed Oct 5 02:50:27 2011 Aaron Patterson <aaron@tenderlovemaking.com> 24723 24724 * ext/psych/lib/psych/syntax_error.rb: Add file, line, offset, and 24725 message attributes during parse failure. 24726 * ext/psych/parser.c: Update parser to raise exception with correct 24727 values. 24728 * test/psych/test_exception.rb: corresponding tests. 24729 24730Wed Oct 5 01:52:16 2011 Aaron Patterson <aaron@tenderlovemaking.com> 24731 24732 * ext/psych/parser.c (parse): Use context_mark for indicating error 24733 line and column. 24734 24735Wed Oct 5 01:22:08 2011 Aaron Patterson <aaron@tenderlovemaking.com> 24736 24737 * ext/psych/lib/psych/scalar_scanner.rb: use normal begin / rescue 24738 since postfix rescue cannot receive the exception class. Thanks 24739 nagachika! 24740 24741Tue Oct 4 21:10:08 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24742 24743 * class.c (class_alloc): allocate extra memory after containing 24744 object setup to get rid of rare-but-potential memory leak. 24745 24746 * gc.c (gc_mark_children): skip marking extended members if ptr is 24747 NULL. 24748 24749Tue Oct 4 16:17:50 2011 NARUSE, Yui <naruse@ruby-lang.org> 24750 24751 * lib/time.rb (Time.strptime): use Time.at if d[:seconds] is set. 24752 Reported by Christopher Eberz. [ruby-core:39903] Bug #5399 24753 24754Tue Oct 4 11:44:10 2011 NARUSE, Yui <naruse@ruby-lang.org> 24755 24756 * gc.c (rb_gc_set_params): ruby_verbose can be Qnil, so use RTEST. 24757 24758Tue Oct 4 08:33:41 2011 Eric Hodel <drbrain@segment7.net> 24759 24760 * ext/etc/etc.c: Document Etc, Etc.sysconfdir, Etc.systmpdir. Patch 24761 by mathew murphy. [Ruby 1.9 - Bug #5396] 24762 24763Tue Oct 4 08:21:51 2011 Eric Hodel <drbrain@segment7.net> 24764 24765 * lib/shellwords.rb: Update toplevel comment with an example. Patch 24766 by Samnang Chhun. [Ruby 1.9 - Bug #5388] 24767 24768Tue Oct 4 08:15:50 2011 Eric Hodel <drbrain@segment7.net> 24769 24770 * proc.c (proc_call): Update documentation to match argument handling 24771 of proc/Proc.new/lambda/->() 24772 24773Tue Oct 4 07:59:16 2011 Eric Hodel <drbrain@segment7.net> 24774 24775 * proc.c (proc_call): Fix documentation of Proc#call vs Proc#===. 24776 [Ruby 1.9 - Bug #5349] 24777 24778Tue Oct 4 07:43:18 2011 Eric Hodel <drbrain@segment7.net> 24779 24780 * array.c (rb_ary_initialize): Make Array.new description match 24781 call-seq. Patch by Henry Maddocks. [Ruby 1.9 - Bug #5344] 24782 24783Tue Oct 4 07:35:23 2011 Eric Hodel <drbrain@segment7.net> 24784 24785 * array.c (rb_ary_initialize): Add output for examples. Patch by 24786 Jonathan Mukai. [Ruby 1.9 - Bug #5216] 24787 24788Tue Oct 4 07:30:50 2011 Eric Hodel <drbrain@segment7.net> 24789 24790 * array.c (rb_ary_s_create): Add example results for Array::[]. Patch 24791 by Jonathan Mukai. [Ruby 1.9 - Bug #5215] 24792 24793Tue Oct 4 07:15:17 2011 Eric Hodel <drbrain@segment7.net> 24794 24795 * lib/rubygems: Update to RubyGems 1.8.11. Move Deprecate into the 24796 Gem namespace. 24797 24798Tue Oct 4 06:43:47 2011 Aaron Patterson <aaron@tenderlovemaking.com> 24799 24800 * ext/psych/lib/psych.rb: update psych version. 24801 * ext/psych/psych.gemspec: generate new gemspec for new version. 24802 24803Tue Oct 4 06:29:55 2011 Aaron Patterson <aaron@tenderlovemaking.com> 24804 24805 * ext/psych/lib/psych.rb: calling `yaml` rather than `to_yaml`. 24806 * ext/psych/lib/psych/nodes/node.rb: Rename `to_yaml` to just `yaml` 24807 in order to avoid YAML::ENGINE switching from replacing this method. 24808 * test/psych/helper.rb: fix tests for method name change. 24809 * test/psych/test_document.rb: ditto 24810 * test/psych/visitors/test_emitter.rb: ditto 24811 24812Tue Oct 4 06:20:19 2011 Aaron Patterson <aaron@tenderlovemaking.com> 24813 24814 * ext/psych/lib/psych/scalar_scanner.rb: Match values against the 24815 floating point spec defined in YAML to avoid erroneous parses. 24816 * test/psych/test_numeric.rb: corresponding test. 24817 24818Tue Oct 4 05:59:24 2011 Aaron Patterson <aaron@tenderlovemaking.com> 24819 24820 * ext/psych/lib/psych/visitors/to_ruby.rb: ToRuby visitor can be 24821 constructed with a ScalarScanner. 24822 * ext/psych/lib/psych/visitors/yaml_tree.rb: ScalarScanner can be 24823 passed to the YAMLTree visitor. 24824 24825Tue Oct 4 05:47:23 2011 Aaron Patterson <aaron@tenderlovemaking.com> 24826 24827 * ext/psych/lib/psych/visitors/to_ruby.rb: Define Regexp::NOENCODING 24828 for 1.9.2 backwards compatibility. 24829 * ext/psych/lib/psych/visitors/yaml_tree.rb: Fix Date string 24830 generation for 1.9.2 backwards compatibility. 24831 24832Mon Oct 3 23:56:39 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 24833 24834 * gc.c (rb_gc_set_params): output GC parameter change messages only 24835 if -w/-v options are specified. these messages are output to stderr, 24836 not to stdout. [ruby-core:39795] [Bug #5380] 24837 24838 * test/ruby/test_gc.rb (test_gc_parameter): add test for it. 24839 24840Sun Oct 2 20:05:32 2011 Kazuki Tsujimoto <kazuki@callcc.net> 24841 24842 * vm.c (rb_thread_mark), cont.c (cont_mark): revert r33369 and r33371 24843 that may cause SEGV in certain environments. 24844 24845Sun Oct 2 12:14:06 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 24846 24847 * test/psych/test_yamldbm.rb: add test case. 24848 * test/syck/test_yamldbm.rb: ditto. 24849 24850Sun Oct 2 11:28:09 2011 Aaron Patterson <aaron@tenderlovemaking.com> 24851 24852 * lib/yaml/store.rb: make initialize method signature match the 24853 superclass signature. 24854 24855Sun Oct 2 10:44:01 2011 Kazuki Tsujimoto <kazuki@callcc.net> 24856 24857 * io.c: fix documentation of ARGF.lineno=. 24858 24859Sat Oct 1 20:03:19 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24860 24861 * lib/mkmf.rb (have_framework): try as Objective-C. 24862 https://twitter.com/nagachika/status/120294447660539904 24863 24864Sun Oct 2 08:43:25 2011 Kazuki Tsujimoto <kazuki@callcc.net> 24865 24866 * vm.c (rb_thread_mark), cont.c (cont_mark): self pointer should not 24867 be marked by itself. Patch by Koichi Sasada. 24868 [ruby-dev:44567] [Bug #5386] 24869 24870Sun Oct 2 00:42:14 2011 Kazuki Tsujimoto <kazuki@callcc.net> 24871 24872 * vm.c (rb_thread_mark): rb_thread_t needs self to be marked. 24873 [ruby-dev:44566] [Bug #5386] 24874 24875Sat Oct 1 09:48:53 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 24876 24877 * gc.c (add_heap_slots, init_heap): reset heaps_inc zero when 24878 heap slots are expanded by environment variable RUBY_HEAP_MIN_SLOTS. 24879 [ruby-core:39777] [Bug #5380] 24880 24881 * test/ruby/test_gc.rb (test_gc_parameter): add test for it. 24882 24883 * test/ruby/envutil.rb (assert_normal_exit): add :child_env option to 24884 enable pass environment variables to child process. 24885 24886Thu Sep 29 13:17:51 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24887 24888 * array.c (ary_join_1): should not copy the encoding of non-string 24889 element after string element. [ruby-core:39776] [Bug #5379] 24890 24891Thu Sep 29 11:53:56 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24892 24893 * gc.c (slot_sweep, rb_gc_finalize_deferred) 24894 (rb_objspace_call_finalizer, rb_gc): run finalizers 24895 sequentially. [ruby-dev:44562] 24896 24897Thu Sep 29 20:37:38 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24898 24899 * ext/gdbm/gdbm.c (rb_gdbm_fatal): adjust argument type. 24900 24901Thu Sep 29 20:10:42 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24902 24903 * gc.c (is_id_value, is_live_object): extract from id2ref(). 24904 24905 * gc.c (run_finalizer): use object instead of object id. 24906 24907Thu Sep 29 20:07:36 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24908 24909 * use RB_TYPE_P which is optimized for constant types, instead of 24910 comparison with TYPE. 24911 24912Wed Sep 28 09:20:37 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 24913 24914 * configure.in (pthread_np.h): needs pthread.h to be included 24915 previously on OpenBSD. a patch by George Koehler <xkernigh AT 24916 netscape.net> at [ruby-core:39752]. [Bug #5376] 24917 24918Wed Sep 28 04:41:35 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 24919 24920 * test/psych/test_yamlstore.rb: use tmpdir for tmpfile. 24921 * test/syck/test_yamlstore.rb: ditto. 24922 24923Wed Sep 28 04:10:46 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 24924 24925 * ext/bigdecimal/README: update report to. 24926 24927Tue Sep 28 04:05:00 2011 Kenta Murata <mrkn@mrkn.jp> 24928 24929 * ext/bigdecimal/bigdecimal_en.html: removed because this file isn't 24930 maintained now. 24931 24932 * ext/bigdecimal/bigdecimal_ja.html: ditto. 24933 24934Tue Sep 27 09:55:40 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 24935 24936 * thread_pthread.c: make native_fd_select(). 24937 * thread.c (do_select): remove #ifdef _WIN32. Instead, use 24938 native_fd_select() always. 24939 24940Tue Sep 27 09:44:59 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 24941 24942 * thread.c (do_select): remove cygwin specific hack. It's layer 24943 violation and too large hack. 24944 * thread.c (cmp_tv, subtract_tv): removed. 24945 24946Tue Sep 27 03:50:19 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 24947 24948 * test/rexml/test_sax.rb: add require 'rexml/document'. 24949 24950Tue Sep 27 03:32:27 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 24951 24952 * test/psych/test_yamldbm.rb: fix #setup and #teardown. 24953 [Bug #5370] [ruby-core:39730] 24954 * test/syck/test_yamldbm.rb: ditto. 24955 24956Mon Sep 26 11:27:38 2011 NARUSE, Yui <naruse@ruby-lang.org> 24957 24958 * lib/webrick/httputils.rb: Add MIME Type definition of .js and .svg. 24959 patched by Hal Brodigan. [ruby-core:39704] [Bug #5365] 24960 24961Mon Sep 26 09:20:44 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 24962 24963 * configure.in: remove DJGPP support. It's not longer supported 24964 since ruby 1.9.0. 24965 24966Mon Sep 26 09:07:46 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 24967 24968 * include/ruby/defines.h: remove NextStep, OpenStep, Rhapsody 24969 support. Last activity of their OSes are 7 years ago. 24970 * configure.in: ditto. 24971 * dir.c: ditto. 24972 * ext/tk/extconf.rb: ditto. 24973 24974Mon Sep 26 09:02:49 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 24975 24976 * configure.in: remove a code for human68k. it's no longer 24977 supported since r19677. 24978 24979Sun Sep 25 23:43:32 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 24980 24981 * ext/openssl/ossl_asn1.c: fix int_ossl_asn1_decode0_cons when being 24982 fed arbitrary string values. 24983 Clearly distinguish between the cases "universal, infinite and 24984 not a SEQUENCE or SET" and "universal SEQUENCE or SET, possibly 24985 infinite". Raise error for universal tags that are not infinite. 24986 * test/openssl/test_asn1.rb: add a test for this. 24987 24988 Thanks to Hiroshi Yoshida for reporting this bug. 24989 [Bug #5363] [ruby-dev:44542] 24990 24991Sun Sep 25 20:57:18 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 24992 24993 * test/syck/test/yamldbm.rb: add test for Syck::DBM. 24994 * test/psych/test_yamldbm.rb: add test for Psych::DBM. 24995 * test/psych/test_yamlstore.rb: add test for Psych::PStore. 24996 24997Sun Sep 25 20:54:10 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 24998 24999 * lib/yaml/dbm/dbm.rb: fix #update, add #key for using instead #index. 25000 [Bug #5305][ruby-dev:44485] 25001 25002Sun Sep 25 16:54:33 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25003 25004 * encoding.c (require_enc): reject only loading from untrusted 25005 load paths. [ruby-dev:44541] [Bug #5279] 25006 25007 * transcode.c (load_transcoder_entry): ditto. 25008 25009Sun Sep 25 16:45:05 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25010 25011 * configure.in: ignore all warnings from an arbitrary 25012 header in /usr/local/include. 25013 25014Sun Sep 25 03:43:03 2011 NARUSE, Yui <naruse@ruby-lang.org> 25015 25016 * enum.c (slice_before_i): use rb_attr_get to suppress wrong warning 25017 for internal instance variable slicebefore_initial_state. 25018 25019Fri Sep 23 14:20:14 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 25020 25021 * ext/openssl/ossl_asn1.c: remove unused variable. 25022 25023Fri Sep 23 13:46:59 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 25024 25025 * test/openssl/test_ssl_session.rb: execute test_session_exts_read 25026 only for OpenSSL versions >= 0.9.8k. Thanks, Eric Wong, for 25027 reporting this. 25028 [Bug #4961] [ruby-core:37726] 25029 25030Fri Sep 23 11:59:08 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 25031 25032 * test/openssl/test_ssl_session.rb: ensure server calls callbacks in 25033 test_ctx_server_session_cb. Thanks to Eric Wong for the patch. 25034 [Bug #5336] [ruby-core:39619] 25035 25036Thu Sep 22 02:53:19 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25037 25038 * vm_insnhelper.c (vm_call_cfunc): suppress a warning. note that 25039 `volatile type *var' doesn't make var itself volatile. 25040 25041Thu Sep 22 01:52:48 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 25042 25043 * thread_pthread.c (ubf_select): activate timer thread when interrupt 25044 blocking thread. 25045 A patch created by Koichi Sasada. [ruby-core:39634] [Bug #5343] 25046 to cover race condition, timer thread periodically send SIGVTARLM to 25047 threads in signal thread list. so you should activate timer thread 25048 when interrupt a thread. 25049 25050Wed Sep 21 16:55:26 2011 NAKAMURA Usaku <usa@ruby-lang.org> 25051 25052 * test/io/wait/test_io_wait.rb (TestIOWait#setup): of course, the 25053 behavior of mingw is just same with mswin. 25054 25055Tue Sep 20 18:08:51 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25056 25057 * vm_insnhelper.c (vm_get_cvar_base): reduce duplicated checks and 25058 move a warning outside the loop. 25059 25060Mon Sep 19 18:55:51 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 25061 25062 * lib/fileutils.rb (module FileUtils): improve performance of 25063 FileUtils.compare_stream. a patch by Masaki Matsushita. 25064 [Feature #5337] [ruby-core:39622] 25065 25066Mon Sep 19 18:42:58 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 25067 25068 * test/-ext-/old_thread_select/test_old_thread_select.rb: 25069 select() with timeout may return early in old Linux kernels 25070 with 250 Hz tickrate and no dynticks, so skip everything older 25071 than 2.6.32 (which has long term support). 25072 And, Make the timing assertions consistently use assert_operator with 25073 timing difference in error message 25074 Patch by Eric Wong. [Bug #5335] [ruby-core:39618] 25075 25076Mon Sep 19 09:28:06 2011 Eric Hodel <drbrain@segment7.net> 25077 25078 * test/openssl/test_ssl.rb (class OpenSSL): Test 25079 OpenSSL::SSL::SSLSocket#session and #session=. 25080 25081Mon Sep 19 07:54:17 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25082 25083 * object.c (rb_obj_clone): singleton class should be attached 25084 singleton object to. a patch by Satoshi Shiba <shiba AT rvm.jp> 25085 at [ruby-dev:44460]. [Bug #5274] 25086 25087Sat Sep 17 23:34:10 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25088 25089 * parse.y (parser_data_type): inherit the core type in ripper so 25090 that checks in core would work. [ruby-core:39591] [Bug #5331] 25091 25092Sat Sep 17 12:44:04 2011 Kazuki Tsujimoto <kazuki@callcc.net> 25093 25094 * lib/find.rb (Find.find): add documentation that Find.find 25095 without block returns an enumerator. 25096 25097Thu Sep 15 11:39:43 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25098 25099 * gc.c (mark_entry, mark_key, mark_keyvalue): adjust callback 25100 argument types. 25101 25102Thu Sep 15 01:44:10 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 25103 25104 * ext/tk/*: Change encoding from EUC-JP to UTF-8 25105 25106Wed Sep 14 11:43:37 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 25107 25108 * thread.c (rb_fd_rcopy): added an argument guard. 25109 Patch by NAKAMURA Usaku. [Bug #5306] [ruby-core:39435] 25110 25111Tue Sep 13 20:21:49 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25112 25113 * lib/pstore.rb, test/test_pstore.rb: suppress warnings with -v. 25114 25115 * lib/pstore.rb (PStore): always open in binary mode even if 25116 default encodings are set. [Bug #5311] [ruby-core:39503] 25117 25118Tue Sep 13 05:37:15 2011 Yukihiro Matsumoto <matz@ruby-lang.org> 25119 25120 * io.c (Init_IO): update BINARY comment. it should not change the 25121 encoding of the result to ASCII-8BIT. [ruby-talk:387719] 25122 25123Mon Sep 12 19:55:00 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 25124 25125 * thread.c (rb_thread_select): fix to ignore an argument 25126 modification of rb_thread_fd_select(). 25127 based on a patch by Eric Wong. [Bug #5306] [ruby-core:39435] 25128 * thread.c (rb_fd_rcopy): New. for reverse fd copy. 25129 25130 * test/-ext-/old_thread_select/test_old_thread_select.rb 25131 (test_old_select_false_positive): test for bug5306. 25132 25133 * ext/-test-/old_thread_select/old_thread_select.c (fdset2array): 25134 New. convert fdsets to array. 25135 * ext/-test-/old_thread_select/old_thread_select.c (old_thread_select): 25136 return 'read', 'write', 'except' argument of rb_thread_select() 25137 to ruby script. 25138 25139Mon Sep 12 13:38:12 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25140 25141 * README.EXT, README.EXT.ja (2.2.2), parse.y (rb_check_id): add 25142 documents for rb_check_id(). 25143 25144Mon Sep 12 12:53:39 2011 NAKAMURA Usaku <usa@ruby-lang.org> 25145 25146 * lib/rake/file_list.rb (Rake::FileList#egrep): there is no need to 25147 open files in binary mode. 25148 see more details in https://github.com/jimweirich/rake/issues/74 25149 25150Mon Sep 12 12:42:36 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25151 25152 * test/ruby/test_exception.rb (TestException#test_exit_success_p): 25153 assert also the cases when exiting with true and false. 25154 25155 * lib/test/unit/assertions.rb (assert_send): make arguments in 25156 the default message clearer. 25157 25158Sun Sep 11 05:23:14 2011 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 25159 25160 * lib/matrix.rb: Deal with subclasses of Matrix [redmine #5307] 25161 25162Sat Sep 10 13:38:20 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 25163 25164 * dir.c (dir_s_aref): 25165 * dir.c (dir_entries): Two small documentation fixes. 25166 A patch from Aaron Lerch. [Bug #5302] [ruby-core:39404] 25167 25168Sat Sep 10 08:30:03 2011 Koichi Sasada <ko1@atdot.net> 25169 25170 * gc.c (GC_PROFILE_MORE_DETAIL, CALC_EXACT_MALLOC_SIZE): 25171 define macros only if they are not defined. 25172 fixes: [Ruby 1.9 - Feature #5291] 25173 25174Sat Sep 10 08:25:47 2011 Yukihiro Matsumoto <matz@ruby-lang.org> 25175 25176 * parse.y (bv_decls): parse.y relies on $$ = $1 before action 25177 routines. a patch from Michael Edgar. [Bug #5303] 25178 [ruby-core:39429] 25179 25180Sat Sep 10 01:37:55 2011 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 25181 25182 * sample/drb/dhasenc.rb: coding cookie of Emacs is coding, 25183 not encoding. 25184 25185 * sample/mine.rb: ditto. 25186 25187Fri Sep 9 21:56:40 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 25188 25189 * ext/bigdecimal/bigdecimal.c (BigDecimal_sqrt): Fix comment. 25190 BigDecimal#sqrt requires argument. Reported by Makoto Kishimoto. 25191 Thanks for your contribution. [Bug #5267] [ruby-dev:44452] 25192 25193Fri Sep 9 11:00:55 2011 Shota Fukumori <sorah@tubusu.net> 25194 25195 * test/rubygems/test_gem_commands_help_command.rb: Add one 25196 `require` because if run test-all with test/unit parallel 25197 running, sometimes this test fails by some constants not found. 25198 The error reason is some worker doesn't require the file needed by 25199 this test. This issue is related to [ruby-core:36168]. 25200 25201Fri Sep 9 10:22:03 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25202 25203 * thread.c (rb_thread_select): fix a typo to initialize efds 25204 properly. [Bug #5299] [ruby-core:39380] 25205 25206Fri Sep 9 02:02:09 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 25207 25208 * template/yarvarch.ja: 25209 Change encoding from Shift_JIS to UTF-8 25210 25211Thu Sep 9 01:14:00 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 25212 25213 * sample/drb/README.rd.ja: 25214 * sample/drb/dhasenc.rb: 25215 * sample/mine.rb: 25216 Change encoding from EUC-JP to UTF-8 25217 25218Thu Sep 8 21:03:22 2011 NARUSE, Yui <naruse@ruby-lang.org> 25219 25220 * ext/nkf/nkf-utf8/nkf.c: import nkf 2.1.2 (be9c280) 25221 Bump version number/release date only. 25222 25223Thu Sep 8 12:43:18 2011 Narihiro Nakamura <authornari@gmail.com> 25224 25225 * gc.c (Init_GC): defined GC::Profiler.raw_data. based on the 25226 patch by Eric Hodel. [ruby-core:37857] [Bug #4991] 25227 25228Thu Sep 8 09:02:53 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25229 25230 * gc.c (id2ref): objects which are unmarked but not in sweep_slots 25231 are not dead. 25232 25233Thu Sep 8 07:44:25 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25234 25235 * transcode.c (rb_declare_transcoder, load_transcoder_entry): no 25236 longer need to limit the length of transcoder library name. 25237 25238Thu Sep 8 07:36:36 2011 NARUSE, Yui <naruse@ruby-lang.org> 25239 25240 * ext/syck/lib/syck/types.rb: use toplevel Syck. 25241 for the case someone define Syck::Syck (or YAML::Syck). 25242 25243Thu Sep 8 07:33:12 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25244 25245 * gc.c (id2ref): unmarked object is already dead while lazy 25246 sweeping, and to it cannot come back since other objects 25247 referred from it might have been freed already. 25248 25249Wed Sep 8 03:48:00 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 25250 25251 * ext/readline/README.ja: 25252 Change encoding from EUC-JP to UTF-8 25253 25254Wed Sep 8 02:59:00 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 25255 25256 * test/rexml/test_encoding.rb: 25257 Add require 'require 'rexml/document' 25258 25259Wed Sep 8 02:53:00 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 25260 25261 * ext/nkf/nkf-utf8/nkf.c: 25262 Change encoding from ISO-2022 to UTF-8 25263 25264Wed Sep 7 23:41:24 2011 Kouhei Sutou <kou@cozmixng.org> 25265 25266 * lib/rexml/parsers/baseparser.rb, test/rexml/test_comment.rb: 25267 allow a single hyphen in comment. [Bug #5278] [ruby-core:39289] 25268 Reported by Thomas Fritzsche. Thanks!!! 25269 25270Wed Sep 7 17:27:18 2011 NARUSE, Yui <naruse@ruby-lang.org> 25271 25272 * lib/yaml.rb: explicitly specify ::Object to avoid the collision with 25273 Syck::Object. 25274 25275Tue Sep 6 21:06:49 2011 Shota Fukumori <sorah@tubusu.net> 25276 25277 * lib/test/unit.rb (_run_suites): Now reports are written the 25278 following order: Skip, Failure, Error. [Feature #5282] 25279 25280 * test_sorting.rb: test for above. 25281 25282 * test4test_sorting.rb: Ditto. 25283 25284 * lib/test/unit.rb (run): Put RUBY_DESCRIPTION before quitting. 25285 [Feature #5282] 25286 25287Tue Sep 6 21:13:47 2011 Masaya Tarui <tarui@ruby-lang.org> 25288 25289 * win32/Makefile.sub (INSNS): change command line option -Ks to -Ku 25290 for generate *.inc. because insns.def encoding has been changed SJIS 25291 to UTF-8. if $BASERUBY is 1.9, -Ks cause an error. [Feature #5128] 25292 (same as r33194) 25293 25294Tue Sep 6 15:55:24 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25295 25296 * transcode.c (load_transcoder_entry): concatenate paths directly. 25297 25298 * encoding.c (load_encoding): predefined encoding names are safe. 25299 [ruby-dev:44469] [Bug #5279] 25300 25301 * transcode.c (load_transcoder_entry): ditto. 25302 25303Tue Sep 6 12:07:10 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25304 25305 * transcode.c: enabled econv newline option. 25306 25307Tue Sep 6 06:44:57 2011 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 25308 25309 * numeric.c (dbl2ival): Fix Float#divmod and #round for 32 bit 25310 platform. part 1 of [bug #5276] 25311 25312Tue Sep 6 06:44:25 2011 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 25313 25314 * numeric.c (flo_round): Fix criteria for 32 bits platform 25315 part 2 of [bug #5276] 25316 25317Tue Sep 6 05:37:11 2011 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp> 25318 25319 * test/rinda/test_rinda.rb (test_core_03_notify): Fixed test failures 25320 [ruby-dev:44430] [Ruby 1.9 - Bug #372] 25321 25322Mon Sep 5 20:59:30 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 25323 25324 * insns.def: change encoding pragma for emacs (shift_jis to utf-8). 25325 25326Mon Sep 5 19:32:15 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 25327 25328 * Makefile.in (INSNS): change command line option -Ks to -Ku for 25329 generate *.inc. because insns.def encoding has been changed SJIS to 25330 UTF-8. if $BASERUBY is 1.9, -Ks cause an error. [Feature #5128] 25331 25332Mon Sep 5 18:10:56 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25333 25334 * transcode.c (rb_econv_binmode): newline decorators are 25335 exclusive. 25336 25337Mon Sep 5 15:03:37 2011 NARUSE, Yui <naruse@ruby-lang.org> 25338 25339 * test/rubygems/test_gem_security.rb 25340 (test_class_build_self_signed_cert): reset opt[:trust_dir] to apply 25341 temporary Gem.user_home. 25342 25343Mon Sep 5 10:04:35 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 25344 25345 * README.ja, README.EXT.ja: resolve conflicts. [ruby-dev:44459] 25346 25347Mon Sep 5 05:13:22 2011 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 25348 25349 * numeric.c (flo_round): Make Float#round round big values [bug 25350 #5272] 25351 25352Mon Sep 5 04:28:25 2011 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 25353 25354 * numeric.c (int_round): Integer#round always returns an Integer [Bug 25355 #5271] 25356 25357Sun Sep 4 22:28:50 2011 Shugo Maeda <shugo@ruby-lang.org> 25358 25359 * lib/net/imap.rb (default_port, default_imap_port, 25360 default_tls_port, default_ssl_port, default_imaps_port): 25361 added methods for consistency with Net::POP. 25362 based on the patch by art lussos. [ruby-core:38997] [Bug #5198] 25363 25364Sun Sep 4 21:19:19 2011 Ayumu AIZAWA <ayumu.aizawa@gmail.com> 25365 25366 * Change encoding from EUC-JP to UTF-8. [Feature #5128] 25367 25368Sun Sep 4 00:47:39 2011 Kazuki Tsujimoto <kazuki@callcc.net> 25369 25370 * test/ruby/test_fiber.rb (TestFiber#test_no_valid_cfp): 25371 add a test. Unlike TestThread#test_no_valid_cfp, 25372 this test succeeds even if win32ole is required (see r33153). 25373 25374Sun Sep 4 00:11:49 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25375 25376 * variable.c (rb_const_set): show the previous definition 25377 location. [EXPERIMENTAL] 25378 25379Sat Sep 3 23:56:24 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25380 25381 * configure.in (sizeof_struct_dirent_too_small): check if struct 25382 dirent.d_name is too small. 25383 25384 * configure.in (RUBY_MINGW32): take tool prefix from CC. 25385 25386Sat Sep 3 23:52:08 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25387 25388 * io.c (argf_next_argv): open in default text mode. 25389 [ruby-core:39234] [Bug #5268] 25390 25391Sat Sep 3 18:40:57 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 25392 25393 * lib/thread.rb (SizedQueue#max=): raise ArgumentError if max is not 25394 positive number. patch by Masaki Matsushita. 25395 [ruby-dev:44449] [Bug #5259] 25396 25397 * test/thread/test_queue.rb (test_sized_queue_initialize, 25398 test_sized_queue_assign_max): add tests for it. 25399 25400Fri Sep 2 21:11:16 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25401 25402 * io.c (validate_enc_binmode, prep_stdio): default to text mode on 25403 dosish platforms. [ruby-core:38822] [Bug #5164] 25404 25405 * transcode.c (rb_econv_prepare_options): keep default ecflags 25406 unchanged if no options. 25407 25408Fri Sep 2 14:36:47 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25409 25410 * vm_insnhelper.c (vm_search_const_defined_class): search 25411 ancestors only when global scope. [ruby-core:39227] [Bug #5264] 25412 25413Fri Sep 2 09:58:08 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25414 25415 * parse.y (parser_tokadd_string, parser_yylex): ignore a backslash 25416 which prefixes an non-ascii character, which has no escape 25417 syntax. [ruby-core:39222] [Ruby 1.9 - Bug #5262] 25418 25419Fri Sep 2 04:05:25 2011 Aaron Patterson <aaron@tenderlovemaking.com> 25420 25421 * ext/psych/lib/psych/visitors/yaml_tree.rb: emit strings tagged as 25422 ascii-8bit as binary in YAML. 25423 * test/psych/test_string.rb: corresponding test. 25424 25425Fri Sep 2 01:07:14 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25426 25427 * numeric.c (flo_round): substitute machine dependent magic number. 25428 25429Thu Sep 1 17:31:22 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25430 25431 * insns.def (defineclass), vm_insnhelper.c (vm_get_cvar_base): see 25432 also inherited constants for classes without superclass and 25433 modules. [ruby-core:37698] [Bug #3423] 25434 25435Thu Sep 1 16:18:44 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 25436 25437 * Release GVL while OpenSSL's public key generation. 25438 25439 t = Thread.new { print "."; sleep 0.1 } 25440 key = OpenSSL::PKey::RSA.new(2048) 25441 #=> Thread t works in parallel with public key generation if 25442 OS/machine allows it. 25443 25444 This works with OpenSSL >= 0.9.8. From this version, it has new 25445 public key generation function which allows us to interrupt the 25446 execution while pkey generation iterations. 25447 25448 * ext/openssl/extconf.rb: Check existence of OpenSSL's new public key 25449 generation function. (DH_generate_parameters_ex, 25450 DSA_generate_parameters_ex and RSA_generate_key_ex. 25451 25452 * ext/openssl/ossl_pkey.{h,c} (ossl_generate_cb_2, 25453 ossl_generate_cb_stop): Added new callback function for OpenSSL pkey 25454 generation which handles Thread interruption by Ruby. 25455 ossl_generate_cb_stop is the unblock function(ubf) for Ruby which 25456 sets a stop flag. New pkey generation callback ossl_generate_cb_2 25457 checks the stop flag at each iterations of OpenSSL and interrupts 25458 pkey generation when the flag is set. 25459 25460 * ext/openssl/ossl_pkey_dsa.c (dsa_generate): Call 25461 rb_thread_blocking_region with the above unblock function to release 25462 GVL while pkey generation. 25463 25464 * ext/openssl/ossl_pkey_rsa.c (rsa_generate): ditto. 25465 25466 * ext/openssl/ossl_pkey_dh.c (dh_generate): ditto. 25467 25468 * test/openssl/test_pkey_{dh,dsa,rsa}.rb: Test it. 25469 25470Thu Sep 1 14:06:54 2011 NAKAMURA Usaku <usa@ruby-lang.org> 25471 25472 * test/ruby/test_thread.rb (TestThread#test_no_valid_cfp): skip when 25473 win32ole is required. in such case, win32ole redefines 25474 Thread#initialize, and the block argument becomes to be not the top 25475 of the thread, then this testcase always fails. 25476 25477Thu Sep 1 10:20:50 2011 NAKAMURA Usaku <usa@ruby-lang.org> 25478 25479 * test/ruby/test_io_m17n.rb (TestIO_M17N#test_{default_mode_on_dosish, 25480 default_mode_on_unix,text_mode,binary_mode}): sorry for wrong test 25481 committed in r33144. I'd misunderstood the spec of ruby's universal 25482 newline. 25483 25484Thu Sep 1 09:27:57 2011 NARUSE, Yui <naruse@ruby-lang.org> 25485 25486 * variable.c (rb_autoloading_value): Fix the order of definitions. 25487 It is used by autoload_defined_p. 25488 25489Wed Aug 31 17:28:23 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 25490 25491 * variable.c (rb_autoload): There was a chance to run GC (from 25492 rb_str_new2()) before finishing autoload_data_i construction. It 25493 caused SEGV at rb_gc_mark() at autoload_i_mark. 25494 25495 * variable.c (rb_autoload_load): Move RB_GC_GUARD() to proper 25496 position based on suggestion by CHIKANAGA Tomoyuki at 25497 http://d.hatena.ne.jp/nagachika/20110826/ruby_trunk_changes_33070_33078 25498 25499 * variable.c (autoload_defined_p): Fix incompatible autoload behavior 25500 that causes Rails crash. Class definition instruction defined in 25501 'defineclass' in insns.def always invokes rb_autoload_load for a 25502 constant. It's invoked for every class definition regardless of 25503 existence of autoload definition. rb_autoload_load checks if a 25504 constant is defined as autoloaded, but new thread-safe autoload 25505 returned different value if the constant is under autoloading. 25506 25507Wed Aug 31 17:20:56 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 25508 25509 * Re-apply r33078, thread-safe autoload which is reverted at r33093. 25510 25511Wed Aug 31 16:28:04 2011 NAKAMURA Usaku <usa@ruby-lang.org> 25512 25513 * test/ruby/test_io_m17n.rb (TestIO_M17N#test_{default_mode_on_dosish, 25514 default_mode_on_unix,text_mode,binary_mode}): tests for [Bug #5164]. 25515 25516Wed Aug 31 15:54:11 2011 NARUSE, Yui <naruse@ruby-lang.org> 25517 25518 * ext/json: Merge json gem v1.5.4 (3dab4c5a6a97fac03dac). 25519 25520Wed Aug 31 13:09:41 2011 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 25521 25522 * numeric.c (flo_round): Avoid overflow by optimizing for trivial 25523 cases [Bug #5227] 25524 25525Wed Aug 31 00:50:01 2011 NAKAMURA Usaku <usa@ruby-lang.org> 25526 25527 * win32/win32.c (rb_w32_select_with_thread): and my typo. we all must 25528 be more careful. 25529 25530Wed Aug 31 00:48:38 2011 NAKAMURA Usaku <usa@ruby-lang.org> 25531 25532 * thread.c (rb_thread_select): critical typo in r33117. 25533 25534Wed Aug 31 00:30:49 2011 NAKAMURA Usaku <usa@ruby-lang.org> 25535 25536 * test/-ext-/old_thread_select/test_old_thread_select.rb 25537 (TestOldThreadSelect#test_old_select_read_timeout): if the machine 25538 is fast enough, the time used by code around IO.select may be smaller 25539 than Time implement threshold. 25540 25541Wed Aug 31 00:04:38 2011 NAKAMURA Usaku <usa@ruby-lang.org> 25542 25543 * ext/-test-/old_thread_select/old_thread_select.c (old_thread_select): 25544 typo. 25545 25546 * test/-ext-/old_thread_select/test_old_thread_select.rb 25547 (TestOldThreadSelect#test_old_select_signal_safe): use SIGINT instead 25548 of SIGUSR1 because the former is general and the latter is platform 25549 dependent. 25550 25551Tue Aug 30 23:59:36 2011 NAKAMURA Usaku <usa@ruby-lang.org> 25552 25553 * win32/win32.c, include/ruby/intern.h (rb_w32_fd_copy): implement 25554 for rb_thread_select() in thread.c. the use of rb_fd_copy() is 25555 introduced in r33117. 25556 [Bug #5251] [ruby-core:39195] 25557 25558 * thread.c (rb_thread_select): must call rb_fd_init() before using 25559 rb_fdset_t. see the implementations of rb_fd_init()s if you want to 25560 know the reason. 25561 25562Tue Aug 30 22:34:45 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 25563 25564 * test/dl/test_callback.rb (test_callback_with_string): prevents 25565 temporary string from GC. 25566 25567Tue Aug 30 22:25:38 2011 NAKAMURA Usaku <usa@ruby-lang.org> 25568 25569 * vm_insnhelper.c (vm_call_cfunc): revert r33112. RB_GC_GUARD macro 25570 protect a VALUE from GC. It's not for general anti-optimizing 25571 purpose. 25572 25573Tue Aug 30 11:06:19 2011 NARUSE, Yui <naruse@ruby-lang.org> 25574 25575 * ext/json: Merge json gem 1.5.4+ (2149f4185c598fb97db1). 25576 [Bug #5173] [ruby-core:38866] 25577 25578Tue Aug 30 09:57:50 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 25579 25580 * lib/thread.rb (Queue#pop): fix a race against Thread.wakeup. 25581 Patch by Masaki Matsushita <glass.saga at gmail dot com> 25582 [Bug #5195] [ruby-dev:44400] 25583 25584Tue Aug 30 09:48:07 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 25585 25586 * cont.c (fiber_entry): fix stack allocation failure on Debian 25587 GNU/kFreeBSD. 25588 Patch by Lucas Nussbaum <lucas at lucas-nussbaum dot net>. 25589 [Bug #5241] [ruby-core:39147] 25590 25591Tue Aug 30 09:28:01 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 25592 25593 * thread.c (rb_thread_select): rewrite by using 25594 rb_thread_fd_select(). old one is EINTR unsafe. 25595 Patch by Eric Wong. [Bug #5229] [ruby-core:39102] 25596 25597 * test/-ext-/old_thread_select/test_old_thread_select.rb: 25598 a testcase for rb_thread_select(). 25599 * ext/-test-/old_thread_select/old_thread_select.c: ditto. 25600 * ext/-test-/old_thread_select/depend: ditto. 25601 * ext/-test-/old_thread_select/extconf.rb: ditto. 25602 25603Tue Aug 30 09:08:22 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 25604 25605 * configure.in: fix a build failure on GNU Hurd. 25606 Patch by Samuel Thibault <sthibault at debian dot org>. Thank you! 25607 [Bug #5250] [ruby-core:39185] 25608 25609Sun Aug 29 23:22:00 2011 Kenta Murata <mrkn@mrkn.jp> 25610 25611 * test/ruby/test_numeric.rb (test_num2long): modify a test against the 25612 change by r33108. 25613 25614Sun Aug 29 09:58:00 2011 Kenta Murata <mrkn@mrkn.jp> 25615 25616 * numeric.c (bit_coerce): A Fixnum and a Bignum are only permitted for 25617 bitwise arithmetic with a Fixnum. #1792 25618 25619 * test/ruby/test_fixnum.rb: add tests for the above change. 25620 25621 * bignum.c (bit_coerce): A Fixnum and a Bignum are only permitted for 25622 bitwise arithmetic with a Bignum. #1792 25623 25624 * test/ruby/test_bignum.rb: add tests for the above change. 25625 25626Sun Aug 28 15:38:17 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 25627 25628 * ext/date/date_parse.c (date_zone_to_diff): keep a temporary string 25629 stored in variable while the contents buffer is being used. 25630 25631 * ext/date/date_parse.c (date_zone_to_diff): get rid of out of bounds 25632 memory read. [ruby-dev:44409] [Bug #5213] 25633 25634Sun Aug 28 05:29:50 2011 Ryan Davis <ryand-ruby@zenspider.com> 25635 25636 * lib/minitest/*: Imported minitest 2.5.1 (r6596) 25637 * test/minitest/*: ditto 25638 25639Sat Aug 27 20:46:05 2011 Kazuki Tsujimoto <kazuki@callcc.net> 25640 25641 * vm.c (rb_vm_rewrite_dfp_in_errinfo): change return type 25642 to suppress a warning. 25643 25644 * vm_core.h: ditto. 25645 25646Sat Aug 27 19:04:06 2011 NARUSE, Yui <naruse@ruby-lang.org> 25647 25648 * internal.h (rb_strftime_timespec): moved from time.c and define only 25649 if ruby/encoding.h is included. 25650 25651 * internal.h (rb_strftime): ditto. 25652 25653Sat Aug 27 18:53:51 2011 Kazuki Tsujimoto <kazuki@callcc.net> 25654 25655 * proc.c (proc_new): force to rewrite errinfo when calling Proc.new in ensure. 25656 [Bug #5234] [ruby-core:39125] 25657 This code will be removed after changing throw mechanism (see r33064). 25658 25659 * vm.c (rb_vm_rewrite_dfp_in_errinfo): new function. 25660 25661 * vm.c (vm_make_env_each): changed accordingly. 25662 25663 * vm_core.h: ditto. 25664 25665 * bootstraptest/test_flow.rb: add tests for above. 25666 25667Sat Aug 27 18:44:06 2011 NARUSE, Yui <naruse@ruby-lang.org> 25668 25669 * internal.h (rb_strftime_timespec): move to time.c because it depends 25670 encoding.h. 25671 25672Sat Aug 27 18:17:58 2011 NARUSE, Yui <naruse@ruby-lang.org> 25673 25674 * strftime.c (rb_strftime_with_timespec): get enc argument to specify 25675 the encoding of the format. On Windows (at least Japanese Windows), 25676 Time#strftime("%Z") includes non ASCII in locale encoding (CP932). 25677 So convert locale to default internal. [ruby-core:39092] [Bug #5226] 25678 25679 * strftime.c (rb_strftime): ditto. 25680 25681 * strftime.c (rb_strftime_timespec): ditto. 25682 25683 * internal.h (rb_strftime_timespec): follow above. 25684 25685 * time.c (rb_strftime_alloc): ditto. 25686 25687 * time.c (strftimev): ditto. 25688 25689 * time.c (time_strftime): ditto. 25690 25691 * time.c (time_to_s): the resulted string of Time#to_s is always 25692 ascii only, so this should be US-ASCII. 25693 25694 * time.c (time_asctime): ditto. 25695 25696Sat Aug 27 11:18:12 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 25697 25698 * Revert r33078. It caused a Rails application NoMethodError. 25699 25700 /home/nahi/git/emptyApp/ruby/1.9.1/gems/rack-mount-0.6.14/lib/rack/mount/utils.rb:157: warning: toplevel constant ScanError referenced by Regin::Parser::ScanError 25701 /home/nahi/git/emptyApp/ruby/1.9.1/gems/rack-mount-0.6.14/lib/rack/mount/vendor/regin/regin/parser.rb:17:in `parse_regexp': undefined method `scan_str' for #<Regin::Parser:0x00000002344548> (NoMethodError) 25702 25703Sat Aug 27 08:44:58 2011 Eric Hodel <drbrain@segment7.net> 25704 25705 * lib/rdoc: Import RDoc 3.9.4. Typo and grammar fixes by Luke Gruber. 25706 [Ruby 1.9 - Bug #5203] 25707 25708Sat Aug 27 07:53:34 2011 Eric Hodel <drbrain@segment7.net> 25709 25710 * lib/open-uri.rb: Fix indentation of OpenURI::OpenRead#open. Use ++ 25711 instead of `' for method arguments in open-uri.rb 25712 25713Sat Aug 27 07:22:07 2011 Eric Hodel <drbrain@segment7.net> 25714 25715 * ext/pathname/lib/pathname.rb: Fix typos and grammar mistakes. Patch 25716 by Luke Gruber. [#5203] 25717 * ext/pty/lib/expect.rb: ditto 25718 * lib/mathn.rb: ditto 25719 * lib/net/http.rb: ditto 25720 * lib/open-uri.rb: ditto 25721 * lib/ostruct.rb: ditto 25722 * lib/tempfile.rb: ditto 25723 * lib/thread.rb: ditto 25724 * lib/weakref.rb: ditto 25725 * sample/webrick/httpproxy.rb: ditto 25726 25727Sat Aug 27 04:03:18 2011 Koichi Sasada <ko1@atdot.net> 25728 25729 * iseq.c (iseq_data_to_ary): fix type of variable 25730 (long -> unsigned long) to suppress a warning. 25731 25732Sat Aug 27 04:02:11 2011 Koichi Sasada <ko1@atdot.net> 25733 25734 * vm_core.h: add a decl. of rb_autoloading_value(). 25735 25736Fri Aug 26 19:12:08 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 25737 25738 * variable.c: Make autoload thread-safe. See #921. 25739 25740 What's the problem? 25741 autoload is thread unsafe. When we define a constant to be 25742 autoloaded, we expect the constant construction is invariant. But 25743 current autoload implementation allows other threads to access the 25744 constant while the first thread is loading a file. 25745 25746 What's happening inside? 25747 The current implementation uses Qundef as a marker of autoload in 25748 Constant table. Once the first thread find Qundef as a value at 25749 constant lookup, it starts loading a defined feature. Generally a 25750 loaded file overrides the Qundef in Constant table by module/class 25751 declaration at very beginning lines of the file, so other threads 25752 can see the new Module/Class object before feature loading is 25753 finished. It breaks invariant construction. 25754 25755 How to solve? 25756 To ensure invariant constant construction, we need to override 25757 Qundef with defined Object after the feature loading. For keeping 25758 Qundef in Constant table, I expanded autoload_data struct in 25759 Module to have a slot for keeping the defined object while feature 25760 loading. And changed Module's constant lookup/update logic a 25761 little so that the slot is only visible from the thread which 25762 invokes feature loading. (== the first thread which accessed the 25763 autoload constant) 25764 25765 Evaluation? 25766 All test passes (bootstrap test, test-all and RubySpec) and added 25767 8 tests for threading behavior. Extra logics are executed only 25768 when Qundef is found, so no perf drop should happen except 25769 autoloading. 25770 25771 * variable.c (rb_autoload): Prepare new autoload_data struct. 25772 25773 * variable.c (rb_autoload_load): Load feature and update Constant 25774 table after feature loading is finished. 25775 25776 * variable.c (rb_const_get_0): When the fetched constant is under 25777 autoloading, it returns the object only for the thread which starts 25778 autoloading. 25779 25780 * variable.c (rb_const_defined_0): Ditto. 25781 25782 * variable.c (rb_const_set): When the specified constant is under 25783 autoloading, it sets the object only for the thread which starts 25784 autoloading. Otherwise, simply overrides Qundef with constant 25785 override warning. 25786 25787 * vm_insnhelper.c (vm_get_ev_const): Apply same change as 25788 rb_const_get_0 in variable.c. 25789 25790 * test/ruby/test_autoload.rb: Added tests for threading behavior. 25791 25792Fri Aug 26 10:10:37 2011 Eric Hodel <drbrain@segment7.net> 25793 25794 * lib/rubygems: Update to RubyGems 1.8.10. Fixes security issue in 25795 creating ruby-format gemspecs. Fixes Gem.dir not being at the front 25796 of Gem.path to fix uninstall and cleanup commands. Fixes gem 25797 uninstall stopping on the first missing gem. 25798 25799Fri Aug 26 08:21:10 2011 Aaron Patterson <aaron@tenderlovemaking.com> 25800 25801 * time.c (strftimev): Make Time#to_s default to US-ASCII encoding but 25802 respect Encoding.default_internal. [ruby-core:39092] 25803 * test/ruby/test_time.rb (class TestTime): Corresponding test. 25804 25805Thu Aug 25 09:43:16 2011 Eric Hodel <drbrain@segment7.net> 25806 25807 * ext/openssl/lib/openssl/bn.rb: Hide copyright info from RDoc. 25808 * ext/openssl/lib/openssl/digest.rb: ditto 25809 * ext/openssl/lib/openssl/x509.rb: ditto 25810 * ext/openssl/lib/openssl/cipher.rb: ditto 25811 25812Thu Aug 25 09:25:48 2011 Eric Hodel <drbrain@segment7.net> 25813 25814 * ext/openssl/ossl_digest.c: Document OpenSSL::Digest::digest and add 25815 an example to OpenSSL::Digest. Patch by Sylvain Daubert. 25816 [Ruby 1.9 - Bug #5166] 25817 * ext/openssl/lib/openssl/digest.rb (module OpenSSL): ditto 25818 25819Thu Aug 25 08:19:43 2011 Koichi Sasada <ko1@atdot.net> 25820 25821 * vm.c (vm_make_env_each): work around to solve Bug #2729. 25822 fixes: Bug #2729 25823 a patch from Kazuki Tsujimoto <kazuki@callcc.net> 25824 This problem is caused by changing dfp (dynamic env pointer) 25825 from saved dfp. Saved dfp is pointed env in VM stack. However, 25826 the dfp can be moved because VM copies env from VM stack to 25827 the heap. At this copying, dfp was also changed. To solve this 25828 problem, I'll try to change throw mechanism (not save target dfp, 25829 but save target cfp). 25830 25831 * bootstraptest/test_flow.rb: add a test for above. 25832 25833Thu Aug 25 07:57:33 2011 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 25834 25835 * numeric.c (int_round): Fix Integer#round [ruby-core:39096] 25836 25837Thu Aug 25 07:00:00 2011 Koichi Sasada <ko1@atdot.net> 25838 25839 * vm_insnhelper.h, vm_insnhelper.c, vm.c, vm_method.c, insns.def: 25840 Manage a redefinition of special methods for each classes. 25841 A patch from Joel Gouly <joel.gouly@gmail.com>. Thanks! 25842 25843Thu Aug 25 06:51:08 2011 Aaron Patterson <aaron@tenderlovemaking.com> 25844 25845 * ext/psych/lib/psych.rb: Fixing psych version number. 25846 * ext/psych/psych.gemspec: updating the gemspec. 25847 25848Thu Aug 25 06:11:35 2011 Aaron Patterson <aaron@tenderlovemaking.com> 25849 25850 * ext/psych/lib/psych/nodes/node.rb: default `to_yaml` encoding to be 25851 UTF-8. 25852 * test/psych/test_encoding.rb: test yaml dump encoding. 25853 25854Thu Aug 25 01:24:33 2011 Naohisa Goto <ngotogenome@gmail.com> 25855 25856 * test/fileutils/test_fileutils.rb (test_chmod_symbol_mode): Solaris 25857 seems to behave the same as FreeBSD. 25858 25859Thu Aug 25 01:11:36 2011 Naohisa Goto <ngotogenome@gmail.com> 25860 25861 * test/ruby/test_rubyoptions.rb (test_script_from_stdin): slave pty 25862 should be manipulated because master pty may not be a tty on some 25863 environment (e.g. Solaris). [Bug:#5222] [ruby-dev:44420] 25864 25865Wed Aug 24 15:13:56 2011 Koichi Sasada <ko1@atdot.net> 25866 25867 * iseq.h, iseq.c, compile.c: Change the line number data structure 25868 to solve an issue reported at [ruby-dev:44413] [Ruby 1.9 - Bug #5217]. 25869 Before this fix, each instruction has an information including 25870 line number (iseq::iseq_insn_info_table). Instead of this data 25871 structure, recording only line number changing places 25872 (iseq::iseq_line_info_table). 25873 The order of entries in iseq_line_info_table is ascending order of 25874 iseq_line_info_table_entry::position. You can get a line number 25875 by an iseq and a program counter with this data structure. 25876 This fix reduces memory consumption of iseq (bytecode). 25877 On my measurement, a rails application consumes 21.8MB for 25878 iseq with this fix on the 32bit CPU. Without this fix, it 25879 consumes 24.7MB for iseq [ruby-dev:44415]. 25880 25881 * proc.c: ditto. 25882 25883 * vm_insnhelper.c: ditto. 25884 25885 * vm_method.c: ditto. 25886 25887 * vm.c (rb_vm_get_sourceline): change to use rb_iseq_line_no(). 25888 25889Wed Aug 24 09:49:10 2011 Koichi Sasada <ko1@atdot.net> 25890 25891 * insns.def (defined): fix to checking class variable. 25892 A patch by Magnus Holm <judofyr@gmail.com>. Thanks! 25893 25894 * test/ruby/test_variable.rb: add a test for above. 25895 25896Wed Aug 24 08:53:06 2011 Eric Hodel <drbrain@segment7.net> 25897 25898 * lib/rdoc: Update to RDoc 3.9.3. Fixes RDoc with `ruby -Ku`. Allows 25899 HTTPS image paths to be turned into <img> tags. Prevents special 25900 markup inside <tt> from being processed. 25901 25902Wed Aug 24 07:57:43 2011 Eric Hodel <drbrain@segment7.net> 25903 25904 * lib/rubygems: Update to RubyGems 1.8.9. Fixes uninstalling multiple 25905 gems and gem cleanup. 25906 25907Wed Aug 24 06:45:20 2011 Ryan Davis <ryand-ruby@zenspider.com> 25908 25909 * lib/minitest/*: Imported minitest 2.5.0 (r6557) 25910 * test/minitest/*: ditto 25911 25912Wed Aug 24 00:38:22 2011 Yusuke Endoh <mame@tsg.ne.jp> 25913 25914 * thread.c (update_coverage): skip coverage count up if the current 25915 line is out of the way. rb_sourceline() is unreliable when source 25916 code is big. [ruby-dev:44413] 25917 25918 * test/coverage/test_coverage.rb: add a test for above. 25919 25920Tue Aug 23 15:23:56 2011 Eric Hodel <drbrain@segment7.net> 25921 25922 * load.c (rb_f_require): Improve documentation of Kernel#require. 25923 [Ruby 1.9 - Bug #5210] 25924 25925Tue Aug 23 11:27:26 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 25926 25927 * ext/zlib/zlib.c (gzfile_read_header): Ensure that each section of 25928 gzip header is readable to avoid SEGV. 25929 25930 * test/zlib/test_zlib.rb (test_corrupted_header): Test it. 25931 25932Mon Aug 22 23:43:33 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 25933 25934 * sprintf.c (rb_str_format): add RB_GC_GUARD to prevent temporary 25935 strings from GC. 25936 25937Sun Aug 21 17:49:53 2011 Kazuki Tsujimoto <kazuki@callcc.net> 25938 25939 * iseq.c (iseq_s_disasm): remove variable which is no longer used 25940 since r33013. 25941 25942Sun Aug 21 14:20:58 2011 Naohisa Goto <ngotogenome@gmail.com> 25943 25944 * configure.in: use LD_LIBRARY_PATH_64 on 64-bit Solaris. 25945 25946Sat Aug 20 13:19:52 2011 Kazuki Tsujimoto <kazuki@callcc.net> 25947 25948 * iseq.c (iseq_s_disasm): fix a bug that may cause SEGV. 25949 25950 * test/ruby/test_method.rb (test_body): add a test for the above change. 25951 25952Sat Aug 20 10:43:24 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25953 25954 * ext/stringio/stringio.c (strio_read): return new string if nil 25955 is explicitly given as a buffer ([Bug #5207]), otherwise set the 25956 encoding. also removed dead code. 25957 25958Fri Aug 19 14:25:51 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 25959 25960 * process.c (proc_spawn_v, proc_spawn): should not wait the 25961 spawned process. 25962 25963 * process.c (proc_spawn_v): fix missing argument, and try with 25964 /bin/sh only if failed with ENOEXEC. 25965 25966Fri Aug 19 14:12:57 2011 Shugo Maeda <shugo@ruby-lang.org> 25967 25968 * lib/net/imap.rb (idle): raises a Net::IMAP::Error when the 25969 connection is closed. based on the patch by Hugo Barauna. 25970 [Bug #5190] [ruby-core:38930] 25971 25972Fri Aug 19 13:18:00 2011 Kenta Murata <mrkn@mrkn.jp> 25973 25974 * configure.in: defines _DARWIN_UNLIMITED_SELECT if the target_os 25975 is darwin. 25976 25977Fri Aug 19 13:14:00 2011 Kenta Murata <mrkn@mrkn.jp> 25978 25979 * thread.c: add a description for the behavior of select(2) on 25980 Mac OS X 10.7 (Lion). 25981 25982Fri Aug 19 11:28:58 2011 Shugo Maeda <shugo@ruby-lang.org> 25983 25984 * lib/net/imap.rb (msg_att): accepts extra space before ')'. 25985 based on the patch by art lussos. [Bug #5163] [ruby-core:38820] 25986 25987Wed Aug 17 23:01:00 2011 Kenta Murata <mrkn@mrkn.jp> 25988 25989 * ext/bigdecimal/bigdecimal.c (cannot_be_coerced_into_BigDecimal): 25990 remove duplication. 25991 25992Wed Aug 17 15:27:00 2011 Kenta Murata <mrkn@mrkn.jp> 25993 25994 * ext/bigdecimal/bigdecimal.c (cannot_be_coerced_into_BigDecimal): 25995 add a new function for raising error when an object cannot coerce 25996 into BigDecimal. [Bug #5172] 25997 25998 * ext/bigdecimal/bigdecimal.c (BigDecimalValueWithPrec): use 25999 cannot_be_coerced_into_BigDecimal function. 26000 26001 * ext/bigdecimal/bigdecimal.c (BigMath_s_exp): ditto. 26002 26003 * ext/bigdecimal/bigdecimal.c (BigMath_s_log): ditto. 26004 26005 * test/bigdecimal/test_bigdecimal.rb: test for the above changes. 26006 26007 * test/bigdecimal/testbase.rb (under_gc_stress): add a new utility 26008 method to run tests under the condition of GC.stress = true. 26009 26010Wed Aug 17 10:16:00 2011 Kenta Murata <mrkn@mrkn.jp> 26011 26012 * rational.c (nurat_coerce): Rational#coerce should converts itself 26013 into Complex if the argument is a Complex with non-zero imaginary 26014 part. [Bug #5020] [ruby-dev:44088] 26015 26016 * test/ruby/test_rational.rb (test_coerce): test for the above change. 26017 26018Wed Aug 17 06:33:19 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 26019 26020 * ext/openssl/ossl_x509cert.c: Add class documentation for 26021 OpenSSL::X509::Certificate. 26022 26023Wed Aug 17 04:54:25 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 26024 26025 * ext/openssl/ossl_pkey.c: corrected docs, OpenSSL::PKey::DH does 26026 *not* support #sign/verify. 26027 26028Tue Aug 16 18:56:54 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26029 26030 * vm.c (ruby_threadptr_data_type): rename to hide. 26031 [ruby-core:38972] 26032 26033Tue Aug 16 18:52:08 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26034 26035 * win32/mkexports.rb (Exports::Mswin#each_export): exclude Init_ 26036 and _threadptr_ functions, as well as mingw. 26037 26038Tue Aug 16 09:31:44 2011 Eric Hodel <drbrain@segment7.net> 26039 26040 * ext/dl: Add documentation. Patch by Vincent Batts. 26041 [Ruby 1.9 - Bug #5192] 26042 26043Tue Aug 16 08:48:26 2011 Eric Hodel <drbrain@segment7.net> 26044 26045 * ext/.document (fiddle): Remove duplicate entry 26046 * ext/fiddle: Complete documentation of Fiddle. Patch by Vincent 26047 Batts. [#5192] 26048 26049Tue Aug 16 08:00:15 2011 Eric Hodel <drbrain@segment7.net> 26050 26051 * ext/socket: Make Socket documentation appear. Add documentation for 26052 Socket, TCPServer, SOCKSSocket. Patch by Sylvain Daubert. 26053 [Ruby 1.9 - Feature #5182] 26054 26055Mon Aug 15 09:58:55 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 26056 26057 * ext/openssl/ossl_ssl.c: Support disabling OpenSSL compression. 26058 26059 * test/openssl/test_ssl.rb: Add a test for it. 26060 Thanks to Eric Wong for the patch. 26061 [Ruby 1.9 - Feature #5183] [ruby-core:38911] 26062 26063Sun Aug 14 05:57:01 2011 Tanaka Akira <akr@fsij.org> 26064 26065 * test/socket/test_socket.rb (test_connect_timeout): added a test 26066 based on a patch by Eric Wong. [ruby-core:38910] 26067 26068Sat Aug 13 22:17:27 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26069 26070 * tool/mkconfig.rb: do not make the entries related to sitedir and 26071 verdordir if disabled by --without options. [ruby-core:38922] 26072 [Bug #5187] 26073 26074Sat Aug 13 17:03:22 2011 Tadayoshi Funaba <tadf@dotrb.org> 26075 26076 * ext/date/date_core.c: [ruby-core:38861] 26077 26078Sat Aug 13 09:39:07 2011 Tadayoshi Funaba <tadf@dotrb.org> 26079 26080 * test/date/test_*.rb: added tests. 26081 26082Sat Aug 13 09:36:19 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 26083 26084 * ext/date/date_parse.c (parse_ddd_cb): fix r32896. RB_GC_GUARD 26085 insertion position was mistaken. [ruby-dev:44337] [Bug #5152] 26086 26087Sat Aug 13 09:26:24 2011 Aaron Patterson <aaron@tenderlovemaking.com> 26088 26089 * ext/psych/lib/psych/core_ext.rb: Make Kernel#y private. 26090 [ruby-core:38913] 26091 26092 * test/psych/test_yaml.rb: corresponding test. 26093 26094Sat Aug 13 09:05:16 2011 Tadayoshi Funaba <tadf@dotrb.org> 26095 26096 * ext/date/date_core.c (date_strftime_alloc): followed the change 26097 of r32885. 26098 26099 * doc/NEWS-1.9.3: followed the above change. 26100 26101Sat Aug 13 08:55:38 2011 Aaron Patterson <aaron@tenderlovemaking.com> 26102 26103 * ext/psych/lib/psych/scalar_scanner.rb: Only consider strings 26104 with fewer than 2 dots to be numbers. [ruby-core:38915] 26105 26106Sat Aug 13 08:47:20 2011 Tadayoshi Funaba <tadf@dotrb.org> 26107 26108 * ext/date/date_core.c: [ruby-core:38855]. 26109 26110Sat Aug 13 03:41:37 2011 Eric Hodel <drbrain@segment7.net> 26111 26112 * lib/uri/common.rb: Fix documentation of URI::Parser.new. Patch by 26113 Steve Klabnik. [Ruby 1.9 - Bug #5177] 26114 26115Sat Aug 13 02:19:57 2011 Eric Hodel <drbrain@segment7.net> 26116 26117 * ext/digest/digest.c: Add documentation for the Digest module. Patch 26118 by Sylvain Daubert. [Ruby 1.9 - Bug #5167] 26119 26120Sat Aug 13 01:56:11 2011 Eric Hodel <drbrain@segment7.net> 26121 26122 * lib/rake: Update to Rake 0.9.2.2. Prevent pollution of toplevel 26123 namespace by Commands. Remove unused variable and debugging 26124 statement in tests. 26125 26126Fri Aug 12 11:39:35 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 26127 26128 * configure.in: Describe "no" configure option for site_ruby 26129 and vendor_ruby. Patch by Vit Ondruch. [Bug #5187][ruby-core:38921] 26130 26131Fri Aug 12 09:00:24 2011 Eric Hodel <drbrain@segment7.net> 26132 26133 * lib/rubygems: Import RubyGems 1.8.8. Fixes encoding of YAML gemspec 26134 from gems. Github Issue #149 26135 26136Fri Aug 12 08:17:46 2011 Tanaka Akira <akr@fsij.org> 26137 26138 * ext/socket/ipsocket.c (init_inetsock_internal): use SOMAXCONN for 26139 listen backlog. 26140 26141 * ext/socket/unixsocket.c (rsock_init_unixsock): ditto. 26142 26143 * ext/socket/lib/socket.rb (Addrinfo#listen): ditto. 26144 (Socket.tcp_server_sockets_port0): ditto. 26145 26146 * ext/socket/mkconstants.rb: define SOMAXCONN as 5 if not available. 26147 26148 [ruby-core:38493] 26149 26150Fri Aug 12 03:24:35 2011 Eric Hodel <drbrain@segment7.net> 26151 26152 * lib/rdoc: Import RDoc 3.9.2. Fixes TIDYLINK for HTML output. 26153 26154Thu Aug 11 15:37:42 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 26155 26156 * variable.c (autoload_delete): An autoload entry is still in a 26157 RCLASS_IV_TBL, not in a RCLASS_CONST_TBL, so take back the table 26158 changed in r29600. And an autoload entry keeps not a 26159 rb_const_entry_t but a NODE so remove rb_const_entry_t thing added 26160 in r29602. 26161 26162Thu Aug 11 15:07:36 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26163 26164 * lib/mkmf.rb (link_command): use LIBRUBYARG in rbconfig for 26165 unbundled extensions. [ruby-core:38802] [Bug #5147] 26166 26167 * lib/mkmf.rb (init_mkmf): revert r32902. [ruby-core:38903] 26168 26169Wed Aug 10 23:03:55 2011 Tanaka Akira <akr@fsij.org> 26170 26171 * ext/socket/lib/socket.rb: fix argument check in the previous commit. 26172 26173Wed Aug 10 22:12:28 2011 Tanaka Akira <akr@fsij.org> 26174 26175 * ext/socket/lib/socket.rb (Socket.tcp): add :connect_timeout option. 26176 (Addrinfo#connect_from): add :timeout option. 26177 (Addrinfo#connect): ditto. 26178 (Addrinfo#connect_to): ditto. 26179 [ruby-core:38538] 26180 26181Wed Aug 10 21:27:19 2011 Tanaka Akira <akr@fsij.org> 26182 26183 * lib/net/pop.rb: fix typo in document. 26184 26185 * lib/net/http.rb: ditto. 26186 26187 * lib/net/imap.rb: ditto. 26188 26189Wed Aug 10 19:30:00 2011 Kenta Murata <mrkn@mrkn.jp> 26190 26191 * complex.c (nucomp_rationalize): calls rationalize of real part if 26192 imaginary part is exactly zero. The patch is made by Marc-Andre 26193 Lafortune. fixes [Bug #5178] [ruby-core:38885] 26194 26195 * test/ruby/test_complex.rb (test_rationalize): add a test for the 26196 above change. 26197 26198 * complex.c (nucomp_to_r): fix RDoc comment. The patch is made by 26199 Marc-Andre Lafortune. 26200 26201Wed Aug 10 14:11:07 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26202 26203 * lib/mkmf.rb (init_mkmf): set $LIBRUBYARG regardless of shared 26204 option. [ruby-core:38802] [Bug #5147] 26205 26206Wed Aug 10 02:53:27 2011 NARUSE, Yui <naruse@ruby-lang.org> 26207 26208 * lib/net/http.rb: come back autoload. OpenSSL constant is used 26209 some places, so it leads mistakes like HTTP.start. 26210 26211Tue Aug 9 22:57:45 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 26212 26213 * ext/date/date_parse.c (date_zone_to_diff): add RB_GC_GUARD. 26214 [ruby-dev:44337] [Bug #5152] 26215 26216 * ext/date/data_parse.c (parse_ddd_cb): ditto. 26217 26218Tue Aug 9 14:25:47 2011 Naohisa Goto <ngotogenome@gmail.com> 26219 26220 * ext/fiddle/conversions.c (generic_to_value): ffi_arg and ffi_sarg 26221 should be used to handle shorter return value. fix [Bug #3861] 26222 [ruby-core:32504] 26223 26224 * ext/fiddle/closure.c (callback): ditto 26225 26226 * ext/fiddle/conversions.h (fiddle_generic): ditto 26227 26228 * ext/fiddle/conversions.c (value_to_generic): char, short and int 26229 are strictly distinguished on big-endian CPU, e.g. sparc64. 26230 26231Tue Aug 9 11:21:08 2011 Narihiro Nakamura <authornari@gmail.com> 26232 26233 * gc.c (gc_lazy_sweep): if sweep target slots are not found, we 26234 try heap_increment() because it might be able to expand the 26235 heap. [Bug #5127] [ruby-dev:44285] 26236 26237 * gc.c (gc_clear_mark_on_sweep_slots): if a sweeping was 26238 interrupted, we expand the heap if at all possible. 26239 26240Tue Aug 9 12:20:33 2011 Naohisa Goto <ngotogenome@gmail.com> 26241 26242 * test/fiddle/helper.rb (libc_so, libm_so): Solaris support added. 26243 [ruby-core:38853] [Bug #5168] 26244 26245 * test/dl/test_base.rb (libc_so, libm_so): on Solaris, remove libc 26246 and libm version numbers for detecting default libc and libm. 26247 26248Tue Aug 9 09:18:04 2011 Eric Hodel <drbrain@segment7.net> 26249 26250 * ext/zlib/zlib.c (gzfile_wrap): Document encoding options. 26251 26252 * ext/zlib/zlib.c (rb_gzwriter_s_open): ditto 26253 26254 * ext/zlib/zlib.c (rb_gzreader_s_open): ditto 26255 26256Sun Aug 7 23:31:32 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 26257 26258 * time.c (rb_strftime_alloc): raise ERANGE if width is too large. 26259 Patch by Nobuyoshi Nakada. [Bug #4457] [ruby-dev:43285] 26260 26261 * test/ruby/test_time.rb (class TestTime): add a test for the 26262 above change. 26263 26264Sun Aug 7 22:51:45 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 26265 26266 * ext/openssl/ossl_asn1.c (decode_eoc): remove unused variables. 26267 Patch by Eric Wong. [Feature #5157] [ruby-core:38798] 26268 26269 * ext/openssl/ossl_asn1.c (ossl_asn1_decode): ditto. 26270 26271 * ext/openssl/ossl_pkey.c (ossl_pkey_new_from_data): ditto. 26272 26273Sun Aug 7 22:37:08 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 26274 26275 * configure.in: add -Wunused-variable to default CFLAGS. 26276 Patch by Eric Wong. [Feature #5157] [ruby-core:38798] 26277 26278Sun Aug 7 15:37:35 2011 NARUSE, Yui <naruse@ruby-lang.org> 26279 26280 * ext/digest/sha2/sha2ossl.c: use original SHA384_Final on DragonFly. 26281 26282Sun Aug 7 14:08:16 2011 Kazuki Tsujimoto <kazuki@callcc.net> 26283 26284 * ext/objspace/objspace.c: fix typos in a document. 26285 26286Sun Aug 7 07:14:57 2011 NARUSE, Yui <naruse@ruby-lang.org> 26287 26288 * cont.c (HAVE_GETCONTEXT): see getcontext(3) because DragonFly BSD 26289 x64 port doesn't have it. 26290 26291Sun Aug 7 00:42:55 2011 NARUSE, Yui <naruse@ruby-lang.org> 26292 26293 * ext/tk/lib/tk/wm.rb (Tk::Wm.command): Add the missing receiver 26294 before calling epath. patched by flori 26295 https://github.com/flori/ruby/commit/aa9474d32e5f2c57f8b0e2e0c528a03f06a4d433 26296 26297Sat Aug 6 07:06:34 2011 Eric Hodel <drbrain@segment7.net> 26298 26299 * marshal.c (w_object): Fix exception message when _dump_data is not 26300 defined on a T_DATA object. 26301 26302Fri Aug 5 22:16:20 2011 Naohisa Goto <ngotogenome@gmail.com> 26303 26304 * numeric.c (rb_infinity, rb_nan): use WORDS_BIGENDIAN to get endian. 26305 fix [Bug #5160] [ruby-dev:44356] 26306 26307Fri Aug 5 17:14:11 2011 Akinori MUSHA <knu@iDaemons.org> 26308 26309 * test/test_syslog.rb (TestSyslog#test_log): Do not be too 26310 specific about the log line format. Fixes #5081. 26311 26312Fri Aug 5 15:57:10 2011 Naohisa Goto <ngotogenome@gmail.com> 26313 26314 * complex.c (f_signbit): fix compile error in gcc4 on Solaris with 26315 CFLAGS="-std=gnu99". [ruby-dev:44355] fix [Bug #5159] 26316 26317 * math.c: ditto. 26318 26319Fri Aug 5 15:55:33 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26320 26321 * test/ruby/test_object.rb: tests that respond_to? returns false. 26322 26323Fri Aug 5 13:32:43 2011 Shugo Maeda <shugo@ruby-lang.org> 26324 26325 * lib/xmlrpc/client.rb, lib/xmlrpc/server.rb: should use 26326 String#bytesize instead of String#size. 26327 26328Fri Aug 5 12:18:20 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26329 26330 * vm_eval.c (check_funcall): try respond_to? first if redefined. 26331 [Bug #5158] 26332 26333Fri Aug 5 09:48:22 2011 Eric Hodel <drbrain@segment7.net> 26334 26335 * lib/rubygems: Import RubyGems 1.8.7: 26336 Added missing require for `gem uninstall --format-executable`. 26337 26338 The correct name of the executable being uninstalled is now displayed 26339 with --format-executable. 26340 26341 Fixed `gem unpack uninstalled_gem` default version picker. 26342 26343 RubyGems no longer claims a nonexistent gem can be uninstalled. 26344 26345 `gem which` no longer claims directories are requirable files. 26346 26347 `gem cleanup` continues cleaning up gems if one can't be uninstalled 26348 due to permissions. Issue #82. 26349 26350 Gem repository directories are no longer created world-writable. 26351 Patch by Sakuro OZAWA. [Ruby 1.9 - Bug #4930] 26352 26353Fri Aug 5 07:00:31 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26354 26355 * test/io/console/test_io_console.rb (test_noctty): daemon() on 26356 Fedora Rawhide seems not to detach the controlling terminal, 26357 when the argument noclose is non-zero. ref: [Bug #5135] 26358 26359Thu Aug 4 23:48:00 2011 Kenta Murata <mrkn@mrkn.jp> 26360 26361 * thread_pthread.c (native_cond_signal): retry to call pthread_cond_signal 26362 and pthread_cond_broadcast if they return EAGAIN in 26363 native_cond_signal and native_cond_broadcast, respectively. 26364 It is for the pthread implementation of Mac OS X 10.7 (Lion). 26365 fixes #5155. [ruby-dev:44342]. 26366 26367 * thread_pthread.c (native_cond_broadcast): ditto. 26368 26369 * thread_pthread.c (struct cached_thread_entry): stop using 26370 pthread_cond_t and its functions directly. 26371 26372 * thread_pthread.c (register_cached_thread_and_wait): ditto. 26373 26374 * thread_pthread.c (use_cached_thread): ditto. 26375 26376Thu Aug 4 20:29:41 2011 Naohisa Goto <ngotogenome@gmail.com> 26377 26378 * configure.in: when Solaris cc, use $(CC) to link shared libs. 26379 26380Thu Aug 4 20:19:11 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 26381 26382 * error.c (report_bug): use a small message buffer instead of BUFSIZ. 26383 It is needed for avoiding nested SIGSEGV on Linux. 26384 Note: BUFSIZ is not proper buffer size. It's unrelated with maximum 26385 filename length. :-/ 26386 [Bug #5139] [ruby-dev:44315] 26387 26388Thu Aug 4 16:08:45 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26389 26390 * tool/rbinstall.rb (gem): install all gemspecs under lib and ext. 26391 26392 * tool/rbinstall.rb (Gem::Specification): may not be defined when 26393 cross-compiling and BASERUBY is 1.8. 26394 26395Thu Aug 4 11:30:36 2011 NARUSE, Yui <naruse@ruby-lang.org> 26396 26397 * include/ruby/missing.h: define __syscall on OpenBSD as r32702. 26398 26399Thu Aug 4 03:02:54 2011 Aaron Patterson <aaron@tenderlovemaking.com> 26400 26401 * tool/rbinstall.rb: use rubygems to load gemspecs, copy actual 26402 gemspecs on install rather than generate fake ones for all gems. 26403 26404Thu Aug 4 02:45:10 2011 Kenta Murata <mrkn@mrkn.jp> 26405 26406 * configure.in: set CXX variable to the C++ compiler that matches the 26407 C compiler specified by CC variable (e.g. use g++-4.2 for gcc-4.2). 26408 26409Thu Aug 4 02:21:10 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26410 26411 * lib/mkmf.rb (link_command): use static library only for bundled 26412 extensions. [Bug #5147] 26413 26414Thu Aug 4 02:02:10 2011 Aaron Patterson <aaron@tenderlovemaking.com> 26415 26416 * ext/psych/psych.gemspec: installing psych as a gem. 26417 26418Wed Aug 3 16:01:35 2011 NAKAMURA Usaku <usa@ruby-lang.org> 26419 26420 * util.c, include/ruby/util.h (ruby_add_suffix): remove the function. 26421 [Bug #5153] [ruby-core:38736] 26422 26423 * io.c (argf_next_argv): remove the call of above function. 26424 26425 * ext/-test-/add_suffix, test/-ext-/test_add_suffix.rb: remove the test 26426 extension module because this is only for testing ruby_add_suffix(). 26427 26428 * LEGAL: remove the mention about a part of util.c, because now we 26429 removed the part. 26430 26431 * io.c (argf_next_argv): now the new filename is not guaranteed to 26432 use, so should check the return value of rename(2). 26433 26434 * test/ruby/test_argf.rb (TestArgf#test_inplace_rename_impossible): 26435 now we expect same result with other platforms on no_safe_rename 26436 platforms (=Windows). 26437 26438Wed Aug 3 09:18:08 2011 URABE Shyouhei <shyouhei@ruby-lang.org> 26439 26440 * test/xmlrpc/webrick_testing.rb (WEBrick_Testing#start_server): 26441 Like r32795, bind address should be specified. 26442 26443Wed Aug 3 07:46:30 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26444 26445 * encoding.c (enc_find): mistakenly remained !. [Bug #5150] 26446 26447Wed Aug 3 00:11:08 2011 Tanaka Akira <akr@fsij.org> 26448 26449 * lib/prettyprint.rb: update document. [ruby-core:36776] 26450 26451Tue Aug 2 22:04:46 2011 NARUSE, Yui <naruse@ruby-lang.org> 26452 26453 * gc.c (init_heap): allocate sigaltstack after heaps are allocated. 26454 [ruby-dev:44315] [Bug #5139] 26455 26456 * vm.c (thread_free): use free because objspace is not ready. 26457 26458 * vm.c (th_init): use malloc because objspace is not ready. 26459 26460Tue Aug 2 20:10:16 2011 Shota Fukumori <sorah@tubusu.net> 26461 26462 * test/testunit/test_parallel.rb: pass "--ruby" option to 26463 test/testunit/tests_for_parallel/runner.rb. [Bug #5132] [ruby-dev:44303] 26464 26465Tue Aug 2 15:53:37 2011 NARUSE, Yui <naruse@ruby-lang.org> 26466 26467 * encoding.c (str_to_encoding): rename from to_encoding and 26468 use str_to_encindex. 26469 26470 * encoding.c (str_to_encindex): split from to_encoding. 26471 26472 * encoding.c (rb_to_encoding): use str_to_encoding. 26473 26474 * encoding.c (rb_obj_encoding): don't bypass rb_encoding*. 26475 If it uses rb_encoding*, it bypass encindex. If it uses encindex, 26476 it doesn't bypass. 26477 26478 * encoding.c (enc_find): add shortcut for encoding object, use 26479 str_to_encindex, and avoid bypass rb_encoding*. 26480 26481Tue Aug 2 12:03:16 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26482 26483 * hash.c (recursive_hash): hash value of emptied hash should be 26484 equal to an empty hash. [ruby-core:38650] 26485 26486Tue Aug 2 11:42:15 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26487 26488 * parse.y (rb_enc_symname2_p): :! is valid symbol. [Bug #5136] 26489 26490Tue Aug 2 07:33:29 2011 URABE Shyouhei <shyouhei@ruby-lang.org> 26491 26492 * test/net/http/test_http.rb (TestNetHTTP_version_1_1_methods#test_timeout_during_HTTP_session): 26493 If you connect to localhost, you should listen localhost. 26494 26495 * test/net/http/test_https.rb (TestNetHTTPS#test_timeout_during_SSL_handshake): 26496 ditto. 26497 26498Tue Aug 2 06:18:15 2011 Luis Lavena <luislavena@gmail.com> 26499 26500 * lib/rubygems/installer.rb (class Gem): Correct path check on Windows 26501 Possible fix for [Ruby 1.9 - Bug #5111] 26502 * test/rubygems/test_gem_installer.rb (load Gem): ditto 26503 26504Mon Aug 1 20:12:03 2011 NAKAMURA Usaku <usa@ruby-lang.org> 26505 26506 * test/ruby/test_process.rb (TestProcess#windows?): new method. 26507 26508 * test/ruby/test_process.rb (TestProcess#*): use above method. 26509 26510 * test/ruby/test_process.rb (TestProcess#test_execopts_redirect): 26511 windows doesn't support FD_CLOEXEC. 26512 26513Mon Aug 1 15:45:23 2011 Eric Hodel <drbrain@segment7.net> 26514 26515 * test/rake/test_rake_functional.rb: Don't assume the binary name of 26516 ruby is "ruby". [Ruby 1.9 - Bug #5114] 26517 * test/rake/helper.rb: ditto 26518 26519Mon Aug 1 15:31:14 2011 URABE Shyouhei <shyouhei@ruby-lang.org> 26520 26521 * test/io/console/test_io_console.rb (TestIO_Console#test_sync): 26522 Skip when PTY allocation failed (that's not our fault). 26523 26524Mon Aug 1 15:04:12 2011 URABE Shyouhei <shyouhei@ruby-lang.org> 26525 26526 * test/xmlrpc/test_webrick_server.rb (Test_Webrick#setup_http_server): 26527 XMLRPC::Client.new3(), when called without host: argument, tries 26528 to connect to a host where "localhost" resolves to. On the 26529 other hand a WEBrick::HTTPServer.new(), when called without 26530 BindAddress: argument, tries to listen all the address where 26531 getaddrinfo(AF_UNSPEC) resolves to. This is a mismatch because 26532 "localhost" might not resolve to one of those listening sockets. 26533 We would better explicitly specify "localhost" here and if 26534 failed, just skip the whole test. 26535 26536Mon Aug 1 14:24:56 2011 Eric Hodel <drbrain@segment7.net> 26537 26538 * lib/rdoc.rb: Import RDoc 3.9.1. Fixes bugs in the RDoc::Markup 26539 parser. 26540 26541Mon Aug 1 12:00:35 2011 NARUSE, Yui <naruse@ruby-lang.org> 26542 26543 * insns.def (concatstrings): don't use initial ASCII-8BIT string. 26544 [ruby-core:38635] [Bug #5126] 26545 26546Sun Jul 31 22:57:16 2011 Yuki Sonoda (Yugui) <yugui@yugui.jp> 26547 26548 * enc/Makefile.in (ECHO1): Same as the recent fix in common.mk. 26549 ":" in a make variable replacement cause a syntax error with 26550 /usr/ccs/bin/make on Solaris. Uses $(NULLCMD) instead. 26551 26552Sun Jul 31 21:16:02 2011 Yuki Sonoda (Yugui) <yugui@yugui.jp> 26553 26554 * complex.c (f_signbit): gcc4 on Solaris DOES have signbit but does 26555 not have it on header. 26556 26557 * math.c: ditto. 26558 26559Sun Jul 31 21:09:04 2011 Yuki Sonoda (Yugui) <yugui@yugui.jp> 26560 26561 * common.mk (node_name.inc): Use $(Q) for consistency. 26562 26563 * Makefile.in (INSNS): ditto. 26564 26565Sun Jul 31 21:19:51 2011 Yuki Sonoda (Yugui) <yugui@yugui.jp> 26566 26567 * lib/mkmf.rb (configuration:ECHO1): Same as the recent fix in 26568 common.mk. 26569 ":" in a make variable replacement cause a syntax error with 26570 /usr/ccs/bin/make on Solaris. Uses $(NULLCMD) instead. 26571 26572Sun Jul 31 20:39:12 2011 Yuki Sonoda (Yugui) <yugui@yugui.jp> 26573 26574 * common.mk (ECHO1): nmake does not allow parenthesis in make variable 26575 replacement. 26576 26577Sun Jul 31 23:06:57 2011 Kazuki Tsujimoto <kazuki@callcc.net> 26578 26579 * vm.c (check_env): print debug messages to stderr. 26580 [Feature #4871] [ruby-dev:43743] 26581 26582Sun Jul 31 22:50:23 2011 Kazuki Tsujimoto <kazuki@callcc.net> 26583 26584 * vm.c (vm_make_env_each): don't save prev env value. 26585 It is no longer used. [Feature #4871] [ruby-dev:43743] 26586 26587 * vm.c (check_env): changed accordingly. 26588 26589Sun Jul 31 20:21:36 2011 "Yuki Sonoda (Yugui)" <yugui@yugui.jp> 26590 26591 * common.mk (ECHO1): ":" in a make variable replacement cause a syntax 26592 error with /usr/ccs/bin/make on Solaris. Uses $(NULLCMD) instead. 26593 26594 * configure.in (NULLCMD): new check. 26595 26596 * Makefile.in (NULLCMD): Reflects checking in configure. 26597 26598 * win32/Makefile.sub (NULLCMD): new assignment. 26599 26600Sun Jul 31 18:58:59 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26601 26602 * io.c (rb_pipe): pipe on cygwin can succeed half but fail 26603 half. 26604 26605Sun Jul 31 11:31:07 2011 Kazuki Tsujimoto <kazuki@callcc.net> 26606 26607 * vm.c: check if cfp is valid. [Bug #5083] [ruby-dev:44208] 26608 26609Sun Jul 31 09:18:28 2011 Eric Hodel <drbrain@segment7.net> 26610 26611 * lib/rdoc: Update to RDoc 3.9. Fixed `ri []`, stopdoc creating an 26612 object reference, nodoc for class aliases, verbatim === lines. 26613 26614Sun Jul 31 01:29:08 2011 NARUSE, Yui <naruse@ruby-lang.org> 26615 26616 * io.c (rb_io_each_byte): remove unused variable e. 26617 26618Sat Jul 31 01:23:45 2011 Kenta Murata <mrkn@mrkn.jp> 26619 26620 * test/bigdecimal/test_bigdecimal.rb (test_version): removed. 26621 26622Sat Jul 30 23:19:09 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26623 26624 * defs/default_gems: separate from tool/rbinstall.rb. 26625 26626Sat Jul 30 23:14:44 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26627 26628 * io.c (rb_io_each_byte): rbuf can be refreshed during yield. 26629 [Bug #5119] 26630 26631Sat Jul 30 22:35:50 2011 Naohisa Goto <ngotogenome@gmail.com> 26632 26633 * strftime.c (NEEDS): avoid SEGV due to integer overflow in 26634 sparc-solaris2.10 and i686-linux. fix [Bug #4456] [ruby-dev:43284] 26635 26636Sat Jul 30 17:26:26 2011 Masaki Suketa <masaki.suketa@nifty.ne.jp> 26637 26638 * test/win32ole/test_win32ole_variant.rb: use skip method to skip the test. 26639 26640 * test/win32ole/test_win32ole_variant_outarg.rb: ditto. 26641 26642Sat Jul 30 14:27:00 2011 Kenta Murata <mrkn@mrkn.jp> 26643 26644 * ext/bigdecimal/bigdecimal.c (BigDecimal_version): version 1.1.0. 26645 26646 * ext/bigdecimal/bigdecimal.gemspec: turn into a default gem. 26647 26648 * tool/rbinstall.rb: ditto. 26649 26650Sat Jul 30 11:21:55 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 26651 26652 * vm_core.h (ALT_STACK_SIZE): use MINSIGSTKSZ*2 instead of SIGSTKSZ*2. 26653 [ruby-core:38607] 26654 26655Sat Jul 30 10:39:14 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 26656 26657 * vm.c (th_init): preallocate alternative stack. 26658 NoMemoryError is better than rb_bug, of course. 26659 Patch by Eric Wong. [ruby-core:38572][ruby-core:38594]. 26660 26661 * signal.c (rb_register_sigaltstack): ditto. 26662 26663 * vm_core.h: moved ALT_STACK_SIZE definition from signal.c. 26664 * vm.c (thread_free): use xfree() instead of free(). 26665 26666Sat Jul 30 07:20:49 2011 Tanaka Akira <akr@fsij.org> 26667 26668 * ext/socket/lib/socket.rb (udp_server_sockets): unused variable 26669 removed. 26670 patch by Jeremy Evans. [ruby-core:38600] 26671 26672Fri Jul 29 23:56:32 2011 Tanaka Akira <akr@fsij.org> 26673 26674 * lib/securerandom.rb: call OpenSSL::Random.seed at the 26675 SecureRandom.random_bytes call. 26676 based on the patch by Masahiro Tomita. [ruby-dev:44270] 26677 26678Fri Jul 29 23:53:48 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26679 26680 * array.c (rb_ary_set_len): new function to set array length. 26681 26682 * vm_eval.c (method_missing): set the length of argv array, to mark 26683 arguments. 26684 26685 * vm_eval.c (rb_apply): get rid of too large alloca. 26686 26687Fri Jul 29 20:48:39 2011 Tanaka Akira <akr@fsij.org> 26688 26689 * ext/socket/mkconstants.rb: fix typos. 26690 26691Fri Jul 29 20:28:56 2011 Tanaka Akira <akr@fsij.org> 26692 26693 * ext/socket/mkconstants.rb: use whitespaces as a separator. 26694 26695Fri Jul 29 18:59:07 2011 Tanaka Akira <akr@fsij.org> 26696 26697 * ext/socket/mkconstants.rb: add documents for constants. 26698 patch by Eric Hodel. [ruby-core:37853] [Bug #4989] 26699 26700Fri Jul 29 16:00:43 2011 NARUSE, Yui <naruse@ruby-lang.org> 26701 26702 * configure.in (enable_pthread): use -pthread on OpenBSD without 26703 explicit option. patched by Jeremy Evans. [ruby-core:38572] 26704 26705Thu Jul 28 23:36:28 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 26706 26707 * ext/fiddle/closure.c (callback): use rb_ary_tmp_new() instead of 26708 xmalloc() to allocate an array for arguments of callback procedure, 26709 to prevent arguments from being swept by GC. [ruby-core:38546] 26710 [Bug #4929] 26711 26712Thu Jul 28 22:36:06 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 26713 26714 * ext/openssl/ossl_cipher.c (ossl_cipher_initialize): Avoid possible 26715 SEGV from AES encryption/decryption. Processing data by 26716 Cipher#update without initializing key (meaningless usage of Cipher 26717 object since we don't offer a way to export a key) could cause SEGV. 26718 26719 In OpenSSL, the EVP which has EVP_CIPH_RAND_KEY flag (such as DES3) 26720 allows uninitialized key, but other EVPs (such as AES) does not 26721 allow it. Calling EVP_CipherUpdate() without initializing key causes 26722 SEGV so we set the data filled with "\0" as the key by default. See 26723 #2768. 26724 26725 * test/openssl/test_cipher.rb: test it. 26726 26727Thu Jul 28 14:25:08 2011 NAKAMURA Usaku <usa@ruby-lang.org> 26728 26729 * lib/rubygems/user_interaction.rb (Gem::StreamUI#tty?): typo. 26730 26731Thu Jul 28 12:32:53 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26732 26733 * ext/dl/callback/mkcallback.rb (gencallback): use PTR2NUM. 26734 26735 * ext/dl/cptr.c (rb_dlptr_aref, rb_dlptr_aset): check NULL pointer 26736 dereference. 26737 26738 * ext/dl/cptr.c (rb_dlptr_s_to_ptr): use rb_check_funcall. 26739 26740 * ext/dl/cptr.c (rb_dlptr_s_to_ptr): fix wrapping condition. 26741 26742Thu Jul 28 04:53:31 2011 Eric Hodel <drbrain@segment7.net> 26743 26744 * lib/delegate.rb: Move file-level documentation to the appropriate 26745 classes. 26746 26747Thu Jul 28 02:15:04 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26748 26749 * ext/dl/cfunc.c (dlcfunc_mark), ext/dl/cptr.c (dlptr_mark): 26750 workaround to mark wrapped object. this is not a true fix, 26751 because [Bug #4929] is caused by the interface design of DL. 26752 26753Thu Jul 28 00:28:15 2011 NARUSE, Yui <naruse@ruby-lang.org> 26754 26755 * test/fileutils/test_fileutils.rb: add OpenBSD case. 26756 patched by Jeremy Evans [ruby-core:38530] see #5097 26757 26758 * test/ruby/test_process.rb: ditto. 26759 26760Wed Jul 27 22:46:59 2011 CHIKANAGA Tomoyuki <nagachika00@gmail.com> 26761 26762 * test/rinda/test_rinda.rb (test_remote_array_and_hash): 26763 add local variables to protect objects from GC. [ruby-dev:44253] 26764 [Bug #5104] 26765 26766Wed Jul 27 17:55:54 2011 NARUSE, Yui <naruse@ruby-lang.org> 26767 26768 * include/ruby/missing.h: define __syscall if the platform has 26769 __syscall in the library but doesn't define it in headers 26770 for example Mac OS X. 26771 26772Wed Jul 27 15:39:14 2011 Eric Hodel <drbrain@segment7.net> 26773 26774 * object.c: Add usage documentation for BasicObject. Based on patch 26775 by Thomas Sawyer. [Ruby 1.9 - Bug #5067] 26776 26777Wed Jul 27 12:24:17 2011 Eric Hodel <drbrain@segment7.net> 26778 26779 * lib/rubygems/uninstaller.rb: Add missing require and update 26780 messaging to avoid confusion with uninstall --format-executable. 26781 [Ruby 1.9 - Bug #4062] 26782 26783Wed Jul 27 09:34:24 2011 Eric Hodel <drbrain@segment7.net> 26784 26785 * lib/rubygems: Update to RubyGems 1.8.6.1. 26786 26787Wed Jul 27 09:27:59 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 26788 26789 * test/openssl/test_pkcs12.rb: Add test and intermediate certificates. 26790 [ Ruby 1.9 - Feature #3793 ] [ruby-core:32088] 26791 26792Wed Jul 27 01:05:32 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26793 26794 * eval_error.c (rb_print_undef_str): new function to raise 26795 NameError for undefined method. 26796 26797 * load.c (rb_mod_autoload_p), object.c (rb_mod_const_get), 26798 variable.c (rb_f_untrace_var, set_const_visibility), vm_method.c 26799 (rb_mod_{remove,undef,alias}_method, set_method_visibility): 26800 remove inadvertent symbol creation. based on the first patch by 26801 Jeremy Evans at [ruby-core:38447]. [Feature #5089] 26802 26803 * vm_method.c (obj_respond_to): fix the respond_to_missing? override 26804 case. based on the patch by Jeremy Evans at [ruby-core:38417]. 26805 [Feature #5072] 26806 26807 * parse.y (rb_check_id): make the given name a symbol or a string. 26808 based on the second patch by Jeremy Evans at [ruby-core:38447] 26809 26810Wed Jul 27 00:50:00 2011 Kenta Murata <mrkn@mrkn.jp> 26811 26812 * ext/bigdecimal/lib/bigdecimal/util.rb (Rational#to_d): 26813 zero or negative precision is error. fixes #5098. 26814 [ruby-dev:44210] 26815 26816 * test/bigdecimal/test_bigdecimal_util.rb: add test for the above 26817 change. 26818 26819Wed Jul 27 00:48:00 2011 Kenta Murata <mrkn@mrkn.jp> 26820 26821 * ext/bigdecimal/lib/bigdecimal/util.rb (Float#to_d): modified for 26822 specifying precision. fixes #5098. [ruby-dev:44210] 26823 26824 * test/bigdecimal/test_bigdecimal_util.rb: add test for the above 26825 change. 26826 26827Wed Jul 27 00:45:00 2011 Kenta Murata <mrkn@mrkn.jp> 26828 26829 * ext/bigdecimal/lib/bigdecimal/util.rb (Integer#to_d): added 26830 for symmetry to BigDecimal() function with an Integer. 26831 fixes #5098. [ruby-dev:44210] 26832 26833 * test/bigdecimal/test_bigdecimal_util.rb: add test for the above 26834 change. 26835 26836Wed Jul 27 00:30:00 2011 Kenta Murata <mrkn@mrkn.jp> 26837 26838 * ext/bigdecimal/lib/bigdecimal/util.rb (BigDecimal#to_d): added 26839 for adapting other Numeric subclasses. [ruby-dev:44245] 26840 26841 * test/bigdecimal/test_bigdecimal_util.rb: test for the above change. 26842 26843Wed Jul 27 00:27:00 2011 Kenta Murata <mrkn@mrkn.jp> 26844 26845 * bigdecimal/bigdecimal.c (VpDup) a new function for duplicating 26846 a BigDecimal. 26847 26848 * bigdecimal/bigdecimal.c (BigDecimal_new): support generating a new 26849 BigDecimal from another BigDecimal using BigDecimal global function 26850 or constructor. [ruby-dev:44245] 26851 26852Tue Jul 26 23:33:24 2011 Igor Zubkov <igor.zubkov@gmail.com> 26853 26854 * array.c: Fix typo. https://github.com/ruby/ruby/pull/36 26855 26856Mon Jul 25 23:51:01 2011 Yusuke Endoh <mame@tsg.ne.jp> 26857 26858 * proc.c: pre-allocate the unlinked_method_entry_list_entry struct to 26859 avoid memory allocation during GC. based on a patch from Eric Wong. 26860 [ruby-core:38498] 26861 26862Mon Jul 25 23:39:33 2011 NAKAMURA Usaku <usa@ruby-lang.org> 26863 26864 * test/rake/test_rake_directory_task.rb (TestRakeDirectoryTask# 26865 test_directory_win32): fixed wrong test. 26866 26867Mon Jul 25 22:36:11 2011 Yusuke Endoh <mame@tsg.ne.jp> 26868 26869 * proc.c (struct METHOD), gc.c (gc_marks), vm_method.c 26870 (rb_gc_mark_unlinked_live_method_entries): fix SEGV bug. 26871 rb_method_entry_t was free'd even when the method is still on the 26872 stack if it is BMETHOD (i.e., Method#call). This is because 26873 rb_method_entry_t is embedded in struct METHOD. This commit 26874 separates them and marks the live method entries. 26875 See [ruby-core:38449] in detail. fix [Bug #5047] [ruby-core:38171] 26876 26877Mon Jul 25 22:14:37 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 26878 26879 * lib/xmlrpc/client.rb: Fix possible HTTP header formatting failure by 26880 'Basic' header. Long username caused the base64 String truncation in 26881 HTTP header which is not allowed. See #5046. 26882 26883 * test/xmlrpc/test_webrick_server.rb: test it. 26884 26885Mon Jul 25 15:04:33 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 26886 26887 * ext/openssl/lib/openssl.rb: End of transition period introduced by 26888 [ruby-dev:38018]. From the next version of 1.9.3, you should use 26889 require "openssl" 26890 instead of 26891 require "openssl/ssl" 26892 and 26893 require "openssl/x509" 26894 26895Mon Jul 25 13:46:38 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 26896 26897 * ext/openssl/lib/openssl/x509.rb: Cosmetic change: move definition 26898 introduced in r30152 to x509-internal.rb. 26899 26900Mon Jul 25 13:09:42 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 26901 26902 * ext/openssl/ossl_ssl.c (ossl_ssl_shutdown): Avoid randomly generated 26903 SSLError from SSLSocket just after invoking SSLSocket#close. 26904 OpenSSL's SSL_shutdown could try to send alert packet and it might 26905 set SSLerr(global error stack) as the result. It causes the next 26906 SSL read/write operation to fail by unrelated reason. 26907 26908 By design, we're ignoring any error at SSL_shutdown() so we clear 26909 global error stack after SSL_shutdown is called. See #5039. 26910 26911Sun Jul 24 20:29:53 2011 Tanaka Akira <akr@fsij.org> 26912 26913 * ext/socket/extconf.rb: refine the recvmsg test. 26914 26915Sun Jul 24 20:02:31 2011 Tanaka Akira <akr@fsij.org> 26916 26917 * ext/socket/extconf.rb: fix the recvmsg test. 26918 26919Sun Jul 24 08:42:51 2011 Tanaka Akira <akr@fsij.org> 26920 26921 * ext/socket/extconf.rb: test recvmsg allocates file descriptors for 26922 fd passing even with MSG_PEEK. 26923 26924 * ext/socket/ancdata.c: use the above test result. 26925 26926Sun Jul 24 01:04:50 2011 Eric Hodel <drbrain@segment7.net> 26927 26928 * lib/rubygems/specification.rb: Restore behavior of 26929 Gem::Specification#loaded. [Ruby 1.9 - Bug #5032] 26930 26931Sun Jul 24 00:05:00 2011 Jeremy Evans <merch-redmine@jeremyevans.net> 26932 26933 * error.c (rb_name_error_str): new function to raise NameError 26934 with the name string but not ID. 26935 26936 * object.c, proc.c, variable.c: more removal of inadvertent symbol 26937 creation. [Feature #5079] 26938 26939Sat Jul 23 21:14:00 2011 Tadayoshi Funaba <tadf@dotrb.org> 26940 26941 * lib/cmath.rb (cbrt): should return a real number if possible. 26942 26943Sat Jul 23 20:12:52 2011 NARUSE, Yui <naruse@ruby-lang.org> 26944 26945 * test/rake/test_rake_functional.rb (setup): Use __FILE__ for the base 26946 directory. Current directory is not the top source directory when 26947 the building process runs on other than there. 26948 26949 * test/rake/test_rake_rake_test_loader.rb: ditto. 26950 26951 * test/rake/test_rake_task_argument_parsing.rb 26952 (test_terminal_width_using_hardcoded_80): hardcoded 80 is used 26953 when app.unix? is false. 26954 26955Sat Jul 23 20:11:50 2011 Tadayoshi Funaba <tadf@dotrb.org> 26956 26957 * ext/date/date_core.c: an issue that is same as [ruby-dev:44071]. 26958 * ext/date/date_strftime.c: identical to [ruby-dev:44112]. 26959 26960Sat Jul 23 19:12:53 2011 Masaki Suketa <masaki.suketa@nifty.ne.jp> 26961 26962 * test/win32ole/test_err_in_callback.rb (test_err_in_callback): 26963 skip test if ADODB.connection is not available. 26964 26965Sat Jul 23 15:37:04 2011 NARUSE, Yui <naruse@ruby-lang.org> 26966 26967 * parse.y (rb_enc_symname_type): :$a!, @a! and so on are not 26968 valid symbols, so they should be inspected with quotes. 26969 26970Sat Jul 23 17:06:25 2011 Tanaka Akira <akr@fsij.org> 26971 26972 * io.c (rb_update_max_fd): validate fd. 26973 26974 * ext/socket/rubysocket.h (rsock_discard_cmsg_resource): add 26975 msg_peek_p argument for the declaration. 26976 26977 * ext/socket/ancdata.c (discard_cmsg): add msg_peek_p argument. 26978 assume FreeBSD, NetBSD and MacOS X doesn't generate passed fd 26979 when MSG_PEEK. 26980 (rsock_discard_cmsg_resource): add msg_peek_p argument. 26981 (bsock_recvmsg_internal): call rsock_discard_cmsg_resource with 26982 msg_peek_p argument. 26983 26984 * ext/socket/unixsocket.c (unix_recv_io): call 26985 rsock_discard_cmsg_resource with msg_peek_p argument. 26986 26987Sat Jul 23 14:38:28 2011 Eric Hodel <drbrain@segment7.net> 26988 26989 * test/rake*: Remove dependencies on flexmock and session gems. 26990 [Ruby 1.9 - Bug #4987] 26991 26992Sat Jul 23 12:19:04 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 26993 26994 * parse.y (rb_check_id): take care of attrset ID created 26995 implicitly by local ID. [Bug #5084] 26996 26997 * parse.y (rb_check_id): conversion condition was inverse. 26998 [Bug #5084] 26999 27000Fri Jul 22 21:46:54 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 27001 27002 * vm_insnhelper.c (vm_call_cfunc): added volatile for a workaround 27003 of cfp consistency error problem on OS X 10.7 (Lion). It's 27004 suspected llvm optimization bug. 27005 [Bug #5074] [ruby-dev:44185] 27006 27007Fri Jul 22 21:18:20 2011 NARUSE, Yui <naruse@ruby-lang.org> 27008 27009 * lib/uri/generic.rb (WFKV_): unroll the loop of regexp. 27010 27011 * lib/uri/generic.rb (URI.decode_www_form_component): ditto. 27012 27013Fri Jul 22 21:06:39 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 27014 27015 * object.c (rb_mod_{const,cvar}_defined, rb_obj_ivar_defined): 27016 avoid inadvertent symbol creation in reflection methods. based 27017 on a patch by Jeremy Evans at [ruby-core:38367]. [Feature #5072] 27018 27019 * vm_method.c (rb_mod_method_defined) 27020 (rb_mod_{public,private,protected}_method_defined) 27021 (obj_respond_to): ditto. 27022 27023 * parse.y (rb_check_id): new function returns already interned ID 27024 or 0. 27025 27026Fri Jul 22 20:44:49 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 27027 27028 * parse.y (rb_is_global_id, rb_is_attrset_id): add missing 27029 predicates. 27030 27031Fri Jul 22 20:24:38 2011 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 27032 27033 * test/ruby/test_object.rb (TestObject#test_respond_to_missing): 27034 2nd argument of respond_to_missing? is not optional. 27035 27036Fri Jul 22 19:05:47 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 27037 27038 * parse.y (rb_enc_symname2_p): get rid of potential out-of-bound 27039 access. 27040 27041Fri Jul 22 13:55:59 2011 Eric Hodel <drbrain@segment7.net> 27042 27043 * lib/net/http.rb: Net::HTTP#finish is used to manually close 27044 connections. [Ruby 1.9 - Bug #5045] 27045 27046Fri Jul 22 13:51:29 2011 Eric Hodel <drbrain@segment7.net> 27047 27048 * ext/readline/readline.c: Add examples for Readline.completion_proc=. 27049 [Ruby 1.9 - Bug #5057] 27050 27051Fri Jul 22 13:03:12 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 27052 27053 * ext/openssl/ossl_hmac.c: Revert checking return type of 27054 HMAC_Init_ex as it is not compatible with OpenSSL < 1.0.0. 27055 27056Fri Jul 22 12:10:21 2011 Eric Hodel <drbrain@segment7.net> 27057 27058 * tool/rbinstall.rb (default gems): Install executables into the fake 27059 gem dir for Gem.bin_path. [#4485] 27060 27061Fri Jul 22 11:20:20 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 27062 27063 * ext/openssl/ossl_digest.c: Check return value of EVP_DigestInit_ex. 27064 * ext/openssl/ossl_hmac.c: Check return value of HMAC_Init_ex. 27065 Thanks, Jared Jennings, for the patch. 27066 [ Ruby 1.9 - Bug #4944 ] [ruby-core:37670] 27067 27068Fri Jul 22 09:09:43 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 27069 27070 * ext/openssl/ossl_engine.c: Avoid double free of ENGINE reference. 27071 * test/openssl/test_engine.rb: Add a test for it. 27072 Thanks to Ippei Obayashi for providing the patch. 27073 [ Ruby 1.9 - Bug #5062 ] [ruby-dev:44173] 27074 27075Fri Jul 22 06:37:13 2011 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 27076 27077 * lib/csv.rb: Do not modify CSV.generate's argument [ruby-core:38356] 27078 27079Thu Jul 21 20:59:59 2011 Tanaka Akira <akr@fsij.org> 27080 27081 * ext/socket/ancdata.c (discard_cmsg): workaround for MacOS X Lion. 27082 27083Thu Jul 21 20:02:11 2011 Yusuke Endoh <mame@tsg.ne.jp> 27084 27085 * thread.c (set_trace_func, thread_set_trace_func_m): reset tracing 27086 state when set_trace_func hook is removed. This is workaround patch 27087 to force to reset tracing state that is broken by continuation call. 27088 a patch from James M. Lawrence. [Feature #4347] [ruby-core:34998] 27089 27090 * test/ruby/test_continuation.rb (class TestContinuation): add a test 27091 for above. a patch from James M. Lawrence. 27092 27093Thu Jul 21 19:27:19 2011 Yusuke Endoh <mame@tsg.ne.jp> 27094 27095 * node.c (dump_node): add today's knowledge. "init arguments (m)" and 27096 "init arguments (p)" of compile.c indicates a Ruby code that 27097 evaluates multiple assignments that is in method or block 27098 parameters: def foo((m1,m2), (m3,m4), *r, (p1,p2), (p3,p4)); end 27099 The former (init arguments (m)) evaluates the multiple assignments 27100 before rest argument, that are (m1,m2) and (m3,m4). The letter 27101 (init arguments (p)) does ones after rest argument, that are 27102 (p1,p2) and (p3, p4). 27103 27104Thu Jul 21 18:11:07 2011 NARUSE, Yui <naruse@ruby-lang.org> 27105 27106 * enum.c (enum_inject): remove empty line to notify rdoc 27107 Enumerable#reduce is alias. patched by milki@github. 27108 https://github.com/ruby/ruby/pull/26 27109 27110Thu Jul 21 17:30:21 2011 NARUSE, Yui <naruse@ruby-lang.org> 27111 27112 * array.c (rb_ary_delete_at_m): use simple array literal in rdoc. 27113 patched by samuel tonini. [ruby-core:38310] [Bug #5066] 27114 27115Thu Jul 21 17:14:21 2011 NARUSE, Yui <naruse@ruby-lang.org> 27116 27117 * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#each): 27118 Allow HTTP/0.9 request which doesn't has any header or body. 27119 patched by Felix Jodoin. [ruby-core:38040] [Bug #5022] 27120 27121Wed Jul 20 23:02:18 2011 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 27122 27123 * io.c (rb_update_max_fd): remove parentheses. they are not in 27124 macro. 27125 27126Wed Jul 20 22:22:23 2011 Tanaka Akira <akr@fsij.org> 27127 27128 * include/ruby/intern.h (rb_update_max_fd): declaration moved from 27129 internal.h. 27130 27131 * file.c: ditto. 27132 27133 * io.c: call rb_update_max_fd for each new fds. 27134 27135 * process.c: ditto. 27136 27137 * random.c: ditto. 27138 27139 * ruby.c: ditto. 27140 27141 * ext/io/console/console.c: ditto. 27142 27143 * ext/openssl/ossl_bio.c: ditto. 27144 27145 * ext/pty/pty.c: ditto. 27146 27147 * ext/socket/init.c: ditto. 27148 27149 * ext/socket/socket.c: ditto. 27150 27151 * ext/socket/ancdata.c: ditto. 27152 27153 * ext/socket/unixsocket.c: ditto. 27154 27155Wed Jul 20 15:16:22 2011 NARUSE, Yui <naruse@ruby-lang.org> 27156 27157 * ext/dl/handle.c (dlhandle_sym): clear previous error with dlerror() 27158 before calling dlsym(). [ruby-dev:44091] [Bug #5021] 27159 27160Wed Jul 20 07:16:26 2011 Kazuhiro NISHIYAMA <zn@mbf.nifty.com> 27161 27162 * NEWS: mention Kernel#warn. [ruby-core:38119] [Feature #5029] 27163 27164Tue Jul 19 16:40:45 2011 TAKANO Mitsuhiro (takano32) <tak@no32.tk> 27165 27166 * cont.c (cont_save_thread): fix missing semicolon. 27167 27168Tue Jul 19 16:25:15 2011 Tanaka Akira <akr@fsij.org> 27169 27170 * io.c (UPDATE_MAXFD): removed. 27171 27172Tue Jul 19 16:07:45 2011 Tanaka Akira <akr@fsij.org> 27173 27174 * io.c (rb_update_max_fd): new function. 27175 27176 * internal.h (rb_update_max_fd): declare rb_update_max_fd. 27177 27178 * thread_pthread.c (rb_thread_create_timer_thread): update max fd when 27179 timer thread pipe is created. 27180 27181Mon Jul 18 13:36:47 2011 Aaron Patterson <aaron@tenderlovemaking.com> 27182 27183 * ext/psych/lib/psych.rb: define a new BadAlias error class. 27184 27185 * ext/psych/lib/psych/visitors/to_ruby.rb: raise an exception when 27186 deserializing an alias that does not exist. 27187 27188 * test/psych/test_merge_keys.rb: corresponding test. 27189 27190Mon Jul 18 00:00:46 2011 Shugo Maeda <shugo@ruby-lang.org> 27191 27192 * ext/curses/curses.c: added the new class Curses::Pad, which 27193 supports scrolling. patch by Eric Hodel. [Feature #4896] 27194 [ruby-core:37206] 27195 27196Sun Jul 17 16:26:40 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 27197 27198 * error.c (rb_check_trusted): new function to check an object is 27199 trusted. 27200 27201 * struct.c (rb_struct_modify), time.c (time_modify): check by the 27202 above function to show proper class names. [Bug #5036] 27203 27204Sun Jul 17 15:30:04 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 27205 27206 * error.c (rb_warn_m): accept multiple args in like puts. rdoc 27207 patch by Erik Price at [ruby-core:38119]. [Feature #5029] 27208 27209Sun Jul 17 07:56:31 2011 Martin Bosslet <Martin.Bosslet@googlemail.com> 27210 27211 * test/openssl/test_ssl_session.rb: add PEM SSL session without TLS 27212 extensions. Use this as the default for the tests to ensure 27213 compatibility with OpenSSL 0.9.7. 27214 [ Ruby 1.9 - Bug #4961 ] [ruby-core:37726] 27215 27216Sat Jul 16 17:29:20 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 27217 27218 * configure.in (RUBY_UNIVERSAL_ARCH): restore arch flag. 27219 Bug #4977 27220 27221Sat Jul 16 06:27:51 2011 Marc-Andre Lafortune <ruby-core@marc-andre.ca> 27222 27223 * lib/uri/common.rb (module): Remove optional parser argument to 27224 Kernel#URI 27225 [ruby-core:38061] 27226 27227 * lib/uri/generic.rb (module): ditto 27228 27229Sat Jul 16 03:19:45 2011 NAKAMURA Usaku <usa@ruby-lang.org> 27230 27231 * win32/win32.c (is_socket, is_console): add prototypes to fix compile 27232 problem with gcc introduced at r32549. 27233 reported by Jon Forums. [Bug #5030] [ruby-core:38079] 27234 27235Sat Jul 16 00:55:38 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 27236 27237 * time.c (time_dup): used rb_obj_class() instead of CLASS_OF(). 27238 The patch is made by Kazuki Tsujimoto. [Bug #5012] [ruby-dev:44071] 27239 27240 * test/ruby/test_time.rb (TestTime#test_getlocal_dont_share_eigenclass): 27241 added a new test for eigenclass of time object. 27242 27243Fri Jul 15 19:11:00 2011 Kenta Murata <mrkn@mrkn.jp> 27244 27245 * bignum.c (bigsub_int): add RB_GC_GUARD. This patch is made by 27246 Makoto Kishimoto. fixes #4223 [ruby-dev:42907] 27247 27248 * bignum.c (bigadd_int): ditto. 27249 27250Fri Jul 15 14:27:53 2011 NAKAMURA Usaku <usa@ruby-lang.org> 27251 27252 * win32/win32.c, include/ruby/win32.h (rb_w32_io_cancelable_p): renamed 27253 from rb_w32_has_cancel_io(). now it takes a parameter as fd to check 27254 the fd is console or not, because we cannot cancel console input even 27255 if we have cancel_io function. 27256 27257 * io.c (WAIT_FD_IN_WIN32): call above function instead of the old one, 27258 so now we can kill the thread which calls STDIN.gets. 27259 the problem was reported by ko1 via IRC. 27260 27261Fri Jul 15 09:10:41 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 27262 27263 * ext/digest/sha2/sha2.c (SHA256_Update, SHA512_Update): avoid Bus 27264 Error caused by unalignment access on Sparc-Solaris (and possibly on 27265 other similar environment.) This patch just do memcpy always instead 27266 of checking architecture. I see no perf drop on my 64bit env. For 27267 more details, see #4320. 27268 27269 * test/digest/test_digest.rb: add test for unalignment access. 27270 27271Fri Jul 15 01:51:25 2011 Nobuyoshi Nakada <nobu@ruby-lang.org> 27272 27273 * regint.h (PLATFORM_UNALIGNED_WORD_ACCESS): Power PC does not 27274 allow unaligned word access. 27275 27276 * st.c (UNALIGNED_WORD_ACCESS): x86_64 allows unaligned word 27277 access as well as i386. 27278 27279Thu Jul 14 12:19:34 2011 Hiroshi Nakamura <nahi@ruby-lang.org> 27280 27281 * ext/openssl/ossl.c (ossl_verify_cb): trap the exception from 27282 verify callback of SSLContext and X509Store and make the 27283 verification fail normally. Raising exception directly from callback 27284 causes orphan resources in OpenSSL stack. Patched by Ippei Obayashi. 27285 See #4445. 27286 27287 * test/openssl/test_ssl.rb 27288 (test_exception_in_verify_callback_is_ignored): test it. 27289 27290Tue Jul 12 23:41:49 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 27291 27292 * NEWS: add a description of Signal.trap change. 27293 27294Tue Jul 12 20:02:35 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 27295 27296 * signal.c (reserved_signal_p): reverted a part of r32523. 27297 chikanaga noticed trap(:CHLD) has some realworld usecase. 27298 * test/ruby/test_signal.rb (TestSignal#test_reserved_signal): 27299 ditto. 27300 27301Tue Jul 12 17:12:45 2011 Yukihiro Matsumoto <matz@ruby-lang.org> 27302 27303 * vm_method.c (rb_add_method): should not call method_added hook 27304 for undef operation. [Bug #5015] 27305 27306Tue Jul 12 16:58:44 2011 Shota Fukumori <sorah@tubusu.net> 27307 27308 * lib/test/unit.rb(Test::Unit::Options#process_args): Fix bug. 27309 Fix process_args didn't return `@option` after r30939. 27310 27311Tue Jul 12 14:07:46 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 27312 27313 * signal.c (install_sighandler): fixed a race. 27314 27315Tue Jul 12 13:49:32 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 27316 27317 * signal.c (sig_trap): don't permit to change a signal handler which 27318 the interpreter reserved. 27319 * signal.c (reserved_signal_p): ditto. 27320 [Bug #2616] [ruby-core:27625] 27321 27322 * test/ruby/test_signal.rb (TestSignal#test_reserved_signal): 27323 added a test for reserved signal. 27324 27325Tue Jul 12 11:58:28 2011 NAKAMURA Usaku <usa@ruby-lang.org> 27326 27327 * win32/setup.mak: support x86-amd64 cross compile environment. 27328 27329Mon Jul 11 23:22:28 2011 Yutaka Kanemoto <kanemoto@ruby-lang.org> 27330 27331 * time.c: can't compile time.c on AIX due to missing declaration for 27332 ffs(). It is declared in strings.h on AIX. 27333 27334Mon Jul 11 15:54:24 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 27335 27336 * process.c: removed signal() macro. It's no longer used. 27337 27338Mon Jul 11 15:02:24 2011 NAKAMURA Usaku <usa@ruby-lang.org> 27339 27340 * numeric.c (rb_num2ull): use FIX2LONG instead of FIX2ULONG. see 27341 rb_num2ulong(). fixed the problem of ObjectSpace._id2ref of IL32LLP64 27342 platforms, introduced at r32433. 27343 27344Mon Jul 11 05:38:05 2011 Yutaka Kanemoto <kanemoto@ruby-lang.org> 27345 27346 * thread_pthread.c (get_stack): need to adjust stack addr for 27347 [Bug #1813] on AIX. 27348 27349Mon Jul 11 01:16:27 2011 KOSAKI Motohiro <kosaki.motohiro@gmail.com> 27350 27351 * thread_pthread.c (rb_thread_create_timer_thread): removed 27352 rb_disable_interrupt()/rb_enable_interrupt(). 27353 * vm_core.h: ditto. 27354 * process.c (static void before_exec): ditto. 27355 * process.c (static void after_exec): ditto. 27356 [Bug #4765] [ruby-dev:43571] 27357 27358 * eval_intern.h: removed rb_trap_restore_mask(). 27359 * vm_eval.c (rb_throw_obj): ditto. 27360 * eval.c (setup_exception): ditto. 27361 27362 * signal.c: removed trap_last_mask. 27363 * signal.c (trap_restore_mask): removed. 27364 * signal.c (init_sigchld): comment clarification why signal block 27365 is needed. and removed trap_last_mask operation. 27366 * signal.c (trap_ensure): removed trap_last_mask operation. 27367 27368 * signal.c (rb_disable_interrupt, rb_enable_interrupt): made 27369 static and removed sigdelset(SIGVTALRM) and sigdelset(SIGSEGV). 27370 27371 * process.c (rb_syswait): removed implicit signal handler change. 27372 27373Sun Jul 10 23:49:12 2011 Yuki Sonoda (Yugui) <yugui@yugui.jp> 27374 27375 * docs/NEWS-1.9.3: moved from NEWS. 27376 27377 * docs/ChangeLog-1.9.3: merged ChangeLog for 1.9.3. 27378 27379 * NEWS: NEWS for 1.9.4 that describes changes since 1.9.3 27380 27381 * ChangeLog: new ChangeLog for 1.9.4. 27382 27383Sun Jul 10 23:30:52 2011 Yuki Sonoda (Yugui) <yugui@yugui.jp> 27384 27385 * version.h (RUBY_VERSION): ruby_1_9_3 branch was forked. 27386 27387For the changes before 1.9.3, see doc/ChangeLog-1.9.3 27388For the changes before 1.8.0, see doc/ChangeLog-1.8.0 27389 27390Local variables: 27391coding: us-ascii 27392add-log-time-format: (lambda () 27393 (let* ((time (current-time)) 27394 (system-time-locale "C") 27395 (diff (+ (cadr time) 32400)) 27396 (lo (% diff 65536)) 27397 (hi (+ (car time) (/ diff 65536)))) 27398 (format-time-string "%a %b %e %H:%M:%S %Y" (list hi lo) t))) 27399indent-tabs-mode: t 27400tab-width: 8 27401change-log-indent-text: 2 27402end: 27403vim: tabstop=8 shiftwidth=2 27404